• Rezultati Niso Bili Najdeni

Laboratorijske vaje Numeriˇcne metode 4. Vaja. Sistemi enaˇcb B. Jurˇciˇc Zlobec Numeriˇcne metode FE, Ljubljana, 15. november 2013

N/A
N/A
Protected

Academic year: 2022

Share "Laboratorijske vaje Numeriˇcne metode 4. Vaja. Sistemi enaˇcb B. Jurˇciˇc Zlobec Numeriˇcne metode FE, Ljubljana, 15. november 2013"

Copied!
13
0
0

Celotno besedilo

(1)

Laboratorijske vaje Numeriˇ cne metode

4. Vaja. Sistemi enaˇ cb

B. Jurˇ ciˇ c Zlobec

Numeriˇ cne metode FE, Ljubljana, 15. november 2013

(2)

Newtonova metoda v kompleksnem

Imaginarna enota v octave se skriva za imenoma i in j.

Ce zapiˇsemo v ukazno vrstico sistema ˇ octave iˆ2 dobimo odgovor -1, enako velja za konstanto j.

Kompleksno ˇstevilo z = 2 + 3 i zapiˇsemo z=2+3*i.

S pomoˇ cjo Newtonove metode izraˇ cunaj vse tri korene bi- nomske enaˇ cbe z 3 − 1 = 0.

Postopek je enak kot v realnem primeru.

Kakˇsne zaˇ cetne pribliˇ zke moramo vzeti, da bo Newtonova iteracija konvergirala k posameznemu korenu enaˇ cbe?

Borut Jurˇciˇc Zlobec Laboratorijske vaje Numericne metode

(3)

Octave

f=inline(’z.ˆ3-1’,’z’);

df=inline(’3*z.ˆ2’,’z’);

z=[-3,2,i,exp(-pi*i/3)];

for k=1:100, z=z-f(z)./df(z);

if abs(f(z))<10ˆ(-5), break,

end end;

z

z =

1.00000 + 0.00000i 1.00000 + 0.00000i

-0.50000 + 0.86603i -0.50000 + 0.86603i

(4)

Graviˇ cni prikaz

Borut Jurˇciˇc Zlobec Laboratorijske vaje Numericne metode

(5)

Reˇsevanje sistemov linearnih enaˇ cb

Ce je ˇ A obrnljiva matrika reda n × n, n ∈ N in b vektor stolpec reda n × 1,

potem reˇsitev enaˇ cbe A x = b zapiˇsemo v obliki x = A −1 b.

Levo deljenje

V octave to zapiˇsemo kot x=A\b.

Naredimo preizkus A*x-b.

(6)

Primer

S pomoˇ cjo levega deljenja reˇsi sistem enaˇ cb:

2x + 4y + 2z = 12 3x − 2y + z = 3

−2x + 4y − 2z = −5

Borut Jurˇciˇc Zlobec Laboratorijske vaje Numericne metode

(7)

Octave

A=[2,4,2;3,-2,1;-2,4,-2]

b=[12;3;-5]

x=A\b norm(A*x-b)

A = 2 4 2 3 -2 1 -2 4 -2 x = 0.25000

0.87500

4.00000

ans = 0

(8)

Newtonova metoda za sisteme nelinearnih enaˇ cb

f (x, y) = 0, g (x, y) = 0.

"

x n+1

y n+1

#

=

"

x n

y n

#

" ∂f

∂x (x n , y n ) ∂y ∂f (x n , y n )

∂g

∂x (x n , y n ) ∂g ∂y (x n , y n )

# −1 "

f (x n , y n ) g (x n , y n )

#

Borut Jurˇciˇc Zlobec Laboratorijske vaje Numericne metode

(9)

Reˇsi sistem enaˇ cb s pomoˇ cjo Newtonove metode

x 2 + y 2 = 4, y = 1

3 (x − 1) 2 − 1 2 . Izberi zaˇ cetna pribliˇ zka: (−1, 0) za levo

in (2, 0) za desno toˇ cko.

Iteracijo zakljuˇ ciˇs, ko pade neskonˇ cna norma razlike dveh za-

porednih pribliˇ zkov pod δ = 10 −8 .

(10)

Newton v 2D

f = @(x,y) [xˆ2+yˆ2-4;1/3*(x-1)ˆ2-1/2-y];

df= @(x,y) [2*x,2*y;2/3*(x-1),-1]’;

x0=[-1;0]; delta=1e-8;

for i=1:100

x1=x0-df(x0(1),x0(2))\f(x0(1),x0(2));

if abs(x1-x0)<delta, break,

end;

x0=x1;

printf(’x=%0.8f, y=%0.8f\n’,x1);

end;

Borut Jurˇciˇc Zlobec Laboratorijske vaje Numericne metode

(11)

Izpis

x0=-1.00000000, y0=0.00000000 x1=-2.50000000, y1=2.83333333 x2=-1.70274390, y2=1.72306911 x3=-1.43249027, y3=1.44799062 x4=-1.40349916, y4=1.42532257 x5=-1.40320722, y5=1.42513495 x6=-1.40320719, y6=1.42513493

x0=2.00000000, y0=-0.00000000

x1=2.00000000, y1=-0.16666667

x2=1.99264706, y2=-0.17156863

x3=1.99262792, y3=-0.17156327

(12)

Grafiˇ cni prikaz

-2 -1 1 2

-0.5 0.5 1.0 1.5 2.0 2.5

Borut Jurˇciˇc Zlobec Laboratorijske vaje Numericne metode

(13)

Newton v 2D nekoliko drugaˇ ce

f = @(x) [x(1)ˆ2+x(2)ˆ2-4;1/3*(x(1)-1)ˆ2-1/2-x(2)];

df= @(x) [2*x(1),2*x(2);2/3*(x(1)-1),-1];

x0=[-1;0]; delta=1e-8;

for i=1:100

x1=x0-df(x0)\f(x0);

if norm(x1-x0)<delta, break,

end;

x0=x1;

printf(’x=%0.8f, y=%0.8f\n’,x1);

end;

Reference