Skip to content

marissav06/con2020

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Con2020 - Current Sheet Model Code

This repository contains IDL and MATLAB code for the Connerney et al. (2020) Jupiter current sheet model. This is part of a community code project: Magnetospheres of the Outer Planets Group Community Code. For Python versions, please see the stand alone code, or the JupiterMag package.

Citation DOI: 10.5281/zenodo.6981615 (for all releases) Each version release also has its own DOI, click the link above to get to the DOI of specific versions.

Journal Paper DOI: https://doi.org/10.1007/s11214-023-00961-3 (PDF via DOI, or https://rdcu.be/c5I71)

This code provides only the magnetic field due to the current sheet. For the full magnetospheric field one should include a model for Jupiter's internal magnetic field, such as VIP4 or JRM09. You can find IDL code for the JRM09 internal field model here: https://github.com/marissav06/jovian_jrm09_internal

These codes were developed by Marty Brennan, Stan Cowley, Matt James, Aneesah Kamran, Gabby Provan, Marissa Vogt, and Rob Wilson, with thanks to Fran Bagenal, Jack Connerney, and Masafumi Imai. The codes are intended for use by the Juno science team and other members of the planetary magnetospheres community. Questions, corrections, or other comments can be shared with the authors by emailing [email protected].

These codes uses a right-handed System III (1965) (SYSIII) co-ordinate system (Cartesian or Spherical), and assumes that 1 jovian radius (RJ) = 71,492 km.

Running the code

  • con2020_model_rtp calls con2020_model_xyz, so download both files locally.
  • With default current sheet model parameter structure: B = con2020_model_rtp(eq_type, r_rj, colat_rads, elong_rads)
  • With user-specified current sheet parameters:
    • Obtain the default model parameters: params = con2020_model_rtp('default_values')
    • Edit the structure to adjust the model parameters as you wish, e.g. params.r1__outer_rj = 50.0
      (sets outer edge to 50 RJ; default is 51.4 RJ)
    • Call the function with the adjusted parameter structure: B = con2020_model_rtp(eq_type, r_rj, colat_rads, elong_rads, params)
  • For cartesian input/output, use B = con2020_model_xyz(eq_type, x_rj, y_rj, z_rj)
  • Required Inputs

    • eq_type - Whether to use the integral or analytic versions of the model equations. Options are 'integral', 'analytic' or 'hybrid', or set to 'default_values' to return a structure of all default values.
    • Position - format depends on whether user is running con2020_model_rtp or con2020_model_xyz
      • For spherical input:
        • r_rj - radial distance, in RJ. Value(s) must be 0 < r_rj < 200.
        • colat_rads - colatitude, in radians. Value(s) must be 0 <= colat_rads <= pi.
        • elong_rads - East longitude, right handed, in radians. Value(s) must be 0 <= elong_rads <= 2pi.
      • For cartesian input:
        • x_rj - SYSIII x position, in RJ, Values must be -200 < x_rj < 200.
        • y_rj - SYSIII y position, in RJ, Values must be -200 < x_rj < 200.
        • z_rj - SYSIII z position, in RJ, Values must be -200 < x_rj < 200.
      • Note: for spherical input, r_rj, colat_rads and elong_rads can be scalars or 1D arrays, but only one eq_type. For cartesian input, x_rj, y_rj and z_rj can be scalars or 1D arrays, but only one eq_type. For MATLAB, the 1D arrays must be size (n x 1), not (1 x n).

    Optional inputs (e.g. in structure con2020_model_rtp('default_values'))

    Variable name Description Default value
    mu_i_div2__current_parameter_nT mu0i0/2 term (current sheet field parameter) 139.6 nT
    i_rho__radial_current_MA radial current term from Connerney et al., 2020 (set this to zero to turn radial currents off as in Connerney et al. 1981) 16.7 MA
    r0__inner_rj inner edge of current disk in RJ 7.8 RJ
    r1__outer_rj outer edge of current disk in RJ 51.4 RJ
    d__cs_half_thickness_rj D, current sheet half thickness 3.6 RJ
    xt__cs_tilt_degs current sheet tilt angle 9.3 degrees
    xp__cs_rhs_azimuthal_angle_of_tilt_degs azimuthal angle of the current sheet tilt (right handed) 155.8 degrees right handed (corresponds to 204.2 degrees left handed longitude)
    error_check 1 to check that inputs are valid (Default), or set to 0 to skip input checks (faster) 1

    Outputs

    • The code outputs a vector that contains the 3 components of the magnetic field produced by the current sheet, in SIII right-handed.
    • For con2020_model_rtp (spherical input/output) the vector is [Br, Btheta, Bphi] in nT.
    • For con2020_model_xyz (cartesian input/output) the vector is [Bx, By, Bz] in nT.

    History

    This repository was made by merging a previous IDL specific and a Matlab specific repository.

    References:

    • Connerney, J. E. P., Acuña, M. H., & Ness, N. F. (1981). Modeling the Jovian current sheet and inner magnetosphere. Journal of Geophysical Research, 86, 8370-8384. https://doi.org/10.1029/JA086iA10p08370
    • Connerney, J. E. P., Timmins, S., Herceg, M., & Joergensen, J. L. (2020). A Jovian magnetodisc model for the Juno era. Journal of Geophysical Research: Space Physics, 125, e2020JA028138. https://doi.org/10.1029/2020JA028138
    • Edwards, T. M., Bunce, E. J., & Cowley, S. W. H. (2001). A note on the vector potential of Connerney et al.'s model of the equatorial current sheet in Jupiter's magnetosphere. Planetary and Space Science, 49, 1115– 1123. https://doi.org/10.1016/S0032-0633(00)00164-1
    • Wilson, R.J., Vogt, M.F., Provan, G. et al. Internal and External Jovian Magnetic Fields: Community Code to Serve the Magnetospheres of the Outer Planets Community. Space Sci Rev 219, 15 (2023). https://doi.org/10.1007/s11214-023-00961-3