matlab 多元高次非线性函数拟合,回归,求教高手!有这样几个数组自变量n个:x=[...]y=[...]m=[.]w=[.].因变量一个:z=[.]模型1(两个自变量)z=a+b*x+c*x^(1/2)+d*x^2+e*y+f*y^(1/2)+g*y^2+h*x*y;模型2(三个自变量)

来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/18 14:33:30
matlab多元高次非线性函数拟合,回归,求教高手!有这样几个数组自变量n个:x=[...]y=[...]m=[.]w=[.].因变量一个:z=[.]模型1(两个自变量)z=a+b*x+c*x^(1/

matlab 多元高次非线性函数拟合,回归,求教高手!有这样几个数组自变量n个:x=[...]y=[...]m=[.]w=[.].因变量一个:z=[.]模型1(两个自变量)z=a+b*x+c*x^(1/2)+d*x^2+e*y+f*y^(1/2)+g*y^2+h*x*y;模型2(三个自变量)
matlab 多元高次非线性函数拟合,回归,求教高手!
有这样几个数组
自变量n个:
x=[...]
y=[...]
m=[.]
w=[.]
.
因变量一个:
z=[.]
模型1(两个自变量)
z=a+b*x+c*x^(1/2)+d*x^2+e*y+f*y^(1/2)+g*y^2+h*x*y;
模型2(三个自变量)
z=a+b*x+c*y+d*m+e*x^2+f*y^2+g*m^2;
模型3(三个自变量)
z=a+b*x+c*y+d*m+e*x^2+f*y^2+g*m^2+h*x^(1/2)+i*y^(1/2)+j*m^(1/2);
模型4(四个自变量)
z=w*(a+b*x+c*y+d*m+e*x^2+f*y^2+g*m^2);
模型5(四个自变量)
z=w*(a+b*x+c*y+d*m+e*x^2+f*y^2+g*m^2+h*x^(1/2)+i*y^(1/2)+j*m^(1/2));
模型6(n个自变量)
z=.;
求解里面的相关系数a,b,c,d,e.
简单一次函数二次函数二元都会了,但像上面这样的复杂模型该如何求解呢?
其实,模型无所谓,我需要的是尽可能的把上面的点拟合出来.
有没有直接输入上面的数组,用matlab帮我们构造出最理想的模型的工具或命令,理想模型的标准就是数组上所有数据都是有效数据,都对结果有影响,其实也是我不是解数学题,而是解决实际问题,上面的数据都是有效值!
不是数学专业的,上面的名词可能有用错的.但反正目的就一个:
我输入一系列的自变量,能输出一个和实际输出极为接近的值!
授之以鱼不如授之以渔,希望能教会我如何使用matlab进行数值的拟合、回归、求解之类的.本人拥有一定的matlab基础,这点无需担忧!

matlab 多元高次非线性函数拟合,回归,求教高手!有这样几个数组自变量n个:x=[...]y=[...]m=[.]w=[.].因变量一个:z=[.]模型1(两个自变量)z=a+b*x+c*x^(1/2)+d*x^2+e*y+f*y^(1/2)+g*y^2+h*x*y;模型2(三个自变量)
推荐你使用一个函数nlinfit,我简单给你介绍一下使用方法,以你的模型2为例:
第一步:你需要建立一个function文件,名字随便,这里我们命名为"hougen",在这个文件内,你要把模型二描述清楚,首先我们假定beta=[a;b;c;d;e;f;g];X=[x,y,m];那么该函数文件内部为:
function z=hougen(beta,X)
for i=1:n ;//这里的n是指你已有数据的长度,比如你已有的结果z=[3,2,2,3,4];n就是5,i其实就是第i次的原始数据
a=beta(i,1);b=beta(i,2);……
x=X(i,1);……
z(i)=a+b*x+c*y+d*m+e*x^2+f*y^2+g*m^2;
end
第二步:你就可以直接用下面的命令了
betahat = nlinfit(X,z,@hougen,beta);
X是一个n*3的矩阵,用已知的[x,y,m]对其赋值,z是一个n*1的矩阵,用已知的z对其赋值,beta内是初始值,表示你对所求值的一个预估,这个很关键,不能赋值太离谱,你必须给一个合理的初始值.
然后你就得到想要的结果了,其他模型也用类似的办法来做,更细节的问题就靠你自己了,我已经说的很明白了,如果哪里不明白,多想一想,可参考help文件,自己领悟出来的掌握地更牢靠,学长只能帮你到这里了.

matlab 拟合一元非线性拟合 用什么函数? matlab 多元高次非线性函数拟合,回归,求教高手!有这样几个数组自变量n个:x=[...]y=[...]m=[.]w=[.].因变量一个:z=[.]模型1(两个自变量)z=a+b*x+c*x^(1/2)+d*x^2+e*y+f*y^(1/2)+g*y^2+h*x*y;模型2(三个自变量) 求matlab中多元拟合函数及参数 MatLab中多元拟合的函数是什么?类似于fit函数,可以做任意类型的拟合 matlab中有没有多元拟合函数类似于fit的自定义拟合 matlab怎样编写命令对函数进行非线性拟合求出参数,已知数据x, matlab 非线性拟合拟合参数 Nm 和 k ,见图 如何判断matlab多元 非线性拟合好坏程度?事先不知道多元方程的形式,打算运用lsqcurvefit函数,生成的resnorm可以作为指标么?主要问题是不确定多元方程的形式!当然nlinfit也可以实现,但是不知道 matlab中有没有多元任意拟合的函数?类似于fit matlab拟合函数 matlab的函数拟合 matlab非线性拟合问题,急用,待拟合函数形式为:ln[(230-a)/(y-a)]=[(x-1/4)/b]^c,需要拟合a,b,c,其中40 如题,怎么用matlab进行非线性的多元函数拟合?例如:因变量y 自变量 X1 X2 X3 X41658 111 717 153 253191797 122 826 184 378291850 137 958 206 422322205 146 1004 247 56584可以拟合为线性y=a*x1+b*x2+c*x3+d*x4的形式以及非线 我想用matlab做一个多元非线性的拟合(五元函数最好是五元高次的).数据如下用matlab怎么编程?x1 x2 x3 x4 x5 y1 2.78 0.01 0.3 6600 0.1 0.00029 2.78 0.04 0.4 10680 0.1 0.02660 2.78 0.07 0.5 14770 0.1 0.08115 2.78 0.1 0.6 求matlab应用公式 采用最小二乘迭代法拟合成一般非线性函数回归分析需要公示谢谢 求高手指导用matlab对函数进行非线性拟合求出参数,已知数据x,y;万分感谢 matlab 非线性曲线拟合表达式书写与初值选取本人先研究采用matlab进行非线性数据拟合,编写的函数如下[filename,filepath]=uigetfile('*.txt','选择拟合的数据文件');%弹出对话框,然后选择你要处理的文 matlab中如何做非线性最小二乘拟合