%
%   version 4.3.02
%
%
function Dpr = cal_Dt(s_D,daefile,y,x,t,varargin)
tresh(1)=1.0; %1e-10;
if s_D
    z0=feval('cal_D_column_exact',0,t,daefile,y,x,varargin{:});
    [z,fac,g1,nF]=numjac('cal_D_column_exact',0,t,z0,tresh,[],0,[],[],daefile,...
        y,x,varargin{:});
else
    z0=feval('cal_D_column',0,t,daefile,y,x,varargin{:});
    [z,fac,g1,nF]=numjac('cal_D_column',0,t,z0,tresh,[],0,[],[],daefile,...
        y,x,varargin{:});
end;
n=length(x);
m=length(y);
Dpr=sparse(m,n);
for i=0:n-1;
    Dpr(:,i+1)=z(i*m+1:(i+1)*m);
end;
