Równania nieliniowe

Transkrypt

Równania nieliniowe
Przykładowe zadania - równania nieliniowe : styczeń 2008
1
Zadanie 1. Znaleźć rozwiązanie równania x2 − 1 = 0 w przedziale [a; b] = [−1, 3; −0, 5]
metodą bisekcji zakładając wielkość błędu ∆ = 0, 25.
Odpowiedź:
Po pierwsze sprawdzamy czy |b − a| ¬ ∆. Mamy | − 0, 5 − (−1, 3)| = 0, 8 > ∆ = 0, 25.
W tej sytuacji obliczamy x = 0, 5 ∗ (a + b) = 0, 5 ∗ (−1, 3 + (−0, 5)) = −0, 9.
Po drugie sprawdzamy czy f (x) = 0.
Mamy f (x = −0, 9) = (−0, 9)2 − 1 = 0, 81 − 1 = −0, 19 czyli f (x) 6= 0.
Po trzecie określamy nowy przedział [a; b] taki, dla którego zachodzi f (a)f (b) < 0.
Dla dwóch możliwych przedziałów [a; x] i [x; b] czyli [−1, 3; −0, 9] i [−0, 9; −0, 5], mamy:
f (−1, 3) ∗ f (−0, 9) = 0, 69 ∗ (−0, 19) = −0, 1311 < 0,
f (−0, 9) ∗ f (−0, 5) = −0, 19 ∗ (−0, 75) = 0, 1425 > 0.
Stąd nowy przedział [a; b] = [−1, 3; −0, 9].
I powtarzamy dotychczasowy algorytm obliczeń dla nowego przedziału.
Sprawdzamy czy |b − a| ¬ ∆. Mamy | − 0, 9 − (−1, 3)| = 0, 4 > ∆ = 0, 25.
Obliczamy x = 0, 5 ∗ (a + b) = 0, 5 ∗ (−1, 3 + (−0, 9)) = −1, 1.
Sprawdzamy czy f (x) = 0.
Mamy f (x = −1, 1) = (−1, 1)2 − 1 = 1, 21 − 1 = 0, 21 czyli f (x) 6= 0.
Określamy nowy przedział [a; b] taki, dla którego zachodzi f (a)f (b) < 0.
Dla dwóch możliwych przedziałów [a; x] i [x; b] czyli [−1, 3; −1, 1] i [−1, 1; −0, 9], mamy:
f (−1, 3) ∗ f (−1, 1) = 0, 69 ∗ 0, 21 = 0, 1449 > 0,
f (−1, 1) ∗ f (−0, 9) = 0, 21 ∗ (−0, 19) = −0, 0399 < 0.
Stąd nowy przedział [−1, 1; −0, 9].
I powtarzamy algorytm obliczeń dla nowego przedziału.
Sprawdzamy czy |b − a| ¬ ∆. Mamy | − 0, 9 − (−1, 1)| = 0, 2 < ∆ = 0, 25 !!!.
Obliczamy x∗ = 0, 5 ∗ (a + b) = 0, 5 ∗ (−1, 1 + (−0, 9)) = −1, 0.
I koniec obliczeń. Rozwiązaniem równania jest więc x∗ = −1, 0.
Zadanie 2. Rozwiązać podane równanie nieliniowe x2 − 1 = 0 metodą stycznych, przyjmując punkt startowy x0 = −0, 9 i wielkość błędu ∆ = 0, 25.
Odpowiedź:
Po pierwsze obliczamy wartości f (x0 ) i f ′ (x0 ):
f (x0 ) = (−0, 9)2 − 1 = −0, 19 i f ′ (x0 ) = 2 ∗ (−0, 9) = −1, 8.
Po drugie obliczamy nowe przybliżenie rozwiązania równiania korzystając
ze wzoru metody stycznych:
x = x0 − f (x0 )/f ′ (x0 ) = −0, 9 − (−0, 19)/(−1, 8) = −0, 9 − 0, 1056 = −1, 0056.
Po trzecie sprawdzamy czy |x0 − x| ¬ ∆. Czyli | − 0, 9 − (−1, 0056)| = 0, 1056 < ∆ = 0, 25 !!!
I koniec obliczeń. Rozwiązaniem równania jest x∗ = −1, 0056.
Przykładowe zadania - równania nieliniowe : styczeń 2008
2
Zadanie 3. Znaleźć rozwiązanie równania x2 − 1 = 0 w przedziale [a; b] = [−1, 3; −0, 5]
metodą regula falsi zakładając wielkość błędu ∆ = 0, 25.
Odpowiedź:
Na początku sprawdzamy czy f (a)f (b) < 0.
Mamy: f (−1, 3) ∗ f (−0, 5) = 0, 69 ∗ (−0, 75) = −0, 5175 < 0.
Po pierwsze obliczamy ze wzoru x = [a ∗ f (b) − b ∗ f (a)]/[f (b) − f (a)].
Czyli x = (−1, 3 ∗ (−0, 75) − (−0, 5) ∗ 0, 69)/(−0, 75 − 0, 69) = −0, 9167.
Po drugie sprawdzamy czy |b − a| ¬ ∆. Mamy | − 0, 5 − (−1, 3)| = 0, 8 > ∆ = 0, 25.
Po trzecie sprawdzamy czy f (x) = 0.
Mamy f (x = −0, 9167) = (−0, 9167)2 − 1 = 0, 8403 − 1 = −0, 1597 czyli f (x) 6= 0.
Po czwarte określamy nowy przedział [a; b] taki, dla którego zachodzi f (a)f (b) < 0.
Dla dwóch możliwych przedziałów [a; x] i [x; b] czyli [−1, 3; −0, 9167] i [−0, 9167; −0, 5], mamy:
f (−1, 3) ∗ f (−0, 9167) = 0, 69 ∗ (−0, 1597) < 0,
f (−0, 9167) ∗ f (−0, 5) = −0, 1597 ∗ (−0, 75) > 0.
Stąd nowy przedział [a; b] = [−1, 3; −0, 9167].
I powtarzamy dotychczasowy algorytm obliczeń dla nowego przedziału.
Obliczamy x = (a ∗ f (b) − b ∗ f (a))/(f (b) − f (a)).
Czyli x = (−1, 3 ∗ (−0, 1597) − (−0, 9167) ∗ 0, 69)/(−0, 1597 − 0, 69) = −0, 9887.
Sprawdzamy czy |b − a| ¬ ∆, | − 0, 9167 − (−1, 3)| = 0, 3833 > ∆ = 0, 25.
Sprawdzamy czy f (x) = 0.
Mamy f (x = −0, 9887) = (−0, 9887)2 − 1 = 0, 9775 − 1 = −0, 0225 czyli f (x) 6= 0.
Określamy nowy przedział [a; b]. Dla dwóch możliwych przedziałów [a; x] i [x; b] mamy:
f (−1, 3) ∗ f (−0, 9887) = 0, 69 ∗ (−0, 0225) < 0,
f (0, 9887) ∗ f (−0, 9167) = −0, 0225 ∗ (−0, 1597) > 0.
Stąd nowy przedział [a; b] = [−1, 3; −0, 9887].
I powtarzamy algorytm obliczeń dla nowego przedziału.
Obliczamy x = (−1, 3 ∗ (−0, 0225) − (−0, 9887) ∗ 0, 69)/(−0, 0225 − 0, 69) = −0, 9985.
Sprawdzamy czy |b − a| ¬ ∆. Mamy | − 0, 9887 − (−1, 3)| = 0, 3113 > ∆ = 0, 25.
Sprawdzamy czy f (x) = 0.
f (x = −0, 9985) = (−0, 9985)2 − 1 = 0, 997 − 1 = −0, 003 czyli f (x) 6= 0.
Nowy przedział. Dla dwóch możliwych przedziałów [a; x] i [x; b] mamy:
f (−1, 3) ∗ f (−0, 9985) = 0, 69 ∗ (−0, 003) < 0,
f (0, 9985) ∗ f (−0, 9887) = −0, 003 ∗ (−0, 0225) > 0.
Stąd nowy przedział [a; b] = [−1, 3; −0, 9985].
I powtarzamy algorytm obliczeń dla nowego przedziału.
Obliczamy x = (−1, 3 ∗ (−0, 003) − (−0, 9985) ∗ 0, 69)/(−0, 003 − 0, 69) = −0, 9998.
Sprawdzamy czy |b − a| ¬ ∆. Mamy | − 0, 9985 − (−1, 3)| = 0, 3015 > ∆ = 0, 25.
Sprawdzamy czy f (x) = 0.
f (x = −0, 9998) = (−0, 9998)2 − 1 = 0, 9996 − 1 = −0, 0004 czyli f (x) 6= 0.
Nowy przedział.
Dla dwóch możliwych przedziałów [a; x] i [x; b] mamy:
f (−1, 3) ∗ f (−0, 9998) = 0, 69 ∗ (−0, 0004) < 0,
f (0, 9998) ∗ f (−0, 9985) = −0, 0004 ∗ (−0, 003) > 0.
Stąd nowy przedział [a; b] = [−1, 3; −0, 9998].
I powtarzamy algorytm obliczeń dla nowego przedziału.
Obliczamy
x = (−1, 3 ∗ (−0, 0004) − (−0, 9998) ∗ 0, 69)/(−0, 0004 − 0, 69) = 0, 6904/(−0, 6904) = −1, 0.
Sprawdzamy czy |b − a| ¬ ∆. Mamy | − 0, 9998 − (−1, 3)| = 0, 3002 > ∆ = 0, 25.
Sprawdzamy czy f (x) = 0.
f (x = −1, 0) = (−1, 0)2 − 1 = 1 − 1 = 0, 0 czyli f (x) = 0.
I koniec obliczeń. Rozwiązaniem równania jest więc x∗ = −1, 0.
Przykładowe zadania - równania nieliniowe : styczeń 2008
3
Zadanie 4. Rozwiązać podane równanie nieliniowe x2 − 1 = 0 metodą iteracji prostej,
przyjmując punkt startowy x0 = −0, 5 i α = 0, 5 oraz wielkość błędu ∆ = 0, 25.
Odpowiedź:
Po pierwsze korzystając ze wzoru x = x0 + αf (x0 ) obliczamy nowe przybliżenie rozwiązania
równania f (x) = 0. Czyli mamy:
x = x0 + α(x20 − 1) = −0, 5 + 0, 5 ∗ ((−0, 5)2 − 1) = −0, 5 + 0, 5 ∗ (−0, 75) = −0, 875.
Po drugie sprawdzamy czy |x − x0 | ¬ ∆. Czyli | − 0, 875 − (−0, 5)| = 0, 375 > ∆ = 0, 25.
Ponieważ warunek |x − x0 | ¬ ∆ nie jest spełniony obliczamy ponownie x przyjmując teraz jako
x0 poprzednio obliczone x = −0, 875. Mamy teraz:
x = x0 + α(x20 − 1) = −0, 875 + 0, 5 ∗ ((−0, 875)2 − 1) = −0, 875 + 0, 5 ∗ (−0, 2344) = −0, 9922.
Sprawdzamy czy |x − x0 | ¬ ∆. Czyli | − 0, 9922 − (−0, 875)| = 0, 1172 < ∆ = 0, 25 !!!
I koniec obliczeń. Rozwiązaniem równania jest x∗ = −0, 9922.
Zadanie 5. Znaleźć rozwiązanie równania x2 − 1 = 0 w przedziale [a; b] = [−1, 3; −0, 5]
metodą siecznych zakładając wielkość błędu ∆ = 0, 25.
Odpowiedź:
Po pierwsze przyjmujemy:
xi = a = −1, 3; xi+1 = b = −0, 5; fi = f (a) = 0, 69; fi+1 = f (b) = −0, 75.
Po drugie obliczamy x ze wzoru x = (xi ∗ fi+1 − xi+1 ∗ fi )/(fi+1 − fi ). Czyli x =
(−1, 3 ∗ (−0, 75) − (−0, 5) ∗ 0, 69)/(−0, 75 − 0, 69) = −0, 9167.
Po trzecie sprawdzamy czy |b − a| ¬ ∆. Mamy | − 0, 5 − (−1, 3)| = 0, 8 > ∆ = 0, 25.
Po czwarte sprawdzamy czy f (x) = 0.
Mamy f (x = −0, 9167) = (−0, 9167)2 − 1 = 0, 8403 − 1 = −0, 1597 czyli f (x) 6= 0.
Po piąte określamy nowy przedział [xi ; xi+1 ] taki, że ”nowe” xi jest teraz równe ”staremu” xi+1
z poprzednich obliczeń czyli xi = −0, 5. ”Nowe” xi+1 jest teraz równe x obliczonemu powyżej
czyli x = −0, 9167.
I powtarzamy dotychczasowy algorytm obliczeń dla nowego przedziału.
Przyjmujemy: xi = −0, 5; xi+1 = −0, 9167; fi = −0, 75; fi+1 = −0, 1597.
Obliczamy: x = (−0, 5 ∗ (−0, 1597) − (−0, 9167) ∗ (−0, 75)/(−0, 1597 − (−0, 75)) = −0, 997.
Sprawdzamy czy |b − a| ¬ ∆. Mamy | − 0, 9167 − (−0, 5)| = 0, 4167 > ∆ = 0, 25.
Sprawdzamy czy f (x) = 0.
Mamy f (x = −0, 997) = (−0, 997)2 − 1 = 0, 994 − 1 = −0, 006 czyli f (x) 6= 0.
Określamy nowy przedział [xi ; xi+1 ] = [−0, 9167; −0, 997].
I powtarzamy algorytm obliczeń dla nowego przedziału.
Przyjmujemy xi = −0, 9167; xi+1 = −0, 997; fi = −0, 1597; fi+1 = −0, 006.
Obliczamy x = (−0, 9167 ∗ (−0, 006) − (−0, 997) ∗ (−0, 1597)/(−0, 006 − (−0, 1597)) =
−0, 1537/0, 1537 = −1, 0.
Sprawdzamy czy |b − a| ¬ ∆. Mamy | − 0, 997 − (−0, 9167)| = 0, 0803 < ∆ = 0, 25.
Sprawdzamy jeszcze czy f (x) = 0.
Mamy f (x = −1, 0) = (−1, 0)2 − 1 = 1 − 1 = 0.
I koniec obliczeń. Rozwiązaniem równania jest więc znów x∗ = −1, 0.
Zadanie 6. Znaleźć rozwiązanie równania x3 − x − 1 = 0 w przedziale [a; b] = [1, 0; 2, 0]
metodą bisekcji zakładając wielkość błędu ∆ = 0, 01.
Przykładowe zadania - równania nieliniowe : styczeń 2008
4
Zadanie 7. Znaleźć rozwiązanie równania x3 − x − 1 = 0 w przedziale [a; b] = [1, 0; 2, 0]
metodą regula falsi zakładając wielkość błędu ∆ = 0, 01.
Zadanie 8. Znaleźć rozwiązanie równania x3 − x − 1 = 0 w przedziale [a; b] = [1, 0; 2, 0]
metodą siecznych zakładając wielkość błędu ∆ = 0, 01.
Zadanie 9. Rozwiązać podane równanie nieliniowe x3 +x2 −3x−3 = 0 metodą stycznych,
przyjmując punkt startowy x0 = 2 i wielkość błędu ∆ = 0, 01.
Zadanie 10. Rozwiązać podane równanie nieliniowe x3 + x2 − 3x − 3 = 0 metodą iteracji
prostej, przyjmując punkt startowy x0 = 2 oraz wielkość błędu ∆ = 0, 01.
UWAGA:
Wartość współczynnika α należy ustalić zgodnie z uwagami w konspekcie dotyczącymi metody iteracji prostej.

Podobne dokumenty