This is a user-includable header which includes everything needed to make use of SimMatrix Scalar code. More...
#include "SimTKcommon/internal/common.h"
#include "SimTKcommon/Constants.h"
#include "SimTKcommon/internal/Exception.h"
#include "SimTKcommon/internal/ExceptionMacros.h"
#include "SimTKcommon/internal/String.h"
#include "SimTKcommon/internal/Array.h"
#include "SimTKcommon/internal/conjugate.h"
#include "SimTKcommon/internal/CompositeNumericalTypes.h"
#include "SimTKcommon/internal/NTraits.h"
#include "SimTKcommon/internal/negator.h"
#include <complex>
#include <cmath>
#include <climits>
#include <cassert>
Go to the source code of this file.
Namespaces | |
namespace | SimTK |
This is the top-level SimTK namespace into which all SimTK names are placed to avoid collision with other symbols. | |
Typedefs | |
typedef conjugate< Real > | Conjugate |
Functions | |
bool | atMostOneBitIsSet (unsigned char v) |
bool | atMostOneBitIsSet (unsigned short v) |
bool | atMostOneBitIsSet (unsigned int v) |
bool | atMostOneBitIsSet (unsigned long v) |
bool | atMostOneBitIsSet (unsigned long long v) |
bool | atMostOneBitIsSet (signed char v) |
bool | atMostOneBitIsSet (char v) |
bool | atMostOneBitIsSet (short v) |
bool | atMostOneBitIsSet (int v) |
bool | atMostOneBitIsSet (long v) |
bool | atMostOneBitIsSet (long long v) |
bool | exactlyOneBitIsSet (unsigned char v) |
bool | exactlyOneBitIsSet (unsigned short v) |
bool | exactlyOneBitIsSet (unsigned int v) |
bool | exactlyOneBitIsSet (unsigned long v) |
bool | exactlyOneBitIsSet (unsigned long long v) |
bool | exactlyOneBitIsSet (signed char v) |
bool | exactlyOneBitIsSet (char v) |
bool | exactlyOneBitIsSet (short v) |
bool | exactlyOneBitIsSet (int v) |
bool | exactlyOneBitIsSet (long v) |
bool | exactlyOneBitIsSet (long long v) |
bool | signBit (unsigned char i) |
bool | signBit (unsigned short i) |
bool | signBit (unsigned int i) |
bool | signBit (unsigned long i) |
bool | signBit (unsigned long long i) |
bool | signBit (signed char i) |
bool | signBit (short i) |
bool | signBit (int i) |
bool | signBit (long long i) |
bool | signBit (long i) |
bool | signBit (const float &f) |
bool | signBit (const double &d) |
bool | signBit (const negator< float > &nf) |
bool | signBit (const negator< double > &nd) |
unsigned int | sign (unsigned char u) |
unsigned int | sign (unsigned short u) |
unsigned int | sign (unsigned int u) |
unsigned int | sign (unsigned long u) |
unsigned int | sign (unsigned long long u) |
int | sign (signed char i) |
int | sign (short i) |
int | sign (int i) |
int | sign (long i) |
int | sign (long long i) |
int | sign (const float &x) |
int | sign (const double &x) |
int | sign (const long double &x) |
int | sign (const negator< float > &x) |
int | sign (const negator< double > &x) |
int | sign (const negator< long double > &x) |
unsigned char | square (unsigned char u) |
unsigned short | square (unsigned short u) |
unsigned int | square (unsigned int u) |
unsigned long | square (unsigned long u) |
char | square (char c) |
signed char | square (signed char i) |
short | square (short i) |
int | square (int i) |
long | square (long i) |
float | square (const float &x) |
double | square (const double &x) |
long double | square (const long double &x) |
float | square (const negator< float > &x) |
double | square (const negator< double > &x) |
long double | square (const negator< long double > &x) |
template<class P > | |
std::complex< P > | square (const std::complex< P > &x) |
template<class P > | |
std::complex< P > | square (const conjugate< P > &x) |
template<class P > | |
std::complex< P > | square (const negator< std::complex< P > > &x) |
template<class P > | |
std::complex< P > | square (const negator< conjugate< P > > &x) |
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) |
double & | clampInPlace (double low, double &v, double high) |
Check that low <= v <= high and modify v in place if necessary to bring it into that range. | |
float & | clampInPlace (float low, float &v, float high) |
long double & | clampInPlace (long double low, long double &v, long double high) |
double & | clampInPlace (int low, double &v, int high) |
float & | clampInPlace (int low, float &v, int high) |
long double & | clampInPlace (int low, long double &v, int high) |
double & | clampInPlace (int low, double &v, double high) |
float & | clampInPlace (int low, float &v, float high) |
long double & | clampInPlace (int low, long double &v, long double high) |
double & | clampInPlace (double low, double &v, int high) |
float & | clampInPlace (float low, float &v, int high) |
long double & | clampInPlace (long double low, long double &v, int high) |
unsigned char & | clampInPlace (unsigned char low, unsigned char &v, unsigned char high) |
unsigned short & | clampInPlace (unsigned short low, unsigned short &v, unsigned short high) |
unsigned int & | clampInPlace (unsigned int low, unsigned int &v, unsigned int high) |
unsigned long & | clampInPlace (unsigned long low, unsigned long &v, unsigned long high) |
unsigned long long & | clampInPlace (unsigned long long low, unsigned long long &v, unsigned long long high) |
char & | clampInPlace (char low, char &v, char high) |
signed char & | clampInPlace (signed char low, signed char &v, signed char high) |
short & | clampInPlace (short low, short &v, short high) |
int & | clampInPlace (int low, int &v, int high) |
long & | clampInPlace (long low, long &v, long high) |
long long & | clampInPlace (long long low, long long &v, long long high) |
negator< float > & | clampInPlace (float low, negator< float > &v, float high) |
negator< double > & | clampInPlace (double low, negator< double > &v, double high) |
negator< long double > & | clampInPlace (long double low, negator< long double > &v, long double high) |
double | clamp (double low, double v, double high) |
If v is in range low <= v <= high then return v, otherwise return the nearest bound; this function does not modify the input variable v. | |
float | clamp (float low, float v, float high) |
long double | clamp (long double low, long double v, long double high) |
double | clamp (int low, double v, int high) |
float | clamp (int low, float v, int high) |
long double | clamp (int low, long double v, int high) |
double | clamp (int low, double v, double high) |
float | clamp (int low, float v, float high) |
long double | clamp (int low, long double v, long double high) |
double | clamp (double low, double v, int high) |
float | clamp (float low, float v, int high) |
long double | clamp (long double low, long double v, int high) |
unsigned char | clamp (unsigned char low, unsigned char v, unsigned char high) |
unsigned short | clamp (unsigned short low, unsigned short v, unsigned short high) |
unsigned int | clamp (unsigned int low, unsigned int v, unsigned int high) |
unsigned long | clamp (unsigned long low, unsigned long v, unsigned long high) |
unsigned long long | clamp (unsigned long long low, unsigned long long v, unsigned long long high) |
char | clamp (char low, char v, char high) |
signed char | clamp (signed char low, signed char v, signed char high) |
short | clamp (short low, short v, short high) |
int | clamp (int low, int v, int high) |
long | clamp (long low, long v, long high) |
long long | clamp (long long low, long long v, long long high) |
float | clamp (float low, negator< float > v, float high) |
double | clamp (double low, negator< double > v, double high) |
long double | clamp (long double low, negator< long double > v, long double high) |
double | stepUp (double x) |
Interpolate smoothly from 0 up to 1 as the input argument goes from 0 to 1, with first and second derivatives zero at either end of the interval. | |
double | stepDown (double x) |
Interpolate smoothly from 1 down to 0 as the input argument goes from 0 to 1, with first and second derivatives zero at either end of the interval. | |
double | stepAny (double y0, double yRange, double x0, double oneOverXRange, double x) |
Interpolate smoothly from y0 to y1 as the input argument goes from x0 to x1, with first and second derivatives zero at either end of the interval. | |
double | dstepUp (double x) |
First derivative of stepUp(): d/dx stepUp(x). | |
double | dstepDown (double x) |
First derivative of stepDown(): d/dx stepDown(x). | |
double | dstepAny (double yRange, double x0, double oneOverXRange, double x) |
First derivative of stepAny(): d/dx stepAny(x). | |
double | d2stepUp (double x) |
Second derivative of stepUp(): d^2/dx^2 stepUp(x). | |
double | d2stepDown (double x) |
Second derivative of stepDown(): d^2/dx^2 stepDown(x). | |
double | d2stepAny (double yRange, double x0, double oneOverXRange, double x) |
Second derivative of stepAny(): d^2/dx^2 stepAny(x). | |
double | d3stepUp (double x) |
Third derivative of stepUp(): d^3/dx^3 stepUp(x). | |
double | d3stepDown (double x) |
Third derivative of stepDown(): d^3/dx^3 stepDown(x). | |
double | d3stepAny (double yRange, double x0, double oneOverXRange, double x) |
Third derivative of stepAny(): d^3/dx^3 stepAny(x). | |
float | stepUp (float x) |
float | stepDown (float x) |
float | stepAny (float y0, float yRange, float x0, float oneOverXRange, float x) |
float | dstepUp (float x) |
float | dstepDown (float x) |
float | dstepAny (float yRange, float x0, float oneOverXRange, float x) |
float | d2stepUp (float x) |
float | d2stepDown (float x) |
float | d2stepAny (float yRange, float x0, float oneOverXRange, float x) |
float | d3stepUp (float x) |
float | d3stepDown (float x) |
float | d3stepAny (float yRange, float x0, float oneOverXRange, float x) |
long double | stepUp (long double x) |
long double | stepDown (long double x) |
long double | stepAny (long double y0, long double yRange, long double x0, long double oneOverXRange, long double x) |
long double | dstepUp (long double x) |
long double | dstepDown (long double x) |
long double | dstepAny (long double yRange, long double x0, long double oneOverXRange, long double x) |
long double | d2stepUp (long double x) |
long double | d2stepDown (long double x) |
long double | d2stepAny (long double yRange, long double x0, long double oneOverXRange, long double x) |
long double | d3stepUp (long double x) |
long double | d3stepDown (long double x) |
long double | d3stepAny (long double yRange, long double x0, long double oneOverXRange, long double x) |
double | stepUp (int x) |
double | stepDown (int x) |
This is a user-includable header which includes everything needed to make use of SimMatrix Scalar code.
More commonly, this will be included from within Matrix code.