PDA

View Full Version : [Frage] Lösungen der Beispiele 347 (mit Regula Falsi) und 349 (mit Bisektion)


Unic0der
09-03-2003, 19:05
Habe mal die Beispiele 347 und 349 gerechnet. Vielleicht findet sich jemand, der seine Ergebnisse mit meinen vergleichen kann...

347 (mit Regula Falsi)
------------------------------

1. Iteration [1.8 , 1.9]

x1=1,895228847

2. Iteration [1.895228847 , 1.9]

x2=1,895493577

-> genau genug -> pos. Nullstelle bei x=1,895


349 (mit Bisektion)
-------------------------

1. Iteration [0.6 , 0.7]

c1=0,65

2. Iteration [0.65 , 0.7]

c2=0,675

3. Iteration [0.675 , 0.7]

c3=0,6875

4. Iteration [0.6875 , 0.7]

c4=0,69375

5. Iteration [0.69375 , 0.7]

c5=0,696875

6. Iteration [0.69375 , 0.696875]

c6=0,6953125

7. Iteration [0.69375 , 0.6953125]

c7=0,69453125

8. Iteration [0.69453125 , 0.6953125]

c8=0,694921875

-> genau genug -> pos. Nullstelle kleiner Pi/4 bei x=0,694


mfg OSX

michi204
10-03-2003, 22:34
349 stimmt... habs mit pi gerechnet deswegen kommt mir raus:

xn=1811 pi / 8192 und für f(x)=-0,00071

was aber das gleiche darstellt.

ich hab als anfangsintervall [pi/16; pi/4] genommen. hat jemand eine ahnung wie man einen guten startwert bekommt den man auch logisch begründen kann? ich mein eigentlich könnte ich ja wenn ich mir den graphen ansehe gleich ein intervall nehmen, das schon sehr knapp an der nullstelle liegt und so die anzahl der iterationen minimieren...

lg michi

AmonRa
10-03-2003, 23:58
also genau das gleiche frag ich mich auch schon die ganze zeit:...erstens das. und zweitens- wo nehm ich denn überhaupt die besten Startwerte für mein Intervall her ???? hm?

Unic0der
11-03-2003, 09:27
Ich habs gezeichnet (oder besser von TR zeichnen lassen) und anschließend meine Werte nahe der Nullstelle gewählt...

Je näher desto besser - klar, weil man dann nur weniger Annäherungen für ein genaues Ergebnis braucht...

michi204
11-03-2003, 09:46
Ich habs gezeichnet (oder besser von TR zeichnen lassen) und anschließend meine Werte nahe der Nullstelle gewählt...

So hab ichs auch gemacht.. aber bei Prüfungen und so sollte das ja auch ohne TR gehen.. laut
:devil: jedenfalls..

lg michi

Seth
11-03-2003, 21:01
Wäre nett, wenn du einen Schritt bei 347 posten könntest.

Mir ist irgendwie nicht ganz klar, wie ich in die Formel einsetzen muss, damit ich auf das Ergebnis komme.

michi204
11-03-2003, 21:38
Wäre nett, wenn du einen Schritt bei 347 posten könntest.

ja bitte wär cool wenn das wer posten könnte.. mir kommt irgendwie nur blödsinn raus ich glaub ich habe das verfahren falsch verstanden.:confused:

Smulg
12-03-2003, 13:47
da gibts eine formel: m (mittelpunkt) = 1/2 (a+b)
a ist die untere schranke und b die obere. d.h. wenn ich a als x in die funktion einsetzte muss ich einen wert kleiner null herausbekommen, und bei b einen wert größer null. z.b.: [0,6 ; 0.7] m=0,65
jetzt setzt ich 0,65 als x in die funktion ein und rechne mir das aus. wenn jetzt ein wert kleiner null rauskommt, ist m (0,65) die neue untere schranke und wenn ein wert größer null rauskommt, ist m die neue obere schranke.
das mach ich so lange bis ich die nullstelle genügend eingeschrämkt habe

Smulg
12-03-2003, 13:49
ich hab nur keine ahnung wie das mit "regula falsi" geht. gibts da auch irgendwie so eine formel in die man einfach einsetzt????

Unic0der
12-03-2003, 13:54
Ist recht leicht: Such nach regula falsi im Internet (z.B. Google);

Da findest du viele brauchbare Sachen. Baron Bücher sind (ausnahmsweise) hier auch mal hilfreich...

michi204
12-03-2003, 15:48
@ smulg: bisektion ist eh kein problem ich brauch auch regular falsi :)

AmonRa
12-03-2003, 17:31
Verfahren: Die Regel des Falschen Die Regula Falsi ('Regel des Falschen') berechnet den neuen x-Wert auf dieselbe Weise, wie die Sekantenmethode. Sie enthält jedoch eine zusätzliche Regel. Diese kontrolliert, dass die gesuchte Nullstelle immer zwischen den beiden Stützstellen x0 und x1 bleibt. Die Regula Falsi erkennt also die 'falsche' (nicht optimale) Position eines Stützpunktes. Sie wählt dann die andere Stützstelle. x1 - x0Schnittpunkt: xneu := x1 - f(x1) * ------------- f(x1) - f(x0)http://www.piu.ch/didaktik/informatik/puzzle/gif/abba4.gif Regula Falsi Algorithmus: Eingabe: f, x0, x1Voraussetzung: f(x0)*f(x1) < 0xneu := x0;WHILE ABS(x1-xneu) > eps DO xneu := ... IF f(xneu)*f(x0)> 0 THEN x0:=x1; END x1:=xneu;ENDAusgabe: xneu

AmonRa
12-03-2003, 17:39
SORRYneu = x1 - f(x1) * [x1 - x0] /[f(x1) - f(x0)]Lautet die formeldie oben leider falsch dargestellt wird...

Seth
12-03-2003, 21:13
Um meine eigene Frage selbst zu beantworten :p

Man muss darauf achten, dass man im Bogenmaß rechnet.

Also man setzt zuerst in die gegebene Formel mit seinem Startwert für x ein. In diesem Fall einmal 1.8 und einmal 1.9:

f(1.8)=0.0738
f(1.9)=-0.0037

Jetzt nimmt man die Formel, die Amon schon gepostet hat und die auch im Baron Buch steht und setzt ein:

xsi=an - f(an) * ((bn - an) / f(bn) - f(an)) =
= 1.8 - 0.0738 * ((1.9-1.8) / -0.0037 - 0.738) = 1.89523