CERN Accelerating science

This website is no longer maintained. Its content may be obsolete. Please visit http://home.cern/ for current CERN information.

Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

AIDA::IModelFunction Interface Reference

#include <IModelFunction.h>

Inheritance diagram for AIDA::IModelFunction::

AIDA::IFunction List of all members.

Public Methods

virtual ~IModelFunction ()
 Destructor. More...

virtual bool providesNormalization () const=0
 Return false if function does not provide the normalization capability. More...

virtual void normalize (bool on)=0
virtual bool isNormalized () const=0
virtual const std::vector<
double>& 
parameterGradient (const std::vector< double > &x) const=0
virtual bool providesParameterGradient () const=0
virtual IRangeSetnormalizationRange (int iAxis)=0
virtual void includeNormalizationAll ()=0
virtual void excludeNormalizationAll ()=0

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/)

Definition at line 43 of file IModelFunction.h.


Constructor & Destructor Documentation

AIDA::IModelFunction::~IModelFunction ( ) [inline, virtual]
 

Definition at line 47 of file IModelFunction.h.


Member Function Documentation

void AIDA::IModelFunction::excludeNormalizationAll ( ) [pure virtual]
 

Set empty range in all axes.

void AIDA::IModelFunction::includeNormalizationAll ( ) [pure virtual]
 

Set full range in all axes.

bool AIDA::IModelFunction::isNormalized ( ) const [pure virtual]
 

Return true if normalization is currently switched on.

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!

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.

const std::vector< double > & AIDA::IModelFunction::parameterGradient ( const std::vector< double > & x ) const [pure virtual]
 

Compute gradient with respect to parameters.

bool AIDA::IModelFunction::providesNormalization ( ) const [pure virtual]
 

bool AIDA::IModelFunction::providesParameterGradient ( ) const [pure virtual]
 

Return true if provides parameter gradient.


The documentation for this interface was generated from the following file:
Generated at Tue Feb 18 15:48:24 2003 for AIDA_Interfaces by doxygen1.2.8.1 written by Dimitri van Heesch, © 1997-2001