ufit documentation

Available models

«  Using the ufit GUI   ::   Contents

Available models

These are the model classes available. Using Function user-written Python functions can be used as models too.

Generic

class ufit.models.Function(fcn, name=None, **init)

Model using a function provided by the user.

Parameters are extracted from the function’s arguments and passed positionally.

Peaks

class ufit.models.Gauss(name='', pos=None, ampl=None, fwhm=None)

Gaussian peak

Parameters:

  • pos - Peak center position
  • ampl - Amplitude at center
  • fwhm - Full width at half maximum
class ufit.models.GaussInt(name='', pos=None, int=None, fwhm=None)

Gaussian peak with integrated intensity parameter

Parameters:

  • pos - Peak center position
  • int - Integrated intensity
  • fwhm - Full width at half maximum
class ufit.models.Lorentz(name='', pos=None, ampl=None, fwhm=None)

Lorentzian peak

Parameters:

  • pos - Peak center position
  • ampl - Amplitude at center
  • fwhm - Full width at half maximum
class ufit.models.LorentzInt(name='', pos=None, int=None, fwhm=None)

Lorentzian peak with integrated intensity parameter

Parameters:

  • pos - Peak center position
  • int - Integrated intensity
  • fwhm - Full width at half maximum
class ufit.models.Voigt(name='', pos=None, ampl=None, fwhm=None, shape=None)

Voigt peak

A convolution of a Gaussian and a Lorentzian.

Parameters:

  • pos - Peak center position
  • ampl - Amplitude at center
  • fwhm - Full width at half maximum of the Gauss part
  • shape - Lorentz contribution
class ufit.models.PseudoVoigt(name='', pos=None, ampl=None, fwhm=None, eta=0.5)

Pseudo-Voigt peak

A pseudo-convolution of a Gaussian and a Lorentzian.

Parameters:

  • pos - Peak center position
  • ampl - Amplitude at center
  • fwhm - Full width at half maximum
  • eta - Lorentzicity
class ufit.models.DHO(name='', center=0, pos=None, ampl=None, gamma=None, tt=None)

Damped Harmonic Oscillator

Two Lorentzians centered around zero with a common width and amplitude, respecting the Bose factor.

Parameters:

  • center - Energy zero
  • pos - omega_0
  • ampl - Amplitude
  • gamma - Damping
  • tt - Temperature in K

Corrections

class ufit.models.Background(name='', bkgd=0)

Constant background

Parameters:

  • bkgd - the background (forced to be nonnegative)
class ufit.models.SlopingBackground(name='', bkgd=0, slope=0)

Linearly sloping background

Parameters:

  • bkgd - constant factor
  • slope - slope coefficient
class ufit.models.CKI_Corr(name='', ki=None, dval='3.355')

Correction for constant-k_i energy scans

Parameters:

  • ki - the ki value in Ang-1
  • dval - the monochromator d-value in Ang
class ufit.models.Bose(name='', tt=None)

Bose factor

Parameters:

  • tt - the temperature in K

Others

class ufit.models.Const(name='', c=None)

A constant, to be used for modifying other models (e.g. exponentiation)

For example: Sinc() ** Const('eta')

Parameters:

  • the constant (named after the model’s name)
class ufit.models.StraightLine(name='', slope=1, y0=0)

Straight line

y = slope * x + y0

Parameters:

  • slope
  • y0 - intercept
class ufit.models.Parabola(name='', x0=0, y0=0, stretch=1)

Parabola

y = stretch * (x - x0)^2 + y0

Parameters:

  • x0 - x coordinate of vertex
  • y0 - y coordinate of vertex
  • stretch - stretch factor
class ufit.models.Cosine(name='', ampl=None, freq=None, phase=0)

Cosine

y = ampl * cos(freq * x + phase)

Parameters:

  • ampl - amplitude
  • freq - frequency (omega or k)
  • phase - phase in radians
class ufit.models.Sinc(name='', ampl=None, freq=None, center=0)

Sinc function

y = ampl * sin(freq*(x - center)) / (freq*(x - center))

Parameters:

  • ampl - amplitude at x = center
  • freq - frequency of the sine
  • center - point of maximum amplitude
class ufit.models.ExpDecay(name='', y0=1, tau=None, y1=0)

Exponential decay

y = y1 + (y0 - y1) * exp(-x/tau)

Parameters:

  • y0 - value at x = 0
  • tau - decay constant: exp(-x/tau)
  • y1 - value at x -> infinity
class ufit.models.PowerLaw(name='', scale=1, start=0, ampl=None, beta=None)

Power law

Parameters:

  • start - starting point
  • scale - x value scaling (positive => right side of starting point)
  • beta - exponent
class ufit.models.GaussianConvolution(model, width=1, name=None)

Models a 1-D convolution with a Gaussian kernel.

Parameters:

  • width - FWHM of Gaussian kernel

«  Using the ufit GUI   ::   Contents