LorentzGauss class

This class provides functionalities to compute an n-dimensional mixed Lorentz-Gauss line shape, also called an n-dimensional Pseudo-Voigt function V(x) (see https://de.wikipedia.org/wiki/Voigt-Profil):

V(x) = m*L(x) + (1-m)G(x), m = 0...1 where L is a Lorentzian and G a Gaussian line shape. In detail: V(x1, ... , xn)) = Product(i=1,n){ a * (mi) / ( (1+ FLORENTZ((xi-ci)/wi)^2) ) + a * (1-mi)exp(-FGAUSS((xi-ci)/wi)^2)}

Inheritance

Constructors

LorentzGauss.fromPars(double a, List<double> c, List<double> w, List<double> m, [ double fGauss, double fLorentz ])
Constructs a mixed Gauss-Lorentz shape defined by: a - amplitude c - center w - width m - mixing factors (0 <= m <= 1) where m=1=pure Lorentzian, then w = Lorentzian width m=0=pure Gaussian, then w = Gaussian sigma The dimension n of c,w,m must be the same (>0) and define the dimension of the shape. Otherwise an exception is thrown. fGauss and fLorentz will take on defaults (see above) when omitted. Different literature references are using different defaults. The factors ensure that w is the line width at half maximum height for L, G, and mixed.

Properties

a ↔ double
read / write
c ↔ List<double>
centers, widths, L/G mixing factors
read / write
dim ↔ int
line shape dimension
read / write
FGAUSS → double
defaults for fGauss and fLorentz
final
fGauss ↔ double
factors for shape consistency (see constructor comment)
read / write
FLORENTZ → double
defaults for fGauss and fLorentz
final
fLorentz ↔ double
factors for shape consistency (see constructor comment)
read / write
m ↔ List<double>
centers, widths, L/G mixing factors
read / write
pars ↔ List<double>
combination of parameters above in an array
read / write
w ↔ List<double>
centers, widths, L/G mixing factors
read / write
hashCode → int
The hash code for this object. [...]
read-only, inherited
integral ↔ double
read / write, inherited
integralCalculated ↔ bool
read / write, inherited
NOT_IMPL → String
final, inherited
runtimeType → Type
A representation of the runtime type of the object.
read-only, inherited
shapeParameters ↔ Object
read / write, inherited

Methods

getValueAt(List<double> x) → double
Returns the value of this mixed Gauss-Lorentz shape at the n-dimensional point x. Throws Exception if the dimension of x is not in accordance with the parameters specified at shape construction time.
override
fromList(Object pars) → dynamic
pars - the parameters of the shape. Can be anything. For Gauss-Lorentz, e.g. a List (see there)
inherited
getIntegral() → double
Returns the integral of this shape if its was computed (see getValuesAt, otherwise throws.
inherited
getShapeParams() → Object
Returns teh shape parameters
inherited
getValuesAt(List<List<double>> xxx, int integralType) → Float64List
Calculates and returns the values of the Shape at the given positions xxx. xxx.length is the dimension of the shape, so a position has n coordinate values. xxx0.length is the number of points for which to calculate the shape value. xxxp the n-dimensional coordinate of a point p integralType - how the integral is computed. 0=sum of all values. -1 = compute no integral
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed. [...]
inherited
toString() → String
Returns a string representation of this object.
inherited

Operators

operator ==(dynamic other) → bool
The equality operator. [...]
inherited