|
y = Sqr((p1+p3*x)/(1+p2*x+p4*x^2))
p1 -0.00590551283876795
p2 -1.80367859542165
p3 0.0105829517344612
p4 0.898279602287675
上述解基本近似,推荐使用
==========================================================================
function linshi
%扫描电压
xdata=[0.5:0.02:0.9];
%在电压a扫描时二极管的输出
ydata=[495.6e-9 811.4e-9 1.493e-6 2.527e-6 4.377e-6 7.557e-6 12.87e-6 20.91e-6 33.08e-6 ...
50.46e-6 74.24e-6 106.1e-6 148.4e-6 204.5e-6 277.5e-6 370.7e-6 483.8e-6 621.1e-6 782.2e-6 963.4e-6 1.168e-3];
%画图
plot(xdata,ydata,'r')
hold on;
%曲线拟合数据b
fun=inline('0.025875.*log((xdata.*6.287e18)./(b(1).*300.^b(3)))+xdata.*b(2)','b','xdata')
b=lsqcurvefit(fun,[0.001,10,2.5],xdata,ydata)
%画出拟合后的曲线
fplot(['0.025875*log((x*6.287e18)./(',num2str(b(1)),'.*300.^',num2str(b(3)),'))+x.*',num2str(b(2))],[0.5,0.9]);
==========================================================================
同样是你给定的函数,上述为正确形式,当然,由于公式或者初值的问题,拟合效果非常不好,不过没你的结果那么离谱。
[ 本帖最后由 bainhome 于 2006-7-5 03:41 编辑 ] |
|