EPDL97 Package

EPDL97 Package

These modules allow to parse the Evaluated Photon Data Library files.

The modules to use are:

EADLParser EPDL97Parser

The converted files used by PyMca can be obtained using the scripts:

  • GenerateEADLBindingEnergies.py
  • GenerateEADLShellConstants.py
  • GenerateEADLShellNonradiativeRates.py
  • GenerateEADLShellRadiativeRates.py
  • GenerateEPDL97CrossSections.py
  • GenerateEPDL97TotalCrossSections.py

Those scripts can be found in your EPDL97 installation directory:

import os
from PyMca5 import EPDL97
print(os.path.dirname(EPDL97.__file__))

EADLParser Module

The 1997 release of the Evaluated Atomic Data Library (EADL97)

This module parses the EADL.DAT file that can be downloaded from:

http://www-nds.iaea.org/epdl97/libsall.htm

EADL contains atomic relaxation information for use in particle transport analysis for atomic number Z = 1-100 and for each subshell.

The original units are in cm and MeV.

The specific data are:

  • Subshell data

    1. number of electrons
    2. binding and kinetic energy (MeV)
    3. average radius (cm)
    4. radiative and non-radiative level widths (MeV)
    5. average number of released electrons and x-rays
    6. average energy of released electrons and x-rays (MeV)
    7. average energy to the residual atom, i.e., local deposition (MeV)
  • Transition probability data

    1. radiation transition probabilities
    2. non-radiative transition probabilities

The data are organized in blocks with headers.

The first line of the header:

Columns Format Definition 1-3 I3 Z - atomic number 4-6 I3 A - mass number (in all cases=0 for elemental data) 8-9 I2 Yi - incident particle designator (7 is photon) 11-12 I2 Yo - outgoing particle designator (0, no particle

7, photon 8, positron 9, electron)

14-24 E11.4 AW - atomic mass (amu)

26-31 I6 Date of evaluation (YYMMDD)

The second line of the header:

Columns Format Definition 1-2 I2 C - reaction descriptor

= 71, coherent scattering = 72, incoherent scattering = 73, photoelectric effect = 74, pair production = 75, triplet production = 91, subshell parameters = 92, transition probabilities = 93, whole atom parameters
3-5 I2 I - reaction property:

= 0, integrated cross section = 10, avg. energy of Yo = 11, avg. energy to the residual atom = 912, number of electrons = 913, binding energy = 914, kinetic energy = 915, average radius = 921, radiative level width = 922, non-radiative level width = 931, radiative transition probability = 932, non-radiative transition probability = 933, particles per initial vacancy = 934, energy of particles per initial vacancy = 935, average energy to the residual atom, i.e.

local deposition, per initial vacancy

— moved to EPDL97 — = 941, form factor = 942, scattering function = 943, imaginary anomalous scatt. factor = 944, real anomalous scatt. factor

6-8 I3 S - reaction modifier:
= 0 no X1 field data required = 91 X1 field data required
22-32 #11.4 X1 - subshell designator
0 if S is 0 if S is 91, subshell designator

Summary of the EADL Data Base

Yi C S X1 Yo I Data Types

Subshell parameters

0 91 0 0. 0 914 kinetic energy 0 91 0 0. 0 915 average radius 0 91 0 0. 0 921 radiative level width 0 91 0 0. 0 921 non-radiative level width ————————————————————————–

Transititon probabilities
initial vacancy
0 92 0 0. 7 or 9 934 average energy of particles per
initial vacancy

0 92 91 * 0 931 radiative transition probability 0 92 91 * 0 932 non-radiative transition probability ————————————————————————— Yi C S X1 Yo I Data Types ————————————————————————–

  • -> Subshell designator

Data sorted in ascending order Z -> C -> S -> X1 -> Yo -> I

PyMca5.EPDL97.EADLParser.getActualDataFromLinesAndOffset(lines, index)[source]
PyMca5.EPDL97.EADLParser.getAtomicWeights()[source]
PyMca5.EPDL97.EADLParser.getBaseShellDict(nvalues=None)[source]
PyMca5.EPDL97.EADLParser.getBaseShellList()[source]
PyMca5.EPDL97.EADLParser.getBindingEnergies(z)[source]

Returns the binding energies in MeV

PyMca5.EPDL97.EADLParser.getCosterKronigYields(z, shell='L1')[source]

Returns the non-zero Coster-Kronig yields as keys of a dictionnary or just an empty dictionnary.

PyMca5.EPDL97.EADLParser.getDataLineIndex(lines, z, Yi, C, S, X1, Yo, I)[source]
PyMca5.EPDL97.EADLParser.getFluorescenceYields(z, lines=None)[source]
PyMca5.EPDL97.EADLParser.getLShellCosterKronigYields(z)[source]

Returns the L-shell Coster-Kronig yields of an element as keys of a dictionnary

PyMca5.EPDL97.EADLParser.getMShellCosterKronigYields(z)[source]

Returns the M-shell Coster-Kronig yields of an element as keys of a dictionnary. It does not check for physical meaning. So, it will give zeroes when needed.

PyMca5.EPDL97.EADLParser.getNonradiativeTransitionProbabilities(z, shell='K')[source]

Returns the radiative transition probabilities and energies to the given shell. The output is a dictionary in IUPAC notation.

PyMca5.EPDL97.EADLParser.getNonradiativeWidths(z, lines=None)[source]
PyMca5.EPDL97.EADLParser.getParticle(value)[source]

Returns one of [‘none’, ‘photon’, ‘positron’, ‘electron’] following the convention:

0 = no particle 7 = photon 8 = positron 9 = electron)
PyMca5.EPDL97.EADLParser.getRadiativeTransitionProbabilities(z, shell='K')[source]

Returns a dictionary with the radiative transition probabilities from any shell to the given shell.

PyMca5.EPDL97.EADLParser.getRadiativeWidths(z, lines=None)[source]
PyMca5.EPDL97.EADLParser.getReactionFromCode(value)[source]

The input value must be one of: 91, 92, 73, 74, 75 Returns one of coherent, incoherent, photoelectric, pair, triplet according to the integer EADL97 code of the reaction:

91 <-> subshell parameters 92 <-> transition probabilities 93 <-> whole atom parameters
PyMca5.EPDL97.EADLParser.getReactionPropertyFromCode(value)[source]

The input value must be one of: 0, 10, 11, 941, 942, 943, 944 according to the integer EPDL97 code of the reaction property:

0 <-> integrated cross section

10 <-> avg. energy of Yo 11 <-> avg. energy to the residual atom

912 <-> number of electrons 913 <-> binding energy 914 <-> kinetic energy 915 <-> average radius 921 <-> radiative level width 922 <-> non-radiative level width 931 <-> radiative transition probability 932 <-> non-radiative transition probability 934 <-> energy of particles per initial vacancy 935 <-> average energy to the residual atom, i.e. 941 <-> form factor 942 <-> scattering function 943 <-> imaginary anomalous scatt. factor 944 <-> real anomalous scatt. factor

PyMca5.EPDL97.EADLParser.parseHeader(line0, line1)[source]
PyMca5.EPDL97.EADLParser.parseHeader0(line)[source]

Columns Format Definition 1-3 I3 Z - atomic number 4-6 I3 A - mass number (in all cases=0 for elemental data) 8-9 I2 Yi - incident particle designator (7 is photon) 11-12 I2 Yo - outgoing particle designator (0, no particle

7, photon 8, positron 9, electron)

14-24 E11.4 AW - atomic mass (amu)

26-31 I6 Date of evaluation (YYMMDD)

PyMca5.EPDL97.EADLParser.parseHeader1(line)[source]

The second line of the header:

Columns Format Definition 1-2 I2 C - reaction descriptor

= 71, coherent scattering = 72, incoherent scattering = 73, photoelectric effect = 74, pair production = 75, triplet production = 91, subshell parameters = 92, transition probabilities = 93, whole atom parameters
3-5 I2 I - reaction property:

= 0, integrated cross section = 10, avg. energy of Yo = 11, avg. energy to the residual atom = 912, number of electrons = 913, binding energy = 914, kinetic energy = 915, average radius = 921, radiative level width = 922, non-radiative level width = 931, radiative transition probability = 932, non-radiative transition probability = 934, energy of particles per initial vacancy = 935, average energy to the residual atom, i.e.

local deposition, per initial vacancy

— moved to EPDL97 — = 941, form factor = 942, scattering function = 943, imaginary anomalous scatt. factor = 944, real anomalous scatt. factor

6-8 I3 S - reaction modifier:
= 0 no X1 field data required = 91 X1 field data required
22-32 #11.4 X1 - subshell designator
0 if S is 0 if S is 91, subshell designator

EADLSubshells Module

PyMca5.EPDL97.EADLSubshells.getSubshellFromValue(value)[source]
PyMca5.EPDL97.EADLSubshells.getValueFromSubshell(subshell)[source]

Returns the float value associated to the respective shell or subshell

EPDL97Parser Module

The 1997 release of the Evaluated Photon Data Library (EPDL97)

This module parses the EPDL97.DAT that can be downloaded from:

http://www-nds.iaea.org/epdl97/libsall.htm

EPDL contains complete information for particle transport for atomic number Z = 1-100. The incident photon energy range goes down to 1 eV.

The original units are in barns and MeV.

The specific data are:

  • Coherent scattering

    1. integrated cross section
    2. form factor
    3. real and imaginary anomalous scattering factors
    4. average energy of the scattered photon (MeV)
  • Incoherent scattering

    1. integrated cross section
    2. scattering function
    3. average energy of the scattered photon and recoil electron (MeV)
  • Total photoelectric reaction

    1. integrated cross section
    2. average energy of the residual atom, i.e. local deposition (MeV)
    3. average energy of the secondary photons and electrons (MeV)
  • Photoelectric reaction, by subshell

    1. integrated cross section
    2. average energy of the residual atom, i.e. local deposition (MeV)
    3. average energy of the secondary photons and electrons (MeV)
  • Pair production cross section

    1. integrated cross section
    2. average energy of the secondary electron and positron (MeV)
  • Triplet production reaction

    1. integrated cross section
    2. average energy of the secondary electron and positron (MeV)

Photoelectric data are only for photo-ionization. Photo-excitation data is distributed in the separated library EXDL (the Evaluation eXcitation Data Library). Edges are consistant between EADL, EEDL and EPDL.

The data are organized in blocks with headers.

The first line of the header:

Columns Format Definition 1-3 I3 Z - atomic number 4-6 I3 A - mass number (in all cases=0 for elemental data) 8-9 I2 Yi - incident particle designator (7 is photon) 11-12 I2 Yo - outgoing particle designator (0, no particle

7, photon 8, positron 9, electron)

14-24 E11.4 AW - atomic mass (amu)

26-31 I6 Date of evaluation (YYMMDD) 32 I1 Iflag - Interpolation flag:

= 0 or 2, linear in x and y = 3, logarithmic in x, linear in y = 4, linear in x, logarithmic in y = 5, logarithmic in x and y

The second line of the header:

Columns Format Definition 1-2 I2 C - reaction descriptor

= 71, coherent scattering = 72, incoherent scattering = 73, photoelectric effect = 74, pair production = 75, triplet production = 93, whole atom parameters
3-5 I2 I - reaction property:
= 0, integrated cross section = 10, avg. energy of Yo = 11, avg. energy to the residual atom = 941, form factor = 942, scattering function = 943, imaginary anomalous scatt. factor = 944, real anomalous scatt. factor
6-8 I3 S - reaction modifier:
= 0 no X1 field data required = 91 X1 field data required
22-32 #11.4 X1 - subshell designator
0 if S is 0 if S is 91, subshell designator

Summary of the EPDL Data Base

Yi C S X1 Yo I Data Types

Coherent scattering

7 93 0 0. 0 943 imaginary anomalous scatt. factor 7 93 0 0. 0 943 real anomalous scatt. factor 7 71 0 0. 7 10 avg. energy of the scattered photon ————————————————————————–

Incoherent scattering

7 72 0 0. 7 10 avg. energy of the scattered photon 7 72 0 0. 9 10 avg. energy of the recoil electron ————————————————————————–

Photoelectric

7 73 0 0. 7 10 avg. energy of the secondary photons 7 73 0 0. 9 10 avg. energy of the secondary electrons ————————————————————————–

Photoelectric (by subshell)

7 73 91 * 7 10 avg. energy of the secondary photons 7 73 91 * 9 10 avg. energy of the secondary electrons ————————————————————————–

Pair production

7 74 0 0. 9 10 avg. energy of the secondary electron

Triplet production

7 75 0 0. 9 10 avg. energy of the secondary electron

Yi C S X1 Yo I Data Types

  • -> Subshell designator

Data sorted in ascending order Z -> C -> S -> X1 -> Yo -> I

PyMca5.EPDL97.EPDL97Parser.getActualDataFromLinesAndOffset(lines, index)[source]
PyMca5.EPDL97.EPDL97Parser.getAtomicWeights()[source]
PyMca5.EPDL97.EPDL97Parser.getCodeFromReaction(text)[source]

The input text must be one of: coherent, incoherent, photoelectric, subshell_photoelectric, pair, triplet Returns the integer EPDL97 code of the reaction:

71 <-> coherent scattering 72 <-> incoherent scattering 73 <-> photoelectric effect 74 <-> pair production 75 <-> triplet production 93 <-> whole atom parameters
PyMca5.EPDL97.EPDL97Parser.getDataLineIndex(lines, z, Yi, C, S, X1, Yo, I, getmode=True)[source]
PyMca5.EPDL97.EPDL97Parser.getInterpolationType(value)[source]

Returns one of [‘lin-lin’, ‘log-lin’, ‘lin-log’, ‘log-log’] following the convention:

0 or 2, linear in x and y -> returns lin-lin 3, logarithmic in x, linear in y -> returns log-lin 4, linear in x, logarithmic in y -> returns lin-log 5, logarithmic in x and y -> returns log-log
PyMca5.EPDL97.EPDL97Parser.getPartialPhotoelectricCrossSection(z, shell, lines=None, getmode=False)[source]
PyMca5.EPDL97.EPDL97Parser.getParticle(value)[source]

Returns one of [‘none’, ‘photon’, ‘positron’, ‘electron’] following the convention:

0 = no particle 7 = photon 8 = positron 9 = electron)
PyMca5.EPDL97.EPDL97Parser.getReactionFromCode(value)[source]

The input value must be one of: 71, 72, 73, 74, 75 Returns one of coherent, incoherent, photoelectric, pair, triplet according to the integer EPDL97 code of the reaction:

71 <-> coherent scattering 72 <-> incoherent scattering 73 <-> photoelectric effect 74 <-> pair production 75 <-> triplet production 93 <-> whole atom parameters
PyMca5.EPDL97.EPDL97Parser.getReactionPropertyFromCode(value)[source]

The input value must be one of: 0, 10, 11, 941, 942, 943, 944 according to the integer EPDL97 code of the reaction property:

0 <-> integrated cross section

10 <-> avg. energy of secondary particle Yo 11 <-> avg. energy to the residual atom

941 <-> form factor 942 <-> scattering function 943 <-> imaginary anomalous scatt. factor 944 <-> real anomalous scatt. factor

PyMca5.EPDL97.EPDL97Parser.getTotalCoherentCrossSection(z, lines=None, getmode=False)[source]
PyMca5.EPDL97.EPDL97Parser.getTotalIncoherentCrossSection(z, lines=None, getmode=False)[source]
PyMca5.EPDL97.EPDL97Parser.getTotalPairCrossSection(z, lines=None, getmode=False)[source]
PyMca5.EPDL97.EPDL97Parser.getTotalPhotoelectricCrossSection(z, lines=None, getmode=False)[source]
PyMca5.EPDL97.EPDL97Parser.getTotalTripletCrossSection(z, lines=None, getmode=False)[source]
PyMca5.EPDL97.EPDL97Parser.parseHeader(line0, line1)[source]
PyMca5.EPDL97.EPDL97Parser.parseHeader0(line)[source]

Columns Format Definition 1-3 I3 Z - atomic number 4-6 I3 A - mass number (in all cases=0 for elemental data) 8-9 I2 Yi - incident particle designator (7 is photon) 11-12 I2 Yo - outgoing particle designator (0, no particle

7, photon 8, positron 9, electron)

14-24 E11.4 AW - atomic mass (amu)

26-31 I6 Date of evaluation (YYMMDD) 32 I1 Iflag - Interpolation flag:

= 0 or 2, linear in x and y = 3, logarithmic in x, linear in y = 4, linear in x, logarithmic in y = 5, logarithmic in x and y
PyMca5.EPDL97.EPDL97Parser.parseHeader1(line)[source]

The second line of the header:

Columns Format Definition 1-2 I2 C - reaction descriptor

= 71, coherent scattering = 72, incoherent scattering = 73, photoelectric effect = 74, pair production = 75, triplet production = 93, whole atom parameters
3-5 I2 I - reaction property:
= 0, integrated cross section = 10, avg. energy of Yo = 11, avg. energy to the residual atom = 941, form factor = 942, scattering function = 943, imaginary anomalous scatt. factor = 944, real anomalous scatt. factor
6-8 I3 S - reaction modifier:
= 0 no X1 field data required = 91 X1 field data required
22-32 #11.4 X1 - subshell designator
0 if S is 0 if S is 91, subshell designator

GenerateEADLBindingEnergies Module

Generate specfile with EADL97 binding energies in keV

PyMca5.EPDL97.GenerateEADLBindingEnergies.getHeader(filename)[source]

GenerateEADLShellConstants Module

Generate specfiles with EADL97 shell constans

PyMca5.EPDL97.GenerateEADLShellConstants.getHeader(filename)[source]

GenerateEADLShellNonradiativeRates Module

Generate specfiles with EADL97 shell transition probabilities

PyMca5.EPDL97.GenerateEADLShellNonradiativeRates.getHeader(filename)[source]

GenerateEADLShellRadiativeRates Module

Generate specfiles with EADL97 shell transition probabilities

PyMca5.EPDL97.GenerateEADLShellRadiativeRates.getHeader(filename)[source]

GenerateEPDL97CrossSections Module

Generate specfile from all EPL97 cross sections in keV and barn

PyMca5.EPDL97.GenerateEPDL97CrossSections.getHeader(filename)[source]

GenerateEPDL97TotalCrossSections Module

Generate specfile from EPL97 total cross sections in keV and barn

PyMca5.EPDL97.GenerateEPDL97TotalCrossSections.getHeader(filename)[source]