% FPI for nonlinear equations system. % Input: g1, g2, g3 are functions, x0 - initial vector, eps -tolerance % Output: x - solution and s - iteration number, and forerr - ||xk-xk-1|| function[x forerr s]=fpimulti(g1,g2,g3,x0,eps) s=1; x(1,:)=x0; forerr1(s)=1; while norm(forerr1(s),inf)>eps s=s+1; x(s,1)=g1(x(s-1,1),x(s-1,2),x(s-1,3)); x(s,2)=g2(x(s-1,1),x(s-1,2),x(s-1,3)); x(s,3)=g3(x(s-1,1),x(s-1,2),x(s-1,3)); forerr1(s)=norm(x(s,:)-x(s-1,:),inf); end forerr=forerr1'; ___________________________________________________________________________ format long eps=10^(-7); x0=[0.1;0.1;-0.1]; g1=inline('(1/3)*cos(z*y)+1/6+x-x'); g2=inline('(1/9)*sqrt(x^2+sin(z)+1.06)-0.1+y-y'); g3=inline('-exp(x*y)/20-(10*pi-3)/60+z-z'); [x forerr step]=fpimulti(g1,g2,g3,x0,eps) x = 0.100000000000000 0.100000000000000 -0.100000000000000 0.499983333472222 0.009441149603713 -0.523101267285757 0.499995934919313 0.000025567746767 -0.523363310908805 0.499999999970157 0.000012336720363 -0.523598136413912 0.499999999993046 0.000000034167906 -0.523598467181241 0.500000000000000 0.000000016487040 -0.523598774744101 0.500000000000000 0.000000000045664 -0.523598775186123 forerr = 1.000000000000000 0.423101267285757 0.009415581856947 0.000234825505107 0.000012302552457 0.000000307562860 0.000000016441376 step = 7 ___________________________________________________________________________ % Seidel Method for nonlinear equations system. % Input: g1, g2, g3 are functions, x0 - initial vector, eps -tolerance % Output: x - solution and s - iteration number, and forerr - ||xk-xk-1|| function[x forerr s]=seidelmulti(g1,g2,g3,x0,eps) s=1; x(1,:)=x0; forerr1(s)=1; while norm(forerr1(s),inf)>eps s=s+1; x(s,1)=g1(x(s-1,1),x(s-1,2),x(s-1,3)); x(s,2)=g2(x(s,1),x(s-1,2),x(s-1,3)); x(s,3)=g3(x(s,1),x(s,2),x(s-1,3)); forerr1(s)=norm(x(s,:)-x(s-1,:),inf); end forerr=forerr1'; ___________________________________________________________________________ [x forerr step]=seidelmulti(g1,g2,g3,x0,eps) x = 0.100000000000000 0.100000000000000 -0.100000000000000 0.499983333472222 0.022229793558577 -0.524157601703545 0.499977372401068 -0.000031270728399 -0.523597993871579 0.499999999955319 0.000000041787070 -0.523598776642975 0.500000000000000 -0.000000000055847 -0.523598775596903 forerr = 1.000000000000000 0.424157601703545 0.022261064286976 0.000031312515468 0.000000041842916 step = 5