Geant4.10
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Data Fields
c2_function_transformation< float_type > Class Template Reference

a transformation of a function in and out of a coordinate space, using 2 c2_transformations More...

#include <c2_function.hh>

Inheritance diagram for c2_function_transformation< float_type >:
c2_arrhenius_function_transformation< float_type > c2_lin_lin_function_transformation< float_type > c2_lin_log_function_transformation< float_type > c2_log_lin_function_transformation< float_type > c2_log_log_function_transformation< float_type >

Public Member Functions

 c2_function_transformation (const c2_transformation< float_type > &xx, const c2_transformation< float_type > &yy)
 construct this from two c2_transformation instances More...
 
virtual ~c2_function_transformation ()
 destructor More...
 
virtual float_type evaluate (float_type xraw, float_type y, float_type yp0, float_type ypp0, float_type *yprime, float_type *yprime2) const
 evaluate the transformation from internal coordinates to external coordinates More...
 

Data Fields

const bool isIdentity
 flag indicating of the transform is the identity, and can be skipped for efficiency More...
 
const c2_transformation
< float_type > & 
X
 the X axis transform More...
 
const c2_transformation
< float_type > & 
Y
 the Y axis transform More...
 

Detailed Description

template<typename float_type>
class c2_function_transformation< float_type >

a transformation of a function in and out of a coordinate space, using 2 c2_transformations

This class is a container for two axis transforms, but also provides the critical evaluate() function which converts a result in internal coordinates (with derivatives) into the external representation

Definition at line 1247 of file c2_function.hh.

Constructor & Destructor Documentation

template<typename float_type>
c2_function_transformation< float_type >::c2_function_transformation ( const c2_transformation< float_type > &  xx,
const c2_transformation< float_type > &  yy 
)
inline

construct this from two c2_transformation instances

Parameters
xxthe X axis transform
yythe Y axis transform

Definition at line 1252 of file c2_function.hh.

1253  :
1254  isIdentity(!(xx.fTransformed || yy.fTransformed)), X(xx), Y(yy) { }
const bool fTransformed
flag to indicate if this transform is not the identity
const c2_transformation< float_type > & Y
the Y axis transform
const c2_transformation< float_type > & X
the X axis transform
const bool isIdentity
flag indicating of the transform is the identity, and can be skipped for efficiency ...
template<typename float_type>
virtual c2_function_transformation< float_type >::~c2_function_transformation ( )
inlinevirtual

destructor

Definition at line 1256 of file c2_function.hh.

References c2_function_transformation< float_type >::X, and c2_function_transformation< float_type >::Y.

1256 { delete &X; delete &Y; }
const c2_transformation< float_type > & Y
the Y axis transform
const c2_transformation< float_type > & X
the X axis transform

Member Function Documentation

template<typename float_type>
virtual float_type c2_function_transformation< float_type >::evaluate ( float_type  xraw,
float_type  y,
float_type  yp0,
float_type  ypp0,
float_type *  yprime,
float_type *  yprime2 
) const
virtual

evaluate the transformation from internal coordinates to external coordinates

Parameters
xrawthe value of x in external cordinates at which the transform is taking place
ythe value of the function in internal coordinates
yp0the derivative in internal coordinates
ypp0the second derivative in internal coordinates
[out]yprimepointer to the derivative, or NULL, in external coordinates
[out]yprime2pointer to the second derivative, or NULL, in external coordinates
Returns
the value of the function in external coordinates

Field Documentation

template<typename float_type>
const bool c2_function_transformation< float_type >::isIdentity

flag indicating of the transform is the identity, and can be skipped for efficiency

Definition at line 1269 of file c2_function.hh.

template<typename float_type>
const c2_transformation<float_type>& c2_function_transformation< float_type >::X

the X axis transform

Definition at line 1271 of file c2_function.hh.

Referenced by c2_function_transformation< float_type >::~c2_function_transformation().

template<typename float_type>
const c2_transformation<float_type>& c2_function_transformation< float_type >::Y

the Y axis transform

Definition at line 1273 of file c2_function.hh.

Referenced by c2_function_transformation< float_type >::~c2_function_transformation().


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