等位面上扰动重力场元径向梯度数值积分Fortran代码扰动场元径向梯度数值积分代码 二维码
179
发表时间:2024-12-25 09:32网址:http://www.zcyphygeodesy.com ![]() [计算目标] 由等位面大地高格网及其面上残差扰动场元格网,按严密径向梯度积分公式,计算该等位面上计算点的残差场元径向梯度值(/km)。 扰动场元梯度积分由Stokes边值问题解导出,要求被积扰动场元位于等位面。 径向方向由地心指向地球外部。 等位面可采用参考重力场模型(不大于360阶)构造,在高度不大于10千米的近地空间,可用等正(常)高面大地高格网表示。 [测试入口程序] Radialgradientnumintegral.f90 输入参数dr-积分半径(m)。 输入参数calcpntfl-计算点文件名。头文件一行,记录格式:点号/点名 经度(度小数) 纬度(度小数)......。 输入参数dwmhgrdfl-等位面大地高格网文件名。 输入参数gravgrdfl-等位面上残差扰动重力场元格网文件名。 [主要调用模块] (1)扰动重力场元逆运算数值积分算法模块 InversenumIntegral(calcpntfl,dwmhgrdfl,gravgrdfl,knd,dr) 输出文件reslt.txt。文件记录格式:在输入文件记录的基础上,增加一列由等位面大地高格网内插得到的计算点大地高,和一列该点的残差扰动场元的径向梯度积分值(单位为源扰动场元单位/km)。 (2)扰动场元径向梯度数值积分算法模块 real*8 function RaGradientBLH(BLH,gra,dwm,nlat,nlon,hd,dr,GRS) 输入BLH(3)-计算点的经纬度(度小数)和大地高(m)。 输入dwm(nlat,nlon)-等位边界面大地高格网,用于精确计算积分面元与计算点的积分距离。 输入gra(nlat,nlon)-等位面上残差扰动场元格网。 输入dr, hd(6)-积分半径(m)和格网规格参数(最小最大经度,最小最大纬度,经度间隔,纬度间隔)。 输入GRS(6)-gm, ae, j2, omega, 1/f, 缺省值。 返回-残差扰动场元径向梯度积分值。单位等于残差扰动场元gra单位/m,方向为向径方向(由地心指向地球外部)。 (4)正常重力场元计算模块 GNormalfd(BLH,NFD,GRS) 返回NFD(5)-正常重力位,正常重力,正常重力梯度,正常重力线方向,正常梯度方向。 (5)勒让德函数及其导数计算模块 LegPn_dt2(pn,dp1,dp2,n,t) 计算勒让德函数Pn(t)及其对ψ一、二阶导数t=cosψ。 (6)其他辅助模块 BLH_RLAT(GRS, BLH, RLAT);BLH_XYZ(GRS, BLH, XYZ) CGrdPntD2(lon,lat,dt,row,col,hd);PickRecord(line, kln, rec, nn) [编译连接] Fortran固定格式代码,任何fortran编译器,无需任何外部连接库。 附件zip压缩包:visual studio_intel fortran 集成环境测试项目、DOS可执行测试程序和全部测试输入输出数据。 |