Functions | |
template<typename T1 > | |
void | lu (Mat< typename T1::elem_type > &L, Mat< typename T1::elem_type > &U, const Base< typename T1::elem_type, T1 > &X) |
immediate lower upper decomposition | |
template<typename T1 > | |
void | lu (Mat< typename T1::elem_type > &L, Mat< typename T1::elem_type > &U, Mat< typename T1::elem_type > &P, const Base< typename T1::elem_type, T1 > &X) |
immediate lower upper decomposition, also providing the permutation matrix |
void lu | ( | Mat< typename T1::elem_type > & | L, | |
Mat< typename T1::elem_type > & | U, | |||
const Base< typename T1::elem_type, T1 > & | X | |||
) | [inline] |
immediate lower upper decomposition
Definition at line 24 of file fn_lu.hpp.
References Base< elem_type, derived >::get_ref(), and auxlib::lu().
00025 { 00026 arma_extra_debug_sigprint(); 00027 00028 typedef typename T1::elem_type eT; 00029 00030 arma_debug_check( (&L == &U), "lu(): L and U are the same object"); 00031 00032 const unwrap_check<T1> tmp1(X.get_ref(), L); 00033 const Mat<eT>& A = tmp1.M; 00034 00035 const unwrap_check< Mat<eT> > tmp2(A, U); 00036 const Mat<eT>& B = tmp2.M; 00037 00038 auxlib::lu(L, U, B); 00039 }
void lu | ( | Mat< typename T1::elem_type > & | L, | |
Mat< typename T1::elem_type > & | U, | |||
Mat< typename T1::elem_type > & | P, | |||
const Base< typename T1::elem_type, T1 > & | X | |||
) | [inline] |
immediate lower upper decomposition, also providing the permutation matrix
Definition at line 47 of file fn_lu.hpp.
References Base< elem_type, derived >::get_ref(), and auxlib::lu().
00048 { 00049 arma_extra_debug_sigprint(); 00050 00051 typedef typename T1::elem_type eT; 00052 00053 arma_debug_check( ( (&L == &U) || (&L == &P) || (&U == &P) ), "lu(): two or more output objects are the same object"); 00054 00055 const unwrap_check<T1> tmp1(X.get_ref(), L); 00056 const Mat<eT>& A = tmp1.M; 00057 00058 const unwrap_check< Mat<eT> > tmp2(A, U); 00059 const Mat<eT>& B = tmp2.M; 00060 00061 const unwrap_check< Mat<eT> > tmp3(B, P); 00062 const Mat<eT>& C = tmp3.M; 00063 00064 auxlib::lu(L, U, P, C); 00065 }