MPQC  3.0.0-alpha
mpqc.Chemistry.ElectronicStructure.OneBody

Modules

 mpqc.Chemistry.ElectronicStructure.OneBody.HF
 
 mpqc.Chemistry.ElectronicStructure.OneBody.HF.CADF
 

Classes

class  sc::PopulatedOrbitalSpace
 PopulatedOrbitalSpace is an OrbitalSpace populated with a density. More...
 
class  sc::RefWavefunction
 RefWavefunction represents the reference wave function (or, more generally, a state) used as a starting point for the introduction of electron correlation. More...
 
class  sc::SD_RefWavefunction
 RefWavefunction specialization for a single-determinant wave function. More...
 
class  sc::Extern_RefWavefunction
 RefWavefunction specialization that is not an adaptor to a Wavefunction object. More...
 
struct  sc::RefWavefunctionFactory
 This factory produces the RefWavefunction that corresponds to the type of ref object. More...
 
class  sc::ExtendedHuckelWfn
 This computes the extended Huckel energy and wavefunction. More...
 
class  sc::FEMO
 Describes a simple the free-electron molecular orbital model that can be used to guess the lowest-energy orbital configuration. More...
 
class  sc::HundsFEMOSeeker
 Finds the FEMO configuration that corresponds to the maximum multiplicity. More...
 
class  sc::OneBodyWavefunction
 A OneBodyWavefunction is a MolecularEnergy that solves an effective one-body problem. More...
 
class  sc::HCoreWfn
 This is useful as an initial guess for other one body wavefunctions. Produces high-spin electron configurations. More...
 
class  sc::DecoratedOrbital< Attributes >
 Orbital = index + attributes. More...
 
struct  sc::MolecularOrbitalAttributes
 MO is irrep, energy, occupation number. More...
 
struct  sc::MolecularSpinOrbitalAttributes
 Same as MolecularOrbitalAttributes, plus spin. More...
 
struct  sc::ParticleHoleOrbitalAttributes
 Describes particle-hole attributes of orbitals. More...
 
struct  sc::SymmetryMOOrder
 order by symmetry first, then by energy, then by occ num More...
 
struct  sc::EnergyMOOrder< EnergyCompare >
 order by energy first, then by symmetry. EnergyCompare specifies the weak strict ordering of orbitals wrt energy More...
 
struct  sc::CorrelatedMOOrder
 order by occupation first, then by symmetry, then by energy More...
 
struct  sc::CorrelatedSpinMOOrder
 order by occupation first, then by spin, then by symmetry, then by energy More...
 
struct  sc::MolecularOrbitalMask< Attribute, AttributeContainer, Compare >
 mask out first n MOs in the order defined by Compare. By default mask the n lowest-energy MOs More...
 
class  sc::OrbitalSpace
 Class OrbitalSpace describes a range of orbitals that are linear combinations of Gaussian basis functions (e.g. More...
 
class  sc::CannotConstructMap
 
class  sc::ParsedOrbitalSpaceKey
 Parses keys of OrbitalSpace. More...
 
class  sc::ParsedTransformedOrbitalSpaceKey
 Parses keys of a "transformed" OrbitalSpace. More...
 
class  sc::OrderedOrbitalSpace< Order >
 This is an OrbitalSpace ordered according to the Order type. More...
 
class  sc::OrderedSpinOrbitalSpace< Order >
 Same as OrderedOrbitalSpace, except for spin-orbitals. More...
 
class  sc::MaskedOrbitalSpace
 This is an OrbitalSpace produced from an existing one by masking out some Orbitals. More...
 
class  sc::NonblockedOrbitalSpace
 This is an OrbitalSpace produced from an existing one by getting rid of the blocking. More...
 
class  sc::AtomicOrbitalSpace
 This is an OrbitalSpace describing a set of atomic orbitals. More...
 
class  sc::OrbitalSpaceUnion
 This is a union of two OrbitalSpaces s1 and s2. More...
 
class  sc::EmptyOrbitalSpace
 This is an empty OrbitalSpace. More...
 

Typedefs

typedef DecoratedOrbital< unsigned int > sc::BlockedOrbital
 Orbital in a blocked space.
 
typedef DecoratedOrbital< MolecularOrbitalAttributessc::MolecularOrbital
 
typedef DecoratedOrbital< MolecularSpinOrbitalAttributessc::MolecularSpinOrbital
 
typedef std::vector< unsigned int > sc::MOIndexMap
 
typedef std::vector< std::pair< unsigned int, double > > sc::SparseMOIndexMap
 
typedef Registry< std::string, Ref< OrbitalSpace >, detail::NonsingletonCreationPolicy, std::equal_to< std::string >, RefObjectEqual< OrbitalSpace > > sc::OrbitalSpaceRegistry
 registry of globally-known OrbitalSpace objects
 
typedef Registry< Ref< GaussianBasisSet >, Ref< OrbitalSpace >, detail::NonsingletonCreationPolicy, std::equal_to< Ref< GaussianBasisSet > >, RefObjectEqual< OrbitalSpace > > sc::AOSpaceRegistry
 registry of globally-known OrbitalSpace objects that describe AO basis spaces
 

Functions

Ref< OrbitalSpacesc::compute_canonvir_space (const Ref< FockBuildRuntime > &fb_rtime, const Ref< OrbitalSpace > &A, SpinCase1 spin)
 canonicalize A
 
void sc::add_ao_space (const Ref< GaussianBasisSet > &bs, const Ref< Integral > &ints, const Ref< AOSpaceRegistry > &aoreg, const Ref< OrbitalSpaceRegistry > oreg)
 construct and add an AO space to aoreg and oreg
 
void sc::remove_ao_space (const Ref< GaussianBasisSet > &bs, const Ref< AOSpaceRegistry > &aoreg, const Ref< OrbitalSpaceRegistry > oreg)
 undo the effect of add_ao_space()
 
bool sc::operator== (const OrbitalSpace &space1, const OrbitalSpace &space2)
 
MOIndexMap sc::operator<< (const OrbitalSpace &space2, const OrbitalSpace &space1)
 s2<<s1 returns map from s1 to s2. More...
 
std::vector< int > sc::map (const OrbitalSpace &space2, const OrbitalSpace &space1, bool expect_same_bases=true)
 same as operator<<(), except if some orbital in space1 is not contained in space2, map it to -1. More...
 
SparseMOIndexMap sc::sparsemap (const OrbitalSpace &space2, const OrbitalSpace &space1, double hardzero=1e-12)
 sparsemap(s2,s1) returns a sparse one-to-one map from s1 to s2. More...
 
RefSCMatrix sc::transform (const OrbitalSpace &space2, const OrbitalSpace &space1, const Ref< SCMatrixKit > &kit=SCMatrixKit::default_matrixkit())
 transform(s2,s1) returns matrix that transforms s1 to s2. More...
 
RefSCMatrix sc::overlap (const OrbitalSpace &space2, const OrbitalSpace &space1, const Ref< SCMatrixKit > &kit=SCMatrixKit::default_matrixkit())
 overlap(s2,s1) returns the overlap matrix between s2 and s1. More...
 
bool sc::in (const OrbitalSpace &s1, const OrbitalSpace &s2)
 in(s1,s2) returns true if s1 is in s2
 
std::pair< std::string, Ref< OrbitalSpace > > sc::make_keyspace_pair (const Ref< OrbitalSpace > &space, SpinCase1 spin=AnySpinCase1)
 helper function to form a key/space pair from a OrbitalSpace
 
std::string sc::new_unique_key (const Ref< OrbitalSpaceRegistry > &oreg)
 helper function to create a key basename (i.e. More...
 

Detailed Description

Classes/functions related to one-body models of electronic structure.

Function Documentation

◆ map()

std::vector<int> sc::map ( const OrbitalSpace space2,
const OrbitalSpace space1,
bool  expect_same_bases = true 
)

same as operator<<(), except if some orbital in space1 is not contained in space2, map it to -1.

Parameters
expect_same_basessetting to true will enforce space1.basis() == space2.basis()

◆ new_unique_key()

std::string sc::new_unique_key ( const Ref< OrbitalSpaceRegistry > &  oreg)

helper function to create a key basename (i.e.

without the spin label) that is guaranteed for any spin to not be found in this OrbitalSpaceRegistry

◆ operator<<()

MOIndexMap sc::operator<< ( const OrbitalSpace space2,
const OrbitalSpace space1 
)

s2<<s1 returns map from s1 to s2.

Throws CannotConstructMap if map cannot be constructed. Map can be constructed if and only if: 1) s1.basis() == s2.basis() 2) s1.integral() == s2.integral() 2) s1.rank() <= s2.rank() 3) for every MO in s1 there is an identical (for now, including phase) MO in s2

◆ overlap()

RefSCMatrix sc::overlap ( const OrbitalSpace space2,
const OrbitalSpace space1,
const Ref< SCMatrixKit > &  kit = SCMatrixKit::default_matrixkit() 
)

overlap(s2,s1) returns the overlap matrix between s2 and s1.

It can be computed if 1) s1.integral() is compatible with s2.integral() The matrix has dimensions of s2.coefs().coldim() and s1.coefs().coldim() and is allocated using kit. Throws if the overlap cannot be computed.

Referenced by sc::SingleReference_R12Intermediates< T >::xy().

◆ sparsemap()

SparseMOIndexMap sc::sparsemap ( const OrbitalSpace space2,
const OrbitalSpace space1,
double  hardzero = 1e-12 
)

sparsemap(s2,s1) returns a sparse one-to-one map from s1 to s2.

Throws CannotConstructMap if map cannot be constructed. Map can be constructed if and only if: 1) s1.basis() == s2.basis() 2) s1.integral() == s2.integral() 2) s1.rank() <= s2.rank() 3) for every MO in s1 there is an MO in s2 that differs by at most the sign.

◆ transform()

RefSCMatrix sc::transform ( const OrbitalSpace space2,
const OrbitalSpace space1,
const Ref< SCMatrixKit > &  kit = SCMatrixKit::default_matrixkit() 
)

transform(s2,s1) returns matrix that transforms s1 to s2.

Throws CannotConstructMap if the transform cannot be constructed. The transform can only be constructed if 1) s1.integral() == s2.integral() 2) s1.rank() >= s2.rank() 3) overlap of s1.basis() and s2.basis() is not zero

the returned matrix has dimensions of s2.coefs().coldim() and s1.coefs().coldim() and is allocated using kit.

Referenced by sc::TwoBodyFockMatrixBuilder< bra_eq_ket >::TwoBodyFockMatrixBuilder().


Generated at Sun Jan 26 2020 23:24:02 for MPQC 3.0.0-alpha using the documentation package Doxygen 1.8.16.