// TrapezIntegralTest.java MM 2012 /** * Test der Trapezregel der Klasse TrapezIntegral. */ public class TrapezIntegralTest { /** * Integral von 0 bis 1 ueber * Funktion ( 1.0 ) / ( 1.0 + 1.0 x^1 ) */ public static void main( String[] args) { // Funktion Polynom zaehlerPolynom = new Polynom(); double[] zaehler = new double[ 1]; zaehler[ 0] = 1; zaehlerPolynom.setPolynom( zaehler); Polynom nennerPolynom = new Polynom(); double[] nenner = new double[ 2]; nenner[ 0] = 1; nenner[ 1] = 1; nennerPolynom.setPolynom( nenner); RationaleFunktion fkt = new RationaleFunktion(); fkt.setRationaleFunktion ( zaehlerPolynom, nennerPolynom); // Funktionsausgabe System.out.println(); System.out.println( "f( x) = " + fkt); // Mathematischer Wert System.out.println ( " Math.log( 2) : " + Math.log( 2)); // Integral mit 7 Stuetzstellen Integral integral = new Integral(); double erg = integral.trapez( fkt, 0, 1, 7); System.out.println ( " Trapez( 7 Stuetzstellen): " + erg); // Integral mit 20, 40, 60, 80 Stuetzstellen for( int i = 20; i < 100; i += 20) { erg = integral.trapez( fkt, 0, 1, i); System.out.println ( " Trapez( " + i + " Stuetzstellen): " + erg); } } } /* ------------------------------------------------- */ // Testergebnisse /* f( x) = ( 1.0 ) / ( 1.0 + 1.0 x^1 ) Math.log( 2): 0.6931471805599453 Trapez( 7 Stuetzstellen): 0.6948773448773449 Trapez( 20 Stuetzstellen): 0.6933202508885106 Trapez( 40 Stuetzstellen): 0.6931882685712957 Trapez( 60 Stuetzstellen): 0.6931651345260461 Trapez( 80 Stuetzstellen): 0.6931571947801501 */