Function adas.stark

def stark(beam=None, plasma=None, bfield=None, efield=None, obs=None, nlower=2, nupper=3, pop_mul=1.0)

Calculates the components of the Hydrogen Stark feature for a requested beam, plasma, magnetic and external electric field at a given observation orientation.

Parameters

beam : dictionary
neutral beam parameters
'energy'  : eV/amu
'te'      : eV
'density' : cm-3
'dc_x'    : direction cosine for x-component
'dc_y'    : y
'dc_y'    : z
plasma : dictionary
plasma parameters
  'mass'    : H isotope mass of plasma
  'te'      : eV
  'density' : cm-3
  'zeff'    : effective charge
bfield : dictionary
magnetic field parameters
  'value'   : plasma magnetic field T
  'dc_x'    : direction cosine for x-component
  'dc_y'    : y
  'dc_y'    : z
efield : dictionary
external electric field parameters
  'value'   : external electric field (V)
  'dc_x'    : direction cosine for x-component
  'dc_y'    : y
  'dc_y'    : z
obs : dictionary
orientation of the observer
'dc_x'    : direction cosine for x-component
'dc_y'    : y
'dc_y'    : z
'sigma'   : sigma polarisation multiplier
'pi'      : pi polarisation multiplier
nupper : int
n value for upper level, default is 3, maximun is 4.
nlower : int
n value for lower level, default is 2.
pop_mul : float
re-normalization factor of upper level, default is 1.0

Returns

wvcomp : float, array
wavelength of Start component (A)
emcomp : float, array
intensity/emissivity of Stark component (arbitrary units)

Notes

If n-n' is not supplied Balmer-alpha (3-2) is assumed.

The re-normalization factor can be taken from an adf22/bmp file.

Calls a fortran based shared object file - not pure python.

Version History

  • Martin O'Mullane, 20-11-2012
    • First version

Example

First 5 (of 60) components of the Balmer-alpha Stark-broadened feature.

>>> import adas as adas
>>> beam   = {'mass' : 2.0, 'energy' : 40.0e3, 'te' : 20.0, 'density' : 4.27e9,
...           'dc_x' : 0.0, 'dc_y' : 0.0, 'dc_z' : 1.0}
>>> plasma = {'mass' : 2.0, 'te' : 8e3, 'dens' : 5.0e13, 'zeff' : 2.0}
>>> bfield = {'value' : 3.3915, 'dc_x' : 0.788, 'dc_y' : 0.0053, 'dc_z' : 0.6152}
>>> efield = {'value' : 0.0000, 'dc_x' : 1.000, 'dc_y' : 0.0000, 'dc_z' : 0.0000}
>>> obs    = {'dc_x' : 0.8701, 'dc_y' : -0.047, 'dc_z' : 0.4905, 'sigma' : 1.00, 'pi' : 1.0}
>>> wc, ec = adas.stark(beam=beam, plasma=plasma, bfield=bfield, efield=efield, obs=obs)
>>> wc[0:5], ec[0:5]
(array([6539.21407076, 6533.06304614, 6533.06106955, 6526.94250895,
        6520.82344012]),
array([9.98055000e+12, 1.09282528e+13, 2.18641971e+11, 4.12748578e+12,
       2.93307676e+09]))