地磁场

本教程介绍如何使用地磁场模型。

介绍

Orekit提供了一个易于使用的类来计算地球的地磁场。目前支持两种不同的模型:

先决条件

地磁场模型依赖于加载时加载的已发布系数文件。这些文件有不同的格式,但是orekit使用的是修改过的版本,其中一个文件中可能包含多个时期的系数。

预期模型文件的格式如下:

  {模型名称} {时期} {nMax} {nMaxSec} {nMax3} {有效起始时间} {有效结束时间} {最小高度} {最大高度} {模型名称} {行号}
{n} {m} {gnm} {hnm} {dgnm} {dhnm} {模型名称} {行号}

示例:

   WMM2010  2010.00 12 12  0 2010.00 2015.00   -1.0  600.0          WMM2010   0
1  0  -29496.6       0.0      11.6       0.0                        WMM2010   1
1  1   -1586.3    4944.4      16.5     -25.9                        WMM2010   2

IGRF和WMM的最新系数文件可以在附件中找到。

基本用法

计算指定地理位置和海拔的地磁场非常简单。

首先获取所需年份的地磁场模型(例如WMM):

GeoMagneticField model = GeoMagneticFieldFactory.getWMM(2020.0);

年份必须以十进制年份指定,可以从儒略日期转换为十进制年份,如下所示:

double year = GeoMagneticField.getDecimalYear(1, 6, 2020);

最后,我们可以计算地理位置(以弧度表示的纬度/经度)和海拔(以米为单位)处的磁场:

GeoMagneticElements result = model.calculateField(FastMath.toRadians(80.0), 0.0, 100.e3);

结果包含七个磁场分量:

  • F - 地磁场的总强度
  • H - 地磁场的水平强度
  • X - 地磁场的北分量
  • Y - 地磁场的东分量
  • Z - 地磁场的垂直分量
  • I(DIP)- 地磁倾角
  • D(DEC)- 地磁偏角(磁变化)