mptensor  v0.3.0
Parallel Library for Tensor Network Methods
matrix_scalapack.hpp File Reference

scalapack::Matrix class More...

#include <iostream>
#include <vector>
#include <string>
#include <mpi.h>
#include "blacsgrid.hpp"
#include "matrix_scalapack_impl.hpp"

Go to the source code of this file.

Classes

class  mptensor::scalapack::Matrix< C >
 Distributed matrix using ScaLAPACK. More...
 

Namespaces

 mptensor
 
 mptensor::scalapack
 Namespace for the distributed Matrix class with ScaLAPACK, PBLAS, and BLACS.
 

Functions

Matrix operations
template<typename C >
void mptensor::scalapack::replace_matrix_data (const Matrix< C > &M, const std::vector< int > &dest_rank, const std::vector< size_t > &local_position, Matrix< C > &M_new)
 
template<typename C >
void mptensor::scalapack::replace_matrix_data (const std::vector< C > &V, const std::vector< int > &dest_rank, const std::vector< size_t > &local_position, Matrix< C > &M_new)
 
template<typename C >
void mptensor::scalapack::sum_matrix_data (const Matrix< C > &M, const std::vector< int > &dest_rank, const std::vector< size_t > &local_position, Matrix< C > &M_new)
 
template<typename C >
double mptensor::scalapack::max_abs (const Matrix< C > &a)
 
template<typename C >
double mptensor::scalapack::min_abs (const Matrix< C > &a)
 
template<typename C >
void mptensor::scalapack::matrix_product (const Matrix< C > &a, const Matrix< C > &b, Matrix< C > &c)
 
template<typename C >
int mptensor::scalapack::matrix_svd (Matrix< C > &a, Matrix< C > &u, std::vector< double > &s, Matrix< C > &v)
 
template<typename C >
int mptensor::scalapack::matrix_svd (Matrix< C > &a, std::vector< double > &s)
 
template<typename C >
int mptensor::scalapack::matrix_qr (Matrix< C > &a, Matrix< C > &r)
 
template<typename C >
int mptensor::scalapack::matrix_eigh (Matrix< C > &a, std::vector< double > &s, Matrix< C > &u)
 
template<typename C >
int mptensor::scalapack::matrix_eigh (Matrix< C > &a, std::vector< double > &s)
 
template<typename C >
int mptensor::scalapack::matrix_eigh (Matrix< C > &a, Matrix< C > &b, std::vector< double > &s, Matrix< C > &u)
 
template<typename C >
int mptensor::scalapack::matrix_solve (Matrix< C > &a, Matrix< C > &b)
 
template<typename C >
mptensor::scalapack::matrix_trace (const Matrix< C > &a)
 
template<typename C >
double mptensor::scalapack::max (const Matrix< C > &a)
 
template<typename C >
double mptensor::scalapack::min (const Matrix< C > &a)
 

Detailed Description

scalapack::Matrix class

Author
Satoshi Morita morit.nosp@m.a@is.nosp@m.sp.u-.nosp@m.toky.nosp@m.o.ac..nosp@m.jp
Date
Dec 12 2014