Geant4
10.03
|
a transformation of a coordinate, including an inverse More...
#include <c2_function.hh>
Public Member Functions | |
c2_transformation (bool transformed, float_type(*xin)(float_type), float_type(*xinp)(float_type), float_type(*xinpp)(float_type), float_type(*xout)(float_type)) | |
initialize all our function pointers More... | |
c2_transformation (bool transformed) | |
initialize all our function pointers so that only the (overridden) virtual functions can be called without an error More... | |
virtual | ~c2_transformation () |
the destructor More... | |
virtual float_type | fIn (float_type x) const |
virtual input X transform More... | |
virtual float_type | fInPrime (float_type x) const |
virtual input X transform derivative More... | |
virtual float_type | fInDPrime (float_type x) const |
virtual input X transform second derivative More... | |
virtual float_type | fOut (float_type x) const |
virtual output X transform More... | |
Public Attributes | |
const bool | fTransformed |
flag to indicate if this transform is not the identity More... | |
const bool | fHasStaticTransforms |
flag to indicate if the static function pointers can be used for efficiency More... | |
float_type(*const | pIn )(float_type) |
non-virtual pointer to input X transform More... | |
float_type(*const | pInPrime )(float_type) |
non-virtual pointer to input X transform derivative More... | |
float_type(*const | pInDPrime )(float_type) |
non-virtual pointer to input X transform second derivative More... | |
float_type(*const | pOut )(float_type) |
non-virtual pointer to output X transform More... | |
Static Protected Member Functions | |
static float_type | report_error (float_type x) |
utility function for unimplemented conversion More... | |
static float_type | ident (float_type x) |
utility function f(x)=x useful in axis transforms More... | |
static float_type | one (float_type) |
utility function f(x)=1 useful in axis transforms More... | |
static float_type | zero (float_type) |
utility function f(x)=0 useful in axis transforms More... | |
static float_type | recip (float_type x) |
utility function f(x)=1/x useful in axis transforms More... | |
static float_type | recip_prime (float_type x) |
utility function f(x)=-1/x**2 useful in axis transforms More... | |
static float_type | recip_prime2 (float_type x) |
utility function f(x)=2/x**3 useful in axis transforms More... | |
a transformation of a coordinate, including an inverse
Definition at line 1257 of file c2_function.hh.
|
inline |
initialize all our function pointers
transformed | true if this function is not the identity |
xin | input X transform |
xinp | input X transform derivative |
xinpp | input X transform second derivative |
xout | output X transform, which MUST be the inverse of xin |
Definition at line 1265 of file c2_function.hh.
|
inline |
initialize all our function pointers so that only the (overridden) virtual functions can be called without an error
transformed | true if this function is nonlinear |
Definition at line 1277 of file c2_function.hh.
|
inlinevirtual |
the destructor
Definition at line 1282 of file c2_function.hh.
|
inlinevirtual |
virtual input X transform
Definition at line 1303 of file c2_function.hh.
References c2_transformation< float_type >::pIn.
|
inlinevirtual |
virtual input X transform second derivative
Definition at line 1307 of file c2_function.hh.
References c2_transformation< float_type >::pInDPrime.
|
inlinevirtual |
virtual input X transform derivative
Definition at line 1305 of file c2_function.hh.
References c2_transformation< float_type >::pInPrime.
|
inlinevirtual |
virtual output X transform
Definition at line 1309 of file c2_function.hh.
References c2_transformation< float_type >::pOut.
|
inlinestaticprotected |
utility function f(x)=x useful in axis transforms
Definition at line 1317 of file c2_function.hh.
|
inlinestaticprotected |
utility function f(x)=1 useful in axis transforms
Definition at line 1319 of file c2_function.hh.
|
inlinestaticprotected |
utility function f(x)=1/x useful in axis transforms
Definition at line 1323 of file c2_function.hh.
|
inlinestaticprotected |
utility function f(x)=-1/x**2 useful in axis transforms
Definition at line 1325 of file c2_function.hh.
|
inlinestaticprotected |
utility function f(x)=2/x**3 useful in axis transforms
Definition at line 1327 of file c2_function.hh.
|
inlinestaticprotected |
utility function for unimplemented conversion
Definition at line 1313 of file c2_function.hh.
|
inlinestaticprotected |
utility function f(x)=0 useful in axis transforms
Definition at line 1321 of file c2_function.hh.
const bool c2_transformation< float_type >::fHasStaticTransforms |
flag to indicate if the static function pointers can be used for efficiency
Definition at line 1287 of file c2_function.hh.
const bool c2_transformation< float_type >::fTransformed |
flag to indicate if this transform is not the identity
Definition at line 1284 of file c2_function.hh.
float_type(* const c2_transformation< float_type >::pIn)(float_type) |
non-virtual pointer to input X transform
Definition at line 1294 of file c2_function.hh.
Referenced by c2_transformation< float_type >::fIn().
float_type(* const c2_transformation< float_type >::pInDPrime)(float_type) |
non-virtual pointer to input X transform second derivative
Definition at line 1298 of file c2_function.hh.
Referenced by c2_transformation< float_type >::fInDPrime().
float_type(* const c2_transformation< float_type >::pInPrime)(float_type) |
non-virtual pointer to input X transform derivative
Definition at line 1296 of file c2_function.hh.
Referenced by c2_transformation< float_type >::fInPrime().
float_type(* const c2_transformation< float_type >::pOut)(float_type) |
non-virtual pointer to output X transform
Definition at line 1300 of file c2_function.hh.
Referenced by c2_transformation< float_type >::fOut().