This website is no longer maintained. Its content may be obsolete. Please visit http://home.cern/ for current CERN information.
#include <IFunction.h>
Inheritance diagram for AIDA::IFunction::
Public Methods | |
virtual | ~IFunction () |
Destructor. More... | |
virtual double | value (const std::vector< double > &x) const=0 |
virtual int | dimension () const=0 |
virtual bool | isEqual (const IFunction *f) const=0 |
virtual const std::vector< double>& | gradient (const std::vector< double > &x) const=0 |
virtual bool | providesGradient () const=0 |
virtual std::string | variableName (int i) const=0 |
virtual const std::vector< std::string>& | variableNames () const=0 |
virtual void | setParameters (const std::vector< double > ¶ms)=0 |
virtual const std::vector< double>& | parameters () const=0 |
virtual int | numberOfParameters () const=0 |
virtual const std::vector< std::string>& | parameterNames () const=0 |
virtual bool | setParameter (std::string name, double x)=0 |
virtual double | parameter (std::string name) const=0 |
virtual int | indexOfParameter (std::string name) const=0 |
virtual IAnnotation& | annotation ()=0 |
virtual const IAnnotation& | annotation () const=0 |
virtual std::string | codeletString () const=0 |
The standard convention of referring to variables by name: "x[0]" corresponds to variable number 0 etc.
Definition at line 35 of file IFunction.h.
|
Definition at line 39 of file IFunction.h. |
|
|
|
|
|
String describing the metatype and implementation of the function. Generic format of the string: codelet:TYPE:LOCATION TYPE part contains only a 'typename' string which is a metatype identifier (used in plugins and catalogues) LOCATION may be: 'file', 'verbatim', or 'catalogue' Detailed description: codelet:typename - no location specified (using 'catalogue') codelet:typename:file:/filename.cpp - a c++ source file codelet:typename:file:/filename.py - a python source file codelet:typename:file:/filename.so - a shared library codelet:typename:catalogue - entry in a catalogue repository
codelet:typename:verbatim:cpp
codelet:typename:verbatim:py Comments: file:/filename is a relative path to $AIDA_FUNCTION_DEFAULT_DIR file://filename is an absolute path Examples:
codelet:G:catalogue codelet:userSinus:verbatim:cpp |
|
Dimensionality of the domain space. |
|
Gradient of the function. The result is valid only if providesGradient()==true. Otherwise the result is some default (empty) vector. |
|
Return -1 if parameter not found (name undefined). Leave it because there are use cases - some users prefer to use numbers. |
|
Compare if functions are the same. PENDING: define exactly what it means ;) |
|
Number of parameters. |
|
|
|
Names of paramaters. Names should be unique. Case-insensitive for comparison. Case-sensitive for storage and output. All or several names may be left blank "" if the implementation does not want to provide them. |
|
Retrieve current vector of parameters. |
|
Determine whether function is able to compute gradient. |
|
Set parameter's value by name.
|
|
Set new vector of parameters. |
|
Scalar value of the function. |
|
Get the symbolic name of i-th variable. |
|
Get all the names in a vector. |