matlab中的指数曲线拟合问题,我有一个函数,他的格式是y=exp(-x/a)y=exp(-x/a)我想要算出a的值.x,y是数组plot(x,y)y=log(y)/log(exp(1));p=polyfit(x,y,1),但是算出来是两个数.因为polyfit是按y=ax+b的形式算得.不知
来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/19 01:18:21
matlab中的指数曲线拟合问题,我有一个函数,他的格式是y=exp(-x/a)y=exp(-x/a)我想要算出a的值.x,y是数组plot(x,y)y=log(y)/log(exp(1));p=polyfit(x,y,1),但是算出来是两个数.因为polyfit是按y=ax+b的形式算得.不知
matlab中的指数曲线拟合问题,我有一个函数,他的格式是y=exp(-x/a)
y=exp(-x/a)
我想要算出a的值.x,y是数组
plot(x,y)
y=log(y)/log(exp(1));
p=polyfit(x,y,1),
但是算出来是两个数.因为polyfit是按y=ax+b的形式算得.
不知哪位高人能指导我一下.
对不起,我可能没有描述清楚.其实是我有x,y两个数组,分别化为x,y轴,画出的点大概就是指数分布,应该大概符合y=exp(-x/a)的表达式,我就想求出a而已.大家回答的已经先给了a的值,和我的目的不同吧.希望大家继续帮助我
matlab中的指数曲线拟合问题,我有一个函数,他的格式是y=exp(-x/a)y=exp(-x/a)我想要算出a的值.x,y是数组plot(x,y)y=log(y)/log(exp(1));p=polyfit(x,y,1),但是算出来是两个数.因为polyfit是按y=ax+b的形式算得.不知
a=0.3145;
x=-0.3:0.01:3;
y=exp(-x/a);
plot(x,y)
ly=log(y);
p=polyfit(x,ly,1)
%拟合出来的p(1)是斜率,p(2)是截距
%理论上p(2)应当等于0
%这里的斜率与你的a有a=-1/p(1)
apoly=-1/p(1)
我们是没有数据的情况下,才生成数据让你看一下,怎么操作啊.
你如果有数据的话,你将前三行,改成你的数据.
比如你的数据
x=[1,2,3,4,5,6,7];
y=[7,6,5,4,3,2,1];
这样子.