matlab指数函数曲线拟合 5
T=[14.576.054.573.542.892.452.121.891.71.550.40.410.430.440.430.43];t=[05101520253035...
T=[14.57 6.05 4.57 3.54 2.89 2.45 2.12 1.89 1.7 1.55 0.4 0.41 0.43 0.44 0.43 0.43];
t=[0 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 ];欲求温度T随时间t的变化关系,成指数函数形势,符合T=A+Bexp(-Rt)的形势,并求A、B、R的值,谢谢! 展开
t=[0 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 ];欲求温度T随时间t的变化关系,成指数函数形势,符合T=A+Bexp(-Rt)的形势,并求A、B、R的值,谢谢! 展开
2个回答
展开全部
fun=inline('a(1)+a(2)*exp(-a(3)*t)','a','t'); %建立函数
T=[14.57 6.05 4.57 3.54 2.89 2.45 2.12 1.89 1.7 1.55 0.4 0.41 0.43 0.44 0.43 0.43];
t=[0 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75];
a=lsqcurvefit(fun,[0,0,0],t,T); %拟合
hold on;plot(t,T,'bo'); %画原始数据点
t0=min(t):max(t);
T0=fun(a,t0);
plot(t0,T0,'r'); %画拟和曲线
hold off;disp(a) %显示A、B、R参数的值
T=[14.57 6.05 4.57 3.54 2.89 2.45 2.12 1.89 1.7 1.55 0.4 0.41 0.43 0.44 0.43 0.43];
t=[0 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75];
a=lsqcurvefit(fun,[0,0,0],t,T); %拟合
hold on;plot(t,T,'bo'); %画原始数据点
t0=min(t):max(t);
T0=fun(a,t0);
plot(t0,T0,'r'); %画拟和曲线
hold off;disp(a) %显示A、B、R参数的值
追问
首先谢谢您的答案,可是我拟合了一下不能得到A\B\R的值啊,怎么回事呢?
追答
A=a(1)
B=a(2)
R=a(3)
% fun=inline('a(1)+a(2)*exp(-a(3)*t)','a','t'); 函数式上对应的位置
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询