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]))