Skip to content

Magfield

OTSO.magfield

magfield(Locations: Sequence[float], solar_wind: SolarWindParams = {}, geomagnetic: GeomagneticParams = {}, tsyganenko: TsyganenkoParams = {}, datetime_params: DateTimeParams = {}, magfield_params: MagFieldParams = {}, coordinate_params: CoordinateParams = {}, computation_params: ComputationParams = {}, data_retrieval_params: DataRetrievalParams = {}, custom_field_params: CustomFieldParams = {}, *args, **kwargs)

Compute magnetic field vectors at specified locations using OTSO models.

Evaluates the total magnetic field (internal + external) at given locations using various geomagnetic field models.

Parameters:

  • Locations (list) –

    Locations as [[x, y, z]] in specified coordinate system.

  • datetime_params (DateTimeParams, default: {} ) –

    Date/time parameters.

    Available keys:

    • year (int, default=2024): Year (e.g., 2023)
    • month (int, default=1): Month (1–12)
    • day (int, default=1): Day (1–31)
    • hour (int, default=12): Hour (0–23)
    • minute (int, default=0): Minute (0–59)
    • second (int, default=0): Second (0–59)
  • magfield_params (MagFieldParams, default: {} ) –

    Magnetic field models.

    Available keys:

    • internalmag (str, default="IGRF"): "NONE", "IGRF", "Dipole", "Custom Gauss"
    • externalmag (str, default="TSY89c"): "NONE", "TSY89c", "TSY01", "TSY15B", etc.
    • boberg (bool, default=False): Enable Boberg extension
    • bobergtype (str, default="EXTENSION"): Boberg extension type
  • solar_wind (SolarWindParams, default: {} ) –

    Solar wind parameters (optional for auto-retrieval).

    Available keys:

    • vx (float, default=-500): Solar wind velocity x-component (km/s)
    • vy (float, default=0): Solar wind velocity y-component (km/s)
    • vz (float, default=0): Solar wind velocity z-component (km/s)
    • bx (float, default=0): IMF x-component (nT)
    • by (float, default=5): IMF y-component (nT)
    • bz (float, default=5): IMF z-component (nT)
    • by_avg (float, default=0): Averaged IMF By (nT)
    • bz_avg (float, default=0): Averaged IMF Bz (nT)
    • density (float, default=1): Solar wind density (particles/cm³)
    • pdyn (float, default=0): Solar wind dynamic pressure (nPa)
  • geomagnetic (GeomagneticParams, default: {} ) –

    Geomagnetic indices (optional for auto-retrieval).

    Available keys:

    • Dst (float, default=0): Dst index (nT)
    • kp (float, default=0): Kp index (0-9)
    • n_index (float, default=0): Newell coupling function
    • b_index (float, default=0): Boynton coupling function
    • sym_h_corrected (float, default=0): Corrected SYM-H index (nT)
  • tsyganenko (TsyganenkoParams, default: {} ) –

    Tsyganenko model coefficients (optional for auto-retrieval).

    Available keys:

    • G1 (float, default=0): Tsyganenko G1 coefficient
    • G2 (float, default=0): Tsyganenko G2 coefficient
    • G3 (float, default=0): Tsyganenko G3 coefficient
    • W1 (float, default=0): Tsyganenko W1 coefficient
    • W2 (float, default=0): Tsyganenko W2 coefficient
    • W3 (float, default=0): Tsyganenenko W3 coefficient
    • W4 (float, default=0): Tsyganenko W4 coefficient
    • W5 (float, default=0): Tsyganenko W5 coefficient
    • W6 (float, default=0): Tsyganenko W6 coefficient
  • coordinate_params (CoordinateParams, default: {} ) –

    Coordinate systems.

    Available keys:

    • inputcoord (str, default="GDZ"): Input coordinate system
    • coordout (str, default="GSM"): Coordinate system used for calculations
  • computation_params (ComputationParams, default: {} ) –

    Computation settings.

    Available keys:

    • corenum (int, default=None): Number of CPU cores for multicore processing
    • Verbose (bool, default=True): Enable verbose output
  • data_retrieval_params (DataRetrievalParams, default: {} ) –

    Data retrieval.

    Available keys:

    • serverdata (str, default="OFF"): Server data retrieval from OMNI
    • livedata (str, default="OFF"): real-time data retrieval from NOAA
  • custom_field_params (CustomFieldParams, default: {} ) –

    Custom fields.

    Available keys:

    • g (list, default=None): Gauss g coefficients
    • h (list, default=None): Gauss h coefficients
    • MHDfile (str, default=None): MHD simulation file
    • MHDcoordsys (str, default=None): MHD coordinate system

Returns:

  • list

    [magfield_dataframe, summary_text] - magfield_dataframe: Magnetic field vectors at input locations - summary_text: Input parameter summary

Examples:

    import OTSO

    # Basic field evaluation
    field_result = OTSO.magfield([[10, 10, 10]], 
                                coordinate_params={"coordsystem": "GEO"},
                                computation_params={"corenum": 1})

    # With specific field models
    field_data = OTSO.magfield([[5, 0, 0]], 
                              datetime_params={"year": 2023, "month": 6},
                              magfield_params={"externalmag": "TSY01", "internalmag": "IGRF"})

    # Access the results
    field_df, metadata = field_result