matlab求超定(矛盾)方程组的最小二乘解

clc,clear,closeall;symsf(t)g(t)f(t)=(abs(t+1)-abs(t-1))/2+sin(t);g(t)=(abs(t+3)-abs(t... clc, clear, close all;syms f(t) g(t)f(t)=(abs(t+1)-abs(t-1))/2+sin(t);g(t)=(abs(t+3)-abs(t-3))/2+cos(t);%syms x1 x2%syms y1 y2f=@(x,y)[2*x(1)-3*f(y(1))-4*g(y(2))+1;3*x(2)-2*f(y(1))-6*g(x(2))+2;f(x(1))+3*g(x(2))-3-y(1);4*f(x(1))+6*f(x(2))-1-5*y(2);x(1)+y(1)-f(y(2))-g(x(2))+2;x(2)-3*y(2)-2*f(x(1))+10*g(y(1))+5];S=lsqnonlin(f,rand(1,4))程序有错误, 输入参数的数目不足。原因: Failure in initial objective function evaluation. LSQNONLIN cannot continue.怎么改? 展开
 我来答
积角累4703
2020-03-06 · TA获得超过4784个赞
知道大有可为答主
回答量:6553
采纳率:83%
帮助的人:202万
展开全部
做个测试,希望有所帮助。代码% matlab用最小二乘法解下列矛盾方程组x1-x2=1;-x1+x2=2;2x1-2x2=3;-3x1+x2=4
% 对于方程组Ax=b,A为n×m矩阵,如果A列满秩,且n>m。
% 则方程组没有精确解,此时称方程组为超定方程组。
% 线性超定方程组经常遇到的问题是数据的曲线拟合
% 对于超定方程,在MATLAB中,利用左除命令(x=A\b)来寻求它的最小二乘解。
clc; clear all; A = [1 -1
-1 1
2 2
-3 1];
B = [1; 2; 3; 4];
A\B
结果
ans = -0.3654
1.5192>>
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式