"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "include/armadillo_bits/sympd_helper.hpp" between
armadillo-10.8.2.tar.xz and armadillo-11.0.0.tar.xz

About: Armadillo is a C++ linear algebra library (matrix maths) aiming towards a good balance between speed and ease of use.

sympd_helper.hpp  (armadillo-10.8.2.tar.xz):sympd_helper.hpp  (armadillo-11.0.0.tar.xz)
skipping to change at line 429 skipping to change at line 429
is_approx_sym = false; is_approx_sym = false;
is_approx_sympd = false; is_approx_sympd = false;
return; return;
} }
analyse_matrix_worker(is_approx_sym, is_approx_sympd, A); analyse_matrix_worker(is_approx_sym, is_approx_sympd, A);
if(is_approx_sym == false) { is_approx_sympd = false; } if(is_approx_sym == false) { is_approx_sympd = false; }
} }
template<typename eT>
inline
bool
check_diag_imag(const Mat<eT>& A)
{
arma_extra_debug_sigprint();
// NOTE: assuming matrix A is square-sized
typedef typename get_pod_type<eT>::result T;
const T tol = T(10000) * std::numeric_limits<T>::epsilon(); // allow some lee
way
const eT* colmem = A.memptr();
const uword N = A.n_rows;
for(uword i=0; i<N; ++i)
{
const eT& A_ii = colmem[i];
const T A_ii_imag = access::tmp_imag(A_ii);
if(std::abs(A_ii_imag) > tol) { return false; }
colmem += N;
}
return true;
}
} // end of namespace sympd_helper } // end of namespace sympd_helper
//! @} //! @}
 End of changes. 1 change blocks. 
0 lines changed or deleted 31 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)