Classes | Functions

Op_chol

//! More...

Classes

class  op_chol

Functions

template<typename T1 >
static void op_chol::apply (Mat< typename T1::elem_type > &out, const Op< T1, op_chol > &X)

Detailed Description

//!


Function Documentation

template<typename T1 >
void op_chol::apply ( Mat< typename T1::elem_type > &  out,
const Op< T1, op_chol > &  X 
) [inline, static, inherited]

Definition at line 25 of file op_chol_meat.hpp.

References arma_print(), chol(), Mat< eT >::is_square(), unwrap_check< T1 >::M, Op< T1, op_type >::m, and Mat< eT >::reset().

  {
  arma_extra_debug_sigprint();
  
  typedef typename T1::elem_type eT;
  
  const unwrap_check<T1> tmp(X.m, out);
  const Mat<eT>&     A = tmp.M;
  
  arma_debug_check( (A.is_square() == false), "chol(): given matrix is not square");
  
  const bool ok = auxlib::chol(out, A);
  
  if(ok == false)
    {
    out.reset();
    arma_print("chol(): matrix factorisation failed");
    }
  }