clc clear h1=-1.004; h2=1.516; h3=2.512; h4=1.520; HA=12.013; HB=10.013; h=[h1,h2,h3,h4]' s1=2; s2=1; s3=2; s4=1.5; s=[s1,s2,s3,s4]' A=[1,1,-1,0;0,1,1,-1]; w1=h1+h2-h3+Ha-HB; w2=h2-h4; w=[w1;w2]; P=diag(1./S) Naa=A*inv(P)*A'; Ka=-inv(P)*A'*Ka; H=h+V; if H(1,1)+H(2,1)-H(3,1)+HA-HB == 0 && H(2,1)-H(4,1)==0 disp('正确') else disp('错误') end disp('平差结果'); HC=HA+H(1,1) HD=HA+H(1,1)+H(4,1)