//============================================================================
/*! cast to _zhematrix */
inline _zhematrix _dsymatrix::to_zhematrix() const
{
#ifdef CPPL_VERBOSE
std::cerr << "# [MARK] _dsymatrix::to_zhematrix() const" << std::endl;
#endif//CPPL_VERBOSE
zhematrix newmat(N);
for(long i=0; i<N; i++){
for(long j=0; j<=i; j++){
newmat(i,j) =std::complex<double>((*this)(i,j),0.0);
}
}
#ifdef CPPL_DEBUG
std::cerr << "# [NOTE] _dsymatrix::to_zhematrix() const" << " A new casted matrix at " << newmat.array << " has been made." << std::endl;
#endif//CPPL_DEBUG
destroy();
return _(newmat);
}
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
//============================================================================
/*! convert to _dgematrix */
inline _dgematrix _dsymatrix::to_dgematrix() const
{
#ifdef CPPL_VERBOSE
std::cerr << "# [MARK] _dsymatrix::to_dgematrix() const" << std::endl;
#endif//CPPL_VERBOSE
dgematrix newmat(N,N);
for(long i=0; i<N; i++){
for(long j=0; j<N; j++){
newmat(i,j) =(*this)(i,j);
}
}
#ifdef CPPL_DEBUG
std::cerr << "# [NOTE] _dsymatrix::to_dgematrix() const" << " A new casted matrix at " << newmat.array << " has been made." << std::endl;
#endif//CPPL_DEBUG
destroy();
return _(newmat);
}