cube()
[Scalar Functions]

y=cube(x) returns the cube of the argument for any numeric type, integral or floating point. More...

Functions

unsigned char cube (unsigned char u)
unsigned short cube (unsigned short u)
unsigned int cube (unsigned int u)
unsigned long cube (unsigned long u)
char cube (char c)
signed char cube (signed char i)
short cube (short i)
int cube (int i)
long cube (long i)
float cube (const float &x)
double cube (const double &x)
long double cube (const long double &x)
negator< float > cube (const negator< float > &x)
negator< double > cube (const negator< double > &x)
negator< long double > cube (const negator< long double > &x)
template<class P >
std::complex< P > cube (const std::complex< P > &x)
template<class P >
std::complex< P > cube (const negator< std::complex< P > > &x)
template<class P >
std::complex< P > cube (const conjugate< P > &x)
template<class P >
std::complex< P > cube (const negator< conjugate< P > > &x)

Detailed Description

y=cube(x) returns the cube of the argument for any numeric type, integral or floating point.

We promise to evaluate x only once. We assume is is acceptable for the result type to be the same as the argument type; if it won't fit caller must cast argument to a wider type first. This is an inline routine which will run as fast as explicit multiplies (x*x*x) in optimized code, and significantly faster for complex or conjugate types (8 flops vs. 11).

Cubing a negated real type returns a negated result. Cubing a negated complex or conjugate returns a non-negated complex result since that can be done with no additional cost.


Function Documentation

std::complex<P> SimTK::cube ( const negator< conjugate< P > > &  x  )  [inline]

References SimTK::real().

std::complex<P> SimTK::cube ( const conjugate< P > &  x  )  [inline]
std::complex<P> SimTK::cube ( const negator< std::complex< P > > &  x  )  [inline]

References SimTK::imag(), and SimTK::real().

std::complex<P> SimTK::cube ( const std::complex< P > &  x  )  [inline]
negator<long double> SimTK::cube ( const negator< long double > &  x  )  [inline]
negator<double> SimTK::cube ( const negator< double > &  x  )  [inline]
negator<float> SimTK::cube ( const negator< float > &  x  )  [inline]
long double SimTK::cube ( const long double &  x  )  [inline]
double SimTK::cube ( const double &  x  )  [inline]
float SimTK::cube ( const float &  x  )  [inline]
long SimTK::cube ( long  i  )  [inline]
int SimTK::cube ( int  i  )  [inline]
short SimTK::cube ( short  i  )  [inline]
signed char SimTK::cube ( signed char  i  )  [inline]
char SimTK::cube ( char  c  )  [inline]
unsigned long SimTK::cube ( unsigned long  u  )  [inline]
unsigned int SimTK::cube ( unsigned int  u  )  [inline]
unsigned short SimTK::cube ( unsigned short  u  )  [inline]
unsigned char SimTK::cube ( unsigned char  u  )  [inline]

Referenced by SimTK::cube().


Generated on Wed Dec 30 11:05:08 2009 for SimTKcore by  doxygen 1.6.1