RAIDA  1.9.0
Public Member Functions | List of all members
AIDA::IModelFunction Interface Referenceabstract

Interface of model function for fitting (for advanced users). More...

#include <IModelFunction.h>

Inheritance diagram for AIDA::IModelFunction:
AIDA::IFunction AIDA::IModelFunctionROOT

Public Member Functions

virtual ~IModelFunction ()
 Destructor.
 
virtual bool providesNormalization () const =0
 Return false if function does not provide the normalization capability.
 
virtual void normalize (bool on)=0
 Normalize by internally adjusting some of the parameters. More...
 
virtual bool isNormalized () const =0
 Return true if normalization is currently switched on.
 
virtual const std::vector
< double > & 
parameterGradient (const std::vector< double > &x) const =0
 Compute gradient with respect to parameters.
 
virtual bool providesParameterGradient () const =0
 Return true if provides parameter gradient.
 
virtual IRangeSetnormalizationRange (int iAxis)=0
 Set the normalization range from -inf to +inf in the i-th axis (dimension). More...
 
virtual void includeNormalizationAll ()=0
 Set full range in all axes.
 
virtual void excludeNormalizationAll ()=0
 Set empty range in all axes.
 
- Public Member Functions inherited from AIDA::IFunction
virtual ~IFunction ()
 Destructor.
 
virtual std::string title () const =0
 Get the Function's title. More...
 
virtual bool setTitle (const std::string &title)=0
 Set the histogram title. More...
 
virtual double value (const std::vector< double > &x) const =0
 Scalar value of the function.
 
virtual int dimension () const =0
 Dimensionality of the domain space.
 
virtual bool isEqual (const IFunction &f) const =0
 Compare if functions are the same. More...
 
virtual const std::vector
< double > & 
gradient (const std::vector< double > &x) const =0
 Gradient of the function. More...
 
virtual bool providesGradient () const =0
 Determine whether function is able to compute gradient.
 
virtual std::string variableName (int i) const =0
 Get the symbolic name of i-th variable.
 
virtual std::vector< std::string > variableNames () const =0
 Get all the names in a vector.
 
virtual bool setParameters (const std::vector< double > &params)=0
 Set new vector of parameters.
 
virtual const std::vector
< double > & 
parameters () const =0
 Retrieve current vector of parameters.
 
virtual int numberOfParameters () const =0
 Number of parameters.
 
virtual std::vector< std::string > parameterNames () const =0
 Names of paramaters. More...
 
virtual bool setParameter (const std::string &name, double x)=0
 Set parameter's value by name. More...
 
virtual double parameter (const std::string &name) const =0
 
virtual int indexOfParameter (const std::string &name) const =0
 Return -1 if parameter not found (name undefined). More...
 
virtual IAnnotationannotation ()=0
 
virtual const IAnnotationannotation () const =0
 
virtual std::string codeletString () const =0
 String describing the metatype and implementation of the function. More...
 
virtual void * cast (const std::string &className) const =0
 See IManagedObject for a description. More...
 

Detailed Description

Interface of model function for fitting (for advanced users).

OPEN QUESTIONS:

How to treat normalization at user level? Two possibilities:

Normalization range might be set directly on the function by the user? Now we set it in the data pipe, Victor thinks that it is not very clear and should be on the function ;)

Author
The AIDA team (http://aida.freehep.org/)

OPEN QUESTIONS:

How to treat normalization at user level? Two possibilities:

Normalization range might be set directly on the function by the user? Now we set it in the data pipe, Victor thinks that it is not very clear and should be on the function ;)

Author
T. Kraemer, DESY
Version
Id:
IModelFunctionROOT.h,v 1.2 2007-01-02 16:20:45 tkraemer Exp

Member Function Documentation

virtual IRangeSet& AIDA::IModelFunction::normalizationRange ( int  iAxis)
pure virtual

Set the normalization range from -inf to +inf in the i-th axis (dimension).

Full range is the default if not set otherwise. It is still possible to evaluate function outside of the normalization range.

PENDING: no methods to retrieve current range!

Implemented in AIDA::IModelFunctionROOT.

virtual void AIDA::IModelFunction::normalize ( bool  on)
pure virtual

Normalize by internally adjusting some of the parameters.

When normalization is on then integral of the function in the normalization range equals to 1.

Implemented in AIDA::IModelFunctionROOT.


The documentation for this interface was generated from the following file: