如何用matlab进行多元曲线拟合设(x,y)=f(a,b,c)已知当c=1,2,3时,(x,y)对应f(a0,b0,c)的各三个值已知当b=1,2,3时,(x,y)对应f(a0,b,c0)的各三个值已知当a=1,2,3时,(x,y)对应f(a,b0,c0)的各三个值要求拟
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/02 02:00:17
![如何用matlab进行多元曲线拟合设(x,y)=f(a,b,c)已知当c=1,2,3时,(x,y)对应f(a0,b0,c)的各三个值已知当b=1,2,3时,(x,y)对应f(a0,b,c0)的各三个值已知当a=1,2,3时,(x,y)对应f(a,b0,c0)的各三个值要求拟](/uploads/image/z/3837760-16-0.jpg?t=%E5%A6%82%E4%BD%95%E7%94%A8matlab%E8%BF%9B%E8%A1%8C%E5%A4%9A%E5%85%83%E6%9B%B2%E7%BA%BF%E6%8B%9F%E5%90%88%E8%AE%BE%EF%BC%88x%2Cy%EF%BC%89%3Df%28a%2Cb%2Cc%29%E5%B7%B2%E7%9F%A5%E5%BD%93c%3D1%2C2%2C3%E6%97%B6%2C%EF%BC%88x%2Cy%EF%BC%89%E5%AF%B9%E5%BA%94f%28a0%2Cb0%2Cc%29%E7%9A%84%E5%90%84%E4%B8%89%E4%B8%AA%E5%80%BC%E5%B7%B2%E7%9F%A5%E5%BD%93b%3D1%2C2%2C3%E6%97%B6%2C%EF%BC%88x%2Cy%EF%BC%89%E5%AF%B9%E5%BA%94f%28a0%2Cb%2Cc0%29%E7%9A%84%E5%90%84%E4%B8%89%E4%B8%AA%E5%80%BC%E5%B7%B2%E7%9F%A5%E5%BD%93a%3D1%2C2%2C3%E6%97%B6%2C%EF%BC%88x%2Cy%EF%BC%89%E5%AF%B9%E5%BA%94f%28a%2Cb0%2Cc0%29%E7%9A%84%E5%90%84%E4%B8%89%E4%B8%AA%E5%80%BC%E8%A6%81%E6%B1%82%E6%8B%9F)
如何用matlab进行多元曲线拟合设(x,y)=f(a,b,c)已知当c=1,2,3时,(x,y)对应f(a0,b0,c)的各三个值已知当b=1,2,3时,(x,y)对应f(a0,b,c0)的各三个值已知当a=1,2,3时,(x,y)对应f(a,b0,c0)的各三个值要求拟
如何用matlab进行多元曲线拟合
设(x,y)=f(a,b,c)
已知当c=1,2,3时,(x,y)对应f(a0,b0,c)的各三个值
已知当b=1,2,3时,(x,y)对应f(a0,b,c0)的各三个值
已知当a=1,2,3时,(x,y)对应f(a,b0,c0)的各三个值
要求拟合出x和y的关系式,其中包含了a,b,c等参数
请问在matlab中能做到吗?调用哪些函数?这些函数的各个参数的意义是什么?
比如,V=a1*p+a2*p^2+b1*c+b2*c^2,已知四组p,c值和对应的V值,怎么用matlab把a1,a2,b1,b2算出来?
如何用matlab进行多元曲线拟合设(x,y)=f(a,b,c)已知当c=1,2,3时,(x,y)对应f(a0,b0,c)的各三个值已知当b=1,2,3时,(x,y)对应f(a0,b,c0)的各三个值已知当a=1,2,3时,(x,y)对应f(a,b0,c0)的各三个值要求拟
可以做到!关于参数问题 help之
我一般喜欢使用nlinfit
非线性拟合,我用过很多次发现要用好她
的关键在于你要找到一个很好的初值
举个例子:
椭圆的方程可以是
ax^2+by^2+cxy+dx+ey+f=0;
发现其实双曲线,抛物线和他的一样
所以你在选取初值的时候最起码初值带入后
是个椭圆,
不然你拟合出来不仅仅是效果差,可能就变质
你说的情况其实是解方程了(四个未知数四个方程)
对于更多的数据:
先编写函数
function f=ffun(a,x)
f=a(1)*x(:,1)+a(2)*x(:,1).^2+a(3)*x(:,2)+a(4)*x(:,2).^2;
其余运行
x=[p,c];%p,c为列响量,f也为列向量
a0=[1,1,1,1];%初值取好点效果更好
a=nlinfit(x,f,'ffun',a0)
楼上的说法完全支持,只是没有用过nlinfit