Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function [y,x,iter]=VoltII_SimpleIter_Simpson(a,b,n,K,f,tol,y0)
- x=linspace(a,b,n);
- h=x(2)-x(1);
- rev_h=(n-1)/(b-a);
- F=f(x);
- if(nargin<=6) y0=F;
- end
- if(nargin<=5) tol=1e-10;
- end
- y=ones(1,n)*inf;
- yk=y0;
- iter=0;
- yk(1)=F(1);
- yk(2)=(F(2)+(h/2)*K(x(2),x(1))*yk(1))/...
- (1-(h/2)*K(x(2),x(2)));
- y(1)=F(1);
- y(2)=(F(2)+(h/2)*K(x(2),x(1))*y(1))/...
- (1-(h/2)*K(x(2),x(2)));
- A=[1,2*(1+mod(1:(n-3),2))]./3;
- while(norm(yk-y,inf)/norm(yk,inf)>tol)
- y=yk;
- iter=iter+1;
- for i=3:n
- j=1:i-2;
- yk(i)=(F(i)/h+sum(A(j).*K(x(i),x(j)).*y(j))+...
- (mod(i,2)*(1/2)+(5/6))*K(x(i),x(i-1))*y(i-1))/...
- (rev_h-1/(2+mod(i,2))*K(x(i),x(i)));
- end
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement