Genfun::GaudiMathImplementation::AdapterIFunction Class Reference

constructor from the IFunction ( see AIDA/IFunction.h) More...

#include <GaudiMath/Adapters.h>

Inheritance diagram for Genfun::GaudiMathImplementation::AdapterIFunction:
Collaboration diagram for Genfun::GaudiMathImplementation::AdapterIFunction:

Public Member Functions

 AdapterIFunction (const AIDA::IFunction &fun)
 mandatory macro from CLHEP/GenericFunctions More...
 
 AdapterIFunction (const AdapterIFunction &)
 copy constructor More...
 
virtual ~AdapterIFunction ()
 desctructor More...
 
virtual double operator() (double a) const
 
virtual double operator() (const Argument &x) const
 
virtual unsigned int dimensionality () const
 
virtual bool hasAnalyticDerivative () const
 Does this function have an analytic derivative? More...
 
virtual Genfun::Derivative partial (unsigned int i) const
 Derivatives. More...
 
 AdapterIFunction (const AIDA::IFunction &fun)
 mandatory macro from CLHEP/GenericFunctions More...
 
 AdapterIFunction (const AdapterIFunction &)
 copy constructor More...
 
virtual ~AdapterIFunction ()
 desctructor More...
 
virtual double operator() (double a) const
 
virtual double operator() (const Argument &x) const
 
virtual unsigned int dimensionality () const
 
virtual bool hasAnalyticDerivative () const
 Does this function have an analytic derivative? More...
 
virtual Genfun::Derivative partial (unsigned int i) const
 Derivatives. More...
 

Private Member Functions

 AdapterIFunction ()
 
AdapterIFunctionoperator= (const AdapterIFunction &)
 
 AdapterIFunction ()
 
AdapterIFunctionoperator= (const AdapterIFunction &)
 

Private Attributes

const AIDA::IFunction * m_fun
 
size_t m_dim
 
std::vector< double > m_arg
 

Detailed Description

constructor from the IFunction ( see AIDA/IFunction.h)

See also
AIDA::IFunction
Author
Kirill Miklyaev kiril.nosp@m.lm@i.nosp@m.ris1..nosp@m.itep.nosp@m..ru
Date
2003-08-03

Definition at line 31 of file FunAdapters.h.

Constructor & Destructor Documentation

Genfun::GaudiMathImplementation::AdapterIFunction::AdapterIFunction ( const AIDA::IFunction &  fun)

mandatory macro from CLHEP/GenericFunctions

constructor from AIDA::Function

Parameters
funAIDA function

Definition at line 21 of file Adapter.cpp.

22  : AbsFunction ( )
23  , m_fun ( &fun )
24  , m_dim ( fun.dimension() )
25  , m_arg ( fun.dimension() , 0 )
26  {}
double fun(const std::vector< double > &x)
Definition: PFuncTest.cpp:27
Genfun::GaudiMathImplementation::AdapterIFunction::AdapterIFunction ( const AdapterIFunction right)

copy constructor

Definition at line 28 of file Adapter.cpp.

29  : AbsFunction ( )
30  , m_fun ( right.m_fun )
31  , m_dim ( right.m_dim )
32  , m_arg ( right.m_arg )
33  {}
Genfun::GaudiMathImplementation::AdapterIFunction::~AdapterIFunction ( )
virtual

desctructor

Definition at line 35 of file Adapter.cpp.

35 {}
Genfun::GaudiMathImplementation::AdapterIFunction::AdapterIFunction ( )
private
Genfun::GaudiMathImplementation::AdapterIFunction::AdapterIFunction ( const AIDA::IFunction &  fun)

mandatory macro from CLHEP/GenericFunctions

constructor from AIDA::Function

Parameters
funAIDA function
Genfun::GaudiMathImplementation::AdapterIFunction::AdapterIFunction ( const AdapterIFunction )

copy constructor

virtual Genfun::GaudiMathImplementation::AdapterIFunction::~AdapterIFunction ( )
virtual

desctructor

Genfun::GaudiMathImplementation::AdapterIFunction::AdapterIFunction ( )
private

Member Function Documentation

virtual unsigned int Genfun::GaudiMathImplementation::AdapterIFunction::dimensionality ( ) const
inlinevirtual

Definition at line 50 of file FunAdapters.h.

virtual unsigned int Genfun::GaudiMathImplementation::AdapterIFunction::dimensionality ( ) const
inlinevirtual

Definition at line 50 of file FunAdapters.h.

virtual bool Genfun::GaudiMathImplementation::AdapterIFunction::hasAnalyticDerivative ( ) const
inlinevirtual

Does this function have an analytic derivative?

Definition at line 53 of file FunAdapters.h.

53 { return true ; }
virtual bool Genfun::GaudiMathImplementation::AdapterIFunction::hasAnalyticDerivative ( ) const
inlinevirtual

Does this function have an analytic derivative?

Definition at line 53 of file FunAdapters.h.

53 { return true ; }
double Genfun::GaudiMathImplementation::AdapterIFunction::operator() ( double  a) const
virtual

Definition at line 37 of file Adapter.cpp.

38  {
39  for ( size_t i = 0; i < m_dim; ++i ) { m_arg[i] = 0.0 ; }
40  m_arg[0] = x ;
41  return m_fun -> value ( m_arg ) ;
42  }
list i
Definition: ana.py:128
virtual double Genfun::GaudiMathImplementation::AdapterIFunction::operator() ( double  a) const
virtual
virtual double Genfun::GaudiMathImplementation::AdapterIFunction::operator() ( const Argument &  x) const
virtual
virtual double Genfun::GaudiMathImplementation::AdapterIFunction::operator() ( const Argument &  x) const
virtual
AdapterIFunction& Genfun::GaudiMathImplementation::AdapterIFunction::operator= ( const AdapterIFunction )
private
AdapterIFunction& Genfun::GaudiMathImplementation::AdapterIFunction::operator= ( const AdapterIFunction )
private
Genfun::Derivative Genfun::GaudiMathImplementation::AdapterIFunction::partial ( unsigned int  i) const
virtual

Derivatives.

Definition at line 50 of file Adapter.cpp.

51  {
52  if ( i >= m_dim )
53  {
54  const AbsFunction& aux = GaudiMath::Constant( 0 , m_dim ) ;
55  return Genfun::FunctionNoop( &aux ) ;
56  };
57  const AbsFunction& aux = GaudiMath::Derivative( *this , i ) ;
58  return Genfun::FunctionNoop ( &aux ) ;
59  }
Genfun::GaudiMathImplementation::NumericalDerivative Derivative
Definition: GaudiMath.h:31
list i
Definition: ana.py:128
Genfun::GaudiMathImplementation::Constant Constant
Definition: GaudiMath.h:29
virtual Genfun::Derivative Genfun::GaudiMathImplementation::AdapterIFunction::partial ( unsigned int  i) const
virtual

Derivatives.

Member Data Documentation

std::vector< double > Genfun::GaudiMathImplementation::AdapterIFunction::m_arg
mutableprivate

Definition at line 63 of file FunAdapters.h.

size_t Genfun::GaudiMathImplementation::AdapterIFunction::m_dim
private

Definition at line 62 of file FunAdapters.h.

const AIDA::IFunction * Genfun::GaudiMathImplementation::AdapterIFunction::m_fun
private

Definition at line 61 of file FunAdapters.h.


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