Geant4_10
|
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 1149 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 1157 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 1165 of file c2_function.hh.
|
inlinevirtual |
the destructor
Definition at line 1169 of file c2_function.hh.
|
inlinevirtual |
virtual input X transform
Definition at line 1187 of file c2_function.hh.
|
inlinevirtual |
virtual input X transform second derivative
Definition at line 1191 of file c2_function.hh.
|
inlinevirtual |
virtual input X transform derivative
Definition at line 1189 of file c2_function.hh.
|
inlinevirtual |
virtual output X transform
Definition at line 1193 of file c2_function.hh.
|
inlinestaticprotected |
utility function f(x)=x useful in axis transforms
Definition at line 1199 of file c2_function.hh.
|
inlinestaticprotected |
utility function f(x)=1 useful in axis transforms
Definition at line 1201 of file c2_function.hh.
|
inlinestaticprotected |
utility function f(x)=1/x useful in axis transforms
Definition at line 1205 of file c2_function.hh.
|
inlinestaticprotected |
utility function f(x)=-1/x**2 useful in axis transforms
Definition at line 1207 of file c2_function.hh.
|
inlinestaticprotected |
utility function f(x)=2/x**3 useful in axis transforms
Definition at line 1209 of file c2_function.hh.
|
inlinestaticprotected |
utility function for unimplemented conversion
Definition at line 1197 of file c2_function.hh.
|
inlinestaticprotected |
utility function f(x)=0 useful in axis transforms
Definition at line 1203 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 1173 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 1171 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 1178 of file c2_function.hh.
float_type(* const c2_transformation< float_type >::pInDPrime)(float_type) |
non-virtual pointer to input X transform second derivative
Definition at line 1182 of file c2_function.hh.
float_type(* const c2_transformation< float_type >::pInPrime)(float_type) |
non-virtual pointer to input X transform derivative
Definition at line 1180 of file c2_function.hh.
float_type(* const c2_transformation< float_type >::pOut)(float_type) |
non-virtual pointer to output X transform
Definition at line 1184 of file c2_function.hh.