急求,用matlab求拟合函数Y=L/1+a*exp(-b*x)

野兔生长问题.在某地区野兔的数量在连续十年的统计数量(单位十万)如下x=[0 1 2 3 4 5 6 7 8 9]Y=[1 2.31969 4.50853 6.90568 6.00512 5.56495 5.32807 7.56101 8.9392 9.5817].求Y=L/1+a*exp(-b*x),并用图表示出野兔的生长规律,及x=10时,Y的数量

解答如下:
分两个步骤:
第一步建立函数模型的M文件
打开M编辑器,输入如下代码;
function yd=model(beta0,x)
%% L/1+a*exp(-b*x)
a=beta0(1);
b=beta0(2);
L=beta0(3);
x1=x;
yd=L./(1+a.*exp(-b.*x1));
保存这个M文件到work文件夹下,名称为:model
第二步:在命令窗口中输入如下代码:
x=[0 1 2 3 4 5 6 7 8 9]';
y=[1 2.31969 4.50853 6.90568 6.00512 5.56495 5.32807 7.56101 8.9392 9.5817]';
beta0=[3 0.3 11];
[beta,R,J]=nlinfit(x,y,'model',beta0)
运行后得到如下结果:
beta =

3.5457 0.3194 10.8337

R =

-1.3833
-0.7098
0.7359
2.3149
0.5556
-0.7416
-1.7921
-0.2955
0.4443
0.5539

J =

-0.5243 0 0.2200
-0.6155 2.1823 0.2797
-0.6935 4.9176 0.3483
-0.7461 7.9359 0.4238
-0.7638 10.8325 0.5031
-0.7432 13.1754 0.5822
-0.6883 14.6416 0.6573
-0.6088 15.1101 0.7253
-0.5171 14.6675 0.7842
-0.4243 13.5395 0.8334
其中的
beta =

3.5457 0.3194 10.8337
依次便是方程的系数:a=3.5457 b=0.3194 L=10.8337
所以回归的结果是:
y=10.8337./(1+3.5457.*exp(-0.3194.*x))
画出图像,在命令窗口中输入如下代码:
x=[0 1 2 3 4 5 6 7 8 9]';
x1=0:0.1:10;
y=[1 2.31969 4.50853 6.90568 6.00512 5.56495 5.32807 7.56101 8.9392 9.5817]';
y1=10.8337./(1+3.5457.*exp(-0.3194.*x1));
plot(x,y,'+',x1,y1)
计算x=10的估计值,输入如下代码:
x=10;
回车运行后得到结果为:
y =

9.4584
温馨提示:内容为网友见解,仅供参考
无其他回答

急求,用matlab求拟合函数Y=L\/1+a*exp(-b*x)
yd=L.\/(1+a.*exp(-b.*x1));保存这个M文件到work文件夹下,名称为:model 第二步:在命令窗口中输入如下代码:x=[0 1 2 3 4 5 6 7 8 9]';y=[1 2.31969 4.50853 6.90568 6.00512 5.56495 5.32807 7.56101 8.9392 9.5817]';beta0=[3 0.3 11];[beta,R,J]=nlinfit(x...

如何用Matlab绘制电路的零输入响应曲线
λ^2 + (R\/L)λ + (1\/LC) = 0 其中λ是特征根,它是特征方程的解。使用求根公式可以求得两个特征根σ和λ。这两个特征根直接决定了电路中电流的变化过程,也就是决定了电路的响应特性。4. 确定响应表达式的系数:响应表达式是由两个指数函数的线性组合构成的:x(t) = A exp(σt) + B...

matlab对一个极其复杂的函数的参数拟合
要是没有关系还好,但是你要求A,B,m相同,n不相同,这就比较难弄了!本来matlab里面有现成的工具可以进行数据拟合的,但是好像没有满足这个约束的方法!打入命令:cftool,这个是数据拟合工具箱的界面操作环境,你可以看一下。我的腾讯联系方式,散坝而要龄要伞流午 ...

用MATLAB求不定积分l=∫(a→b)e^(-x²)dx的精确值和近似值的步骤_百...
精确值:>> syms x a b >> int(exp(-x^2),a,b)ans =-(pi^(1\/2)*(erf(a) - erf(b)))\/2 % erf()误差函数 近似值:当a=0,b=1时,则 >> a=0;b=1;quad(@(x)exp(-x.^2),a,b)ans =0.7468

怎么用matlab仿真啊?
1、首先打开matlab软件,点击Simulink按钮打开Simulink仿真环境(需要一点时间),2、打开Simulink后,进入主界面,3、点击Simulink界面中的File\/New\/Model,建立并保存模型文件,4、在Simulink的左侧资源栏拖拽控件到model文件内并设置连线,5、检查系统框图无误后点击运行按钮(如下图箭头所指),大概几秒后...

帮忙写个Matlab小程序
1求 输入(12+2*(7-4))\/3^2执行2 输入x = (5*2+1.3-0.8)*10^2\/25执行再输入y= 2*x+1执行3 执行clear命令。观察结果4计算圆面积Area = ,半径r = 2,则可键入r=2;area=pi*r^2; area 问:语句末尾加分号与不加分号有何区别?请试验之5常用函数名称 含义 名称 含义sin 正弦 exp E为底的指数...

求高手这个Matlab 程序点除 点乘怎么改正确
自己调试吧。做成m文件,程序开头输入 echo on %显示每行命令的执行操作 另外,对怀疑句子,把句末的分号去掉 错误显示,你不能用匿名函数使用quadl函数,而要求用m文件,字符串或者内联函数调用。

matlab怎么用
Out1 输出端口模块 Parallel RLC Branch RLC并联支路 Powergui Product 乘法器 Random Source Scope 示波模块 Series RLC Branch RLC串联支路 Simulink SIMULINK基本库 Sine Wave 正弦波输出 Step 阶跃输出 Transfer Fcn 传递函数模块 Voltage Measurement 电压测量器 一、MATLAB常用的基本数学函数 abs(x):纯量的绝对值...

maple如何求偏导数
直接用yx就行了,偏导数就是 diffyx,x,得到的结果就是个yx的代数符号;p = repmatl, 1 1 sizem,3*m;先求驻点 f=x,yx^3y^3+3*x^2+3*y^29*xfx=D1fx,yfy=D2fx,ysolveD1fx,y=0,D2fx,y=0,x,y再求A,B,C f=x,yx^3y。20120521 如何在在Excel内使用Maple计算...

matlab积分怎么弄
其中,l是计算得到的积分;filename是被积函数;a和b分别是定积分的下限和上限,积分限可以为无穷大 。例:求定积分 首先定义函数:function f = fe(x )f=1.\/(x.*sqrt(1-log(x).^2));end 然后在命令窗口输入 I=integral(@fe,1,exp(1))I = 1.5708 (三)基于自适应高斯-克兰罗德...

相似回答