matlab 有公式的曲线拟合学了好几天matlab没会,请高手指教.希望详细一点.x=0,46.01,92.64,187.16,387.53,780.50,y=0,0.506,0.887,1.252,1.755,1.981公式中有3个参数a,b,c需要求出,公式是:y=a*b*x/{(c-x)*[1+(b-1)*x/c]}.
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/30 10:24:30
![matlab 有公式的曲线拟合学了好几天matlab没会,请高手指教.希望详细一点.x=0,46.01,92.64,187.16,387.53,780.50,y=0,0.506,0.887,1.252,1.755,1.981公式中有3个参数a,b,c需要求出,公式是:y=a*b*x/{(c-x)*[1+(b-1)*x/c]}.](/uploads/image/z/2629551-39-1.jpg?t=matlab+%E6%9C%89%E5%85%AC%E5%BC%8F%E7%9A%84%E6%9B%B2%E7%BA%BF%E6%8B%9F%E5%90%88%E5%AD%A6%E4%BA%86%E5%A5%BD%E5%87%A0%E5%A4%A9matlab%E6%B2%A1%E4%BC%9A%2C%E8%AF%B7%E9%AB%98%E6%89%8B%E6%8C%87%E6%95%99.%E5%B8%8C%E6%9C%9B%E8%AF%A6%E7%BB%86%E4%B8%80%E7%82%B9.x%3D0%2C46.01%2C92.64%2C187.16%2C387.53%2C780.50%2Cy%3D0%2C0.506%2C0.887%2C1.252%2C1.755%2C1.981%E5%85%AC%E5%BC%8F%E4%B8%AD%E6%9C%893%E4%B8%AA%E5%8F%82%E6%95%B0a%2Cb%2Cc%E9%9C%80%E8%A6%81%E6%B1%82%E5%87%BA%2C%E5%85%AC%E5%BC%8F%E6%98%AF%EF%BC%9Ay%3Da%2Ab%2Ax%2F%7B%28c-x%29%2A%5B1%2B%28b-1%29%2Ax%2Fc%5D%7D.)
matlab 有公式的曲线拟合学了好几天matlab没会,请高手指教.希望详细一点.x=0,46.01,92.64,187.16,387.53,780.50,y=0,0.506,0.887,1.252,1.755,1.981公式中有3个参数a,b,c需要求出,公式是:y=a*b*x/{(c-x)*[1+(b-1)*x/c]}.
matlab 有公式的曲线拟合
学了好几天matlab没会,请高手指教.希望详细一点.
x=0,46.01,92.64,187.16,387.53,780.50,
y=0,0.506,0.887,1.252,1.755,1.981
公式中有3个参数a,b,c需要求出,公式是:y=a*b*x/{(c-x)*[1+(b-1)*x/c]}.
matlab 有公式的曲线拟合学了好几天matlab没会,请高手指教.希望详细一点.x=0,46.01,92.64,187.16,387.53,780.50,y=0,0.506,0.887,1.252,1.755,1.981公式中有3个参数a,b,c需要求出,公式是:y=a*b*x/{(c-x)*[1+(b-1)*x/c]}.
x=[0 46.01 92.64 187.16 387.53 780.50];
y=[0 0.506 0.887 1.252 1.755 1.981];
f=@(p,x)p(1)*p(2)*x./((p(3)-x).*(1+(p(2)-1)*x/p(3))) ;
p=nlinfit(x,y,f,[1 1 1])%p=[a b c]
plot(x,y,'ro')
hold on
ezplot(@(x)f(p,x),[-10 800])
另外你也可以利用可视化工具cftool进行手动拟合
对于matlab7以前版本,不支持@定义函数的用下面的程序
x=[0 46.01 92.64 187.16 387.53 780.50];
y=[0 0.506 0.887 1.252 1.755 1.981];
f=inline('p(1)*p(2)*x./((p(3)-x).*(1+(p(2)-1)*x/p(3)))','p','x');
p=nlinfit(x,y,f,[1 1 1])%p=[a b c]
plot(x,y,'ro')
hold on
xx=-10:800;
yy=f(p,xx);
plot(xx,yy)
xlim([-10,800])