|
MPQC
3.0.0-alpha
|
RefWavefunction specialization for a single-determinant wave function. More...
#include <chemistry/qc/nbody/ref.h>
Public Member Functions | |
| SD_RefWavefunction (const Ref< KeyVal > &kv) | |
| A KeyVal constructor is used to generate a SD_RefWavefunction object from a KeyVal object. More... | |
| SD_RefWavefunction (const Ref< WavefunctionWorld > &world, const Ref< OneBodyWavefunction > &obwfn, bool spin_restricted=true, unsigned int nfzc=0, unsigned int nfzv=0, Ref< OrbitalSpace > vir_space=0, std::string occ_orbs=std::string("canonical")) | |
| construct from a OneBodyWavefunction object More... | |
| SD_RefWavefunction (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. More... | |
| void | print (std::ostream &os=ExEnv::out0()) const |
| Print the object. | |
| void | purge () |
| purges the data from this object More... | |
| bool | sdref () const |
| is this a single-determinantal reference? | |
| const Ref< OneBodyWavefunction > & | obwfn () const |
| const Ref< OrbitalSpace > & | vir_space () const |
| const Ref< GaussianBasisSet > & | uocc_basis () const |
| returns the basis supporting unoccupied orbitals. The defauls is same as returned by basis(). | |
| double | energy () |
| double | actual_value_accuracy () const |
| Return the accuracy with which the value has been computed. More... | |
| double | desired_value_accuracy () const |
| bool | desired_value_accuracy_set_to_default () const |
| int | nelectron () const |
| double | magnetic_moment () const |
| bool | spin_restricted () const |
| int | dk () const |
| Ref< GaussianBasisSet > | momentum_basis () const |
| RefSymmSCMatrix | core_hamiltonian_for_basis (const Ref< GaussianBasisSet > &basis, const Ref< GaussianBasisSet > &p_basis) |
| Returns the SO core Hamiltonian in the given basis and momentum basis. More... | |
| unsigned int | nfzc () const |
| unsigned int | nfzv () const |
| RefSymmSCMatrix | ordm (SpinCase1 spin) const |
| return the AO basis density | |
| Ref< DensityFittingInfo > | dfinfo () const |
| which DensityFittingRuntime used to compute this reference wave function | |
| const std::string & | occ_orbitals () const |
Public Member Functions inherited from sc::RefWavefunction | |
| virtual void | obsolete () |
| obsoletes this object More... | |
| const Ref< WavefunctionWorld > & | world () const |
| const Ref< GaussianBasisSet > & | basis () const |
| const Ref< Integral > & | integral () const |
| const Ref< OrbitalSpace > & | valence_orbs () const |
| This OrbitalSpace defines valence orbitals. More... | |
| void | set_desired_value_accuracy (double) |
| Set the accuracy to which the value is to be computed. More... | |
| bool | spin_polarized () const |
| virtual RefSymmSCMatrix | ordm_orbs_sb (SpinCase1 spin) const |
| return the density in the orbs_sb() space | |
| virtual RefSymmSCMatrix | ordm_occ_sb (SpinCase1 spin) const |
| return the density in the occ_sb() space | |
| const Ref< OrbitalSpace > & | oso_space () const |
| Returns the space of symmetry-blocked orthogonal SOs (spans the entire space of the basis) | |
| const Ref< OrbitalSpace > & | orbs_sb (SpinCase1 spin=AnySpinCase1) const |
| Return the space of symmetry-blocked MOs of the given spin. | |
| const Ref< OrbitalSpace > & | orbs (SpinCase1 spin=AnySpinCase1) const |
| Return the space of energy-sorted MOs of the given spin. | |
| const Ref< OrbitalSpace > & | occ_sb (SpinCase1 spin=AnySpinCase1) const |
| Return the space of symmery-blocked occupied MOs of the given spin. | |
| const Ref< OrbitalSpace > & | occ_act_sb (SpinCase1 spin=AnySpinCase1) const |
| Return the space of symmery-blocked active occupied MOs of the given spin. | |
| const Ref< OrbitalSpace > & | occ_frz_sb (SpinCase1 spin=AnySpinCase1) const |
| Return the space of symmery-blocked frozen occupied MOs of the given spin. | |
| const Ref< OrbitalSpace > & | occ (SpinCase1 spin=AnySpinCase1) const |
| Return the space of occupied MOs of the given spin. | |
| const Ref< OrbitalSpace > & | occ_act (SpinCase1 spin=AnySpinCase1) const |
| Return the space of active occupied MOs of the given spin. | |
| const Ref< OrbitalSpace > & | occ_frz (SpinCase1 spin=AnySpinCase1) const |
| Return the space of frozen occupied MOs of the given spin. | |
| const Ref< OrbitalSpace > & | uocc_sb (SpinCase1 spin=AnySpinCase1) const |
| Return the space of symmetry-blocked unoccupied (virtual) MOs of the given spin. | |
| const Ref< OrbitalSpace > & | uocc_act_sb (SpinCase1 spin=AnySpinCase1) const |
| Return the space of symmetry-blocked active unoccupied (virtual) MOs of the given spin. | |
| const Ref< OrbitalSpace > & | uocc (SpinCase1 spin=AnySpinCase1) const |
| Return the space of unoccupied (virtual) MOs of the given spin. | |
| const Ref< OrbitalSpace > & | uocc_act (SpinCase1 spin=AnySpinCase1) const |
| Return the space of active unoccupied (virtual) MOs of the given spin. | |
Public Member Functions inherited from sc::SavableState | |
| SavableState & | operator= (const SavableState &) |
| void | save_state (StateOut &) |
| Save the state of the object as specified by the StateOut object. More... | |
| void | save_object_state (StateOut &) |
| This can be used for saving state when the exact type of the object is known for both the save and the restore. More... | |
| virtual void | save_vbase_state (StateOut &) |
| Save the virtual bases for the object. More... | |
Public Member Functions inherited from sc::DescribedClass | |
| DescribedClass (const DescribedClass &) | |
| DescribedClass & | operator= (const DescribedClass &) |
| ClassDesc * | class_desc () const MPQC__NOEXCEPT |
| This returns the unique pointer to the ClassDesc corresponding to the given type_info object. More... | |
| const char * | class_name () const |
| Return the name of the object's exact type. | |
| int | class_version () const |
| Return the version of the class. | |
| Ref< DescribedClass > | ref () |
| Return this object wrapped up in a Ref smart pointer. More... | |
Public Member Functions inherited from sc::RefCount | |
| size_t | identifier () const |
| Return the unique identifier for this object that can be compared for different objects of different types. More... | |
| int | lock_ptr () const |
| Lock this object. | |
| int | unlock_ptr () const |
| Unlock this object. | |
| void | use_locks (bool inVal) |
| start and stop using locks on this object | |
| refcount_t | nreference () const |
| Return the reference count. | |
| refcount_t | reference () |
| Increment the reference count and return the new count. | |
| refcount_t | dereference () |
| Decrement the reference count and return the new count. | |
| int | managed () const |
| void | unmanage () |
| Turn off the reference counting mechanism for this object. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from sc::SavableState | |
| static void | save_state (SavableState *s, StateOut &) |
| static SavableState * | restore_state (StateIn &si) |
| Restores objects saved with save_state. More... | |
| static SavableState * | key_restore_state (StateIn &si, const char *keyword) |
| Like restore_state, but keyword is used to override values while restoring. | |
| static SavableState * | dir_restore_state (StateIn &si, const char *objectname, const char *keyword=0) |
Protected Member Functions inherited from sc::RefWavefunction | |
| bool | use_world_dfinfo () const |
| if true, override density fitting settings of RefWavefunction objects with those of WavefunctionWorld in which they live. More... | |
| RefWavefunction (const Ref< KeyVal > &kv) | |
| A KeyVal constructor is used to generate a RefWavefunction object from a KeyVal object. More... | |
| RefWavefunction (StateIn &) | |
| RefWavefunction (const Ref< WavefunctionWorld > &world, const Ref< GaussianBasisSet > &basis, const Ref< Integral > &integral, bool use_world_df=false) | |
| void | init () const |
| initializes the object | |
| virtual void | reset () |
| calling this will cause the object to be re-initialized next time it is used | |
Protected Member Functions inherited from sc::SavableState | |
| SavableState (const SavableState &) | |
| SavableState (StateIn &) | |
| Each derived class StateIn CTOR handles the restore corresponding to calling save_object_state, save_vbase_state, and save_data_state listed above. More... | |
Protected Member Functions inherited from sc::RefCount | |
| RefCount (const RefCount &) | |
| RefCount & | operator= (const RefCount &) |
Protected Attributes inherited from sc::RefWavefunction | |
| Ref< PopulatedOrbitalSpace > | spinspaces_ [NSpinCases1] |
| bool | force_average_AB_rdm1_ |
| For spin-free algorithms, if this is true, we would set both alpha/beta 1-rdm to the average of them; defaults to false. | |
RefWavefunction specialization for a single-determinant wave function.
A KeyVal constructor is used to generate a SD_RefWavefunction object from a KeyVal object.
This constructor accepts all keywords of the KeyVal constructor of the RefWavefunction class, plus the additional keywords listed below.
| Keyword | Type | Default | Description |
obwfn | OneBodyWavefunction | none | the OneBodyWavefunction object adapted by this wave function. There is no default. |
spin_restricted | boolean | true | If false and obwfn is an open-shell spin-restricted OneBodyWavefunction (
|
nfzc | int | 0 | specifies the total number of doubly-occupied orbitals that will be kept "frozen" in correlated calculations; this keyword is ignored if |
nfzv | int | 0 | specifies the total number of non-occupied orbitals that will be kept "frozen" in correlated calculations; this keyword is ignored if |
vir_basis | GaussianBasisSet | see notes | The basis set that supports the unoccupied orbitals used for expressing the correlated wave function. The default is to use the basis used by obwfn. |
occ_orbitals | string | canonical | The method used to provide the occupied orbitals. This can be |
| sc::SD_RefWavefunction::SD_RefWavefunction | ( | const Ref< WavefunctionWorld > & | world, |
| const Ref< OneBodyWavefunction > & | obwfn, | ||
| bool | spin_restricted = true, |
||
| unsigned int | nfzc = 0, |
||
| unsigned int | nfzv = 0, |
||
| Ref< OrbitalSpace > | vir_space = 0, |
||
| std::string | occ_orbs = std::string("canonical") |
||
| ) |
construct from a OneBodyWavefunction object
| world | The WavefunctionWorld in which this objects lives. |
| obwfn | The OneBodyWavefunction object that specifies the orbitals |
| spin_restricted | If false and obwfn is an open-shell spin-restricted OneBodyWavefunction, will use semicanonical orbitals. The value of this parameter will be ignored for closed-shell and spin-unrestricted open-shell references. |
| nfzc | The number of lowest-energy occupied orbitals to be kept inactive |
| nfzv | The number of highest-energy unoccupied orbitals to be kept inactive |
| vir_space | The space describing the unoccupied orbitals. Default is 0, which means use unoccupied orbitals from obwfn. |
| occ_orbs | The method used to provide the occupied orbitals. This can be "pipek-mezey or "canonical". |
N.B. This will feed the FockBuildRuntime in world with the density matrices from obwfn!
|
inlinevirtual |
Return the accuracy with which the value has been computed.
Implements sc::RefWavefunction.
|
virtual |
Returns the SO core Hamiltonian in the given basis and momentum basis.
The momentum basis is not needed if no Douglas-Kroll correction is being performed.
Implements sc::RefWavefunction.
|
inlinevirtual |
Implements sc::RefWavefunction.
|
inlinevirtual |
Reimplemented from sc::RefWavefunction.
|
inlinevirtual |
Implements sc::RefWavefunction.
|
inlinevirtual |
Implements sc::RefWavefunction.
|
inlinevirtual |
Implements sc::RefWavefunction.
|
inlinevirtual |
Implements sc::RefWavefunction.
|
inlinevirtual |
Implements sc::RefWavefunction.
|
virtual |
purges the data from this object
Reimplemented from sc::RefWavefunction.
|
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::RefWavefunction.