Geant4  10.00.p02
G4INCL::IFunction1D Class Referenceabstract

1D function interface More...

#include <G4INCLIFunction1D.hh>

+ Inheritance diagram for G4INCL::IFunction1D:

Public Member Functions

 IFunction1D ()
 
 IFunction1D (const G4double x0, const G4double x1)
 
virtual ~IFunction1D ()
 
virtual G4double getXMinimum () const
 Return the minimum allowed value of the independent variable. More...
 
virtual G4double getXMaximum () const
 Return the maximum allowed value of the independent variable. More...
 
virtual G4double operator() (const G4double x) const =0
 Compute the value of the function. More...
 
virtual G4double integrate (const G4double x0, const G4double x1, const G4double step=-1.) const
 Integrate the function between two values. More...
 
IFunction1Dprimitive () const
 Return a pointer to the (numerical) primitive to this function. More...
 
InverseInterpolationTableinverseCDFTable (const G4int nNodes=60) const
 Return a pointer to the inverse of the CDF of this function. More...
 

Protected Attributes

G4double xMin
 Minimum value of the independent variable. More...
 
G4double xMax
 Maximum value of the independent variable. More...
 

Static Private Attributes

static const G4double integrationCoefficients []
 Coefficients for numerical integration. More...
 

Detailed Description

1D function interface

Definition at line 57 of file G4INCLIFunction1D.hh.

Constructor & Destructor Documentation

G4INCL::IFunction1D::IFunction1D ( )
inline

Definition at line 59 of file G4INCLIFunction1D.hh.

Referenced by inverseCDFTable(), and primitive().

+ Here is the caller graph for this function:

G4INCL::IFunction1D::IFunction1D ( const G4double  x0,
const G4double  x1 
)
inline

Definition at line 63 of file G4INCLIFunction1D.hh.

virtual G4INCL::IFunction1D::~IFunction1D ( )
inlinevirtual

Definition at line 68 of file G4INCLIFunction1D.hh.

Member Function Documentation

virtual G4double G4INCL::IFunction1D::getXMaximum ( ) const
inlinevirtual

Return the maximum allowed value of the independent variable.

Definition at line 74 of file G4INCLIFunction1D.hh.

References xMax.

Referenced by G4INCL::NuclearDensityFactory::createRPCorrelationTable(), inverseCDFTable(), G4INCL::InverseInterpolationTable::InverseInterpolationTable(), and primitive().

+ Here is the caller graph for this function:

virtual G4double G4INCL::IFunction1D::getXMinimum ( ) const
inlinevirtual

Return the minimum allowed value of the independent variable.

Definition at line 71 of file G4INCLIFunction1D.hh.

References xMin.

Referenced by G4INCL::NuclearDensityFactory::createRPCorrelationTable(), inverseCDFTable(), G4INCL::InverseInterpolationTable::InverseInterpolationTable(), and primitive().

+ Here is the caller graph for this function:

G4double G4INCL::IFunction1D::integrate ( const G4double  x0,
const G4double  x1,
const G4double  step = -1. 
) const
virtual

Integrate the function between two values.

Parameters
x0lower integration bound
x1upper integration bound
steplargest integration step size; if <0, 45 steps will be used
Returns
$\int_{x_0}^{x_1} f(x) dx$

Definition at line 65 of file G4INCLIFunction1D.cc.

References integrationCoefficients, G4INCL::Math::max(), G4INCL::Math::min(), operator()(), G4INCL::Math::sign(), xMax, and xMin.

+ Here is the call graph for this function:

InverseInterpolationTable * G4INCL::IFunction1D::inverseCDFTable ( const G4int  nNodes = 60) const

Return a pointer to the inverse of the CDF of this function.

Definition at line 122 of file G4INCLIFunction1D.cc.

References getXMaximum(), getXMinimum(), IFunction1D(), G4INCL::Math::min(), operator()(), xMax, and xMin.

Referenced by G4INCL::NuclearDensityFactory::createPCDFTable(), and G4INCL::NuclearDensityFactory::createRCDFTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

IFunction1D * G4INCL::IFunction1D::primitive ( ) const

Return a pointer to the (numerical) primitive to this function.

Definition at line 104 of file G4INCLIFunction1D.cc.

References getXMaximum(), getXMinimum(), IFunction1D(), operator()(), and xMin.

+ Here is the call graph for this function:

Member Data Documentation

const G4double G4INCL::IFunction1D::integrationCoefficients
staticprivate
Initial value:
= {
2.*95.0/288.0,
317.0/240.0,
23.0/30.0,
793.0/720.0,
157.0/160.0,
157.0/160.0,
793.0/720.0,
23.0/30.0,
317.0/240.0,
}

Coefficients for numerical integration.

Definition at line 102 of file G4INCLIFunction1D.hh.

Referenced by integrate().

G4double G4INCL::IFunction1D::xMax
protected

Maximum value of the independent variable.

Definition at line 98 of file G4INCLIFunction1D.hh.

Referenced by getXMaximum(), integrate(), inverseCDFTable(), and G4INCL::InverseInterpolationTable::setFunctionDomain().

G4double G4INCL::IFunction1D::xMin
protected

Minimum value of the independent variable.

Definition at line 96 of file G4INCLIFunction1D.hh.

Referenced by getXMinimum(), integrate(), inverseCDFTable(), primitive(), and G4INCL::InverseInterpolationTable::setFunctionDomain().


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