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 (string name, int d1, int d2)
 
 Array2d ()
 
 ~Array2d ()
 
Array2dgenerate (int d1, int d2)
 
Array2dgenerate (string name, int d1, int d2)
 
void init (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 OutFileRMR)
 
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_
 
string name_
 

Friends

class Array1d
 
class Array3d
 

Constructor & Destructor Documentation

psi::occwave::Array2d::Array2d ( int  d1,
int  d2 
)
psi::occwave::Array2d::Array2d ( 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 ( 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 ( 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  OutFileRMR)
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
string psi::occwave::Array2d::name_
private

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