v2DM-DOCI  1.0
doci2DM::SUP Class Reference

#include <SUP.h>

+ Collaboration diagram for doci2DM::SUP:

Public Member Functions

 SUP (int L, int N)
 
 SUP (const SUP &)
 
 SUP (SUP &&)
 
virtual ~SUP ()=default
 
SUPoperator= (const SUP &)
 
SUPoperator= (SUP &&)
 
SUPoperator= (double)
 
SUPoperator+= (const SUP &)
 
SUPoperator-= (const SUP &)
 
SUPoperator*= (double)
 
SUPoperator/= (double)
 
void dscal (double)
 
int gN () const
 
int gL () const
 
TPM const & getI () const
 
TPMgetI ()
 
TPM const & getQ () const
 
TPMgetQ ()
 
PHM const & getG () const
 
PHMgetG ()
 
void invert ()
 
void fill (const TPM &)
 
void sqrt (int)
 
void L_map (const SUP &, const SUP &)
 
int gnr () const
 
double ddot (const SUP &) const
 
void daxpy (double, const SUP &)
 
void sep_pm (SUP &, SUP &)
 
void init_S (const Lineq &)
 
void WriteToFile (std::string filename) const
 
void ReadFromFile (std::string filename)
 

Private Attributes

int N
 number of particles More...
 
int L
 the size of the sp DOCI space (there are 2*L sp states) More...
 
std::unique_ptr< TPMI
 the RDM matrix More...
 
std::unique_ptr< TPMQ
 the Q matrix More...
 
std::unique_ptr< PHMG
 the G matrix More...
 

Friends

std::ostream & operator<< (std::ostream &output, doci2DM::SUP &sup)
 

Detailed Description

Definition at line 36 of file SUP.h.

Constructor & Destructor Documentation

SUP::SUP ( int  L,
int  N 
)

Definition at line 28 of file SUP.cpp.

SUP::SUP ( const SUP orig)

Definition at line 43 of file SUP.cpp.

SUP::SUP ( SUP &&  orig)

Definition at line 58 of file SUP.cpp.

virtual doci2DM::SUP::~SUP ( )
virtualdefault

Member Function Documentation

void SUP::daxpy ( double  alpha,
const SUP y 
)

Definition at line 323 of file SUP.cpp.

+ Here is the caller graph for this function:

double SUP::ddot ( const SUP x) const

Definition at line 306 of file SUP.cpp.

+ Here is the caller graph for this function:

void SUP::dscal ( double  alpha)

Definition at line 161 of file SUP.cpp.

+ Here is the caller graph for this function:

void SUP::fill ( const TPM tpm)

Fill the SUP object with the tpm object

Parameters
tpmthe TPM to use

Definition at line 231 of file SUP.cpp.

+ Here is the caller graph for this function:

PHM const & SUP::getG ( ) const

Definition at line 204 of file SUP.cpp.

+ Here is the caller graph for this function:

PHM & SUP::getG ( )

Definition at line 209 of file SUP.cpp.

TPM const & SUP::getI ( ) const

Definition at line 184 of file SUP.cpp.

+ Here is the caller graph for this function:

TPM & SUP::getI ( )

Definition at line 189 of file SUP.cpp.

TPM const & SUP::getQ ( ) const

Definition at line 194 of file SUP.cpp.

+ Here is the caller graph for this function:

TPM & SUP::getQ ( )

Definition at line 199 of file SUP.cpp.

int SUP::gL ( ) const

Definition at line 179 of file SUP.cpp.

int SUP::gN ( ) const

Definition at line 174 of file SUP.cpp.

int SUP::gnr ( ) const

Definition at line 270 of file SUP.cpp.

void SUP::init_S ( const Lineq lineq)

Initialization of the SUP matrix S, is just u^0: see primal_dual.pdf for more information

Definition at line 352 of file SUP.cpp.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void SUP::invert ( )

Definition at line 214 of file SUP.cpp.

+ Here is the caller graph for this function:

void SUP::L_map ( const SUP A,
const SUP B 
)

Definition at line 257 of file SUP.cpp.

+ Here is the caller graph for this function:

SUP & SUP::operator*= ( double  alpha)

Definition at line 133 of file SUP.cpp.

SUP & SUP::operator+= ( const SUP orig)

Definition at line 105 of file SUP.cpp.

SUP & SUP::operator-= ( const SUP orig)

Definition at line 119 of file SUP.cpp.

SUP & SUP::operator/= ( double  alpha)

Definition at line 147 of file SUP.cpp.

SUP & SUP::operator= ( const SUP orig)

Definition at line 68 of file SUP.cpp.

SUP & SUP::operator= ( SUP &&  orig)

Definition at line 82 of file SUP.cpp.

SUP & SUP::operator= ( double  a)

Definition at line 91 of file SUP.cpp.

void SUP::ReadFromFile ( std::string  filename)

Read a SUP object from a HDF5 file. The SUP needs to be already created with the correct dimensions. Will fill in the object on which it is called.

Parameters
filenamethe file to read

Definition at line 412 of file SUP.cpp.

+ Here is the caller graph for this function:

void SUP::sep_pm ( SUP pos,
SUP neg 
)

Definition at line 336 of file SUP.cpp.

+ Here is the caller graph for this function:

void SUP::sqrt ( int  option)

Definition at line 244 of file SUP.cpp.

+ Here is the caller graph for this function:

void SUP::WriteToFile ( std::string  filename) const

Write a SUP object to a HDF5 file

Parameters
filenamethe name of the file to write to

Definition at line 366 of file SUP.cpp.

+ Here is the caller graph for this function:

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  output,
doci2DM::SUP sup 
)
friend

Definition at line 287 of file SUP.cpp.

Member Data Documentation

std::unique_ptr<PHM> doci2DM::SUP::G
private

the G matrix

Definition at line 118 of file SUP.h.

std::unique_ptr<TPM> doci2DM::SUP::I
private

the RDM matrix

Definition at line 112 of file SUP.h.

int doci2DM::SUP::L
private

the size of the sp DOCI space (there are 2*L sp states)

Definition at line 109 of file SUP.h.

int doci2DM::SUP::N
private

number of particles

Definition at line 106 of file SUP.h.

std::unique_ptr<TPM> doci2DM::SUP::Q
private

the Q matrix

Definition at line 115 of file SUP.h.


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