World Magnetic Model 2015

Calculate Earth's magnetic field at specific location and time using World Magnetic Model 2015 (WMM2015)

  • Library:
  • Aerospace Blockset / Environment / Gravity

  • World Magnetic Model 2015 block

Description

The World Magnetic Model 2015 block implements the mathematical representation of the National Geospatial Intelligence Agency (NGA) World Magnetic Model 2015 (WMM2015). This block calculates the Earth's magnetic field vector, horizontal intensity, declination, inclination, and total intensity at a specified location and time. The reference frame is north-east-down (NED).

Limitations

  • The WMM2015 specification produces data that is reliable five years after the epoch of the model, which is January 1, 2015.

  • The internal calculation of decimal year does not take into account local time or leap seconds.

  • The WMM2015 specification describes only the long-wavelength spatial magnetic fluctuations due to the Earth's core. Intermediate and short-wavelength fluctuations, contributed from the crustal field (the mantle and crust), are not included. Also, the substantial fluctuations of the geomagnetic field, which occur constantly during magnetic storms and almost constantly in the disturbance field (auroral zones), are not included.

  • You cannot use this block to model the Earth magnetic field above an altitude of 1,000,000 meters.

Ports

Input

expand all

Height, specified as a scalar, in selected units.

Data Types: double

Latitude, specified as a scalar, in degrees.

Data Types: double

Longitude, specified as a scalar, in degrees.

Data Types: double

Desired year in a decimal format to include any fraction of the year that has already passed. The value is the current year plus the number of days that have passed in this year divided by 365. To calculate the decimal year, dyear, for March 21, 2015:

%%%BEGIN CODE%%%
dyear=decyear('21-March-2015','dd-mmm-yyyy')
%%%END CODE%%%

Data Types: double

Output

expand all

Magnetic field, returned as a vector, in selected units.

Data Types: double

Horizontal intensity, returned as a scalar, in selected units.

Data Types: double

Declination, returned as a scalar, in degrees.

Data Types: double

Inclination, returned as a scalar, in degrees.

Data Types: double

Total intensity, returned as a scalar, in selected units.

Data Types: double

Parameters

expand all

Input and output units, specified as:

UnitsHeightMagnetic FieldHorizontal IntensityTotal Intensity
Metric (MKS) MetersNanoteslaNanoteslaNanotesla
English FeetNanogaussNanogaussNanogauss

Programmatic Use

Block Parameter: units
Type: character vector
Values: 'Metric (MKS)' | 'English'
Default: 'Metric (MKS)'
  • To specify the decimal year with an input port for the World Magnetic Model 2015 block, select this check box

  • To specify the decimal year using the values of Month, Day, and Year, clear this check box.

Dependencies

To enable Month, Day, and Year, clear this parameter.

Programmatic Use

Block Parameter: time_in
Type: character vector
Values: 'on' | 'off'
Default: 'on'

Month to calculate decimal year.

Dependencies

To enable this parameter, select Input decimal year.

Programmatic Use

Block Parameter: month
Type: character vector
Values: 'January' | 'February' | 'March' | 'April' | 'May' | 'June' | 'July' | 'August' | 'September' | 'October' | 'November' | 'December'
Default: 'January'

Day to calculate decimal year.

Dependencies

To enable this parameter, select Input decimal year.

Programmatic Use

Block Parameter: day
Type: character vector
Values: '1' to '31'
Default: '10'

Year to calculate decimal year.

Dependencies

To enable this parameter, select Input decimal year.

Programmatic Use

Block Parameter: year
Type: character vector
Values: '2015' | '2016' | '2017' | '2018' | '2019' | '2020'
Default: '2015'

Out-of-range block behavior, specified as follows.

ActionDescription

None

No action.

Warning

Warning in the MATLAB® Command Window, model simulation continues.

Error (default)

MATLAB returns an exception, model simulation stops.

Programmatic Use

Block Parameter: action
Type: character vector
Values: 'None' | 'Warning' | 'Error'
Default: 'Error'

To output the horizontal intensity value, select this check box. Otherwise, clear this check box.

Dependencies

To enable the Horizontal Intensity output port, select this check box.

Programmatic Use

Block Parameter: h_out
Type: character vector
Values: 'on' | 'off'
Default: 'on'

To output the declination, the angle between true north and the magnetic field vector (positive eastwards), select this check box. Otherwise, clear this check box.

Dependencies

To enable the Declination output port, select this check box.

Programmatic Use

Block Parameter: dec_out
Type: character vector
Values: 'on' | 'off'
Default: 'on'

To output the inclination, the angle between the horizontal plane and the magnetic field vector (positive downwards), select this check box. Otherwise, clear this check box.

Dependencies

To enable the Inclination output port, select this check box.

Programmatic Use

Block Parameter: inc_out
Type: character vector
Values: 'on' | 'off'
Default: 'on'

To output the total intensity, select this check box. Otherwise, clear this check box.

Dependencies

To enable the Total Intensity output port, select this check box.

Programmatic Use

Block Parameter: ti_out
Type: character vector
Values: 'on' | 'off'
Default: 'on'

Compatibility Considerations

Not recommended starting in R2019b

Introduced in R2015a