Mantid
Loading...
Searching...
No Matches
Namespaces | Classes | Typedefs | Functions | Variables
Mantid::CurveFitting::Functions Namespace Reference

Namespaces

namespace  CrystalFieldUtils
 

Classes

class  Abragam
 Provide Abragam fitting function for muon scientists. More...
 
class  ActivationK
 Provide Activation fit function for data in Kelvin interface to IFunction. More...
 
class  ActivationmeV
 Provide Activation fit function for data in meV interface to IFunction. More...
 
class  AsymmetricPearsonVII
 Provides an implementation of the asymmetric PearsonVII function (sometimes it is also referred to as the split-PearsonVII function). More...
 
class  BackgroundFunction
 A background function. More...
 
class  BackToBackExponential
 Provide BackToBackExponential peak shape function interface to IPeakFunction. More...
 
class  BivariateNormal
 Provide peak shape function interface a Peak shape on one time slice of a RectangularDetector. More...
 
class  Bk2BkExpConvPV
 Bk2BkExpConvPV : Peak profile as tback-to-back exponential convoluted with pseudo-Voigt. More...
 
class  BSpline
 A wrapper around Eigen functions implementing a B-spline. More...
 
class  ChebfunBase
 The ChebfunBase class provides a base for function approximation with Chebyshev polynomials. More...
 
class  Chebyshev
 Implements Chebyshev polynomial expansion. More...
 
class  ChudleyElliotSQE
 Chudley-Elliots jump diffusion model. More...
 
class  ComptonPeakProfile
 This implements a resolution function for fitting a single mass in a compton scattering spectrum. More...
 
class  ComptonProfile
 This class serves as a base-class for ComptonProfile type functions. More...
 
class  ComptonScatteringCountRate
 Implements a specialized function that encapsulates the combination of ComptonProfile functions that give the Neutron count rate. More...
 
class  Convolution
 Performes convolution of two functions. More...
 
class  ConvTempCorrection
 Temperature correction used in the convolution fitting tab within the IDA GUI. More...
 
class  CriticalPeakRelaxationRate
 Provide Critical peak of relaxation rate for fitting interface to IFunction. More...
 
class  CrystalFieldControl
 A function that controls creation of the source of CrystalFieldFunction. More...
 
class  CrystalFieldFunction
 Calculates crystal field spectra. More...
 
class  CrystalFieldHeatCapacity
 
class  CrystalFieldHeatCapacityBase
 CrystalFieldHeatCapacity is a function that calculates the molar magnetic heat capacity (in J/K/mol) due to the splitting of electronic energy levels due to the crystal field. More...
 
class  CrystalFieldHeatCapacityCalculation
 
class  CrystalFieldMagnetisation
 
class  CrystalFieldMagnetisationBase
 CrystalFieldMagnetisation is a function that calculates the induced magnetic moment (in bohr magnetons per ion, Am^2 or erg/Gauss) as a function of applied external magnetic field (in Tesla or Gauss), for a particular crystal field splitting. More...
 
class  CrystalFieldMagnetisationCalculation
 
class  CrystalFieldMoment
 
class  CrystalFieldMomentBase
 CrystalFieldMoment is a function that calculates the induced magnetic moment (in bohr magnetons per ion, Am^2 or erg/Gauss) at some applied external magnetic field (in Tesla or Gauss) as a function of temperature (in Kelvin) for a particular crystal field splitting. More...
 
class  CrystalFieldMomentCalculation
 
class  CrystalFieldMultiSpectrum
 Calculates crystal field spectra. More...
 
class  CrystalFieldPeaks
 CrystalFieldPeaks is a function that calculates crystal field peak positions and intensities. More...
 
class  CrystalFieldPeaksBase
 CrystalFieldPeaks is a function that calculates crystal field peak positions and intensities. More...
 
class  CrystalFieldPeaksBaseImpl
 
class  CrystalFieldPhysPropControl
 
class  CrystalFieldSpectrum
 Calculates crystal field spectrum. More...
 
class  CrystalFieldSpectrumControl
 
class  CrystalFieldSusceptibility
 
class  CrystalFieldSusceptibilityBase
 CrystalFieldSusceptibility is a function that calculates the molar magnetic susceptibility (in cm^3/mol or m^3/mol) due to the crystalline electric field. More...
 
class  CrystalFieldSusceptibilityCalculation
 
class  CubicSpline
 A wrapper around GSL functions implementing cubic spline interpolation. More...
 
class  DecoupAsymPowderMagLong
 Provide Decoupling of asymmetry in the ordered state of a powdered magnet for fitting function interface to IFunction. More...
 
class  DecoupAsymPowderMagRot
 Provide Decoupling of asymmetry in the ordered state of a powdered magnet for fitting function interface to IFunction. More...
 
class  DeltaFunction
 Delta function. More...
 
class  DiffRotDiscreteCircle
 
class  DiffSphere
 
class  DynamicKuboToyabe
 Provide Dynamic Kubo Toyabe function interface to IFunction1D for muon scientists. More...
 
class  ElasticDiffRotDiscreteCircle
 
class  ElasticDiffSphere
 Elastic part of the DiffSphere function. More...
 
class  ElasticIsoRotDiff
 Elastic part of the DiffSphere function. More...
 
class  EndErfc
 Provide Errore function erfc()for calibrating the end of a tube. More...
 
class  ExpDecay
 Provide exponential decay function: h*exp(-(x-c)/t) More...
 
class  ExpDecayMuon
 Provide exponential decay function: h*exp(-lambda.x) More...
 
class  ExpDecayOsc
 Provide oscillating exponential decay function: h*exp(-lambda.x)*(cos(2pi*f*x+phi)) More...
 
class  FickDiffusionSQE
 Fick's law for diffusion. More...
 
class  FlatBackground
 FlatBackground : TODO: DESCRIPTION. More...
 
class  FullprofPolynomial
 FullprofPolynomial : Polynomial background defined in Fullprof. More...
 
class  FunctionQDepends
 This is a specialization of IFunction1D for functions having the magnitude of the momentum transfer (Q) as attribute. More...
 
class  GausDecay
 Provide gaussian decay function: A*exp(-(sigma.x)^2)) More...
 
class  GausOsc
 Provide gaussian decay function: A*exp(-(sigma.x)^2)) More...
 
class  Gaussian
 Provide gaussian peak shape function interface to IPeakFunction. More...
 
class  GaussianComptonProfile
 Implements a function to calculate the Compton profile of a nucleus using a Gaussian approximation convoluted with an instrument resolution function that is approximated by a Voigt function. More...
 
class  GramCharlier
 Implements a Gram-Charlier A series expansion. More...
 
class  GramCharlierComptonProfile
 Implements a function to calculate the Compton profile of a nucleus using a Gram-Charlier approximation convoluted with an instrument resolution function that is approximated by a Voigt function. More...
 
class  HallRossSQE
 Hall-Ross jump diffusion model. More...
 
class  IkedaCarpenterPV
 Provide Ikeda-Carpenter-pseudo-Voigt peak shape function interface to IPeakFunction. More...
 
class  InelasticDiffRotDiscreteCircle
 
class  InelasticDiffSphere
 Inelastic part of the DiffSphere function. More...
 
class  InelasticIsoRotDiff
 Inelastic part of the IsoRotDiff function. More...
 
class  IsoRotDiff
 
class  Keren
 Keren : Keren fitting function for muon scientists. More...
 
class  LinearBackground
 Provide linear function interface to IFunction. More...
 
struct  linearJ
 simple structure to hold a linear interpolation of factor J around its numerical divergence point More...
 
class  LogNormal
 Provide Log Normal function: h*exp(-(log(x)-t)^2 / (2*b^2) )/x. More...
 
class  Lorentzian
 Provide lorentzian peak shape function interface to IPeakFunction. More...
 
class  MagneticOrderParameter
 Provide Magnetic Order Paramtere fit function interface to IFunction. More...
 
class  MultivariateGaussianComptonProfile
 
class  MuonFInteraction
 Provide Muon F Interaction fitting function. More...
 
class  MuoniumDecouplingCurve
 Provide Muonium-style decoupling curve function interface to IFunction. More...
 
class  NeutronBk2BkExpConvPVoigt
 NeutronBk2BkExpConvPVoigt : Back-to-back exponential function convoluted with pseudo-voigt for epithermal neutron TOF. More...
 
class  PawleyFunction
 The Pawley approach to obtain lattice parameters from a powder diffractogram works by placing peak profiles at d-values (which result from the lattice parameters and the Miller indices of each peak) and fitting the total profile to the recorded diffractogram. More...
 
class  PawleyParameterFunction
 This function is used internally by PawleyFunction to hold the unit cell parameters as well as the ZeroShift parameter. More...
 
class  PeakParameterFunction
 PeakParameterFunction : More...
 
class  Polynomial
 Polynomial : N-th polynomial background function. More...
 
class  PowerLaw
 Provide Power Law function interface to IFunction. More...
 
class  ProcessBackground
 ProcessBackground : Process background obtained from LeBailFit. More...
 
class  ProductFunction
 Allow user to create a fit function which is the product of two or more other fit functions. More...
 
class  ProductLinearExp
 ProductLinearExp : Function that evauates the product of an exponential and linear function. More...
 
class  ProductQuadraticExp
 ProductQuadraticExp : Function that evauates the product of an exponential and quadratic function. More...
 
class  PseudoVoigt
 PseudoVoigt. More...
 
class  Quadratic
 Provide quadratic function interface to IFunction. More...
 
class  ReflectivityMulf
 ReflectivityMulf : Calculate the ReflectivityMulf from a simple layer model. More...
 
class  RemovePeaks
 
class  Resolution
 Resolution function. More...
 
struct  ResolutionParams
 Simple data structure to store resolution parameter values It avoids some functions taking a huge number of arguments. More...
 
class  SimpleChebfun
 SimpleChebfun : approximates smooth 1d functions and provides methods to manipulate them. More...
 
class  SmoothTransition
 Provide Smooth Transition function interface to IFunction. More...
 
class  StaticKuboToyabe
 Provide static Kubo Toyabe fitting function. More...
 
class  StaticKuboToyabeTimesExpDecay
 StaticKuboToyabeTimesExpDecay fitting function. More...
 
class  StaticKuboToyabeTimesGausDecay
 StaticKuboToyabeTimesGausDecay fitting function. More...
 
class  StaticKuboToyabeTimesStretchExp
 StaticKuboToyabeTimesStretchExp fitting function. More...
 
class  StretchExp
 Provide Streteched Exponential fitting function: h*exp(-(x/t)^b ) More...
 
class  StretchExpMuon
 Provide stetch exponential function for Muon scientists. More...
 
class  TabulatedFunction
 A function which takes its values from a file or a workspace. More...
 
class  TeixeiraWaterSQE
 Teixeira's model to describe the translational diffusion of water. More...
 
class  ThermalNeutronBk2BkExpAlpha
 ThermalNeutronBk2BkExpAlpha : Function to calculate Alpha of Bk2Bk Exponential function from Thermal Neutron Function's Alph0, Alph1, Alph0t, Alph1t, Dtt1, and etc. More...
 
class  ThermalNeutronBk2BkExpBeta
 ThermalNeutronBk2BkExpBETA : Function to calculate Beta of Bk2Bk Exponential function from Thermal Neutron Function's beta0, Alph1, Alph0t, Alph1t, Dtt1, and etc. More...
 
class  ThermalNeutronBk2BkExpConvPVoigt
 ThermalNeutronBk2BkExpConvPVoigt : Back-to-back exponential convoluted with pseudo Voigt for thermal neutron and epithermal neutron TOF. More...
 
class  ThermalNeutronBk2BkExpSigma
 ThermalNeutronBk2BkExpSIGMA : Function to calculate Sigma of Bk2Bk Exponential function from Thermal Neutron Function's Sig0, Sig1, Sig2, Width and etc. More...
 
class  ThermalNeutronDtoTOFFunction
 ThermalNeutronDtoTOFFunction : TODO: DESCRIPTION. More...
 
class  UserFunction
 A user defined function. More...
 
class  UserFunction1D
 Deprecation notice: instead of using this algorithm please use the Fit algorithm where the Function parameter of this algorithm is used to specified the fitting function. More...
 
class  VesuvioResolution
 Calculate the resolution from a workspace of Vesuvio data using the mass & instrument definition. More...
 
class  Voigt
 Implements an analytical approximation to the Voigt function. More...
 
struct  xnlc
 structure to hold info on Volino's coefficients More...
 

Typedefs

using BackgroundFunction_sptr = std::shared_ptr< BackgroundFunction >
 
using BackToBackExponential_sptr = std::shared_ptr< BackToBackExponential >
 
using Bk2BkExpConvPV_sptr = std::shared_ptr< Bk2BkExpConvPV >
 
using ChebfunBase_sptr = std::shared_ptr< ChebfunBase >
 
using ChebfunFunctionType = std::function< double(double)>
 Type of the approximated function. More...
 
using Chebyshev_sptr = std::shared_ptr< Chebyshev >
 
using CubicSpline_const_sptr = const std::shared_ptr< CubicSpline >
 
using CubicSpline_sptr = std::shared_ptr< CubicSpline >
 
using FullprofPolynomial_sptr = std::shared_ptr< FullprofPolynomial >
 
using PawleyFunction_sptr = std::shared_ptr< PawleyFunction >
 
using PawleyParameterFunction_sptr = std::shared_ptr< PawleyParameterFunction >
 
using Polynomial_sptr = std::shared_ptr< Polynomial >
 
using ReflectivityMulf_sptr = std::shared_ptr< ReflectivityMulf >
 
typedef Eigen::Spline< double, 1, Eigen::Dynamic > Spline1D
 
using ThermalNeutronBk2BkExpAlpha_sptr = std::shared_ptr< ThermalNeutronBk2BkExpAlpha >
 
using ThermalNeutronBk2BkExpBeta_sptr = std::shared_ptr< ThermalNeutronBk2BkExpBeta >
 
using ThermalNeutronBk2BkExpConvPVoigt_sptr = std::shared_ptr< ThermalNeutronBk2BkExpConvPVoigt >
 Shared pointer to ThermalNeutronBk2BkExpConvPVoigt peak/function. More...
 
using ThermalNeutronBk2BkExpSigma_sptr = std::shared_ptr< ThermalNeutronBk2BkExpSigma >
 
using ThermalNeutronDtoTOFFunction_sptr = std::shared_ptr< ThermalNeutronDtoTOFFunction >
 

Functions

void MANTID_CURVEFITTING_DLL calculateEigensystem (DoubleFortranVector &eigenvalues, ComplexFortranMatrix &eigenvectors, ComplexFortranMatrix &hamiltonian, ComplexFortranMatrix &hzeeman, int nre, const DoubleFortranVector &bmol, const DoubleFortranVector &bext, const ComplexFortranMatrix &bkq, double alpha_euler, double beta_euler, double gamma_euler)
 Calculate eigenvalues and eigenvectors of the crystal field hamiltonian. More...
 
void MANTID_CURVEFITTING_DLL calculateEigensystem (DoubleFortranVector &eigenvalues, ComplexFortranMatrix &eigenvectors, ComplexFortranMatrix &hamiltonian, int nre, const DoubleFortranVector &bmol, const DoubleFortranVector &bext, const ComplexFortranMatrix &bkq, double alpha_euler=0.0, double beta_euler=0.0, double gamma_euler=0.0)
 
void MANTID_CURVEFITTING_DLL calculateExcitations (const DoubleFortranVector &e_energies, const DoubleFortranMatrix &i_energies, double de, double di, DoubleFortranVector &e_excitations, DoubleFortranVector &i_excitations)
 Calculate the excitations (transition energies) and their intensities. More...
 
void MANTID_CURVEFITTING_DLL calculateIntensities (int nre, const DoubleFortranVector &energies, const ComplexFortranMatrix &wavefunctions, double temperature, double de, IntFortranVector &degeneration, DoubleFortranVector &e_energies, DoubleFortranMatrix &i_energies)
 Calculate the intensities of transitions. More...
 
void MANTID_CURVEFITTING_DLL calculateMagneticMoment (const ComplexFortranMatrix &ev, const DoubleFortranVector &Hdir, const int nre, DoubleFortranVector &moment)
 Calculate the diagonal matrix elements of the magnetic moment operator in a particular eigenvector basis. More...
 
void MANTID_CURVEFITTING_DLL calculateMagneticMomentMatrix (const ComplexFortranMatrix &ev, const std::vector< double > &Hdir, const int nre, ComplexFortranMatrix &mumat)
 Calculate the full magnetic moment matrix in a particular eigenvector basis. More...
 
void MANTID_CURVEFITTING_DLL calculateZeemanEigensystem (DoubleFortranVector &eigenvalues, ComplexFortranMatrix &eigenvectors, const ComplexFortranMatrix &hamiltonian, int nre, const DoubleFortranVector &bext)
 Calculates the eigenvalues/vectors of a crystal field Hamiltonian in a specified external magnetic field. More...
 
double calThermalNeutronTOF (double dh, double dtt1, double dtt1t, double dtt2t, double zero, double zerot, double width, double tcross)
 Calcualte TOF from d-spacing value for thermal neutron. More...
 
void deg_on (const DoubleFortranVector &energy, const DoubleFortranMatrix &mat, IntFortranVector &degeneration, DoubleFortranVector &e_energies, DoubleFortranMatrix &i_energies, double de)
 Find out how many degenerated energy levels exists. More...
 
double denominator_function (double offset_sq, double weight_sq, double m)
 
double derivative_function (double peak_height, double offset, double weight, double m)
 
void evaluateFunctionOnRange (const IFunction_sptr &function, size_t domainSize, const double *range, std::vector< double > &output)
 
double f1 (const double x, const double G, const double w0)
 
double HKT (const double x, const double G, const double F)
 
double integral (double func(const double, const double, const double), const double a, const double b, const double g, const double w0)
 
bool is1DCompositeFunction (const IFunction_sptr &function)
 
double m_derivative_function (double peak_height, double offset_sq, double weight_sq, double m)
 
double midpnt (double func(const double, const double, const double), const double a, const double b, const int n, const double g, const double w0)
 
int no (int i, const IntFortranVector &d, int n)
 
void polint (double xa[], const double ya[], int n, double x, double &y, double &dy)
 
double ZFKT (const double x, const double G)
 

Variables

const char * AMP_PARAM = "Intensity"
 
const double STDDEV_TO_HWHM = std::sqrt(std::log(4.0))
 
const char * WIDTH_PARAM = "Width"
 

Typedef Documentation

◆ BackgroundFunction_sptr

Definition at line 61 of file BackgroundFunction.h.

◆ BackToBackExponential_sptr

Definition at line 71 of file BackToBackExponential.h.

◆ Bk2BkExpConvPV_sptr

Definition at line 73 of file Bk2BkExpConvPV.h.

◆ ChebfunBase_sptr

Definition at line 174 of file ChebfunBase.h.

◆ ChebfunFunctionType

using Mantid::CurveFitting::Functions::ChebfunFunctionType = typedef std::function<double(double)>

Type of the approximated function.

Definition at line 26 of file ChebfunBase.h.

◆ Chebyshev_sptr

Definition at line 55 of file Chebyshev.h.

◆ CubicSpline_const_sptr

Definition at line 96 of file CubicSpline.h.

◆ CubicSpline_sptr

Definition at line 95 of file CubicSpline.h.

◆ FullprofPolynomial_sptr

Definition at line 58 of file FullprofPolynomial.h.

◆ PawleyFunction_sptr

Definition at line 145 of file PawleyFunction.h.

◆ PawleyParameterFunction_sptr

Definition at line 74 of file PawleyFunction.h.

◆ Polynomial_sptr

Definition at line 53 of file Polynomial.h.

◆ ReflectivityMulf_sptr

Definition at line 44 of file ReflectivityMulf.h.

◆ Spline1D

typedef Eigen::Spline<double, 1, Eigen::Dynamic> Mantid::CurveFitting::Functions::Spline1D

Definition at line 22 of file BSpline.h.

◆ ThermalNeutronBk2BkExpAlpha_sptr

Definition at line 49 of file ThermalNeutronBk2BkExpAlpha.h.

◆ ThermalNeutronBk2BkExpBeta_sptr

Definition at line 49 of file ThermalNeutronBk2BkExpBeta.h.

◆ ThermalNeutronBk2BkExpConvPVoigt_sptr

Shared pointer to ThermalNeutronBk2BkExpConvPVoigt peak/function.

Definition at line 156 of file ThermalNeutronBk2BkExpConvPVoigt.h.

◆ ThermalNeutronBk2BkExpSigma_sptr

Definition at line 48 of file ThermalNeutronBk2BkExpSigma.h.

◆ ThermalNeutronDtoTOFFunction_sptr

Definition at line 65 of file ThermalNeutronDtoTOFFunction.h.

Function Documentation

◆ calculateEigensystem() [1/2]

void Mantid::CurveFitting::Functions::calculateEigensystem ( DoubleFortranVector eigenvalues,
ComplexFortranMatrix eigenvectors,
ComplexFortranMatrix hamiltonian,
ComplexFortranMatrix hzeeman,
int  nre,
const DoubleFortranVector bmol,
const DoubleFortranVector bext,
const ComplexFortranMatrix bkq,
double  alpha_euler,
double  beta_euler,
double  gamma_euler 
)

Calculate eigenvalues and eigenvectors of the crystal field hamiltonian.

Parameters
eigenvalues:: Output. The eigenvalues in ascending order. The smallest value is subtracted from all eigenvalues so they always start with 0.
eigenvectors:: Output. The matrix of eigenvectors. The eigenvectors are in columns with indices corresponding to the indices of eigenvalues.
hamiltonian:: Output. The crystal field hamiltonian.
hzeeman:: Output. The zeeman hamiltonian.
nre:: A number denoting the type of ion. |1=Ce|2=Pr|3=Nd|4=Pm|5=Sm|6=Eu|7=Gd|8=Tb|9=Dy|10=Ho|11=Er|12=Tm|13=Yb|
bmol:: The molecular field in Cartesian (Bx, By, Bz) in Tesla
bext:: The external field in Cartesian (Hx, Hy, Hz) in Tesla The z-axis is parallel to the crystal field quantisation axis.
bkq:: The crystal field parameters in meV.
alpha_euler:: The alpha Euler angle in radians
beta_euler:: The beta Euler angle in radians
gamma_euler:: The gamma Euler angle in radians

Definition at line 630 of file CrystalElectricField.cpp.

References Mantid::CurveFitting::FortranMatrix< MatrixClass >::allocate(), calculateEigensystem(), Mantid::Geometry::m, n, and Mantid::CurveFitting::ComplexMatrix::zero().

Referenced by calculateEigensystem(), Mantid::CurveFitting::Functions::CrystalFieldPeaksBase::calculateEigenSystem(), and Mantid::CurveFitting::CrystalFieldEnergies::exec().

◆ calculateEigensystem() [2/2]

void MANTID_CURVEFITTING_DLL Mantid::CurveFitting::Functions::calculateEigensystem ( DoubleFortranVector eigenvalues,
ComplexFortranMatrix eigenvectors,
ComplexFortranMatrix hamiltonian,
int  nre,
const DoubleFortranVector bmol,
const DoubleFortranVector bext,
const ComplexFortranMatrix bkq,
double  alpha_euler = 0.0,
double  beta_euler = 0.0,
double  gamma_euler = 0.0 
)
inline

Definition at line 23 of file CrystalElectricField.h.

References calculateEigensystem().

◆ calculateExcitations()

void Mantid::CurveFitting::Functions::calculateExcitations ( const DoubleFortranVector e_energies,
const DoubleFortranMatrix i_energies,
double  de,
double  di,
DoubleFortranVector e_excitations,
DoubleFortranVector i_excitations 
)

Calculate the excitations (transition energies) and their intensities.

Take account of any degeneracy.

Parameters
e_energies:: Energy values of the degenerated energy levels.
i_energies:: Intensities of the degenerated energy levels.
de:: Excitations which are closer than de are assumed to be degenerated.
di:: Only those excitations are taken into account whose intensities are greater or equal than di.
e_excitations:: The output excitation energies.
i_excitations:: The output excitation intensities.

Definition at line 893 of file CrystalElectricField.cpp.

References Mantid::CurveFitting::FortranVector< VectorClass >::allocate(), index, no(), Mantid::CurveFitting::EigenVector::size(), Mantid::CurveFitting::EigenVector::sort(), and Mantid::CurveFitting::EigenVector::sortIndices().

Referenced by Mantid::CurveFitting::Functions::CrystalFieldFunction::calcExcitations(), Mantid::CurveFitting::Functions::CrystalFieldMultiSpectrum::calcExcitations(), and Mantid::CurveFitting::Functions::CrystalFieldPeaks::functionGeneral().

◆ calculateIntensities()

void Mantid::CurveFitting::Functions::calculateIntensities ( int  nre,
const DoubleFortranVector energies,
const ComplexFortranMatrix wavefunctions,
double  temperature,
double  de,
IntFortranVector degeneration,
DoubleFortranVector e_energies,
DoubleFortranMatrix i_energies 
)

Calculate the intensities of transitions.

Parameters
nre:: Ion number.
energies:: The energies.
wavefunctions:: The wavefunctions.
temperature:: The temperature.
de:: Energy levels which are closer than de are assumed to be degenerated.
degeneration:: Degeneration number for each transition.
e_energies:: Energy values of the degenerated energy levels.
i_energies:: Intensities of the degenerated energy levels.

Definition at line 854 of file CrystalElectricField.cpp.

References deg_on(), and Mantid::CurveFitting::EigenVector::size().

Referenced by Mantid::CurveFitting::Functions::CrystalFieldFunction::calcExcitations(), Mantid::CurveFitting::Functions::CrystalFieldMultiSpectrum::calcExcitations(), and Mantid::CurveFitting::Functions::CrystalFieldPeaks::functionGeneral().

◆ calculateMagneticMoment()

void Mantid::CurveFitting::Functions::calculateMagneticMoment ( const ComplexFortranMatrix ev,
const DoubleFortranVector Hdir,
const int  nre,
DoubleFortranVector moment 
)

Calculate the diagonal matrix elements of the magnetic moment operator in a particular eigenvector basis.

Parameters
ev:: Input. The eigenvector basis.
Hdir:: Input. Cartesian direction of the magnetic moment operator
nre:: Input. The ion number to calculate for.
moment:: Output. The diagonal elements of the magnetic moment matrix

Definition at line 975 of file CrystalElectricField.cpp.

References Mantid::CurveFitting::FortranVector< VectorClass >::allocate().

◆ calculateMagneticMomentMatrix()

void Mantid::CurveFitting::Functions::calculateMagneticMomentMatrix ( const ComplexFortranMatrix ev,
const std::vector< double > &  Hdir,
const int  nre,
ComplexFortranMatrix mumat 
)

Calculate the full magnetic moment matrix in a particular eigenvector basis.

Parameters
ev:: Input. The eigenvector basis.
Hdir:: Input. Cartesian direction of the magnetic moment operator
nre:: Input. The ion number to calculate for.
mumat:: Output. The matrix elements of the magnetic moment matrix

Definition at line 993 of file CrystalElectricField.cpp.

References Mantid::CurveFitting::FortranMatrix< MatrixClass >::allocate().

◆ calculateZeemanEigensystem()

void Mantid::CurveFitting::Functions::calculateZeemanEigensystem ( DoubleFortranVector eigenvalues,
ComplexFortranMatrix eigenvectors,
const ComplexFortranMatrix hamiltonian,
int  nre,
const DoubleFortranVector bext 
)

Calculates the eigenvalues/vectors of a crystal field Hamiltonian in a specified external magnetic field.

Parameters
eigenvalues:: Output. The eigenvalues in ascending order. The smallest value is subtracted from all eigenvalues so they always start with 0.
eigenvectors:: Output. The matrix of eigenvectors. The eigenvectors are in columns with indices corresponding to the indices of eigenvalues.
hamiltonian:: The crystal field hamiltonian in meV.
nre:: A number denoting the type of ion. |1=Ce|2=Pr|3=Nd|4=Pm|5=Sm|6=Eu|7=Gd|8=Tb|9=Dy|10=Ho|11=Er|12=Tm|13=Yb|
bext:: The external field in Cartesians (Hx, Hy, Hz) in Tesla The z-axis is parallel to the crystal field quantisation axis.

Definition at line 600 of file CrystalElectricField.cpp.

References Mantid::CurveFitting::EigenVector::zero().

◆ calThermalNeutronTOF()

double Mantid::CurveFitting::Functions::calThermalNeutronTOF ( double  dh,
double  dtt1,
double  dtt1t,
double  dtt2t,
double  zero,
double  zerot,
double  width,
double  tcross 
)
inline

Calcualte TOF from d-spacing value for thermal neutron.

Definition at line 68 of file ThermalNeutronDtoTOFFunction.h.

References n.

Referenced by Mantid::CurveFitting::Functions::ThermalNeutronDtoTOFFunction::function1D(), and Mantid::CurveFitting::Algorithms::FitPowderDiffPeaks::genPeak().

◆ deg_on()

void Mantid::CurveFitting::Functions::deg_on ( const DoubleFortranVector energy,
const DoubleFortranMatrix mat,
IntFortranVector degeneration,
DoubleFortranVector e_energies,
DoubleFortranMatrix i_energies,
double  de 
)

Find out how many degenerated energy levels exists.

Store the intensities of the degenarated levels.

Parameters
energy:: The energies.
mat:: The transition matrix elements. (Intensities without considering degeneracy).
degeneration:: Degeneration number for each transition.
e_energies:: Energy values of the degenerated energy levels.
i_energies:: Intensities of the degenerated energy levels.
de:: Energy levels which are closer than de are assumed to be degenerated.

Definition at line 792 of file CrystalElectricField.cpp.

References Mantid::CurveFitting::FortranMatrix< MatrixClass >::allocate(), Mantid::CurveFitting::FortranVector< VectorClass >::allocate(), energy, no(), and Mantid::CurveFitting::EigenMatrix::zero().

Referenced by calculateIntensities().

◆ denominator_function()

double Mantid::CurveFitting::Functions::denominator_function ( double  offset_sq,
double  weight_sq,
double  m 
)

◆ derivative_function()

double Mantid::CurveFitting::Functions::derivative_function ( double  peak_height,
double  offset,
double  weight,
double  m 
)

◆ evaluateFunctionOnRange()

void Mantid::CurveFitting::Functions::evaluateFunctionOnRange ( const IFunction_sptr function,
size_t  domainSize,
const double *  range,
std::vector< double > &  output 
)

◆ f1()

double Mantid::CurveFitting::Functions::f1 ( const double  x,
const double  G,
const double  w0 
)

◆ HKT()

double Mantid::CurveFitting::Functions::HKT ( const double  x,
const double  G,
const double  F 
)

◆ integral()

double Mantid::CurveFitting::Functions::integral ( double   funcconst double, const double, const double,
const double  a,
const double  b,
const double  g,
const double  w0 
)

Definition at line 104 of file DynamicKuboToyabe.cpp.

References fabs, midpnt(), and polint().

Referenced by HKT().

◆ is1DCompositeFunction()

bool Mantid::CurveFitting::Functions::is1DCompositeFunction ( const IFunction_sptr function)

◆ m_derivative_function()

double Mantid::CurveFitting::Functions::m_derivative_function ( double  peak_height,
double  offset_sq,
double  weight_sq,
double  m 
)

◆ midpnt()

double Mantid::CurveFitting::Functions::midpnt ( double   funcconst double, const double, const double,
const double  a,
const double  b,
const int  n,
const double  g,
const double  w0 
)

Definition at line 38 of file DynamicKuboToyabe.cpp.

References n, and Mantid::Geometry::x.

Referenced by integral().

◆ no()

int Mantid::CurveFitting::Functions::no ( int  i,
const IntFortranVector d,
int  n 
)

Definition at line 768 of file CrystalElectricField.cpp.

References Mantid::Geometry::d, and n.

Referenced by calculateExcitations(), and deg_on().

◆ polint()

void Mantid::CurveFitting::Functions::polint ( double  xa[],
const double  ya[],
int  n,
double  x,
double &  y,
double &  dy 
)

◆ ZFKT()

double Mantid::CurveFitting::Functions::ZFKT ( const double  x,
const double  G 
)

Variable Documentation

◆ AMP_PARAM

const char* Mantid::CurveFitting::Functions::AMP_PARAM = "Intensity"

◆ STDDEV_TO_HWHM

const double Mantid::CurveFitting::Functions::STDDEV_TO_HWHM = std::sqrt(std::log(4.0))

◆ WIDTH_PARAM

const char* Mantid::CurveFitting::Functions::WIDTH_PARAM = "Width"