arma_version.hpp   arma_version.hpp 
skipping to change at line 18 skipping to change at line 18
// Lesser General Public License (LGPL) as published // Lesser General Public License (LGPL) as published
// by the Free Software Foundation, either version 3 // by the Free Software Foundation, either version 3
// of the License or (at your option) any later version. // of the License or (at your option) any later version.
// (see http://www.opensource.org/licenses for more info) // (see http://www.opensource.org/licenses for more info)
//! \addtogroup arma_version //! \addtogroup arma_version
//! @{ //! @{
#define ARMA_VERSION_MAJOR 2 #define ARMA_VERSION_MAJOR 2
#define ARMA_VERSION_MINOR 4 #define ARMA_VERSION_MINOR 4
#define ARMA_VERSION_PATCH 4 #define ARMA_VERSION_PATCH 5
#define ARMA_VERSION_NAME "Loco Lounge Lizard" #define ARMA_VERSION_NAME "Loco Lounge Lizard"
struct arma_version struct arma_version
{ {
static const unsigned int major = ARMA_VERSION_MAJOR; static const unsigned int major = ARMA_VERSION_MAJOR;
static const unsigned int minor = ARMA_VERSION_MINOR; static const unsigned int minor = ARMA_VERSION_MINOR;
static const unsigned int patch = ARMA_VERSION_PATCH; static const unsigned int patch = ARMA_VERSION_PATCH;
static static
inline inline
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 auxlib_meat.hpp   auxlib_meat.hpp 
skipping to change at line 609 skipping to change at line 609
{ {
const eT tmp_det = auxlib::det_tinymat(A, N); const eT tmp_det = auxlib::det_tinymat(A, N);
return (tmp_det != eT(0)) ? tmp_det : auxlib::det_lapack(A, make_co py); return (tmp_det != eT(0)) ? tmp_det : auxlib::det_lapack(A, make_co py);
} }
break; break;
default: default:
return auxlib::det_lapack(A, make_copy); return auxlib::det_lapack(A, make_copy);
} }
} }
else
{ return auxlib::det_lapack(A, make_copy);
return auxlib::det_lapack(A, make_copy);
}
} }
template<typename eT> template<typename eT>
inline inline
eT eT
auxlib::det_tinymat(const Mat<eT>& X, const uword N) auxlib::det_tinymat(const Mat<eT>& X, const uword N)
{ {
arma_extra_debug_sigprint(); arma_extra_debug_sigprint();
switch(N) switch(N)
 End of changes. 1 change blocks. 
4 lines changed or deleted 2 lines changed or added


 diskio_meat.hpp   diskio_meat.hpp 
skipping to change at line 1225 skipping to change at line 1225
f.close(); f.close();
} }
return load_okay; return load_okay;
} }
//! Load a matrix in CSV text format (human readable) //! Load a matrix in CSV text format (human readable)
template<typename eT> template<typename eT>
inline inline
bool bool
diskio::load_csv_ascii(Mat<eT>& x, std::istream& f, std::string& err_msg) diskio::load_csv_ascii(Mat<eT>& x, std::istream& f, std::string&)
{ {
arma_extra_debug_sigprint(); arma_extra_debug_sigprint();
bool load_okay = f.good(); bool load_okay = f.good();
f.clear(); f.clear();
const std::fstream::pos_type pos1 = f.tellg(); const std::fstream::pos_type pos1 = f.tellg();
// //
// work out the size // work out the size
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 gemm.hpp   gemm.hpp 
skipping to change at line 334 skipping to change at line 334
public: public:
template<typename eT> template<typename eT>
inline inline
static static
void void
apply_blas_type( Mat<eT>& C, const Mat<eT>& A, const Mat<eT>& B, const eT alpha = eT(1), const eT beta = eT(0) ) apply_blas_type( Mat<eT>& C, const Mat<eT>& A, const Mat<eT>& B, const eT alpha = eT(1), const eT beta = eT(0) )
{ {
arma_extra_debug_sigprint(); arma_extra_debug_sigprint();
if( (A.n_elem <= 48u) && (B.n_elem <= 48u) ) const uword threshold = (is_complex<eT>::value == true) ? 16u : 48u;
if( (A.n_elem <= threshold) && (B.n_elem <= threshold) )
{ {
gemm_emul<do_trans_A, do_trans_B, use_alpha, use_beta>::apply(C,A,B,a lpha,beta); gemm_emul<do_trans_A, do_trans_B, use_alpha, use_beta>::apply(C,A,B,a lpha,beta);
} }
else else
{ {
#if defined(ARMA_USE_ATLAS) #if defined(ARMA_USE_ATLAS)
{ {
arma_extra_debug_print("atlas::cblas_gemm()"); arma_extra_debug_print("atlas::cblas_gemm()");
atlas::cblas_gemm<eT> atlas::cblas_gemm<eT>
 End of changes. 1 change blocks. 
1 lines changed or deleted 3 lines changed or added


 gemv.hpp   gemv.hpp 
skipping to change at line 282 skipping to change at line 282
} }
template<typename eT> template<typename eT>
arma_hot arma_hot
inline inline
static static
void void
apply( eT* y, const Mat<eT>& A, const eT* x, const eT alpha = eT(1), cons t eT beta = eT(0), const typename arma_cx_only<eT>::result* junk = 0 ) apply( eT* y, const Mat<eT>& A, const eT* x, const eT alpha = eT(1), cons t eT beta = eT(0), const typename arma_cx_only<eT>::result* junk = 0 )
{ {
arma_extra_debug_sigprint(); arma_extra_debug_sigprint();
arma_ignore(junk);
Mat<eT> tmp_A; Mat<eT> tmp_A;
if(do_trans_A) if(do_trans_A)
{ {
op_htrans::apply_noalias(tmp_A, A); op_htrans::apply_noalias(tmp_A, A);
} }
const Mat<eT>& AA = (do_trans_A == false) ? A : tmp_A; const Mat<eT>& AA = (do_trans_A == false) ? A : tmp_A;
 End of changes. 1 change blocks. 
0 lines changed or deleted 1 lines changed or added


 op_median_meat.hpp   op_median_meat.hpp 
skipping to change at line 339 skipping to change at line 339
out.set_size(X_n_rows, 1); out.set_size(X_n_rows, 1);
std::vector< arma_cx_median_packet<T> > tmp_vec(X_n_cols); std::vector< arma_cx_median_packet<T> > tmp_vec(X_n_cols);
for(uword row=0; row<X_n_rows; ++row) for(uword row=0; row<X_n_rows; ++row)
{ {
for(uword col=0; col<X_n_cols; ++col) for(uword col=0; col<X_n_cols; ++col)
{ {
tmp_vec[col].val = std::abs(X.at(row,col)); tmp_vec[col].val = std::abs(X.at(row,col));
tmp_vec[row].index = col; tmp_vec[col].index = col;
} }
uword index1; uword index1;
uword index2; uword index2;
op_median::direct_cx_median_index(index1, index2, tmp_vec); op_median::direct_cx_median_index(index1, index2, tmp_vec);
out[row] = op_median::robust_mean( X.at(row,index1), X.at(row,index2) ); out[row] = op_median::robust_mean( X.at(row,index1), X.at(row,index2) );
} }
} }
} }
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 operator_plus.hpp   operator_plus.hpp 
skipping to change at line 19 skipping to change at line 19
// by the Free Software Foundation, either version 3 // by the Free Software Foundation, either version 3
// of the License or (at your option) any later version. // of the License or (at your option) any later version.
// (see http://www.opensource.org/licenses for more info) // (see http://www.opensource.org/licenses for more info)
//! \addtogroup operator_plus //! \addtogroup operator_plus
//! @{ //! @{
//! unary plus operation (does nothing, but is required for completeness) //! unary plus operation (does nothing, but is required for completeness)
template<typename T1> template<typename T1>
arma_inline arma_inline
const Base<typename T1::elem_type,T1>& const T1&
operator+ operator+
(const Base<typename T1::elem_type,T1>& X) (const Base<typename T1::elem_type,T1>& X)
{ {
arma_extra_debug_sigprint(); arma_extra_debug_sigprint();
return X; return X.get_ref();
} }
//! Base + scalar //! Base + scalar
template<typename T1> template<typename T1>
arma_inline arma_inline
const eOp<T1, eop_scalar_plus> const eOp<T1, eop_scalar_plus>
operator+ operator+
(const Base<typename T1::elem_type,T1>& X, const typename T1::elem_type k) (const Base<typename T1::elem_type,T1>& X, const typename T1::elem_type k)
{ {
arma_extra_debug_sigprint(); arma_extra_debug_sigprint();
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/