# spacepy.LANLstar.LANLstar

spacepy.LANLstar.LANLstar(inputdict, extMag)

  Calculate Lstar

  Based on the L* artificial neural network (ANN) trained from different magnetospheric field models.

  Parameters:
    extMag list of string(s)

      containing one or more of the following external magnetic field models: ‘OPDYN’, ‘OPQUIET’, ‘T89’, ‘T96’, ‘T01QUIET’, ‘T01STORM’, ‘T05’

    inputdict dictionary

      > containing the following keys, each entry is a list or array. Note the keys for the above models are different.

      > —For OPDYN: [‘Year’, ‘DOY’, ‘Hr’, ‘Dst’, ‘dens’, ‘velo’, ‘BzIMF’, ‘Lm’, ‘Bmirr’, ‘PA’, ‘rGSM’, ‘latGSM’, ‘lonGSM’]

      > – For OPQUIET:

      >   [‘Year’, ‘DOY’, ‘Hr’, ‘Dst’, ‘dens’, ‘velo’, ‘BzIMF’, ‘Lm’, ‘Bmirr’, ‘PA’, ‘rGSM’, ‘latGSM’, ‘lonGSM’]

      > —For T89: [‘Year’, ‘DOY’, ‘Hr’, ‘Kp’, ‘Pdyn’, ‘ByIMF’, ‘BzIMF’, ‘Lm’, ‘Bmirr’, ‘PA’, ‘rGSM’, ‘latGSM’, ‘lonGSM’]

      > – For T96:

      >   [‘Year’, ‘DOY’, ‘Hr’, ‘Dst’, ‘Pdyn’, ‘ByIMF’, ‘BzIMF’, ‘Lm’, ‘Bmirr’, ‘PA’, ‘rGSM’, ‘latGSM’, ‘lonGSM’]

      > —For T01QUIET: [‘Year’, ‘DOY’, ‘Hr’, ‘Dst’, ‘Pdyn’, ‘ByIMF’, ‘BzIMF’, ‘G1’, ‘G2’, ‘Lm’, ‘Bmirr’, ‘PA’, ‘rGSM’, ‘latGSM’, ‘lonGSM’]

      > – For T01STORM:

      >   [‘Year’, ‘DOY’, ‘Hr’, ‘Dst’, ‘Pdyn’, ‘ByIMF’, ‘BzIMF’, ‘G2’, ‘G3’, ‘Lm’, ‘Bmirr’, ‘PA’, ‘rGSM’, ‘latGSM’, ‘lonGSM’]

      > —For T05: [‘Year’, ‘DOY’, ‘Hr’, ‘Dst’, ‘Pdyn’, ‘ByIMF’, ‘BzIMF’, ‘W1’,’W2’,’W3’,’W4’,’W5’,’W6’, ‘Lm’, ‘Bmirr’, ‘PA’, ‘rGSM’, ‘latGSM’, ‘lonGSM’]

      > – For RAMSCB:

      >   [‘Year’, ‘DOY’, ‘Hr’, ‘Dst’, ‘Pdyn’, ‘ByIMF’, ‘BzIMF’, ‘PA’, ‘SMx’,’SMy’,’SMz’]

      Dictionaries with numpy vectors are allowed.

  Returns:
    out dictionary

      Lstar array for each key which corresponds to the specified magnetic field model.

  Examples

      >>> import spacepy.LANLstar as LS
      >>> inputdict = {}
      >>> inputdict['Kp']     = [2.7      ]            # Kp index
      >>> inputdict['Dst']    = [7.7777   ]            # Dst index (nT)
      >>> inputdict['dens']   = [4.1011   ]            # solar wind density (/cc)
      >>> inputdict['velo']   = [400.1011 ]            # solar wind velocity (km/s)
      >>> inputdict['Pdyn']   = [4.1011   ]            # solar wind dynamic pressure (nPa)
      >>> inputdict['ByIMF']  = [3.7244   ]            # GSM y component of IMF magnetic field (nT)
      >>> inputdict['BzIMF']  = [-0.1266  ]            # GSM z component of IMF magnetic field (nT)
      >>> inputdict['G1']     = [1.029666 ]            # as defined in Tsganenko 2003
      >>> inputdict['G2']     = [0.549334 ]
      >>> inputdict['G3']     = [0.813999 ]
      >>> inputdict['W1']     = [0.122444 ]            # as defined in Tsyganenko and Sitnov 2005
      >>> inputdict['W2']     = [0.2514   ]
      >>> inputdict['W3']     = [0.0892   ]
      >>> inputdict['W4']     = [0.0478   ]
      >>> inputdict['W5']     = [0.2258   ]
      >>> inputdict['W6']     = [1.0461   ]
      >>> # now add date
      >>> inputdict['Year']   = [1996     ]
      >>> inputdict['DOY']    = [6        ]
      >>> inputdict['Hr']     = [1.2444   ]
      >>> # and pitch angle, which doesn't come if taking params from OMNI
      >>> inputdict['Lm']     = [4.9360   ]             # McIllwain L
      >>> inputdict['Bmirr']  = [315.6202 ]             # magnetic field strength at the mirror point
      >>> inputdict['rGSM']   = [4.8341   ]             # radial coordinate in GSM [Re]
      >>> inputdict['lonGSM'] = [-40.2663 ]             # longitude coodrinate in GSM [deg]
      >>> inputdict['latGSM'] = [36.44696 ]             # latitude coordiante in GSM [deg]
      >>> inputdict['PA']     = [57.3874  ]             # pitch angle [deg]
      >>> inputdict['SMx']    = [3.9783   ]
      >>> inputdict['SMy']    = [-2.51335 ]
      >>> inputdict['SMz']    = [1.106617 ]
      >>> # and then call the neural network
      >>> LS.LANLstar(inputdict, ['OPDYN','OPQUIET','T01QUIET','T01STORM','T89','T96','T05','RAMSCB'])
      {'OPDYN': array([4.7171]),
       'OPQUIET': array([4.6673]),
       'T01QUIET': array([4.8427]),
       'T01STORM': array([4.8669]),
       'T89': array([4.5187]),
       'T96': array([4.6439]),
       'TS05': array([4.7174]),
       'RAMSCB','array([5.9609])}