📄 adjd.m
字号:
function adjd(uw,fit2) %方向观测精度
global ed dd dd1 sd pn ni si e d g f s t net
global m1 m2 m3 ms pp md ma x0 y0 x y sid dir az c
global a ql pa3 qls w
fprintf(fit2,' adjusted directions and their accuracy\n');
fprintf(fit2,' i pn(g) pn(f) dir vd(") dir+vd\n');
lo=206264.8062470964;
for j=1:m2
ql(j+m1)=md*md;
end
for i=1:sd
zi=0.0;
zal=0.0;
for j=si(i):si(i)+ni(i)-1
dx=x(f(j))-x(g(j));
dy=y(f(j))-y(g(j));
a0=alfa(dx,dy);
z1=a0-dir(j);
if(z1<0.0)
z1=z1+2.0*pi;
end
zal=zal+1./ql(m1+j);
zi=zi+z1/ql(m1+j);
end
if(ni(i)~=0)
zi=zi/zal;
end
for j=si(i):si(i)+ni(i)-1
dx=x(f(j))-x(g(j));
dy=y(f(j))-y(g(j));
a0=alfa(dx,dy);
ss=dir(j)+zi;
if(ss>=2.0*pi)
ss=ss-2.0*pi;
end
vd=(a0-ss)*lo;
dir1=dir(j)+vd/lo;
dir1=rad_dms(dir1);
dir(j)=rad_dms(dir(j));
fprintf(fit2,' %3d %8d %8d %14.5f %9.2f %16.5f\n',j,pn(g(j)),pn(f(j)),dir(j),vd,dir1);
end
end
fprintf(fit2,' adjusted directions \n');
fprintf(fit2,' i pn(g) pn(f) dir az ma\n');
for i=1:sd
for j=si(i):si(i)+ni(i)-1
dx=x(f(j))-x(g(j));
dy=y(f(j))-y(g(j));
if(f(j)<g(j))
[maa,mss]=trel(uw,f(j),g(j));
else
[maa,mss]=trel(uw,g(j),f(j));
end
a0=alfa(dx,dy);
if(j==si(i))
a00=a0;
end
ss=a0-a00;
if(ss<0.0)
ss=ss+2.0*pi;
end
ss=rad_dms(ss);
a0=rad_dms(a0);
fprintf(fit2,' %3d %10d %10d %14.5f %14.5f %10.4f\n',j,pn(g(j)),pn(f(j)),ss,a0,maa);
end
end
return
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -