Go to the NGA Web Go to the WMM Web Home Go to the Geomagnetic Data Home Go to the WMM Web Home Go to Background on Geomagnetism Go to WMM accuracy and limitations Go to download WMM software and test values Go to WMM maps of the magnetic field elements Go to Copyright and license information
World Magnetic Model (WMM) Banner
 NOAA | NGA | NCEI (formerly NGDC) | Geomagnetic Data & Info | WMM Home comments |  privacy policy



Brief description of geomagnetism and observation systems

About WMM

Learn more about model derivation, uncertainties and magnetic poles

Model & Software

Download model coefficients, software and documentation

Online Calculators

Calculate magnetic field values at or near the Earth surface


Browse imagery and contour maps for main field and secular change

Uses of WMM

Common applications of WMM


License and copyright information

Third Party Software

WMM program ports to other languages

Several users have ported the WMM C or Fortran programs to other languages and have kindly offered to share these programs. Neither the authors nor NGDC can provide any warranty or technical support for these programs. Only non-commercial "free-ware" will be linked to from this site. Linking to third party software does not imply an endorsement or review of any kind from the Federal Government. Users are encouraged to verify results based on the WMM test values. NOAA Disclaimer for external links. Many of these software still use WMM2010.

Language ~ Size Date Author Description
Rust September 2021 René Herrero Gómez An implementation of the World Magnetic Model in Rust. This software is also suitable for embedded systems.
WMM2020LegacyFortran.zip December 2019 NCEI Geomagnetism Team An implementation of the World Magnetic Model in Fortran.
WMM2020LegacyC.zip December 2019 NCEI Geomagnetism Team An implementation of the World Magnetic Model in C.
Go August 26th 2019 Dr. Eric Westphal An implementation of the World Magnetic Model in the Go language.
Google App Script Revised April 12th 2016 Dallas Yenawine Satellite pointing parameter chart creator utilizing zip code database lookup for dish location and WMM2015 Java Script from NGA for accurate magnetic declination compensation.
Google Spreadsheet App Revised Jan 26th 2019 Manoj Nair WMM2015 Google spreadsheet application for mutiple points calculations.
R March 21st 2021 Will Frierson An implementation of the World Magnetic Model in R. A more complete description can be found on R package system page.
Excel Spreadsheet 322 KB Revised April 13th 2015 Noah Hassler Excel implementation. Does not require .dll or outside software, calculations done entirely in Microsoft Excel.
DLL 117 KB Revised April 13th 2015 Steven M. Shope DLL implementation. Uses the IGRF-12 rather than the WMM.
Java 20 KB Revised Apr 15th 2020 John St. Ledger Java implementation with tests.
Visual Studio C++ 467 KB Revised January 2010 Garry Petrie GeoMag 3.0, the Geographic Magnetic Calculator, is a tool to determine UTM Coordinates and the Magnetic Declination that correspond to a longitude/latitude location.
C++ 2 MBRevised January 10th 2012 Charles Karney GeographicLib is a C++ library of geographic routines. The MagneticModel class reports the magnetic field for a given time and a position. The class currently supports WMM2010, EMM2010 and IGRF11. Provided by Charles Karney.
Visual Basic 190 KBRevised November 15th 2011 Fred Neudecker Visual Basic class version of GeoMag 7.0 (IGRF) for desktop applications. This class was written in Visual Studio 5.0.
Python 197 KBRevised December 18th 2014 Christopher Weiss A python version of the WMM algorithm
Java Script Revised December 18th 2014 Christopher Weiss The WMM algorithm in Javascript.
Java Revised May 15th 2012 Orekit Orekit is a free low-level space dynamics library. The GeoMagneticField class calculates the magnetic field for a given time and position. The class currently supports WMM and IGRF.
Objective C Revised January 10th 2013 Stephen Trainor A simple Objective-C wrapper for the WMM. Allow the model to be easily used in iOS.
Matlab 92.6 KBRevised April 2017 David F. Crouse Spherical harmonic synthesis algorithms for magnetic field estimation, as well as geomagnetic coordinate systems and relevant sample code are included in this collection of Matlab functions for the development of target tracking algorithms.
Swift (4.0) 16.6 KBRevised December 2017 Deep Pradhan Swift class to calculate magnetic declination, magnetic field strength, inclination, etc for any point on the Earth.
C99 534.4 KBRevised April 18th
John Blaiklock WMM software suitable for inclusion in small embedded systems with limited program space.

If you wish your software to be included on this page, please contact us.

Last Modified on: Thursday, 30-Sep-2021 18:16:24 UTC
NOAA > NESDIS > NCEI (formerly NGDC)
Maintained by: geomag.models@noaa.gov