% EXAMPLE3_48 Computations for Example 3.48. % fprintf('\n') f1='%15.0f %12.3e %12.3e\n'; disp(' n E2 Einf') N=10; k=(1:N)'; E2=zeros(N,1); Einf=zeros(N,1); xw(k,1)=-1+2*(k-1)/(N-1); xw(k,2)=2/N; d=ones(1,N); ab=r_hahn(N-1); ab(:,1)=-1+2*ab(:,1)/(N-1); ab(:,2)=(2/(N-1))^2*ab(:,2); ab(1,2)=2; f=exp(-xw(:,1)); %f=log(2+xw(:,1)); %f=sqrt(1+xw(:,1)); %f=abs(xw(:,1)); [phat,c]=least_squares(N-1,f,xw,ab,d); t=linspace(-1,1)'; p=zeros(100,N); ft=exp(-t); %ft=log(2+t); %ft=sqrt(1+t); %ft=abs(t); for n=1:N E2(n)=sqrt(sum(xw(:,2).*((phat(:,n)-f).^2))); p(:,n)=clenshaw(n-1,t,1,0,ab,c); Einf(n)=max(abs(p(:,n)-ft)); if n==1 fprintf('%15.0f %12.3e %12.3e f(t)=exp(-t)\n',n-1,E2(n),Einf(n)) % fprintf('%15.0f %12.3e %12.3e f(t)=log(2+t)\n',n-1,E2(n),Einf(n)) % fprintf('%15.0f %12.3e %12.3e f(t)=sqrt(1+t)\n',n-1,E2(n),Einf(n)) % fprintf('%15.0f %12.3e %12.3e f(t)=abs(t)\n',n-1,E2(n),Einf(n)) else fprintf(f1,n-1,E2(n),Einf(n)) end end