atomicrex  0.1
An advanced atomistic model building tool
Public Member Functions | Protected Member Functions | List of all members
atomicrex::FunctionMorseC Class Reference
Inheritance diagram for atomicrex::FunctionMorseC:
atomicrex::FunctionBase atomicrex::FitObject atomicrex::NumericalIntegration

Public Member Functions

 FunctionMorseC (const FPString &id, FitJob *job)
 
virtual void parse (XML::Element functionElement) override
 Parses function parameters from the given XML element.
 
virtual XML::OElement generateXMLDefinition (const FPString &elementName) override
 Produces an XML representation of the function's current parameters and DOFs.
 
- Public Member Functions inherited from atomicrex::FunctionBase
 FunctionBase (const FPString &id, FitJob *job, const FPString &tag=FPString())
 Constructor.
 
bool hasCutoff () const
 Returns whether this function has a cutoff.
 
double cutoff () const
 
void setCutoff (double cutoff)
 
double prefactor () const
 Returns the constant prefactor the function is multiplied with.
 
double evaluate (double r)
 Evaluates the function at the given r and multiplies the value with the proper normalization factor.
 
double evaluate (double r, double &deriv)
 Evaluates the function and its derivative at the given r and multiplies the values with the proper normalization factor.
 
void writeTabulated (std::ostream &out, double rmin, double rmax, double dr)
 Write tabulated function to stream for visualization with Gnuplot. More...
 
NormalizationMode normalizationMode () const
 Returns the normalization mode set for this function.
 
void setNormalizationMode (NormalizationMode mode)
 Specifies the normalization mode to be used for this function.
 
void computePrefactor ()
 
virtual void dofValueChanged (DegreeOfFreedom &dof) override
 
const std::shared_ptr< FunctionBase > & screeningFunction () const
 Returns the screening function applied to this function, or NULL.
 
void setScreeningFunction (const std::shared_ptr< FunctionBase > &func)
 
void verifyDerivative ()
 
void checkDerivativeNumerically (double r)
 
double centralDerivative (double r, double h, double &abserr_trunc, double &abserr_round)
 
- Public Member Functions inherited from atomicrex::FitObject
virtual ~FitObject ()=default
 Virtual destructor.
 
double relativeWeight () const
 Returns the relative fit weight assigned to this object.
 
void setRelativeWeight (double weight)
 Assigns a relative fit weight to this object.
 
virtual void assignAbsoluteWeights (double absoluteWeight)
 Recursively assigns absolute weights to the properties of this object and its sub-objects.
 
virtual bool computeProperties (bool isFitting)
 Computes all enabled properties of the object.
 
const std::vector< FitProperty * > & properties () const
 Returns a list of fitting properties of this object.
 
void listAllProperties (std::vector< FitProperty *> &list) const
 Builds a list of properties of this object and all its sub-objects.
 
FitPropertypropertyById (const FPString &id) const
 Returns the property with the given ID.
 
const std::vector< DegreeOfFreedom * > & DOF () const
 Returns a list of degrees of freedom of this object.
 
void listAllDOF (std::vector< DegreeOfFreedom *> &list) const
 Builds a list of degrees of freedom of this object and all its sub-objects.
 
DegreeOfFreedomDOFById (const FPString &id, const FPString &tag=FPString()) const
 Returns the degree of freedom with the given ID (and tag).
 
const std::vector< FitObject * > & fitObjects () const
 Returns the list of FitObjects which are part of this group.
 
void registerSubObject (FitObject *subobject, bool deleteOnShutdown=false)
 Registers a sub-object.
 
virtual void print (MsgLogger &stream)
 Outputs the name of the object.
 
bool fitEnabled () const
 Returns whether this object and it's children are included in the fit.
 
void setFitEnabled (bool enable)
 Sets whether this object and it's children are included in the fit.
 
bool outputEnabled () const
 
void setOutputEnabled (bool enable)
 
const FPStringid () const
 Returns the identifier of this object instance.
 
void setId (const FPString &id)
 Sets the main identification tag.
 
const FPStringtag () const
 Returns the assigned tag string.
 
void setTag (const FPString &tag)
 Sets the complementary identification tag.
 
FitJobjob () const
 Returns a pointer to the job to which this object belongs.
 
FitObjectparent () const
 Returns the parent of this object in the hierarchy.
 
- Public Member Functions inherited from atomicrex::NumericalIntegration
template<typename DifferentialForm >
double integrate (double a, double b, DifferentialForm diffForm)
 
virtual double integrate (double a, double b)
 
virtual double integrateSpherical (double a, double b)
 

Protected Member Functions

double evaluateInternal (double r) override
 
double evaluateInternal (double r, double &deriv) override
 
- Protected Member Functions inherited from atomicrex::FunctionBase
virtual std::vector< DegreeOfFreedom * > DOFToExport ()
 
- Protected Member Functions inherited from atomicrex::FitObject
 FitObject ()
 Default Constructor.
 
 FitObject (const FPString &id, FitJob *job, const FPString &tag=FPString())
 Constructor.
 
void registerProperty (FitProperty *prop, bool deleteOnShutdown=false)
 Registers a property of this object.
 
void registerDOF (DegreeOfFreedom *dof)
 Registers a DOF of this object.
 

Additional Inherited Members

- Public Types inherited from atomicrex::FunctionBase
enum  NormalizationMode { NONE, SPHERICAL_INTEGRAL, UNITY_ORIGIN }
 
- Static Public Member Functions inherited from atomicrex::FunctionBase
static std::shared_ptr< FunctionBasecreateAndParse (XML::Element functionElement, const FPString &id, FitJob *job)
 Parses an XML element and creates a function object out of it.
 
- Protected Attributes inherited from atomicrex::FunctionBase
double _cutoff
 The function cutoff.
 
double _prefactor
 The constant prefactor used to normalize the function.
 
NormalizationMode _normalizationMode
 Controls the type of normalization applied to the function.
 
std::shared_ptr< FunctionBase_screeningFunction
 Optional screening function.
 
- Protected Attributes inherited from atomicrex::FitObject
bool _fitEnabled = true
 Controls whether this object and it's children are included in the fit.
 
bool _outputEnabled = true
 
FitJob_job = nullptr
 Pointer to the job this object belongs to.
 
FPString _id
 The identifier string of this object instance.
 
double _relativeWeight = 1.0
 The relative fit weight assigned to this object.
 

Member Function Documentation

◆ evaluateInternal() [1/2]

double atomicrex::FunctionMorseC::evaluateInternal ( double  r)
overrideprotectedvirtual

Evaluates the function at the given r. This does not include the constant pre-factor, or the optional screening function.

Implements atomicrex::FunctionBase.

◆ evaluateInternal() [2/2]

double atomicrex::FunctionMorseC::evaluateInternal ( double  r,
double &  deriv 
)
overrideprotectedvirtual

Evaluates the function and its derivative at the given r. This does not include the constant pre-factor, or the optional screening function.

Implements atomicrex::FunctionBase.


The documentation for this class was generated from the following files: