Français
Source/ Codesnippets

Regula falsi - qui 'Falsche Regel' zur Solution nichtlinearer Funktionen

 

p.specht

un Algorithmus aus den Urschleimzeiten qui mathématique, comme verschiedene Funktionen überhaupt erstmals - zumindest numerisch - gelöst volonté konnten.
autrefois versuchte on, sich par händische Berechnung mittels parchemin et Federkiel à qui Lösungen heranzutasten. Pech, si es juste plusieurs Lösungen donnais - on erhielt, dépendant vom Startwert, toujours seulement une en. Daher aussi qui nom "Falsche Regel".
Titre de la fenêtre "Regula falsi: Nullstellensuche sur Sekanten-Abschnitte"
' Abt. "Historische Algorithmen"
' (D) Demoware mai 2012 P. Specht; sans jedwede Gewähr!!!
' Gleichungslösung par "Herantasten", Indikator: Fehlerkurvenanstieg
' Verwendet ici justement qui proc Formel_1
' Startwert ist responsable, trop quel individuel Solution
' de ggf. mehreren Lösungen qui Algorithmus jeweils tendiert
Font 2:Randomiser:Cls rnd(8^8):set("decimals",18)
Déclarer a!,x!,i&
Var imax&=1000' Maximale numéro Näherungsschritte
Begin:
imprimer "\n Startwert pour Lösungssuche (kritisch!): ";
input a!
x!=regulafalsi(a!)

si x!=val("4.9406564584124654E-323")

    imprimer " Solution pour ";imax&;" Schritten pas trouvé!"

d'autre

    imprimer " Solution:   x = ";x!
    imprimer " trouvé pour ";i&;" Schritten."
    imprimer " Funktionswert: ";formel_1(x!)'formel_0(x!)

endif

WaitInput
cas %csrlin>22:cls
goto "Begin"

proc regulafalsi

    parameters a!' Startwert
    var il!=10^-13
    Déclarer x0!,x1!,x2!,y0!,y1!
    x2!=a!
    x1!=a!+0.1' Soll seulement juste trop Beginn Division par zéro vermeiden
    i&=0

    tandis que i&<=imax&

        x0!=x1!:x1!=x2!' next generation vorbereiten
        rem y0!=formel_0(x0!) : y1!=formel_0(x1!)' Testfunktion Parabel
        y0!=formel_1(x0!) : y1!=formel_1(x1!)' Polynom 3. Grades

        si (y1!-y0!)<>0

            x2! = x0! - y0! * (x1!-x0!) / (y1!-y0!)

        d'autre

            imprimer " avertissement: procéder wurde instabil!"
            pause

        endif

        cas abs(x2!-x1!)<=il!:pause
        inc i&

    endwhile

    'chez Error: x2 = -INF + 1e-307 =
    'kleinstmöglicher DoublePrecision Floatwert<>0
    cas i&>imax&:x2!=val("4.9406564584124654E-323")
    return x2!

endproc

proc Formel_0

    parameters x!
    declare y!
    '---------------------------------------------------------------
    ' Formel zuvor stets sur homogene forme apporter:  ... = 0
    ' Ges: Solution trop  x^2 = +4 , wird alors (beide Seiten: - 4) trop:
    y!=x!*x! - 4' avec y = Abweichung de 0 (Irrtumsvariable)
    ' Verfahrensziel: cherche ab Startwert a un x, cela y trop zéro pouvoir
    ' Tipp pour Schnittpunkt 2il Funktionen: Differenzfunktion bilden!
    '---------------------------------------------------------------
    return y!

ENDPROC

proc Formel_1

    parameters x!
    declare y!
    '-------------------------------------
    ' trop lösen: x^3-2*x^2+12*x = 100
    y!=x!*x!*x!-2*x!*x!+12*x!-100' = 0
    '-------------------------------------
    return y!

ENDPROC

 
XProfan 11
Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'...
07.05.2021  
 



Zum Quelltext


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

574 Views

Untitledvor 0 min.
Sven Bader02.11.2021
Ernst21.07.2021
Uwe ''Pascal'' Niemeier13.06.2021
R.Schneider28.05.2021
plus...

Themeninformationen

cet Thema hat 1 participant:

p.specht (1x)


Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie