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
- Object
- LineShapeND
- LorentzGauss
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
- amplitudec
- centerw
- widthm
- 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
andfLorentz
will take on defaults (see above) when omitted. Different literature references are using different defaults. The factors ensure thatw
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 ofx
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< xxx, int integralType) → Float64Listdouble> > -
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 pintegralType
- how the integral is computed. 0=sum of all values. -1 = compute no integralinherited -
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