Function adas.bxttyp
def bxttyp(ndlev, ndmet, ndtrn, itran, tcode, i1a, i2a, aval)
-
Sorts transition arrays from adf04 files into various types.
Parameters
ndlev
:int
- maximum number of levels
ndmet
:int
- maximum number of metastables
ndtrn
:int
- maximum number of transitions
itran
:int
- number of transitions read from adf04 file
tcode
:str, array
- transition type, a one character code
i1a
:int, array
- lower index of transitions read from adf04 file - see notes
i2a
:int, array
- upper index of transitions read from adf04 file - see notes
aval
:float, array
- A-value of transitions read from adf04 file - see notes
Returns
pop
:dict
- classification of the transitions
'numlev' : number of ordinary levels 'nplr' : number of active metastables of (z+1) ion 'npli' : number of active metastables of (z-1) ion 'icnte' : number of electron impact transitions input 'icntp' : number of proton impact transitions input 'icntr' : number of free electron recombinations input 'icnth' : number of charge exchange recombinations input 'icnti' : number of ionisations to z input 'icntl' : number of satellite DR recombinations input 'icnts' : number of ionisations to z+1 input 'ietrn' : index values in main transition arrays which are electron impact 'iptrn' : index values in main transition arrays which are proton impact 'irtrn' : index values in main transition arrays which are recombination 'ihtrn' : index values in main transition arrays which are charge exchange 'iitrn' : index values in main transition arrays which are ionisation from lower stage 'iltrn' : index values in main transition arrays which are DR satellite recombination 'istrn' : index values in main transition arrays which are ionisation to upper stage ion 'ie1a' : lower energy level index for electron impact 'ie2a' : upper energy level index for electron impact 'aa' : electron impact transition probability 'ip1a' : lower energy level index for proton impact 'ip2a' : upper energy level index for proton impact 'ia1a' : parent energy level index for recombination 'ia2a' : recombined ion energy level index for recombination 'auga' : auger rate (s-1) if present 'il1a' : recombining ion index for satellite DR transition 'il2a' : recombined ion index for satellite DR transition 'wvla' : parent wavelength of satellite DR transition 'is1a' : ionised ion index 'is2a' : ionising ion index 'lss04a' : true or false for ionisation rate set in adf04 file
Notes
Transitions in an adf04 file can be of different types and therefore the indexing can refer to the energy levels of the ion or the parent ion and the A-value can also refer to different quantities.
code Transition type lower upper A-value ---- -------------------------------- ----------------------- ------- ' ' Electron Impact Transition ion ion transition probability (s-1) 'P' Proton Impact Transition ion ion E2 transition probability (s-1) 'H' Charge Exchange Recombination parent capturing not used 'R' Free Electron Recombination parent capturing not used 'I' Electron Impact Ionisation to z ion ion not used 'L' Satellites from DR Recombination parent capturing parent wavelength (A) 'S' Electron Impact Ionisation to z+1 final parent ionizing not used
The dimensions are set by arguments to maintain flexibility since this function is typically called as a support function.
Calls a fortran based shared object file - not pure python.
References
ADAS manual description of adf04: http://www.adas.ac.uk/man/appxa-04.pdf
Version History
- Martin O'Mullane, 03-07-2018
- First version