TooN 2.1
|
The namaespace holding all the internal code. More...
Classes | |
struct | Square |
Provides the static size for a square matrix. In the general case, if R != C, then the matrix is not square and so no size is provided. A compile error results. More... | |
struct | Square< R, R > |
Provides the static size for a square matrix where both dimensions are the same. More... | |
struct | Square< R, Dynamic > |
Provides the static size for a square matrix where one dimension is static. The size must be equal to the size of the static dimension. More... | |
struct | Square< Dynamic, C > |
Provides the static size for a square matrix where one dimension is static. The size must be equal to the size of the static dimension. More... | |
struct | Square< Dynamic, Dynamic > |
Provides the static size for a square matrix where both dimensions are dynamic. The size must be Dynamic. More... | |
struct | Size3 |
class | accumulate_functor_vector |
class | accumulate_element_functor_vector |
class | accumulate_functor_matrix |
class | accumulate_element_functor_matrix |
class | accumulate_vertical_functor |
class | accumulate_element_vertical_functor |
class | accumulate_horizontal_functor |
class | accumulate_element_horizontal_functor |
struct | ComputeSymEigen |
Compute eigensystems for sizes > 2 Helper struct for computing eigensystems, to allow for specialization on 2x2 matrices. More... | |
struct | ComputeSymEigen< 2 > |
Compute 2x2 eigensystems Helper struct for computing eigensystems, specialized on 2x2 matrices. More... | |
struct | ComputeSymEigen< 3 > |
Compute 3x3 eigensystems Helper struct for computing eigensystems, specialized on 3x3 matrices. More... | |
struct | Slicing |
A tag used to indicate that a slice is being constructed. More... | |
struct | SimpleSizer |
struct | SimpleSizer< Dynamic, i > |
struct | SimpleSizer< i, Dynamic > |
struct | SimpleSizer< Dynamic, Dynamic > |
struct | IsStatic |
struct | Sizer |
struct | Sizer< i, i > |
struct | LineSearch |
Turn a multidimensional function in to a 1D function by specifying a point and direction. More... | |
struct | DefaultTypes |
class | StackOrHeap< Size, Precision, 0 > |
class | StackOrHeap< Size, double, 0 > |
class | StackOrHeap< Size, Precision, 1 > |
class | StaticSizedAllocator |
This allocator object sets aside memory for a statically sized object. It will put all the data on the stack if there are less then TooN::max_bytes_on_stack of data, otherwise it will use new/delete. More... | |
struct | VectorAlloc |
Allocate memory for a static sized Vector. The class switches to heap allocation automatically for large Vectors. Naturally, the vector is not resizable. More... | |
struct | VectorAlloc< Dynamic, Precision > |
Allocate memory for a dynamic sized Vector. This is not resizable. More... | |
struct | VectorAlloc< Resizable, Precision > |
Allocate memory for a resizable Vector. New elements available after a resize are treated as uninitialized. More... | |
struct | VectorSlice |
Hold a pointer to yield a statically sized slice of a Vector. Not resizable. More... | |
struct | VectorSlice< Dynamic, Precision, PtrType, ConstPtrType, RefType, ConstRefType > |
Hold a pointer to yield a dynamically sized slice of a Vector. Not resizable. More... | |
struct | SizeHolder |
This struct holds a size using no data for static sizes. This struct holds a size is the size is dynamic, or simply recorcs the number in the type system if the size is static. More... | |
struct | SizeHolder<-1 > |
This struct holds a size integer for dynamic sizes. More... | |
struct | RowSizeHolder |
struct | ColSizeHolder |
struct | MatrixAlloc |
struct | MatrixAlloc< R, C, Precision, false > |
struct | MatrixSlice |
struct | StrideHolder |
struct | StrideHolder<-1 > |
struct | RowStrideHolder |
struct | ColStrideHolder |
struct | VectorFiller |
struct | VectorStartFill |
struct | MatrixFiller |
struct | MatrixStartFill |
struct | DCheck |
struct | DCheck<-1 > |
struct | SFINAE_dummy |
struct | Slice |
struct | DiagSize |
struct | DiagSize< Rows, Cols, 0 > |
struct | DiagStride |
struct | DiagStride< Rs, Cs, 0 > |
struct | GenericMBase |
struct | One |
This class represents 1 and only in all its forms. More... | |
struct | NegType |
For an instance i of type C, what is the type of -i? Usually the answer is that is it the same type. More... | |
struct | NegType< One > |
The type of -One. More... | |
struct | Clean |
struct | Clean< const C > |
struct | Clean< const C & > |
struct | Clean< C & > |
struct | CField |
struct | AddType |
struct | SubtractType |
struct | MultiplyType |
struct | DivideType |
struct | AddType< L, R, 0 > |
struct | SubtractType< L, R, 0 > |
struct | MultiplyType< L, R, 0 > |
struct | DivideType< L, R, 0 > |
struct | Add |
struct | Subtract |
struct | Multiply |
struct | Divide |
struct | Swap |
struct | Swap< V, V, true > |
struct | overfill< 0 > |
struct | CheckOverFill |
struct | CheckOverFill< N,-1 > |
struct | CheckMOverFill |
struct | CheckMOverFill< N, R, C, 1 > |
struct | PointerToPlanarComplex< std::complex< Precision > > |
struct | BadSlice< 0 > |
A static slice is OK. This class is used after it has been determined that a slice is OK. It does nothing except provide a callable function. By contrast, if the slice is not OK, then the class is not specified and the function is therefore not callable, and a compile error results. More... | |
struct | CheckSlice |
Check if a slice is OK. This class is used to see if a slice is OK. It provides a callable function which checks the run-time slice information. If the compile time information is bad, then it will not compile at all. Otherwise, the sizes are checked at run-time. The check will be optimized away if the sizes are known statically. More... | |
struct | Default |
struct | SliceVBase |
struct | SliceVBase< Stride, Default, Default, Default, Default > |
struct | VBase |
struct | GenericVBase |
struct | CentralDifferenceGradient |
Functor wrapper for computing finite differences along an axis. More... | |
struct | CentralDifferenceSecond |
Functor wrapper for computing finite difference second derivatives along an axis. More... | |
struct | CentralCrossDifferenceSecond |
Functor wrapper for computing finite difference cross derivatives along a pair of axes. More... | |
Typedefs | |
typedef char | OneSized [1] |
typedef char | TwoSized [2] |
Functions | |
template<int R, int C, typename P , typename B > | |
Matrix< R, C, P > | exp_taylor (const Matrix< R, C, P, B > &m) |
template<int R, int C, typename P , typename B > | |
Matrix< R, C, P > | log_taylor (const Matrix< R, C, P, B > &m) |
template<int Size, typename Precision , typename Base , typename Func , typename Ret > | |
Ret | accumulate (const Vector< Size, Precision, Base > &v) |
template<int R, int C, typename Precision , typename Base , typename Func , typename Ret > | |
Ret | accumulate (const Matrix< R, C, Precision, Base > &m) |
template<int R, int C, typename Precision , typename Base , typename Func , typename Ret > | |
Ret | accumulate_horizontal (const Matrix< R, C, Precision, Base > &m) |
template<int R, int C, typename Precision , typename Base , typename Func , typename Ret > | |
Ret | accumulate_vertical (const Matrix< R, C, Precision, Base > &m) |
template<typename Precision > | |
Vector< 3, Precision > | compute_rodrigues_coefficients_sim3 (const Precision &s, const Precision &t) |
template<typename Precision , typename Func > | |
Matrix< 3, 2, Precision > | bracket_minimum_forward (Precision a_val, const Func &func, Precision initial_lambda, Precision zeps) |
static void | check_index (int, int) |
template<class P > | |
static void | debug_initialize (P *, int) |
template<class C > | |
const C & | get () |
template<class Rhs > | |
Rhs | operator* (One, const Rhs &v) |
template<class Lhs > | |
Lhs | operator* (const Lhs &v, One) |
template<class Rhs > | |
Rhs | operator+ (One, const Rhs &v) |
template<class Lhs > | |
Lhs | operator+ (const Lhs &v, One) |
template<class Rhs > | |
Rhs | operator- (One, const Rhs &v) |
template<class Lhs > | |
Lhs | operator- (const Lhs &v, One) |
int | operator- (const One &) |
template<class C > | |
C | gettype () |
TOON_CREATE_METHOD_DETECTOR (swap) | |
template<class F , class Precision > | |
std::pair< Precision, Precision > | extrapolate_to_zero (F &f) |
Variables | |
static const double | symeigen_condition_no = 1e9 |
static const unsigned int | max_bytes_on_stack = 1000 |
The namaespace holding all the internal code.
Matrix<R, C, P> TooN::Internal::exp_taylor | ( | const Matrix< R, C, P, B > & | m | ) |
Exponentiate a matrix using a the Taylor series This will not work if the norm of the matrix is too large.
References TooN::Identity, TooN::norm_inf(), Matrix< Rows, Cols, Precision, Layout >::num_cols(), Matrix< Rows, Cols, Precision, Layout >::num_rows(), and TooN::Zeros.
Referenced by TooN::exp().
Matrix<R, C, P> TooN::Internal::log_taylor | ( | const Matrix< R, C, P, B > & | m | ) |
Logarithm of a matrix using a the Taylor series This will not work if the norm of the matrix is too large.
References TooN::Identity, TooN::norm_inf(), Matrix< Rows, Cols, Precision, Layout >::num_cols(), Matrix< Rows, Cols, Precision, Layout >::num_rows(), and TooN::Zeros.
Referenced by TooN::log().
static void TooN::Internal::check_index | ( | int | , |
int | |||
) | [static] |
Function used to check bounds. By default it does nothing. See What debugging options are there?.
static void TooN::Internal::debug_initialize | ( | P * | , |
int | |||
) | [static] |
This function is called on any uninitialized data. By default, no action is taken. See What debugging options are there?.
C TooN::Internal::gettype | ( | ) |
This function offers to return a value of type C. This function is not implemented anywhere, the result is used for type deduction.
const unsigned int max_bytes_on_stack = 1000 [static] |
Maximum number of bytes to be allocated on the stack. new is used above this number.