Psi4
Public Member Functions | Private Attributes | Friends | List of all members
psi::occwave::Array2d Class Reference

#include <arrays.h>

Public Member Functions

 Array2d (int d1, int d2)
 
 Array2d (std::string name, int d1, int d2)
 
 Array2d ()
 
 ~Array2d ()
 
Array2dgenerate (int d1, int d2)
 
Array2dgenerate (std::string name, int d1, int d2)
 
void init (std::string name, int d1, int d2)
 
void init (int d1, int d2)
 
void memalloc ()
 
void zero ()
 
void zero_diagonal ()
 
void print ()
 
void print (std::string out_fname)
 
void release ()
 
void set (int i, int j, double value)
 
void set (double **A)
 
double get (int i, int j)
 
void add (const Array2d *Adum)
 
void add (int i, int j, double value)
 
void subtract (const Array2d *Adum)
 
void subtract (int i, int j, double value)
 
Array2dtranspose ()
 
void copy (const Array2d *Adum)
 
void copy (double **a)
 
void diagonalize (Array2d *eigvectors, Array1d *eigvalues, double cutoff)
 
void cdsyev (char jobz, char uplo, Array2d *eigvectors, Array1d *eigvalues)
 
void davidson (int n_eigval, Array2d *eigvectors, Array1d *eigvalues, double cutoff, int print)
 
void cdgesv (Array1d *Xvec)
 
void cdgesv (double *Xvec)
 
void cdgesv (Array1d *Xvec, int errcod)
 
void cdgesv (double *Xvec, int errcod)
 
void lineq_flin (Array1d *Xvec, double *det)
 
void lineq_flin (double *Xvec, double *det)
 
void lineq_pople (Array1d *Xvec, int num_vecs, double cutoff)
 
void lineq_pople (double *Xvec, int num_vecs, double cutoff)
 
void gemm (bool transa, bool transb, double alpha, const Array2d *a, const Array2d *b, double beta)
 
void level_shift (double value)
 
void outer_product (const Array1d *x, const Array1d *y)
 
void scale (double a)
 
void scale_row (int m, double a)
 
void scale_column (int n, double a)
 
void identity ()
 
double trace ()
 
void transform (const Array2d *a, const Array2d *transformer)
 
void back_transform (const Array2d *a, const Array2d *transformer)
 
void pseudo_transform (const Array2d *a, const Array2d *transformer)
 
void triple_gemm (const Array2d *a, const Array2d *b, const Array2d *c)
 
double vector_dot (Array2d *rhs)
 
double vector_dot (double **rhs)
 
double ** to_block_matrix ()
 
double * to_lower_triangle ()
 
void mgs ()
 
void gs ()
 
double * row_vector (int n)
 
double * column_vector (int n)
 
int dim1 () const
 
int dim2 () const
 

Private Attributes

double ** A2d_
 
int dim1_
 
int dim2_
 
std::string name_
 

Friends

class Array1d
 
class Array3d
 

Constructor & Destructor Documentation

psi::occwave::Array2d::Array2d ( int  d1,
int  d2 
)
psi::occwave::Array2d::Array2d ( std::string  name,
int  d1,
int  d2 
)
psi::occwave::Array2d::Array2d ( )
psi::occwave::Array2d::~Array2d ( )

Member Function Documentation

void psi::occwave::Array2d::add ( const Array2d Adum)
void psi::occwave::Array2d::add ( int  i,
int  j,
double  value 
)
void psi::occwave::Array2d::back_transform ( const Array2d a,
const Array2d transformer 
)
void psi::occwave::Array2d::cdgesv ( Array1d Xvec)
void psi::occwave::Array2d::cdgesv ( double *  Xvec)
void psi::occwave::Array2d::cdgesv ( Array1d Xvec,
int  errcod 
)
void psi::occwave::Array2d::cdgesv ( double *  Xvec,
int  errcod 
)
void psi::occwave::Array2d::cdsyev ( char  jobz,
char  uplo,
Array2d eigvectors,
Array1d eigvalues 
)
double * psi::occwave::Array2d::column_vector ( int  n)
void psi::occwave::Array2d::copy ( const Array2d Adum)
void psi::occwave::Array2d::copy ( double **  a)
void psi::occwave::Array2d::davidson ( int  n_eigval,
Array2d eigvectors,
Array1d eigvalues,
double  cutoff,
int  print 
)
void psi::occwave::Array2d::diagonalize ( Array2d eigvectors,
Array1d eigvalues,
double  cutoff 
)
int psi::occwave::Array2d::dim1 ( ) const
inline
int psi::occwave::Array2d::dim2 ( ) const
inline
void psi::occwave::Array2d::gemm ( bool  transa,
bool  transb,
double  alpha,
const Array2d a,
const Array2d b,
double  beta 
)
Array2d * psi::occwave::Array2d::generate ( int  d1,
int  d2 
)
Array2d * psi::occwave::Array2d::generate ( std::string  name,
int  d1,
int  d2 
)
double psi::occwave::Array2d::get ( int  i,
int  j 
)
void psi::occwave::Array2d::gs ( )
void psi::occwave::Array2d::identity ( )
void psi::occwave::Array2d::init ( std::string  name,
int  d1,
int  d2 
)
void psi::occwave::Array2d::init ( int  d1,
int  d2 
)
void psi::occwave::Array2d::level_shift ( double  value)
void psi::occwave::Array2d::lineq_flin ( Array1d Xvec,
double *  det 
)
void psi::occwave::Array2d::lineq_flin ( double *  Xvec,
double *  det 
)
void psi::occwave::Array2d::lineq_pople ( Array1d Xvec,
int  num_vecs,
double  cutoff 
)
void psi::occwave::Array2d::lineq_pople ( double *  Xvec,
int  num_vecs,
double  cutoff 
)
void psi::occwave::Array2d::memalloc ( )
void psi::occwave::Array2d::mgs ( )
void psi::occwave::Array2d::outer_product ( const Array1d x,
const Array1d y 
)
void psi::occwave::Array2d::print ( void  )
void psi::occwave::Array2d::print ( std::string  out_fname)
void psi::occwave::Array2d::pseudo_transform ( const Array2d a,
const Array2d transformer 
)
void psi::occwave::Array2d::release ( )
double * psi::occwave::Array2d::row_vector ( int  n)
void psi::occwave::Array2d::scale ( double  a)
void psi::occwave::Array2d::scale_column ( int  n,
double  a 
)
void psi::occwave::Array2d::scale_row ( int  m,
double  a 
)
void psi::occwave::Array2d::set ( int  i,
int  j,
double  value 
)
void psi::occwave::Array2d::set ( double **  A)
void psi::occwave::Array2d::subtract ( const Array2d Adum)
void psi::occwave::Array2d::subtract ( int  i,
int  j,
double  value 
)
double ** psi::occwave::Array2d::to_block_matrix ( )
double * psi::occwave::Array2d::to_lower_triangle ( )
double psi::occwave::Array2d::trace ( )
void psi::occwave::Array2d::transform ( const Array2d a,
const Array2d transformer 
)
Array2d * psi::occwave::Array2d::transpose ( )
void psi::occwave::Array2d::triple_gemm ( const Array2d a,
const Array2d b,
const Array2d c 
)
double psi::occwave::Array2d::vector_dot ( Array2d rhs)
double psi::occwave::Array2d::vector_dot ( double **  rhs)
void psi::occwave::Array2d::zero ( void  )
void psi::occwave::Array2d::zero_diagonal ( )

Friends And Related Function Documentation

friend class Array1d
friend
friend class Array3d
friend

Member Data Documentation

double** psi::occwave::Array2d::A2d_
private
int psi::occwave::Array2d::dim1_
private
int psi::occwave::Array2d::dim2_
private
std::string psi::occwave::Array2d::name_
private

The documentation for this class was generated from the following files: