holzer : Compute and fit Mn,[Cr,Cu] K-alpha/K-beta lines according to Holzer

Compute and fit K-alpha/K-beta lines. Original line data according to the profiles specified by Holzer et al, Physical Review A, Vol. 56, No. 6, p. 4554, December 1997 Ti line from: Y.Ito et al, Physical Review A Vol. 94, p. 042506 (2016)

Mn alpha lines from GSFC document “Instrument Calibration report Natural Line Shapes” authors M.Eckart,C. Kilbourne, Scott Porter https://heasarc.gsfc.nasa.gov/docs/hitomi/calib/caldb_doc/asth_sxs_caldb_linefit_v20161223.pdf

tesfdmtools.methods.holzer.holzer(p, x, offset=None)[source]

Generate Holzer profile for Holzer-elements Alpha lines.

Args:
  • p = parameters for the profile to generate
    • p[0]: shift

    • p[1]: compression factor (gain)

    • p[2]: normalization

    • p[3]: gaussian convolution width (keV)

  • x = list of energies (keV) for which to generate the profile

Kwargs:
  • offset = brehmsstrahlungs offset

Example of use:

profile = holzer(p,x)
tesfdmtools.methods.holzer.hbeta(p, x, offset=None)[source]

Generate Holzer profile for Holzer-elements Beta lines.

Args:
  • p = parameters for the profile to generate
    • p[0]: shift

    • p[1]: compression factor (gain)

    • p[2]: normalization

    • p[3]: gaussian convolution width (keV)

  • x = list of energies (keV) for which to generate the profile

Kwargs:
  • offset = bremsstrahlungs offset

Example of use:

profile = hbeta(p,x)
tesfdmtools.methods.holzer.holzerfit(x, y, line='Alpha', elements=['mn'], offset=0.0, bgain=None)[source]

Fit holzer profile to given count spectrum, using C-stat statistics

Args:
  • x = list of energies (keV)

  • y = list of counts (counts)

Kwargs:
  • line = Type of line to fit ‘Alpha’ or ‘Beta’

  • elements = tuple of elements generating lines

  • offset = Bremsstrahlungs level offset

  • bgain = Fix Beta line gain parameter. When None, the gain is a free parameter.

Returns:
  • fitpar = list of fit parameters
    • fitpar[0]: shift (eV)

    • fitpar[1]: compression factor (gain)

    • fitpar[2]: normalization

    • fitpar[3]: Gaussian resolution width (eV)

    • fitpar[4]: C-stat

    • fitpar[5]: degrees of freedom

    • fitpar[6]: 1-sigma error in fitpar[0]

    • fitpar[7]: 1-sigma error in fitpar[1]

    • fitpar[8]: 1-sigma error in fitpar[2]

    • fitpar[9]: 1-sigma error in fitpar[3]

Example of use:

fitpar = holzerfit(x,y)
tesfdmtools.methods.holzer.holzerelements(elements=['mn'])[source]

Define Holzer elements to be used for holzer spectrum generation. Valid elements are: ‘mn’,’cu’,’cr’,’ti’

Kwargs:
  • elements = tuple of elements generating lines

Returns:
  • range = range in energy of all input elements (for both Alpha and Beta lines)