求最小二乘法解线性方程组的matlab程序
方程组为:u=a1r1+a2r2+a3r3+a4r4+a5r5+a6r6+a7r7+a8r8+a9r9+a10v=b1r1+b2r2+b3r3+b4r4+b5r5+b6r...
方程组为:
u=a1r1+a2r2+a3r3+a4r4+a5r5+a6r6+a7r7+a8r8+a9r9+a10
v=b1r1+b2r2+b3r3+b4r4+b5r5+b6r6+b7r7+b8r8+b9r9+b10
其中r1~r9已知,要求a1~a10和b1~b10。u,v,是未知的。
求高手解答。 展开
u=a1r1+a2r2+a3r3+a4r4+a5r5+a6r6+a7r7+a8r8+a9r9+a10
v=b1r1+b2r2+b3r3+b4r4+b5r5+b6r6+b7r7+b8r8+b9r9+b10
其中r1~r9已知,要求a1~a10和b1~b10。u,v,是未知的。
求高手解答。 展开
展开全部
如果u,v,是未知,那么根本就用不了最小二乘法,如果u,v,是已知的话可以用,r1-r9数据经过矩阵变换后可以直接用线性回归就参数
追问
感谢你的回答,是我弄错了,u,v已知,不过这两个方程式二元三次的
u=a1.*x.^3+a2.*x.^2.*y+a3.*x.*y.^2+a4.*y.^3+a5.*x.^2+a6.*x.*y+a7.*y.^2+a8.*x+a9.*y+a10
v=b1.*x.^3+b2.*x.^2.*y+b3.*x.*y.^2+b4.*y.^3+b5.*x.^2+b6.*x.*y+b7.*y.^2+b8.*x+b9.*y+b10
开始我嫌不好打才写成上面那样的~这样要怎么求a1~a10和b1~b10呀?matlab里有可以用的函数吗?谢谢了~~
追答
也是一样的,你把三次方,平方和插乘项都弄在一个矩阵里,然后线性回归,或者直接相除,就可以得到系数值了。Y/X=A
其中的X是经过上面变换之后的自变量数据矩阵,A是系数矩阵,Y 是因变量矩阵
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询