PseudoVoigt1D

class sherpa.astro.models.PseudoVoigt1D(name='pseudovoigt1d')[source] [edit on github]

Bases: RegriddableModel1D

A weighted sum of a Gaussian and Lorentzian distribution.

Unlike the Voigt1D model, which is a convolution between a Gaussian and Lorentz distribution, this approximates the Voigt profile with a linear combination of the two profiles 1. It is often used in spectroscopy.

New in version 4.12.2.

frac

The fraction of the model composed of the Gaussian profile (0 to 1).

fwhm

The full-width half-maximum (FWHM) of each component.

pos

The center of the profile.

ampl

The amplitude of the profile.

See also

NormGauss1D, Lorentz1D, Voigt1D

Notes

The model can be written as:

f(x) = frac * g(x) + (1 - frac) * l(x)

where g(x) and l(x) are NormGauss1D and Lorentz1D models with the fwhm, pos, and ampl values taken from this model.

References

1

https://en.wikipedia.org/wiki/Voigt_profile#Pseudo-Voigt_approximation

Attributes Summary

cache

The maximum size of the cache.

ndim

A one-dimensional model.

thawedparhardmaxes

The hard maximum values for the thawed parameters.

thawedparhardmins

The hard minimum values for the thawed parameters.

thawedparmaxes

The maximum limits of the thawed parameters.

thawedparmins

The minimum limits of the thawed parameters.

thawedpars

The thawed parameters of the model.

Methods Summary

apply(outer, *otherargs, **otherkwargs)

cache_clear()

Clear the cache.

cache_status()

Display the cache status.

calc(*args, **kwargs)

Evaluate the model on a grid.

freeze()

Freeze any thawed parameters of the model.

get_center()

guess(dep, *args, **kwargs)

Guess the parameter values.

regrid(*args, **kwargs)

The class RegriddableModel1D allows the user to evaluate in the requested space then interpolate onto the data space.

reset()

Reset the parameter values.

set_center(pos, *args, **kwargs)

startup([cache])

Called before a model may be evaluated multiple times.

teardown()

Called after a model may be evaluated multiple times.

thaw()

Thaw any frozen parameters of the model.

Attributes Documentation

cache = 5

The maximum size of the cache.

ndim = 1

A one-dimensional model.

thawedparhardmaxes

The hard maximum values for the thawed parameters.

The minimum and maximum range of the parameters can be changed with thawedparmins and thawedparmaxes but only within the range given by thawedparhardmins to thawparhardmaxes.

thawedparhardmins

The hard minimum values for the thawed parameters.

The minimum and maximum range of the parameters can be changed with thawedparmins and thawedparmaxes but only within the range given by thawedparhardmins to thawparhardmaxes.

thawedparmaxes

The maximum limits of the thawed parameters.

Get or set the maximum limits of the thawed parameters of the model as a list of numbers. If there are no thawed parameters then [] is used. The ordering matches that of the pars attribute.

See also

thawedpars, thawedarhardmaxes, thawedparmins

thawedparmins

The minimum limits of the thawed parameters.

Get or set the minimum limits of the thawed parameters of the model as a list of numbers. If there are no thawed parameters then [] is used. The ordering matches that of the pars attribute.

See also

thawedpars, thawedarhardmins, thawedparmaxes

thawedpars

The thawed parameters of the model.

Get or set the thawed parameters of the model as a list of numbers. If there are no thawed parameters then [] is used. The ordering matches that of the pars attribute.

Methods Documentation

apply(outer, *otherargs, **otherkwargs) [edit on github]
cache_clear() [edit on github]

Clear the cache.

cache_status() [edit on github]

Display the cache status.

Information on the cache - the number of “hits”, “misses”, and “requests” - is displayed at the INFO logging level.

Example

>>> pl.cache_status()
 powlaw1d.pl                size:    5  hits:   633  misses:   240  check=  873
calc(*args, **kwargs)[source] [edit on github]

Evaluate the model on a grid.

Parameters
  • p (sequence of numbers) – The parameter values to use. The order matches the pars field.

  • *args – The model grid. The values can be scalar or arrays, and the number depends on the dimensionality of the model and whether it is being evaluated over an integrated grid or at a point (or points).

freeze() [edit on github]

Freeze any thawed parameters of the model.

get_center()[source] [edit on github]
guess(dep, *args, **kwargs)[source] [edit on github]

Guess the parameter values.

The frac parameter is set to 0.5.

regrid(*args, **kwargs) [edit on github]

The class RegriddableModel1D allows the user to evaluate in the requested space then interpolate onto the data space. An optional argument ‘interp’ enables the user to change the interpolation method.

Examples

>>> import numpy as np
>>> from sherpa.models.basic import Box1D
>>> mybox = Box1D()
>>> request_space = np.arange(1, 10, 0.1)
>>> regrid_model = mybox.regrid(request_space, interp=linear_interp)
reset() [edit on github]

Reset the parameter values.

Restores each parameter to the last value it was set to. This allows the parameters to be easily reset after a fit.

set_center(pos, *args, **kwargs)[source] [edit on github]
startup(cache=False) [edit on github]

Called before a model may be evaluated multiple times.

Parameters

cache (bool, optional) – Should a cache be used when evaluating the models.

See also

teardown

teardown() [edit on github]

Called after a model may be evaluated multiple times.

See also

startup

thaw() [edit on github]

Thaw any frozen parameters of the model.

Those parameters that are marked as “always frozen” are skipped.