% Testroutine % Achtung, die Laufzeit betraegt ca 1 min % % Das Programm StdApproxMat hat die Syntax % % A = StdApproxMat(U,V,I,J,h); h = .12; TstNearestInner s = linspace(0,1,17); [U,V] = ndgrid(s,s); f = find(U.^2+V.^2<1); U = U(f); V = V(f); G = exp(1-(U.^2+V.^2)); A = StdApproxMat(U,V,I,J,h); F = A\G; r = linspace(0.9,1,5); w = linspace(0,pi/2,20); [R,W] = ndgrid(r,w); f = 0*R; K = [I,J]; nK = length(K); mK = max(real(K)); T = (-3:mK+4)*h; m = length(T) - 4; P = zeros(m,m); for r = 1:length(R(:)) u = R(r)*cos(W(r)); v = R(r)*sin(W(r)); for k = 1:nK P(:) = 0; P(real(K(k))+4,imag(K(k))+4) = 1; f(r) = f(r) + F(k)*seval(P,T,T,u,v); end end Ae = A*E; Fe = Ae\G; F = E*Fe; fe = 0*R; for r = 1:length(R(:)) u = R(r)*cos(W(r)); v = R(r)*sin(W(r)); for k = 1:nK P(:) = 0; P(real(K(k))+4,imag(K(k))+4) = 1; fe(r) = fe(r) + F(k)*seval(P,T,T,u,v); end end figure(1) clf reset mesh(R.*cos(W), R.*sin(W), f - exp(1-R.^2)) title('Fehler Standard') figure(2) clf reset mesh(R.*cos(W), R.*sin(W), fe - exp(1-R.^2)) title('Fehler erweitert')