function f = invlap(F, tt, alpha); % f = invlap(F, t, alpha); % alpha largest pole of F (default zero) % f vector of real-space values f(t) if nargin <= 2, alpha = 0; end tol = 1e-9; f = []; t = tt(:); allt = t; logallt = log10(allt); iminlogallt = floor(min(logallt)); imaxlogallt = ceil(max(logallt)); for ilogt = iminlogallt:imaxlogallt, t = allt(find((logallt>=ilogt) & (logallt<(ilogt+1)))); if ~isempty(t), T = max(t)*2; %---------------------------------------- % modified by B. Welfert gamma = alpha-log(tol)/(2*T); % gamma = alpha-1.2*log(tol)/(2*T); %---------------------------------------- nt = length(t); M = 20; run = [0:1:2*M]'; s = gamma + i*pi*run/T; a = feval(F,s); a(1) = a(1)/2; e = zeros(2*M+1, M+1); q = zeros(2*M , M+1); e(:,1) = zeros(2*M+1,1); q(:,2) = a(2:2*M+1,1)./a(1:2*M,1); for r = 2:M+1, e(1:2*(M-r+1)+1,r) = ... q(2:2*(M-r+1)+2,r) - q(1:2*(M-r+1)+1,r) + e(2:2*(M-r+1)+2,r-1); if r