airbornegeo.igrf

Contents

airbornegeo.igrf#

igrf(data, *, datetime_column, latitude_column, longitude_column, height_column, groupby_column=None, progressbar=True, ellipsoid=Ellipsoid(name='WGS84', semimajor_axis=6378137, flattening=0.0033528106647474805, geocentric_grav_const=398600441800000.0, angular_velocity=7.292115e-05, long_name='World Geodetic System (1984)', reference='Hofmann-Wellenhof, B., & Moritz, H. (2006). Physical Geodesy (2nd, corr. ed. 2006 edition ed.). Wien; New York: Springer.', comments=None), min_degree=1, max_degree=13)[source]#

Calculate IGRF intensity, inclication and declination using the time from the first row of the supplied datetime_column. If groupby_column is given, then will use the first row from each group.

Parameters:
  • data (DataFrame) – Dataframe containing the data

  • datetime_column (str) – name of the column containing the datetime values, of which the first (or first within a group), will be used to calculate the IGRF.

  • latitude_column (str) – name of the column containing the geodetic latitudes in decimal degrees

  • longitude_column (str) – name of the column containing the geodetic longitudes in decimal degrees

  • height_column (str) – name of the column containing the ellipsoidal heights in meters

  • groupby_column (str | None) – Column name to group by before calculation, by default None

  • progressbar (bool) – Show progress bar for each group, by default True

  • ellipsoid – The ellipsoid used to convert geodetic to geocentric spherical coordinates and convert the magnetic field vector from a geocentric spherical to a geodetic system. Default is boule.WGS84

  • min_degree – The minimum degree used in the expansion. Default is 1 (magnetic fields don’t have the 0 degree term).

  • max_degree – The maximum degree used in the expansion. Default is 13.

Returns:

The intensity (nT), inclination (degrees) and declination (degrees) of the IGRF.

Return type:

tuple[ndarray[tuple[Any, ...], dtype[TypeVar(_ScalarT, bound= generic)]], ndarray[tuple[Any, ...], dtype[TypeVar(_ScalarT, bound= generic)]], ndarray[tuple[Any, ...], dtype[TypeVar(_ScalarT, bound= generic)]]]