地球物理大地测量
大型科学
计算平台

CASM.jpg

扰动重力场元Poisson数值积分Fortran代码

场元Poisson数值积分Fortran代码

 二维码 190
发表时间:2024-12-25 10:09作者:章传银网址:http://www.zcyphygeodesy.com
文章附图

[计算目标]

    由边界面大地高格网(m)及其面上残差扰动场元格网,按Poisson严密数值积分算法,计算大地水准面及其外部空间的残差扰动场元。

    Poisson积分是第一边值问题解,只要求边界面连续可微,不要求边界面是严格的重力等位面。

    算法的边缘效应小,可有效抑制短波信号衰减,适合向上向下解析延拓,一次积分性能接近梯度法解析延拓效果。

    重复调用本模块,可实现迭代运算,一般情况下迭代1次、至多3次足以满足绝大多数精度要求。

幻灯片67.JPG

[测试入口程序]

    Poissonnumericalintegral.f90

    输入参数dr-积分半径(m)。

    输入参数calcpntfl-计算点文件名。头文件一行,记录格式:点号/点名 经度(度小数) 纬度(度小数) 大地高(m)......。

    输入参数sfhhgrdfl-边界大地高格网文件名。

    输入参数gravgrdfl-边界上残差扰动重力场元格网文件名。

[主要调用模块]

(1)扰动重力场元Poisson数值积分算法模块

    Possionnumintegral(calcpntfl,sfhhgrdfl,gravgrdfl,dr)

    输出文件reslt.txt。文件记录格式:在输入文件记录的基础上,增加一列计算点的残差扰动场元的Poisson积分值(单位与源扰动场元相同)。

(2)单点扰动场元Poisson积分计算模块

    real*8 function PoissonBLH(BLH,gra,sfh,nlat,nlon,hd,dr,GRS)

    输入BLH(3)-计算点的经纬度(度小数)和大地高(m)。

    输入sfh(nlat,nlon)-边界面大地高格网,用于精确计算积分面元与计算点的积分距离。

    输入gra(nlat,nlon)-边界面上残差扰动场元格网。

    输入dr, hd(6)-积分半径(m)和格网规格参数(最小最大经度,最小最大纬度,经度间隔,纬度间隔)。

    输入GRS(6)-gm, ae, j2, omega, 1/f, 缺省值。

    返回-残差扰动场元Poisson积分值。单位与源扰动场元相同。

(3)其他辅助模块

    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可执行测试程序和全部测试输入输出数据。