Simbody 3.7
Loading...
Searching...
No Matches
Topics
Here is a list of all topics with brief descriptions:
[detail level 123]
 Global Functions in the SimTK namespaceThese are functions at the top level of the SimTK namespace, meaning that a function named funcName() is invoked as SimTK::funcName(), or just funcName() if there is a "using namespace SimTK;" statement in effect
 Bit-twiddling FunctionsThese functions perform highly optimized bit-twiddling operations on the built-in integral types, and sometimes on the representations of floating point types as well
 atMostOneBitIsSet()
 exactlyOneBitIsSet()exactlyOneBitIsSet(i) provides a very fast way to determine whether an integral type has exactly one bit set
 signBit()signBit(i) provides a fast way to determine the value of the sign bit (as a bool) for integral and floating types
 Scalar FunctionsThese functions are overloaded to act on SimTK scalar types and C++ built-in types, including integral types when appropriate
 Elliptic integralsElliptic integrals arise occasionally in contexts relevant to us, particularly in geometric calculations involving ellipses or ellipsoids
 Smoothed step functionsFunctions stepUp(), stepDown() and stepAny() provide smooth, S-shaped step functions that are useful for "softening" abrupt transitions between two values
 clamp(), clampInPlace()Limit a numerical value so that it does not go outside a given range
 cube()y=cube(x) returns the cube of the argument for any numeric type, integral or floating point
 isFinite()isFinite(x) provides a reliable way to determine if x is a "normal" floating point number, meaning not a NaN or +/- Infinity
 isInf()isInf(x) provides a reliable way to determine if x is one of the two infinities (either negative or positive)
 isNaN()isNaN(x) provides a reliable way to determine if x is one of the "not a number" floating point forms
 isNumericallyEqual()isNumericallyEqual(x,y) compares two scalar types using a tolerance (default or explicitly specified) and returns true if they are close enough
 sign()s=sign(n) returns int -1,0,1 according to n<0, n==0, n>0 for any integer or real numeric type, unsigned 0 or 1 for any unsigned argument
 square()y=square(x) returns the square of the argument for any numeric type
 Spatial Algebra UtilitiesThese utility functions are used for manipulation of spatial quantities that are contained in SpatialVec or SpatialMat objects
 Timing FunctionsThese functions provide a convenient way to do high-precision timing, either for real time use or performance measurement, and to sleep for precise time intervals
 High-Resolution Elapsed Time Measurement and Sleep
 Measuring CPU Time
 Timespec/Nanosecond/Second ConversionsThese inline functions provide a fast and convenient way for doing arithmetic with the ugly Posix timespec struct
 Utilities for De/serializingThese namespace-scope templatized utilities provide uniform serialization and deserialization behavior for built-in and SimTK-defined types
 readFormatted()
 readUnformatted()
 writeFormatted()
 writeUnformatted()Namespace-scope utility method SimTK::writeUnformatted<T>() writes a value of type T to an output stream as a space-separated series of tokens with no brackets, commas, semicolons or other formatting characters
 Matrix and Vector Utilities
 Predefined typedefsThese typedefs provide convenient synonyms for common matrix and vector types
 Less commonly-used typedefs
 Predefined Constants
 Numerical Constants with TypesThis is a set of predefined constants in the form of Real (SimTK default precision) symbols that are important for writing precision-independent numerical algorithms
 Preprocessor Macro ConstantsThese are preprocessor (#define) macros providing constants values at very high precision. See the discussion under the main Predefined Constants module heading
 Mathematical ConstantsThese are some common unitless numerical constants evaluated to 64 digits and written here in maximal (long double) precision
 Physical Constants
 Unit Conversion Factors
 SimTK Regression Testing
 Type-Safe Integer Indices