Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

Matrix operations
[Library Functions]

Collaboration diagram for Matrix operations:


Functions

template<int M, int N, int P, ShBindingType Binding, ShBindingType Binding2, typename T1, typename T2>
ShMatrix< M, P, SH_TEMP, CT1T2 > SH::operator| (const ShMatrix< M, N, Binding, T1 > &a, const ShMatrix< N, P, Binding2, T2 > &b)
 Matrix multiplication.
template<int M, int N, int P, ShBindingType Binding, ShBindingType Binding2, typename T1, typename T2>
ShMatrix< M, P, SH_TEMP, CT1T2 > operator * (const ShMatrix< M, N, Binding, T1 > &a, const ShMatrix< N, P, Binding2, T2 > &b)
template<int M, int N, ShBindingType Binding, typename T1, typename T2>
ShGeneric< M, CT1T2 > SH::operator| (const ShMatrix< M, N, Binding, T1 > &a, const ShGeneric< N, T2 > &b)
 Matrix-tuple multiplication.
template<int M, int N, ShBindingType Binding, typename T1, typename T2>
ShGeneric< M, CT1T2 > operator * (const ShMatrix< M, N, Binding, T1 > &a, const ShGeneric< N, T2 > &b)
template<int M, int N, ShBindingType Binding, typename T1, typename T2>
ShGeneric< N, CT1T2 > SH::operator| (const ShGeneric< M, T1 > &a, const ShMatrix< M, N, Binding, T2 > &b)
 Tuple-matrix multiplication.
template<int M, int N, ShBindingType Binding, typename T1, typename T2>
ShGeneric< N, CT1T2 > operator * (const ShGeneric< M, T1 > &a, const ShMatrix< M, N, Binding, T2 > &b)
template<int M, int N, ShBindingType Binding, typename T1, typename T2>
ShMatrix< M, N, SH_TEMP, CT1T2 > SH::operator * (const ShMatrix< M, N, Binding, T1 > &a, const ShGeneric< 1, T2 > &b)
 Matrix-scalar multiplication.
template<int M, ShBindingType Binding, typename T1, typename T2>
ShMatrix< M, 1, SH_TEMP, CT1T2 > operator * (const ShMatrix< M, 1, Binding, T1 > &a, const ShGeneric< 1, T2 > &b)
template<int M, int N, ShBindingType Binding, typename T1, typename T2>
ShMatrix< M, N, SH_TEMP, CT1T2 > SH::operator * (const ShGeneric< 1, T1 > &a, const ShMatrix< M, N, Binding, T2 > &b)
 Scalar-matrix multiplication.
template<int N, ShBindingType Binding, typename T1, typename T2>
ShMatrix< 1, N, SH_TEMP, CT1T2 > operator * (const ShGeneric< 1, T1 > &a, const ShMatrix< 1, N, Binding, T2 > &b)
template<int M, int N, ShBindingType Binding, typename T1, typename T2>
ShMatrix< M, N, SH_TEMP, CT1T2 > SH::operator/ (const ShMatrix< M, N, Binding, T1 > &a, const ShGeneric< 1, T2 > &b)
 Matrix-scalar division.
template<ShBindingType Binding2, typename T2>
ShAttrib1f SH::det (const ShMatrix< 1, 1, Binding2, T2 > &matrix)
 Returns the determinant for the given matrix.
template<ShBindingType Binding2, typename T2>
ShAttrib1f det (const ShMatrix< 2, 2, Binding2, T2 > &matrix)
template<int RowsCols, ShBindingType Binding2, typename T2>
ShAttrib1f det (const ShMatrix< RowsCols, RowsCols, Binding2, T2 > &matrix)
template<int RowsCols, ShBindingType Binding2, typename T2>
ShMatrix< RowsCols, RowsCols,
SH_TEMP, T2 > 
SH::cofactors (const ShMatrix< RowsCols, RowsCols, Binding2, T2 > &matrix)
 Returns the matrix of cofactors for the given matrix.
template<int M, int N, ShBindingType Binding2, typename T2>
ShMatrix< N, M, SH_TEMP, T2 > SH::transpose (const ShMatrix< M, N, Binding2, T2 > &matrix)
 Returns the transpose of the given matrix.
template<int RowsCols, ShBindingType Binding2, typename T2>
ShMatrix< RowsCols, RowsCols,
SH_TEMP, T2 > 
SH::adjoint (const ShMatrix< RowsCols, RowsCols, Binding2, T2 > &matrix)
 Returns the adjoint of the given matrix.
template<int RowsCols, ShBindingType Binding2, typename T2>
ShMatrix< RowsCols, RowsCols,
SH_TEMP, T2 > 
SH::inverse (const ShMatrix< RowsCols, RowsCols, Binding2, T2 > &matrix)
 Invert a matrix.
template<int N, typename T>
ShMatrix< 1, N, SH_TEMP, T > rowmat (const ShGeneric< N, T > &s0)
template<int N, typename T1, typename T2>
ShMatrix< 2, N, SH_TEMP, CT1T2 > rowmat (const ShGeneric< N, T1 > &s0, const ShGeneric< N, T2 > &s1)
template<int N, typename T1, typename T2, typename T3>
ShMatrix< 3, N, SH_TEMP, CT1T2T3 > rowmat (const ShGeneric< N, T1 > &s0, const ShGeneric< N, T2 > &s1, const ShGeneric< N, T3 > &s2)
template<int N, typename T1, typename T2, typename T3, typename T4>
ShMatrix< 4, N, SH_TEMP, CT1T2T3T4 > rowmat (const ShGeneric< N, T1 > &s0, const ShGeneric< N, T2 > &s1, const ShGeneric< N, T3 > &s2, const ShGeneric< N, T4 > &s3)
template<int N, typename T>
ShMatrix< N, 1, SH_TEMP, T > colmat (const ShGeneric< N, T > &s0)
template<int N, typename T>
ShMatrix< N, 2, SH_TEMP, T > colmat (const ShGeneric< N, T > &s0, const ShGeneric< N, T > &s1)
template<int N, typename T>
ShMatrix< N, 3, SH_TEMP, T > colmat (const ShGeneric< N, T > &s0, const ShGeneric< N, T > &s1, const ShGeneric< N, T > &s2)
template<int N, typename T>
ShMatrix< N, 4, SH_TEMP, T > colmat (const ShGeneric< N, T > &s0, const ShGeneric< N, T > &s1, const ShGeneric< N, T > &s2, const ShGeneric< N, T > &s3)
template<int N, typename T>
ShMatrix< N, N, SH_TEMP, T > diag (const ShGeneric< N, T > &a)

Function Documentation

template<int RowsCols, ShBindingType Binding2, typename T2>
ShMatrix<RowsCols,RowsCols, SH_TEMP, T2> inverse const ShMatrix< RowsCols, RowsCols, Binding2, T2 > &  matrix  ) 
 

Invert a matrix.

Results are undefined if the matrix is non-invertible.

template<int M, int N, ShBindingType Binding, typename T1, typename T2>
ShGeneric< N, CT1T2 > SH::operator| const ShGeneric< M, T1 > &  a,
const ShMatrix< M, N, Binding, T2 > &  b
[inline]
 

Tuple-matrix multiplication.

Treats the tuple as a row vector.

Definition at line 75 of file ShLibMatrixImpl.hpp.

References SH::dot().

template<int M, int N, ShBindingType Binding, typename T1, typename T2>
ShGeneric< M, CT1T2 > SH::operator| const ShMatrix< M, N, Binding, T1 > &  a,
const ShGeneric< N, T2 > &  b
[inline]
 

Matrix-tuple multiplication.

Treats the tuple as a column vector.

Definition at line 63 of file ShLibMatrixImpl.hpp.

References SH::dot().

template<int M, int N, int P, ShBindingType Binding, ShBindingType Binding2, typename T1, typename T2>
ShMatrix< M, P, SH_TEMP, CT1T2 > SH::operator| const ShMatrix< M, N, Binding, T1 > &  a,
const ShMatrix< N, P, Binding2, T2 > &  b
[inline]
 

Matrix multiplication.

Only works on matrices of compatible sizes.

Definition at line 38 of file ShLibMatrixImpl.hpp.

References SH::dot(), and SH::transpose().

template<int M, int N, ShBindingType Binding2, typename T2>
ShMatrix<N, M, SH_TEMP, T2> transpose const ShMatrix< M, N, Binding2, T2 > &  matrix  ) 
 

Returns the transpose of the given matrix.

The matrix is flipped around its diagonal.

Referenced by SH::operator|().


Generated on Mon Jan 24 18:37:59 2005 for Sh by  doxygen 1.4.1