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 3 #define ARMA_VERSION_MAJOR 3
#define ARMA_VERSION_MINOR 0 #define ARMA_VERSION_MINOR 0
#define ARMA_VERSION_PATCH 2 #define ARMA_VERSION_PATCH 3
#define ARMA_VERSION_NAME "Antarctic Chilli Ranch" #define ARMA_VERSION_NAME "Antarctic Chilli Ranch"
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 1392 skipping to change at line 1392
eigval.set_size(A_n_rows); eigval.set_size(A_n_rows);
l_eigvec.set_size(A_n_rows, A_n_rows); l_eigvec.set_size(A_n_rows, A_n_rows);
r_eigvec.set_size(A_n_rows, A_n_rows); r_eigvec.set_size(A_n_rows, A_n_rows);
podarray<T> work( static_cast<uword>(lwork) ); podarray<T> work( static_cast<uword>(lwork) );
podarray<T> rwork( static_cast<uword>((std::max)(blas_int(1), 3*n_rows) ) ); podarray<T> rwork( static_cast<uword>((std::max)(blas_int(1), 3*n_rows) ) );
podarray<T> wr(A_n_rows); podarray<T> wr(A_n_rows);
podarray<T> wi(A_n_rows); podarray<T> wi(A_n_rows);
Mat<T> A_copy = A;
blas_int info = 0; blas_int info = 0;
arma_extra_debug_print("lapack::geev()"); arma_extra_debug_print("lapack::geev()");
lapack::geev(&jobvl, &jobvr, &n_rows, A_copy.memptr(), &lda, wr.memptr( ), wi.memptr(), l_eigvec.memptr(), &n_rows, r_eigvec.memptr(), &n_rows, wor k.memptr(), &lwork, &info); lapack::geev(&jobvl, &jobvr, &n_rows, A.memptr(), &lda, wr.memptr(), wi .memptr(), l_eigvec.memptr(), &n_rows, r_eigvec.memptr(), &n_rows, work.mem ptr(), &lwork, &info);
eigval.set_size(A_n_rows); eigval.set_size(A_n_rows);
for(uword i=0; i<A_n_rows; ++i) for(uword i=0; i<A_n_rows; ++i)
{ {
eigval[i] = std::complex<T>(wr[i], wi[i]); eigval[i] = std::complex<T>(wr[i], wi[i]);
} }
return (info == 0); return (info == 0);
} }
#else #else
 End of changes. 2 change blocks. 
2 lines changed or deleted 1 lines changed or added


 fn_elem.hpp   fn_elem.hpp 
// Copyright (C) 2008-2011 NICTA (www.nicta.com.au) // Copyright (C) 2008-2012 NICTA (www.nicta.com.au)
// Copyright (C) 2008-2011 Conrad Sanderson // Copyright (C) 2008-2012 Conrad Sanderson
// //
// This file is part of the Armadillo C++ library. // This file is part of the Armadillo C++ library.
// It is provided without any warranty of fitness // It is provided without any warranty of fitness
// for any purpose. You can redistribute this file // for any purpose. You can redistribute this file
// and/or modify it under the terms of the GNU // and/or modify it under the terms of the GNU
// 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)
skipping to change at line 87 skipping to change at line 87
arma_extra_debug_sigprint(); arma_extra_debug_sigprint();
return mtOpCube<typename T1::pod_type, T1, op_real>( X.get_ref() ); return mtOpCube<typename T1::pod_type, T1, op_real>( X.get_ref() );
} }
// //
// imag // imag
template<typename T1> template<typename T1>
inline inline
const Gen<typename T1::pod_type, gen_zeros> const Gen< Mat<typename T1::pod_type>, gen_zeros >
imag(const Base<typename T1::pod_type,T1>& X) imag(const Base<typename T1::pod_type,T1>& X)
{ {
arma_extra_debug_sigprint(); arma_extra_debug_sigprint();
const Proxy<T1> A(X.get_ref()); const Proxy<T1> A(X.get_ref());
return Gen<typename T1::pod_type, gen_zeros>(A.get_n_rows(), A.get_n_cols ()); return Gen< Mat<typename T1::pod_type>, gen_zeros>(A.get_n_rows(), A.get_ n_cols());
} }
template<typename T1> template<typename T1>
inline inline
const GenCube<typename T1::pod_type, gen_zeros> const GenCube<typename T1::pod_type, gen_zeros>
imag(const BaseCube<typename T1::pod_type,T1>& X) imag(const BaseCube<typename T1::pod_type,T1>& X)
{ {
arma_extra_debug_sigprint(); arma_extra_debug_sigprint();
const ProxyCube<T1> A(X.get_ref()); const ProxyCube<T1> A(X.get_ref());
 End of changes. 3 change blocks. 
4 lines changed or deleted 4 lines changed or added


 op_htrans_meat.hpp   op_htrans_meat.hpp 
skipping to change at line 104 skipping to change at line 104
const eT val2 = std::conj(out.at(col,row)); const eT val2 = std::conj(out.at(col,row));
out.at(col,row) = val1; out.at(col,row) = val1;
coldata[row] = val2; coldata[row] = val2;
} }
} }
} }
else else
{ {
Mat<eT> tmp; Mat<eT> tmp;
op_strans::apply_noalias(tmp, A); op_htrans::apply_noalias(tmp, A);
out.steal_mem(tmp); out.steal_mem(tmp);
} }
} }
} }
template<typename T1> template<typename T1>
inline inline
void void
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 unwrap.hpp   unwrap.hpp 
skipping to change at line 106 skipping to change at line 106
inline unwrap(const Col<eT>& A) inline unwrap(const Col<eT>& A)
: M(A) : M(A)
{ {
arma_extra_debug_sigprint(); arma_extra_debug_sigprint();
} }
const Col<eT>& M; const Col<eT>& M;
}; };
template<typename eT>
class unwrap< subview_col<eT> >
{
public:
inline unwrap(const subview_col<eT>& A)
: M( const_cast<eT*>( A.colptr(0) ), A.n_rows, 1, false, false )
{
arma_extra_debug_sigprint();
}
const Mat<eT> M;
};
template<typename out_eT, typename T1, typename T2, typename glue_type> template<typename out_eT, typename T1, typename T2, typename glue_type>
class unwrap< mtGlue<out_eT, T1, T2, glue_type> > class unwrap< mtGlue<out_eT, T1, T2, glue_type> >
{ {
public: public:
inline unwrap(const mtGlue<out_eT, T1, T2, glue_type>& A) inline unwrap(const mtGlue<out_eT, T1, T2, glue_type>& A)
: M(A) : M(A)
{ {
arma_extra_debug_sigprint(); arma_extra_debug_sigprint();
} }
skipping to change at line 248 skipping to change at line 234
if(M_local) { delete M_local; } if(M_local) { delete M_local; }
} }
// the order below is important // the order below is important
const Col<eT>* M_local; const Col<eT>* M_local;
const Col<eT>& M; const Col<eT>& M;
}; };
template<typename eT>
class unwrap_check< subview_col<eT> >
{
public:
inline
unwrap_check(const subview_col<eT>& A, const Mat<eT>& B)
: M( const_cast<eT*>( A.colptr(0) ), A.n_rows, 1, (&(A.m) == &B), false
)
{
arma_extra_debug_sigprint();
}
const Mat<eT> M;
};
// //
// //
// //
template<typename T1> template<typename T1>
class unwrap_check_mixed class unwrap_check_mixed
{ {
public: public:
typedef typename T1::elem_type eT1; typedef typename T1::elem_type eT1;
 End of changes. 2 change blocks. 
30 lines changed or deleted 0 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/