117x Filetype PDF File size 0.06 MB Source: www.math.wsu.edu
SOLUTION of NONLINEAR SYSTEMS Background: • A nonlinear system with n equations, n variables f (x ,x ,...,x ) = 0 1 1 2 n f (x ,x ,...,x ) = 0 2 1 2 n . . . f (x ,x ,...,x ) = 0, n 1 2 n or f(x) = 0. Solution(s)? NumericalmethodsusegeneralizationsofNewtonmethod. • Examples a) 2 2 x +2x −x −2x = 0 1 2 2 3 2 2 x −8x +10x = 0 1 2 3 2 x −7x x = 0. 1 2 3 b) three intersecting radius-1 spheres: (u−1)2+(v−1)2+w2 = 1 (u−1)2+v2+(w−1)2 = 1 u2 +(v −1)2 +(w−1)2 = 1. 1 SOLUTION of NONLINEAR SYSTEMS Multivariable Newton Method • Use Taylor approximation of f near approximate x : 0 2 f(x) = f(x ) + Df(x )(x −x )+O(||x−x || ), 0 0 0 0 with Jacobian matrix ∂f1 ∂f1 ... ∂f1 ∂x1 ∂x2 ∂xn ∂f2 ∂f2 ... ∂f2 Df =∂x1 ∂x2 ∂xn . . . . . . . . . . . . ∂fn ∂fn ... ∂fn ∂x1 ∂x2 ∂xn • Linear approximation produces an iterative method: for each iteration, solve f(x ) + Df(x )(x −x )=0, k k k+1 k to get multivariate Newton iteration −1 x =x −(Df(x )) f(x ). k+1 k k k Note: (Df)−1 should not be explicitly computed. Typical algorithm solves Df(x )s = −f(x ), k k k then uses the update x =x +s . k+1 k k • Convergence Theory: if r is a solution, Df(r) is nonsingular and x0 is close enough to r, then {x } converges quadratically to r. k This means ||x −r|| = O(||x −r||2). k+1 k 2 SOLUTION of NONLINEAR SYSTEMS • Multivariate Newton Examples 2 2 a) x +2x −x −2x =0, 1 2 2 3 2 2 x −8x +10x =0, 1 2 3 2 x −7x x =0, so 1 2 3 Df = Matlab f=@(x)[x(1)^2+2*x(2)^2-x(2)-2*x(3); ... x(1)^2-8*x(2)^2+10*x(3); x(1)^2-7*x(2)*x(3)]; Df=@(x)[2*x(1) 4*x(2)-1 -2; 2*x(1) -16*x(2) 10;... 2*x(1) -7*x(3) -7*x(2)]; x = [1 1 1]’; k = 6; for i = 1:k, x = x-Df(x)\f(x); disp([i x’]), end disp(norm(f(x))); 1 0.72791 0.73488 0.33023 2 0.61379 0.53493 0.16056 3 0.55262 0.43269 0.11125 4 0.53125 0.4026 0.10077 5 0.52917 0.40002 0.1 6 0.52915 0.4 0.1 2.4858e-09 x = [.1 .1 .1]’; k = 6; for i = 1:k, x = x-Df(x)\f(x); disp([i x’]), end 1 -36.35 -9.5 -0.8 2 -18.125 -4.7032 -0.34947 3 -9.0129 -2.3113 -0.12306 ... Solution at 0 not found because of singular Df. 3 SOLUTION of NONLINEAR SYSTEMS 2 2 2 b) (x −1) +(x −1) +x =1, 1 2 3 2 2 2 (x −1) +x +(x −1) =1, 1 2 3 2 2 2 x +(x −1) +(x −1) =1. 1 2 3 Matlab f=@(x)[(x(1)-1)^2+(x(2)-1)^2+x(3)^2-1; ... (x(1)-1)^2+x(2)^2+(x(3)-1)^2-1; ... x(1)^2+(x(2)-1)^2+(x(3)-1)^2-1]; Df=@(x)[ 2*x(1)-2 2*x(2)-2 2*x(3); ... 2*x(1)-2 2*x(2) 2*x(3)-2; ... 2*x(1) 2*x(2)-2 2*x(3)-2 ]; x = [0 0 0]’; k = 4; for i = 1:k, x = x-Df(x)\f(x); disp([i x’]), end disp(norm(f(x))); 1 0.25 0.25 0.25 2 0.325 0.325 0.325 3 0.33323 0.33323 0.33323 4 0.33333 0.33333 0.33333 5.3649e-08 x = [3 2 -1]’; k = 6; for i = 1:k, x = x-Df(x)\f(x); disp([i x’]), end disp(norm(f(x))); 1 3.25 3.25 3.25 2 1.9798 1.9798 1.9798 3 1.3656 1.3656 1.3656 4 1.0956 1.0956 1.0956 5 1.0107 1.0107 1.0107 6 1.0002 1.0002 1.0002 0.00057171 4
no reviews yet
Please Login to review.