DUNE: Uniform Navigational Environment  2019.02.0
DUNE::Coordinates::WMM Class Reference

Detailed Description

World-magnetic model 2010-2015 interface class.

Public Member Functions

 WMM (void)
 
 WMM (const FileSystem::Path &root)
 
 ~WMM (void)
 
double height (double lat, double lon)
 
double declination (double lat, double lon, double height=0)
 

Constructor & Destructor Documentation

DUNE::Coordinates::WMM::WMM ( void  )

Constructor.

By default it looks up WMM 2015 data files in the '../etc/wmm' directory relative to the location of the current executable.

References DUNE::FileSystem::Path::applicationFile().

DUNE::Coordinates::WMM::WMM ( const FileSystem::Path root)

Constructor.

WMM 2010 files will be searched within 'root/wmm'.

Parameters
[in]rootroot path for searching WMM 2010 data files
DUNE::Coordinates::WMM::~WMM ( void  )

Member Function Documentation

double DUNE::Coordinates::WMM::declination ( double  lat,
double  lon,
double  height = 0 
)

Get magnetic declination for given latitude and longitude (in radians).

Parameters
[in]latWGS84 latitude
[in]lonWGS84 longitude
[in]heightoptional height argument (defaults to 0)
Returns
magnetic declination

References DUNE::Math::Angles::degrees(), DUNE::Coordinates::WMMData::ellip, DUNE::Math::Angles::radians(), and DUNE::Coordinates::WMMData::timed_mm.

Referenced by DUNE::Navigation::BasicNavigation::checkDeclination().

double DUNE::Coordinates::WMM::height ( double  lat,
double  lon 
)

Returns the height of the EGM96 geoid above or below the WGS84 ellipsoid, at the specified geodetic coordinates.

Parameters
[in]latWGS84 latitude
[in]lonWGS84 longitude
Returns
geoid height

References DUNE::Math::Angles::degrees(), and DUNE::Coordinates::WMMData::geoid.

Collaboration diagram for DUNE::Coordinates::WMM:
Collaboration graph