最小二乘法matlab自編函數 matlab三維曲面進行平面擬合,利用最小二乘法?
matlab三維曲面進行平面擬合,利用最小二乘法?可以直接使用MATLAB的曲面擬合工具箱,但平面擬合的效果一般。1在命令窗口中輸入要裝配的數據。2輸入sftool命令,打開曲面擬合工具箱,依次選擇x
matlab三維曲面進行平面擬合,利用最小二乘法?
可以直接使用MATLAB的曲面擬合工具箱,但平面擬合的效果一般。1在命令窗口中輸入要裝配的數據。2輸入sftool命令,打開曲面擬合工具箱,依次選擇x、y、Z數據。例如,如果函數形式是y=ax^2 BX C,MATLAB的代碼形式如下:
>> y=[Y1,Y2,Y3
>> P=polyfit(x,y,2)
運行后,我們可以得到a,B,C的大小。如果函數是一個變量的三次方程,請將polyfit括號中的數字改為3。如果它是一個變量的線性方程,只需將polyfit括號中的數字改為1。其他多項式函數等。
如何用MATLAB最小二乘法擬合曲線?
以polyfit函數(多項式擬合,最小二乘法)為例,x=[90919293949596]z=[70122144152174196202]a=polyfit(x,z,1)結果:a=1.0e03*0.0205-1.75511表示1次多項式(一次為直線,適用于您的情況)a為多項式的系數向量,從高階項到低階項排列。例如,如果您想使用結果來知道x=97時Z等于多少,那么有兩種方法:直接使用系數>>A(1)*97 A(2)ans=233.4286或使用多元函數>>>multivariable(A,97)ans=233.4286
使用多元擬合函數,(多項式擬合,最小二乘法)例如
x=[90 91 92 93 94 95 96
]z=[70 122 144 152 174 196 202
]a=polyfit(x,z,1)
result:
a=
1.0e 03*
0.0205-[1.7551
1表示一次多項式(一次是直線,適用于您的情況)
a是多項式的系數向量,它是從高階項到低階項的排列,
如果要使用結果,例如x=97時Z等于多少
則有兩種方法,
直接使用系數
>> a(1)*97 a(2)
ans=
233.4286
或使用多元函數
>>多元函數(a,97)
ans =
233.4286