# sc::PsiWavefunction Class Reference

PsiWavefunction is an abstract base for all Psi wave functions. More...

`#include <psiwfn.h>`

Inheritance diagram for sc::PsiWavefunction:

List of all members.

## Public Member Functions

| PsiWavefunction (const Ref< KeyVal > &)
| The KeyVal constructor.
| PsiWavefunction (StateIn &)
void | save_data_state (StateOut &)
| Save the base classes (with save_data_state) and the members in the same order that the StateIn CTOR initializes them.
virtual void | write_basic_input (int conv)
| Writes out Psi input file entries specific to this PsiWavefunction.
void | compute ()
| Recompute at least the results that have compute true and are not already computed.
void | print (std::ostream &o=ExEnv::out0()) const
| Print information about the object.
RefSymmSCMatrix | density ()
| Returns the SO density.
int | nelectron ()
| Returns the number of electrons.
Ref< PsiExEnv > | get_psi_exenv () const
| Return an associated PsiExEnv object.
Ref< PsiInput > | get_psi_input () const
| Return an associated PsiInput object.

## Protected Member Functions

virtual void | write_input (int conv)=0
| Prepares a complete Psi input file. The input file is assumed to have been opened.

## Protected Attributes

int | nirrep_
int * | docc_
int * | socc_
int * | frozen_docc_
int * | frozen_uocc_
int | multp_
int | charge_
char * | memory_

## Detailed Description

PsiWavefunction is an abstract base for all Psi wave functions.

Its KeyVal constructor is invoked by all KeyVal constructors of concrete implementations of PsiWavefunction.

## Constructor & Destructor Documentation

sc::PsiWavefunction::PsiWavefunction | ( | const Ref< KeyVal > & |  | ) |

The KeyVal constructor.

`psienv`

  Specifies a PsiExEnv object. There is no default.

`memory`

  This integer specifies the amount of memory (in bytes) for Psi to use. The default is 2000000.

`debug`

  This integer can be used to produce output for debugging. The default is 0.

## Member Function Documentation

void sc::PsiWavefunction::compute | ( |  | ) | `[virtual]`

Recompute at least the results that have compute true and are not already computed.

This should only be called by Result's members.

Implements sc::Compute.

void sc::PsiWavefunction::save_data_state | ( | StateOut & |  | ) | `[virtual]`

Save the base classes (with save_data_state) and the members in the same order that the StateIn CTOR initializes them.

This must be implemented by the derived class if the class has data.

Reimplemented from sc::Wavefunction.

Reimplemented in sc::PsiSCF, sc::PsiCCSD, and sc::PsiCCSD_T.

virtual void sc::PsiWavefunction::write_basic_input | ( | int | conv | ) | `[virtual]`

Writes out Psi input file entries specific to this PsiWavefunction.

The input file is assumed to have been opened.

Reimplemented in sc::PsiCLHF, sc::PsiHSOSHF, and sc::PsiUHF.

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

- psiwfn.h