%P1=b+c*x+a*y
%P2=d+e*x+f*y
%P3=g+h*x+i*y
%P4=m+n*x+j*y
%上式相当于:
%P=X*B
%其中P=[p1 p2 p3 p4]'
%X=为下列X矩阵,B=[x0 x y]',即所求的未知数(需用最小平方法求得)。B的公式解即可用下列程序:
clear,clc
syms a b c d e f g h i j m n p1 p2 p3 p4
P=[p1; p2; p3; p4]
X=[b c a;d e f;g h i;m n j]
XT=[b d g m;c e h n;a f i j]
A=XT*X
K=XT*P
B=A\K
%以上的a b c d 等可用数值代入(subs(B,a,3)(意即以3代替a),求得数值解。
若以上a b c d全是数值,也用类似以上公式,不过可以更简单:如
x=rand(4,3)
p=rand(4,1)
b=x'*x\x'*p
或
a=x'*x
k=x'*p
b=a\k
或
b=x\p
最后一个式子最为简单,建议采用最优一个式子。