Webmaster, Security und Technik Blog
  • Home
  • Tutorials
  • Forum
  • Autor
  • Impressum und Datenschutz

Archiv » Numerik



Numerisches Integrieren mit dem Simpson Verfahren (in Java)

Hier gibt es nun den ersten Teil einer neue Reihe, der Numerik. Ich werde hier einige Verfahren zeigen mit denen man auf numerischen Wege zu einem Ergebnis kommt, für das sonst komplexere Formeln und Umwandlungen nötig wären. Die numerischen Verfahren liefern im besten Fall genau das gleiche Ergebnis wie der Standard-Algorithmus, im schlechtesten Fall einen Näherungswert.

Wir wollen uns am Anfang auf die numerische Integration konzentrieren, also das lösen eines Integrals ohne die Gleichung selber integrieren zu müssen.

Dies geschieht in unserem Fall mit der bekannten Simpson-Regel. Wikipedia sagt dazu:

Die Simpsonregel (auch simpsonsche Formel) ist ein Verfahren der numerischen Quadratur, bei dem eine Näherung zum Integral einer Funktion f(x) im Intervall [a,b] berechnet wird, indem man die Kurve f(x) durch eine Parabel annähert.

Die Formel die wir anwenden lautet:

Die Grenzen des Intervals über das integriert werden soll werden als a und b bezeichnet. a ist dabei die untere Grenze, b die Obere.

Weiterhin gilt:

Sieht auf den ersten Blick kompliziert aus, ist aber in der Handhabung sehr einfach, vor allem wenn man die Formel in Java umsetzt, wie wir später noch sehen werden.

Als Beispiel errechnen wir zuerst das Integral:

über dem Interval von a = 0 bis b = 5.
Hierbei erhalten wir dann die Lösung 41,66666667.

Nun wenden wir das numerische Verfahren, also die Simpson Regel an:

Wir wählen n = 8 (dies ist beliebig, muss jedoch den oben genannten Kriterien entsprechen!), errechnen damit h = 5/8 (Die Grenzen des Intervals bleiben selbstverständlich gleich).

Nun erstellen wir eine Tabelle mit den Werten der xi (Werte die x0 bis xn zugeordnet werden):

xi 0 5/8 10/8 15/8 20/8 25/8 30/8 35/8 40/8
f(xi) 0 25/64 100/64 225/64 400/64 625/64 900/64 1225/64 1600/64

Einsetzen in die Simpson Formel:

Durch einsetzen der errechneten xi Werte in die oben genannte Gleichung erhalten wir als Ergebnis: 41,66666667. Also genau das gleiche wie bei der obigen normalen Integration. Die Simpson Regel scheint also ziemlich genau zu sein, was sie auch ist. Sie kann sehr gut als Ersatz für eine Integration genutzt werden, wenn zum Beispiel keine Integralrechnung zur Verfügung steht oder eine Optimierung auf Additionen und Multiplikationen erfolgt.

Die Java Umsetzung der Simpson Regel:

Das Ganze kann dann natürlich vereinfacht mit Java umgesetzt werden, dies erspart einem die langwierige Ausrechnung der Endformel, vor allem wenn es mehr als 8 Schritte (Stützstellen) werden sollten.

package simpson;
 
public class Start {
 
	public static void main(String[] args) {
 
		// Untere Grenze des Intervals
		double a = 0;
		// Obere Grenze des Intervals
		double b = 5;
		// Anzahl der Schritte (n)
		int nn = 8;
		double[] data = new double[nn + 1];
		// Berechnung von (h)
		double h = (b - a) / nn;
 
		System.out.println("Die Simpson-Regel in Java");
 
		// Füllen der Tabelle mit den xi Werten
		for (int i = 0; i <= nn; i++) {
 
			data[i] = a + i * h;
 
		}
 
		// f(x0)
		double erg = 0;
		erg += Math.pow(data[0], 2);
 
		// f(x1) bis f(xn-1)
		for (int y = 1; y < nn; y++) {
 
			if (y % 2 == 0)
				erg += 2 * (Math.pow(data[y], 2));
			else
				erg += 4 * (Math.pow(data[y], 2));
 
		}
 
		// f(xn)
		erg += Math.pow(data[nn], 2);
 
		// Ausgabe der Lösung
		System.out.println("Ergebnis: " + (h / 3) * erg);
 
	}
 
}

Hier wurde das gleiche Beispiel wie oben verwandt. Eine Anpassung an ein anderes Integral sollte keine Probleme darstellen. Ebenso nicht die Erhöhung der Schrittzahl.

More
  • RSS-Feed
  • Twitter
  • Xing
  • Facebook

Kategorien

  • Beruf
  • Blogging
  • C
  • Comic
  • Datenbanken
  • Datenschutz
  • Design
  • Etymologie
  • Film
  • Gewinnspiele
  • HTML und CSS
  • Internet
  • Java
  • LaTeX
  • Mathematik
  • Musik
  • Numerik
  • PHP
  • Politik
  • Projektmanagement
  • Rätsel
  • Recht
  • Security
  • SEO
  • Software
  • Technik

Archiv

  • Mai 2012
  • April 2012
  • März 2012
  • Februar 2012
  • Januar 2012
  • Dezember 2011
  • November 2011
  • Oktober 2011
  • September 2011
  • August 2011
  • Juli 2011
  • Juni 2011
  • Mai 2011
  • April 2011
  • März 2011
  • Februar 2011
  • Januar 2011
  • Dezember 2010
  • November 2010
  • Oktober 2010
  • September 2010
  • August 2010
  • Juli 2010
  • Juni 2010
  • Mai 2010

Suche

Werbung

Textlinks verkaufen   Backlinks kaufen
  RankSider

Artikel

  • 8 Prämissen für die effiziente Verwaltung privilegierter Accounts
  • CyberCrime 2012: Kongress klärt über aktuelle Themen der IT-Sicherheit auf
  • Lesenswerte Blogs
  • Entwicklung eines Browserspiels mit Java
  • Verkaufe: Archos 80 G9 Turbo, 8 Zoll Android 4.0 Tablet

Kommentare

  • Tobias bei “Subscribe to Comments” mit Double-Opt-In Prüfung
  • Boris bei “Subscribe to Comments” mit Double-Opt-In Prüfung
  • Tobias bei Simple Trackback Validation with Topsy Blocker
  • Tracy Ridge bei Simple Trackback Validation with Topsy Blocker
  • Thomas bei Abmeldung von eBuzzing (Ex-Trigami)

Linktipps

  • Aktenvernichter kaufen
  • Canon Kopierer vergleichen
  • Cross Browser Testing
  • EasyTopia
  • Erfolgreiche Blogs
  • Hardware News
  • iPhone APP Berichte
  • Matzek
  • Softwareentwicklung
  • Sushi in Paderborn
  • Virtuelle Server mieten
  • Webmaster Tutorials

Blog über IT, Security und Technik

Webmaster, Technik, Security und IT Blog - Ein Blog über aktuelle IT-Nachrichten, Programmierung (Java), Datenbanken, Security und Technik.

Gerne können Sie auf meinem Blog Werbeanzeigen oder Sponsored Posts schalten. Bitte setzen Sie sich dafür einfach mit mir in Verbindung. Entsprechende Kontaktdaten finden Sie im Impressum.

Copyright © by sjmp.de

Free HTML-Templates