Function adas.xxdata_56

def xxdata_56(file=None)

Reads an adf56 ionization promotion rules file and return all of its contents in a dictionary.

Parameters

file : str
full name of ADAS adf56 file

Returns

fulldata : dict
contents of the adf56 file
    'index'              :  rule index
    'config'             :  ground configuration
    'config_std'         :  ground configuration in ADAS standard
                            ie 10->A, 11->B etc.
    'no_v_shl'           :  number of shells to treat as valence shells.
                            Maximum of 2 relevant to relating ion and
                            parent.
    'v1_shl'             :  first valence shell position in adf56
                            configuration specifications.
    'v2_shl'             :  second valence shell position in adf56
                            configuration specifications. 0 if none
                            are defined.
    'drct_eval_v'        :  evaluate direct ionisation from the valence
                            shell(s).
    'drct_eval_cl'       :  evaluate direct ionisation from other
                            non-valence (closed) shells.
    'min_shl_cl'         :  lowest closed shell to include (position in
                            adf56 configuration specifications).
    'exca_eval_v2'       :  evaluate excitation/autoionisation from second
                            valence  shell if identified.
    'max_dn_v2'          :  maximum change in v2 n-shell to be included.
    'min_dn_v2'          :  minimum change in v2 n-shell to be include.
    'max_dl_v2'          :  maximum change in v2 l-shell to be included.
    'min_dl_v2'          :  minimum change in v2 l-shell to be include.
    'exca_eval_cl'       :  evaluate excitation/autoionisation from other
                            non-valence (closed) shells.
    'max_dn_cl'          :  maximum change in closed n-shell to be included.
    'min_dn_cl'          :  minimum change in closed n-shell to be included.
    'max_dl_cl'          :  maximum change in closed l-shell to be included.
    'min_dl_cl'          :  minimum change in closed l-shell to be included.
    'exst_eval'          :  evaluate ionisation from excited states.
    'exst_adf00_prt'     :  assume parent for building excited states is
                            as present in the adf00 data set for the ion.
    'exst_prt_hole_shl'  :  specify position of shell in ground configuration
                            to form parent if not from adf00 above.
    'max_n_exst'         :  maximum n-shell for excited states to be included.
    'max_l_exst'         :  maximum l-shell for excited states to be included.
    'drct_eval_exst_v'   :  evaluate direct ionisation from excited state
                            valence shells.
    'drct_eval_exst_cl'  :  evaluate direct ionisation from excited state
                            non-valence (closed) shells.
    'exca_eval_exst_v'   :  evaluate excitation/autoionisation for excited
                            states from valence shells (v1 and v2 above).
    'exca_eval_exst_cl'  :  evaluate excitation/autoionisation for excited
                            states from non-valence (closed) shells.

Notes

Pure python routine.

References

ADAS manual description of adf56: http://www.adas.ac.uk/man/appxa-56.pdf

Version History

  • Martin O'Mullane, 08-08-2022

    • First version
  • Martin O'Mullane, 26-08-2022

    • Use adas.numlines to determine the number of data blocks.

Example

The central ADAS rules.

>>> import adas as adas
>>> file='/home/adas/adas/adf56/large_arf09.dat'
>>> fulldata = adas.xxdata_56(file)
>>> fulldata['config'][56]
'1s2  2s2  2p6  3s2  3p6  3d10 4s2  4p6  4d10 4f13 5s2  5p2'
>>> fulldata['min_shl_cl'][34:40]
array([10,  6, 10, 10,  6,  6])