Rombergverfahren

hos15

Aktives Mitglied
Hallo an alle ich habe das Rombergverfahren Implementiert das meine Integralberechnung möglichst genau ist muss ich mehrere schritte berechnen.
Allerdings fällt mir keine gute Idee ein diese umzusetzen und habe es Katastrophal gelöst..
Java:
    public static double Romberg(String a, double untergrenze, double obergrenze ) {
   
        JEP j = new JEP();
       
       
       
        j.addStandardConstants();
        j.addStandardFunctions();
        j.addVariable("x", 0);
       
        int[] i={0,1,2,3,4,5,6};
        double S1 = (obergrenze-untergrenze)/Math.pow(2, i[0]);
        double S2= (obergrenze-untergrenze)/Math.pow(2, i[1]);
        double S3= (obergrenze-untergrenze)/Math.pow(2, i[2]);
        double S4= (obergrenze-untergrenze)/Math.pow(2, i[3]);
        double S5= (obergrenze-untergrenze)/Math.pow(2, i[4]);
        double S6= (obergrenze-untergrenze)/Math.pow(2, i[5]);
        double S7= (obergrenze-untergrenze)/Math.pow(2, i[6]);
        double Wert1 =SummierteTrapezregel(a, untergrenze, obergrenze, S1);
        double Wert2 =SummierteTrapezregel(a, untergrenze, obergrenze, S2);
       
        double Wert3 =SummierteTrapezregel(a, untergrenze, obergrenze, S3);
        double Wert4 =SummierteTrapezregel(a, untergrenze, obergrenze, S4);
        double Wert5 =SummierteTrapezregel(a, untergrenze, obergrenze, S5);
        double Wert6 =SummierteTrapezregel(a, untergrenze, obergrenze, S6);
        double Wert7 =SummierteTrapezregel(a, untergrenze, obergrenze, S7);
        for(int k =1;k<10; k++){
           
        }
        Wert1= Wert2+(Wert2-Wert1)/(4-1);
        Wert2= Wert3+(Wert3-Wert2)/(4-1);
        Wert3= Wert4+(Wert4-Wert3)/(4-1);
        Wert4= Wert5+(Wert5-Wert4)/(4-1);
        Wert5= Wert6+(Wert6-Wert5)/(4-1);
        Wert6= Wert7+(Wert7-Wert6)/(4-1);
       
        Wert1=Wert2+(Wert2-Wert1)/(16-1);
        
        Wert2= Wert3+(Wert3-Wert2)/(16-1);
        Wert3= Wert4+(Wert4-Wert3)/(16-1);
        Wert4= Wert5+(Wert5-Wert4)/(16-1);
        Wert5= Wert6+(Wert6-Wert5)/(16-1);
       
        Wert1=Wert2+(Wert2-Wert1)/(64-1);
        Wert2= Wert3+(Wert3-Wert2)/(64-1);
        Wert3= Wert4+(Wert4-Wert3)/(64-1);
        Wert4= Wert5+(Wert5-Wert4)/(16-1);
       
        Wert1=Wert2+(Wert2-Wert1)/(256-1);
        Wert2=Wert3+(Wert3-Wert2)/(256-1);
        Wert3= Wert4+(Wert4-Wert3)/(256-1);
       
        Wert1=Wert2+(Wert2-Wert1)/(1024-1);
        Wert2=Wert3+(Wert3-Wert2)/(1024-1);
        
        Wert1=Wert2+(Wert2-Wert1)/(4096-1);
        
       
        return Wert1;
       
    }
 

stg

Top Contributor
Du folgst bei deiner Berechnung doch einem Muster, einer allgemeinen Beschreibung des Verfahrens. Anhand dieses Musters hast du nun deine konkreten Berechnungsschritte ausformuliert. Genau das solltest du aber ja nicht machen, sondern du solltest dich bemühen diese allgemeine Beschreibung des Verfahrens in Java-Code "zu gießen".
 

hos15

Aktives Mitglied
Hallo und danke für die antwort. Also was bedeutet nun der code ? Ich verstehe das nicht ganz ist das die Lösung wie man es kurz schreibt ?
 

Manuel.R

Bekanntes Mitglied
Code:
     Wert1= Wert2+(Wert2-Wert1)/(4-1);
        Wert2= Wert3+(Wert3-Wert2)/(4-1);
        Wert3= Wert4+(Wert4-Wert3)/(4-1);
        Wert4= Wert5+(Wert5-Wert4)/(4-1);
        Wert5= Wert6+(Wert6-Wert5)/(4-1);
        Wert6= Wert7+(Wert7-Wert6)/(4-1);
      
        Wert1=Wert2+(Wert2-Wert1)/(16-1);
      
        Wert2= Wert3+(Wert3-Wert2)/(16-1);
        Wert3= Wert4+(Wert4-Wert3)/(16-1);
        Wert4= Wert5+(Wert5-Wert4)/(16-1);
        Wert5= Wert6+(Wert6-Wert5)/(16-1);
      
        Wert1=Wert2+(Wert2-Wert1)/(64-1);
        Wert2= Wert3+(Wert3-Wert2)/(64-1);
        Wert3= Wert4+(Wert4-Wert3)/(64-1);
        Wert4= Wert5+(Wert5-Wert4)/(16-1);
      
        Wert1=Wert2+(Wert2-Wert1)/(256-1);
        Wert2=Wert3+(Wert3-Wert2)/(256-1);
        Wert3= Wert4+(Wert4-Wert3)/(256-1);
      
        Wert1=Wert2+(Wert2-Wert1)/(1024-1);
        Wert2=Wert3+(Wert3-Wert2)/(1024-1);
      
        Wert1=Wert2+(Wert2-Wert1)/(4096-1);

allein dieser Ausschnitt erweckt den Eindruck, dass das durch eine einfache Schleife gelöst werden könnte....

gleiches gilt für die Grenzen....
 

Neue Themen


Oben