% % test of V-cycle code with full data structure; test4a.m % global sigma sigma=10; lmax=10; itmax=5; convhist=zeros(itmax,lmax-4); lv=2^(lmax+1)+lmax-2; v=zeros(lv,1); f=zeros(lv,1); for l=5:lmax v=zeros(lv,1); f=zeros(lv,1); ntl=2^(l+1)+l-2; ifu=ntl; ifl=ntl-2^l; nl=2^l; nt=nl+1; x=0:nl; x=x'/nl; ue=exp(x).*sin(pi*x); fe=-2*pi*exp(x).*cos(pi*x)+(pi^2 + sigma -1)*ue; f(ifl:ifu)=fe; vt=v; u=helmholtz(fe); for it = 1:itmax [vt(1:ifu),f(1:ifu)]=vcycle(v(1:ifu),f(1:ifu),1,1); convhist(it,l-4)=norm(vt(ifl:ifu)-u,inf)/norm(v(ifl:ifu)-u,inf); v(ifl:ifu)=vt(ifl:ifu); end end convhist