smart_lorentz_gauss 2.0.14 smart_lorentz_gauss: ^2.0.14 copied to clipboard
Provides functionalities to compute mixed Lorentz-Gauss line shapes, also called n-dimensional Pseudo-Voigt function.
Smart Lorentz Gauss #
What the package can do for you #
This package provides functionalities to compute an n-dimensional mixed Lorentz-Gauss line shape, also called an n-dimensional Pseudo-Voigt function. Typically such functions occur in spectroscopic data originating from electro-magnetic radiation. The function can for example be used for fitting or deconvolution of such data, or for simulating (computing) spectra, i.e. as a superposition of several shapes with different parameters.
Example #
-
The provided example can be directly executed via https://smart.specpad.bplaced.net/smart_lorentz_gauss/example.html. The result will be displayed in the browser.
-
Or, download the package and execute the file
example/example.html
in your browser.
The major API functionalities #
- class
LorentzGauss
-
The following example constructs a LorentzGauss shape with the given amplitude, center, width, and Gaussian fraction.
LorentzGauss lg = new LorentzGauss.fromPars(amplitude, [center], [width], [0.2]);
-
The following example computes the value of the above shape value at position x.
double val = lg.getValueAt(x]);
-
The following example computes an array of size NPOINTS containing a pure Lorentzian with amplitude 100. The maximum will be at index NPOINTS/4, and line width 20 points at half maximum height.
Float64List lor = LorentzGauss.array1D(NPOINTS, 100.0, NPOINTS~/4, 20, 0.0, null);
Related packages #
smart_arrays_base
: Basic functions for 1D and 2D arrays
smart_arrays_numerics
: Numerics with 1D and 2D arrays
smart_arrays_compress
: Compress 1D and 2D arrays to a smaller size.
smart_arrays_dbstore
: Store 1D and 2D arrays along with metadata on the local device.
smart_arrays_plot_polyline
: Plot 1D arrays as polyline along with axes and more.
smart_arrays_peaks
: Detect peaks in 1D and 2D arrays.