用MATLAB解决_条件平差和间接平差(可编辑)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
用MATLAB解决_条件平差和间接平差
测量程序设计
条件平差和间接平差一、条件平差基本原理A LA0
函数模型 A VW0
r n n 1 r 1
r 1
2 21
随机模型
D? Q? P
0 0
T
V P Vm i n
平差准则条件平差就是在满足r个条件方程式条件下,求
使函数V‘PV最小的V值,满足此条件极值问题用
拉格朗日乘法可以求出满足条件的V值。?
A LA0
1、平差值条件方程: 0
r n n 1
r 1
r 1
a La L a La0
1 1
2 2 n n 0
b Lb L b Lb0
1 1
2 2 n n 0?
r Lr L r Lr0
1 1
2 2 n n 0
a ,
b ,, r i1 , 2 ,, n 条件方程系数
i i i
a ,
b ,, r
0 0 0
常数项?
A LA0
2、条件方程: 0
r n n 1
r 1
r 1将
LLV
代入平差值条件方程中,得到A VW0
r 1 n 1 r 1 r 1
w , w ,, w
a b r
为条件方程闭合差
WA LA
闭合差等于观测值减去其应有值。3、改正数方程:
按求函数条件极值的方法引入常数
T
K k , k ,, k
a b r
r 1
称为联系系数向量,组成新的函数:
T T? V P V2 K A VW
将Ω对V求一阶导数并令其为零?
T T2 V P2 K A0V
T1 T T
P VA K
则: VP A KQ A K4、法方程: 将条件方程 AV+W0代入到改正数方程VQATK 中,则得到:
T
A Q A KW0
N KW0
记作: a a
r 1 r 1 r 1
r r
T
R N R A Q A R A r
由于 a a1 T1
K? N W? A Q A A LA
Naa为满秩方阵,
a a 0
TLLV
VQ A K按条件平差求平差值计算步骤
A VW0
1、列出rn-t个条件方程
r 1 n 1 r 1 r 1
T1 T
N KW0
NA Q AA P A
2、组成法方程
a a
a a
r 1 r 1 r 1
r r1
K? N W
a a
3、求解联系系数向量
4、将 K值代入改正数方程VP-1ATKQATk中,求
出V值,并求出平差值LL+V。
5、检核。例《误差理论与测量平差基础》P74
设对下图中的三个内角作同精度观测,得观测值:
o o o
L 42 12’20’’,L 78 09’09’’,L 59 38’40’’,试按条1 2 3
件平差求三个内角得平差值。clc
Disp‘条件平差示例2’
Disp‘三角形内角观测值’
L1 [42 12 20]
L2 [78 9 9]
L3 [59 38 40]
L [L1; L2; L3]
Disp‘将角度单位由度分秒转换为弧度’
LL dms2radmat2dmsLL1 L + V
A [1 1 1]
LL
w sumLL: - pi
dms2radmat2dmsL1
w dms2matrad2dmsw
sumLL sumLL
P eye3;
ifsumLL pi disp‘检核正确’
Naa A*invP*A'
else
Ka -invNaa*w disp‘检核错误’
end
V A'*Ka例《误差理论与测量平差基础》P75
在下图中,A、B为已知水准点,其高程为
HA12.013m, HB 10.013m, 可视为无误差。为了确定点C及D点的高程,共观测了四个高差,高差观测值及相应的水准路线的距离为:
h1 -1.004m, S1 2km;
h2 1.516m, S2 1km;
h3 2.512m, S3 2km;
h4 1.520m, S4 1.5km
试求C和D点高程的平差值。clc
clear
A [1 1 -1 0; 0 1 0
h1 -1.004;
-1]
h2 1.516;
w1 h1 + h2 - h3 +
h3 2.512;
HA - HB;
h4 1.520;
w2 h2 - h4;
HA 12.013
w [w1; w2]
HB 10.013
P diag1./s
h [h1 h2 h3 h4]'
Naa A*invP*A'
s1 2;
Ka -invNaa*w
s2 1;
V invP*A'*Ka
s3 2;
s4 1.5;
H h + V;
s [s1 s2 s3 s4]'
if H1,1+H2,1-H3,1+HA-HB0 && H2,1-