使用matlab代码进行验证:
clc; clear; L1=0.023; L2=1.114; L3=1.142; L4=0.079; L5=0.099; L6=1.210; Hc=100; B=[-1 1 0;0 -1 1;-1 0 1;1 0 0;0 1 0;0 0 1]; P=diag([2 2 2 1 1 1]); l=[3 3 11 0 0 0]'; L=[L1 L2 L3 Hc+L4 Hc+L5 Hc+L6]'; x=(B'*P*B)\(B'*P*l) X0=[100.079 100.099 101.210]'; % 参数近似值 X=X0+x*0.001 % 参数估计值 % 不把参数表达成近似值+改正数的形式的情况 X222=(B'*P*B)\(B'*P*L) % 参数估计值
运算结果:
X =
100.0750
100.0990
101.2140
X222 =
100.0750
100.0990
101.2140
结论:两种误差方程的写法计算结果是一致的。