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