Skip to main content

The core library for building geomag model.

Project description

geomaglib

PyPI - Version PyPI - License PyPI - Downloads PyPI Downloads

geomaglib Python API includes the core functions for building geomag model like WMM, WMMHR, HDGM-crust, HDGM-core and IGRF. The API is developed by by the Cooperative Institute For Research in Environmental Sciences (CIRES), University of Colorado.

Installation

Install the geomaglib deployed to PyPI

Install the geomaglib from PyPI

pip install geomaglib

Install the Public Git repository to your virtual environment

1. Install specific branch

pip install git+https://github.com/CIRES-Geomagnetism/geomaglib.git@<branch_name>

2. Install specific tag

pip install git+https://github.com/CIRES-Geomagnetism/geomaglib.git@<tag_number>

API Reference

geomaglib.legendre

  • Compute the Legendre polynomials
See the detail of functions

Flattened_Chaos_Legendre1(): Outputs a 2 dimensional numpy array which contains the associated legendre polynomials (Pnm) and the respective derivatives (dPnm).

get_index(): Get the index of Flattened_Chaos_Legendre1

geomaglib.magmath

  • Compute the Geomagnetic elements in geodetic: Bx, By, Bz, Bh(horizontal), Bf(total intensity), declination, inclination and the delta Bx, By, Bz, Bh(horizontal), Bf(total intensity), declination, inclination
  • Radius and degree conversion
  • Convert magnetic vector from spherical to geodetic
See the detail of functions

rad2deg(): Convert radius to degree

deg2rad(): Convert degree to radius

calc_Bp_Pole(): Calculate the B_phi magnetic elements at pole

mag_SPH_summation(): Compute the sperical magnetic vectors (B_theta, B_phi, B_radius)

rotate_magvec(): Convert magnetic vector from spherical to geodetic

GeomagElements(): The Python class for computing magnetic elements in geodetic coordinates

  • Get all of the magnetic elements: get_all()
  • Get the specific magnetic element:
    • get_Bx()
    • get_By()
    • get_Bz()
    • get_Bh()
    • get_Bf()
    • get_Bdec()
    • get_Binc()
    • get_dBx()
    • get_dBy()
    • get_dBz()
    • get_dBh()
    • get_dBf()
    • get_dBdec()
    • get_dBinc()

geomaglib.util

  • Compute decimal year
  • Converting the coordinates based on gedetic to geocentric
  • Converting the mean sea level altitude to ellipsoid height
See the detail of functions

geod_to_geoc_lat(): Conversion from geodetic X,Z components to geocentric B_r, B_theta

alt_to_ellipsoid_height(): This function converts altitude MSL in kilometers to ellipsoid height in kilometers

calc_dec_year(): Takes year, month, and day and calculates the decimal year from those inputs

calc_dec_year_array():Takes the array of year, month, and day and outputs the decimal year from those inputs

decimalYearToDateTime(): Covert the decimal year to year, month, day, hour and minute

geomaglib.sh_vars

  • Computes Spherical Variabale
See the detail of functions

comp_sh_vars(): Computes spherical variabale and put the results in a dictionary variable computed are (a/r) ^ (n+2), cos_m(lon), and sin_m(lon)

geomaglib.sh_loader

  • Estimate the total elements from end degree ofr the model coefficients
  • Funtions for loading WMM2025.COF, IGRF14.COF
  • Compute time change the Model coefficients from the base year of the model(epoch) using secular variation coefficients.
See the detail of functions

calc_sh_degrees_to_num_elems(): Gives you the number of elements from the number of sphereical harmonic degree

calc_num_elems_to_sh_degrees(): Gives you the number of spherical harmonic degrees from the total number of elements

load_wmm_coef()

load_igrf_coef()

timely_modify_magnetic_model_wmm()

timely_modify_magnetic_model_HDGM()

Contacts and contributing to geomaglib:

If you have any questions, please email geomag.models@noaa.gov, submit issue or pull request at https://github.com/CIRES-Geomagnetism/geomaglib.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

geomaglib-1.2.1.tar.gz (3.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

geomaglib-1.2.1-py3-none-any.whl (3.1 MB view details)

Uploaded Python 3

File details

Details for the file geomaglib-1.2.1.tar.gz.

File metadata

  • Download URL: geomaglib-1.2.1.tar.gz
  • Upload date:
  • Size: 3.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for geomaglib-1.2.1.tar.gz
Algorithm Hash digest
SHA256 2efa651345f973966fab411f3cb3b6211760af5559e50aabb02a4ab6c1c4121c
MD5 b4ea3bf712b6e20a3b3bb576a9be9529
BLAKE2b-256 171b592d8d38b3f3ef0f75981fd863719d3c3a5d552c4fc9ad69cd0b2ab71a1e

See more details on using hashes here.

File details

Details for the file geomaglib-1.2.1-py3-none-any.whl.

File metadata

  • Download URL: geomaglib-1.2.1-py3-none-any.whl
  • Upload date:
  • Size: 3.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for geomaglib-1.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 254be8f88e901c8f540270ed225c55ef27f40fbc05f2ef6780fdbaf79804e6b7
MD5 b9d4f8d2a41ff9a64e3a95e1a7dca812
BLAKE2b-256 c94abc2c0f46805bd490d3ab6f1d19b0c7e8b74b09269b2f008a00cc88e258dd

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page