⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 seqmodfree.m

📁 ASUFIT-Matlab-全局拟合程序
💻 M
字号:
function f = seqmodfree(params)
global data
global fit
global amps
global numTao
global numTaoFixed
global taoFixed
global t
global chisq
global textBox
global absLeftEnd1
global absRightEnd1
global absLeftEnd2
global absRightEnd2

%This is the function referred to in the call to "leastsq".%It assumes the form:%y(x)=a11*exp(-k1*t)+a12*exp(-k2*t)+. . .+a1n*exp(-kn*t)%     a21*exp(-k1*t)+a22*exp(-k2*t)+. . .+a2n*exp(-kn*t)	%     .%     .%     .%     am1*exp(-k1*t)+am2*exp(-k2*t)+. . .+amn*exp(-kn*t)%and makes available the vector of k values and the matrix%of a values to the script file "fit.m".
tTemp = t(absLeftEnd1:absRightEnd1)-t(absLeftEnd1);
tTemp=tTemp';taoFit(1:numTaoFixed) = taoFixed.^-1;taoFit(numTaoFixed + 1:numTaoFixed + numTao) = params(1:numTao).^-1;
shift = params(numTao + 1) - t(absLeftEnd1);sigma = params(numTao + 2)/2.355;
space=zeros(length(tTemp),numTao+numTaoFixed);
for j = 1:(numTao + numTaoFixed)
    space(:,j) = exp(-taoFit(j)*tTemp).*(1+erf((tTemp-shift-taoFit(j)*sigma^2)/sqrt(2)/sigma))*exp(taoFit(j)*(shift+taoFit(j)*sigma^2/2));
end%for j = 2:(numTao+numTaoFixed)%    temp= zeros(size(tTemp));%     for k=1:j%       temp=temp+coeff(k,j,taoFit)*space(:,k);%     end
%B=coeff(taoFit);space=space*coeff(taoFit)';%enddatatemp = data(absLeftEnd2:absRightEnd2,absLeftEnd1:absRightEnd1)';%z=space*ones(numTao+numTaoFixed,size(datatemp,2));
a= space\datatemp;%a=ones(numTao+numTaoFixed,1)*a(1,:);z = space*a;f = z - datatemp;
fit = z';amps = a';%for j = 2:(numTao+numTaoFixed)%    temp= coeff(1,j,taoFit);%     for k=2:j%       temp=temp+coeff(k,j,taoFit);%     end%    amps(:,j)=amps(:,j)*temp;%end
chisq = trace(f'*f);
set(textBox,'string',['chisq = ' num2str(chisq)])
drawnow;function B=coeff(taoFit)
B=zeros(size(taoFit,2));
B(1,1)=1;
if (size(taoFit,2)>=2)
   for i=2:length(taoFit)
      for j= 1:i
         B(i,j)=prod(taoFit(1:i-1))/prod(taoFit(find(taoFit(1:i)-taoFit(j)))-taoFit(j));
      end
   end
end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -