一、原理概述
条件平差的函数模型和随机模型为:
A
V
+
W
=
0
D
=
σ
0
2
Q
=
σ
0
2
P
−
1
AV+W=0\\ D=\sigma_0^2Q=\sigma_0^2P^{-1}
AV+W=0D=σ02Q=σ02P−1
条件方程为:
A
V
+
W
=
0
AV+W=0
AV+W=0
法方程为:
N
A
A
K
+
W
=
0
N_{AA}K+W=0
NAAK+W=0
其解为:
K
=
−
N
A
A
−
1
W
K=-N_{AA}^{-1}W
K=−NAA−1W
其中,
N
A
A
=
A
P
−
1
A
T
N_{AA}=AP^{-1}A^T
NAA=AP−1AT。
改正数方程:
V
=
P
−
1
A
T
K
=
Q
A
T
K
V=P^{-1}A^TK=QA^TK
V=P−1ATK=QATK
观测量平差值:
L
^
=
L
+
V
\hat{L}=L+V
L^=L+V
二、案例分析
A
、
B
A、B
A、B点高程已知,求
P
1
、
P
2
、
P
3
P_1、P_2、P_3
P1、P2、P3点高程平差值。
《误差理论与测量平差基础》
三、代码实现
根据条件平差计算原理,使用C++编写代码计算结果如下:
PCL 条件平差-以水准网为例