GAMIT基线解算
1 数据准备
1.1 tables表文件更新
按年更新(3个文件) | |||
---|---|---|---|
前缀 | 描述 | 格式 | 更新说明 |
soltab. | 太阳历 | soltab.<year>.J2000 | 按年更新的文件,每年发布一次,从文件名可以看出其适用的年份,2021年以后用nbody文件代替 |
luntab. | 月球历 | luntab.<year>.J2000 | |
nutabl. | 章动 | nutabl.<year> | |
累积更新(11个文件) | |||
文件名 | 描述 | 更新说明 | |
ut1.usno | 地球自转参数 | 每周更新一次,每次解算时需要更新gg~/tables文件夹下的文件 | |
pole.usno | 极移表 | ||
pmu.bull_f | EOP-GLOBK 使用 | ||
svnav.dat | 导航卫星表 | 新卫星或者卫星发生变化时更新,建议每次解算时更新。 下载:svnav.dat.allgnss,重命名为:svnav.dat | |
antmod.dat | 天线相位中心模型 | 新卫星/新天线出现时更新,建议每次解算时更新。GAMIT如何添加新天线1 | |
rcvant.dat | 接收机/天线表 | 接收机和天线信息编码表,一般不需要更新,新仪器出现时更新。 | |
guess_rcvant.dat | |||
hi.dat | 仪器高 | 定义了仪器高的量取方式和天线的参考点,一般不需要更新,除非使用了新仪器时更新。 | |
leap.sec | 跳秒表 | 跳秒出现时更新,建议每次解算时更新。 | |
dcb.dat | 差分码偏差改正 | 每月更新一次,每次计算使用最新文件。 下载:dcb.dat.allgnss,重命名:为dcb.dat | |
svs_exclude.dat | 卫星剔除表 | 对故障卫星进行剔除,可手动添加剔除卫星,每次解算时更新。 |
1.2 数据文件下载
下载广播星历,精密星历,观测值文件。
sh_get_nav -archive cddis -yr 2019 -doy 120 -ndays 10 -ftp_prog ncftp
sh_get_rinex -sites bjfs kunm lhaz shao xian dltv cnmr ccj2 aira ncku -yr 2019 -doy 120 -ndays 10
sh_get_orbits -orbit igsf -yr 2019 -doy 120 -ndays 12 -makeg no
2 基线解算
2.1 建立项目
1)建立工程目录test,使用小写名称
mkdir test #在将要建立项目的目录下运行
2)在test目录下建立三个(精密星历,广播星历,观测值)文件夹,文件名必须小写
mkdir igs brdc rinex #在test目录下运行
将一、数据准备中下载的数据文件分别拷贝至相应的目录下。
将一、数据准备中下载的tables文件拷贝至gg目录下的tables文件夹内替换原文件。
3)将tables链接至test项目
sh_setup –yr 2019 #在test目录下运行
2.2 项目设置
4)生成station.info文件
sed -n '1,6p' ./tables/station.info > ./rinex/station.info #在test目录下运行
sh_upd_stnfo -files *.19o #在rinex目录下运行
5)生成lfile.文件(lfile.是测站的先验坐标文件)
非IGS站的3种获取方式:
I、直接使用o文件中的概略坐标
在process.defauts里面设置,使用o文件头中的概略坐标
set use_rxc = "Y"
II、进入rinex目录,批处理获取
a)提取观测值.o文件的先验XYZ坐标
grep POSITION *.19o > lfile.rnx
b)将.rnx文件转化为.apr文件
rx2apr lfile.rnx 2019 120
c)把.apr文件改成lfile.文件
mv lfile.rnx.apr lfile.
III、单点定位方式获取
sh_rx2apr -site *** -nav ***
cat ***.apr >> lfile.
IGS站用框架点坐标获取:
grep BJFS itrf14.apr > bjfs.apr
cat bjfs.apr >> lfile.
6)替换修改后的station.info、lfile.文件
将station.info、lfile.文件拷贝至tables下覆盖原文件 #替换目录test/tables/下的文件
7)配置sittbl.坐标约束文件
先验坐标约束文件,对高精度的已知坐标(IGS站坐标)强约束(5mm以内),待求点坐标松约束( 5~30m)。(可以采用默认值不做修改)
8) sestbl.的配置。
一般来说采用默认配置即可,通常需要修改的三个地方是:
(1)Choice of Experiment 选择处理方式
若目的是求基线后面平差则用BASELINE,仅利用 SP3 解基线时设置 Satellite Constraint = N,Choice of Experiment = BASELINE;同时定轨与解基线设置 Satellite Constraint = Y(使用 SP3 强约束),Choice of Experiment = RELAX,点位精度高。
(2)Choice of Observable 选择观测值类型和模糊度解算
一般采用默认。选择LC_AUTCLN为采用宽巷模糊度值并用伪距在autcln中解算;对于小于几公里的基线,用L1和L2独立载波相位观测值(L1,L2_INDEPENDENT)或者仅用LI(L1_ONLY),相比用无电离层组合(LC_HELP)可以减少噪声水平。
(3)Use otl.grid 选择是否使用潮汐文件
对于Use otl.grid,由于这里已在ftp上更新tables,有了最新的otl.grid文件,所以这里选择Y。
9)sites.defaults设置(参与计算的数据控制)
sites.defaults文件用来控制需要参与解算的观测数据来源。a)rinex文件获取;b)ftp自动下载(针对IGS站数据)
在文档末尾可以根据提示编辑,来给定那些不参与解算的测站或测站的某些天。 10)process.defaults配置
修改set aprf = 所准备基线解算的框架文件(如 igb08.apr),一般采用默认,根据需要修改。
2.3 解基线
11)GAMIT基线解算批处理
sh_gamit -expt test -s 2019 120 130 -orbit IGSF -yrext 2019 -pres ELEV -noftp -dopt D ao x c > sh_gamit_GPS.log #在test目录下运行
参数说明:-expt 项目名
-s 解算起止年积日
-orbit 使用轨道类型
-yrext 文件名前缀
-noftp 不使用FTP下载数据
-dopt 删除相应的文件类型
-pres 画残差图NO / YES (skyplot only) / ELEV (skyplot + phase vs elevation
若不进行 GLOBK 平差,则更新后的 lfile.为计算坐标 。
GLOBK网平差
1)在test下建立hfile文件夹
mkdir hfile #在test目录下运行
2)将tables表文件里的svnav.dat复制到hfile文件夹下*
cp ./tables/svnav.dat ./hfile/ #在test目录下运行
3)将h文件复制到hfile文件夹下,“2019_”这个是年积日的前缀,“test”是项目名称
cp 2019_???/htesta.* hfile #在test目录下运行
第二种方法:将所有的h文件都复制到新建的hfile文件夹里
find ./ -name "htest*" -type f -exec cp {} ./hfile/ \;
4)将解算得到的h文件转换为GLOBK能够识别的二进制h文件,并保存到glbf文件夹内
htoglb ./glbf ./tables/svs.apr ./hfile/h* #在test目录下运行
5)将更新的tables复制到当前项目的tables文件夹中
cp /home/xqh/gg/tables/pmu.bull_f ./tables #在test目录下运行
6)将约束模板复制到项目文件夹下的gsoln内,运行:
sh_glred -cmd #在test目录下运行
运行后globk.cmd,glorg.cmd这两个文件就会被拷贝到gsoln文件夹中
7)globk_comb.cmd为已知点坐标来源、地震记录文件来源、固定点约束等配置项。
a)需修改框架文件:
eq_file ~/gg/tables/igb14_comb.eq #地震文件
apr_file ~/gg/tables/igb14_comb.apr #坐标框架文件(已知点坐标)
b)修改已知点约束值
第一次平差时所有站点松约束 apr_neu all 10 10 10 0 0 0,
第一次平差后选择站点坐标改正较小的一些站点,固定一个,其它紧约束,
如:apr_neu bjfs 0.003 0.003 0.005 0 0 0
apr_neu chan 0.003 0.003 0.005 0 0 0
apr_neu shao 0.003 0.003 0.005 0 0 0
c)调整卡方检验值
设置卡方检验值,不然好多单天解不参与计算:
max_chii 10000 500.0 200000(数值不固定,依数据修改)
8)glorg_comb.cmd稳定站设置。
a)框架点设置
apr_file ~/gg/tables/igb14_comb.apr #坐标框架文件(已知点坐标)
b)添加稳定站
在已知控制点中选择较为稳定的控制点添加,并注释掉最后一行:
stab_site clear
stab_site bjfs chan shao
x source ~/gg/tables/igb14_hierarchy.stab_site
9)进入globk解文件gsoln目录里,制作h文件列表
ls ../glbf/h*.glx > gdl
10)网平差
仅有单天数据时运行glred 6 glred.prt glred.log gdl globk.cmd获得单天解。
有多天数据时运行globk 6 globk.prt globk.log gdl globk.cmd获得多天解。
11)结果文件提取
在gsoln下globk_rep.org为约束网平差结果,globk_rep.prt为无约束网平差结果。
平差精度查看globk.org(单天时查看glred.org)文件中站点改正数部分,标*站点为框架转换。
提取最终结果grep Apr. globk.org > test.apr。