generate_curve(mytable,
line_width,
xprop,
intensity,
x_scale=1.0,
uvvis=False,
smin=None,
smax=None,
stride=None,
function=' Lorentzian ' ,
line_width_nm=False)
|
|
Generate a full curve for a series of frequency/intensity lines. The
curve is generated by broadening the lines with Gaussian or Lorentzian
curves centered on each line, and summing the curves together.
- Parameters:
mytable (table.Table object) - table of raw data
line_width (float) - the half-bandwidth to use when generating spectrum
x_scale (float) - the x-axis scale factor
intensity (str) - The label of the intensity property in mytable
xprop (str) - The label of the x-axis property in mytable
uvvis (bool) - True if this is a uv/vis spectrum, False if not (default is
False, vibrational spectrum)
smin (int) - The minimum x-value in wavenumbers.
smax (int) - The maximum x-value in wavenumbers.
stride (int) - Compute the intensity every stride values of x
function (str) - The function used to broaden singular intensity values to a full
spectrum curve. Default is Lorentzian, other option is Gaussian.
Use the LORENTZIAN or GAUSSIAN module constants.
line_width_nm (bool) - Linewidth is given in nm. Default is wavenumbers. Not used for
non-UV/Vis spectra.
- Returns: tuple of 1-D numpy arrays
- (xvalues, yvalues) with xvalues running from smin to smax with Xn
= X(n-1) + stride. Note that the X unit will be wavenumbers for
all spectra.
|