MPQC
3.0.0-alpha
|
UnionBasisSet constructs a union of two GaussianBasisSet objects. More...
#include <chemistry/qc/basis/union.h>
Public Types | |
enum | Basis12 { Basis1 =1, Basis2 =2, Basis1_and_Basis2 =12 } |
Public Member Functions | |
UnionBasisSet (const Ref< KeyVal > &) | |
The KeyVal constructor. More... | |
UnionBasisSet (StateIn &) | |
UnionBasisSet (const Ref< GaussianBasisSet > &bs1, const Ref< GaussianBasisSet > &bs2) | |
void | save_data_state (StateOut &) |
saves this to so | |
const Ref< GaussianBasisSet > & | basis1 () const |
return basis1 | |
const Ref< GaussianBasisSet > & | basis2 () const |
return basis2 | |
Basis12 | shell_to_basis (int s) const |
reports in which basis shell s of the union basis is found | |
Basis12 | function_to_basis (int f) const |
reports in which basis function f of the union basis is found | |
Public Member Functions inherited from sc::GaussianBasisSet | |
Ref< GaussianBasisSet > | operator+ (const Ref< GaussianBasisSet > &B) |
Uses UnionBasisSet to construct the sum of this and B. More... | |
GaussianBasisSet & | operator= (const GaussianBasisSet &A) |
const std::string & | name () const |
Return the name of the basis set (is nonnull only if keyword "name" was provided) | |
const std::string & | label () const |
Return the label of the basis set. More... | |
Ref< Molecule > | molecule () const |
Return the Molecule object. | |
Ref< SCMatrixKit > | matrixkit () |
Returns the SCMatrixKit that is to be used for AO bases. | |
Ref< SCMatrixKit > | so_matrixkit () |
Returns the SCMatrixKit that is to be used for SO bases. | |
RefSCDimension | basisdim () |
Returns the SCDimension object for the dimension. | |
unsigned int | ncenter () const |
Return the number of centers. | |
unsigned int | nshell () const |
Return the number of shells. | |
int | nshell_on_center (int icenter) const |
Return the number of shells on the given center. | |
int | shell_on_center (int icenter, int shell) const |
Return the overall shell number, given a center and the shell number on that center. More... | |
int | shell_to_center (int ishell) const |
Return the center on which the given shell is located. More... | |
unsigned int | nbasis () const |
Return the number of basis functions. | |
unsigned int | nbasis_on_center (int icenter) const |
Return the number of basis functions on the given center. | |
unsigned int | nprimitive () const |
Return the number of primitive Gaussians (sum of number of primitives for each Shell) | |
bool | has_pure () const |
Return true if basis contains solid harmonics Gaussians. | |
unsigned int | max_nfunction_in_shell () const |
Return the maximum number of functions that any shell has. | |
unsigned int | max_ncartesian_in_shell (int aminc=0) const |
Return the maximum number of Cartesian functions that any shell has. More... | |
unsigned int | max_nprimitive_in_shell () const |
Return the maximum number of primitive Gaussian that any shell has. | |
unsigned int | max_angular_momentum () const |
Return the highest angular momentum in any shell. | |
unsigned int | max_ncontraction () const |
Return the maximum number of Gaussians in a contraction in any shell. | |
unsigned int | max_am_for_contraction (int con) const |
Return the maximum angular momentum found in the given contraction number for any shell. More... | |
unsigned int | max_cartesian () const |
Return the maximum number of Cartesian functions in any shell. | |
int | shell_to_function (int i) const |
Return the number of the first function in the given shell. | |
int | function_to_shell (int i) const |
Return the shell to which the given function belongs. | |
const Shell & | operator() (int i) const |
Return a reference to Shell number i. | |
Shell & | operator() (int i) |
Return a reference to Shell number i. | |
const Shell & | operator[] (int i) const |
Return a reference to Shell number i. | |
Shell & | operator[] (int i) |
Return a reference to Shell number i. | |
const Shell & | shell (int i) const |
Return a reference to Shell number i. | |
Shell & | shell (int i) |
Return a reference to Shell number i. | |
const Shell & | operator() (int icenter, int ishell) const |
Return a reference to Shell number ishell on center icenter. | |
Shell & | operator() (int icenter, int ishell) |
Return a reference to Shell number ishell on center icenter. | |
const Shell & | shell (int i, int j) const |
Return a reference to Shell number j on center i. | |
Shell & | shell (int i, int j) |
Return a reference to Shell number j on center i. | |
int | find (int C, const GaussianShell &S) const |
Return the absolute index of shell S located at center C in this basis. If the shell is not found, returns -1. | |
double | r (int icenter, int xyz) const |
The location of center icenter. More... | |
int | values (const SCVector3 &r, ValueData *, double *basis_values) const |
Compute the values for this basis set at position r. More... | |
int | grad_values (const SCVector3 &r, ValueData *, double *g_values, double *basis_values=0) const |
Like values(...), but computes gradients of the basis function values, too. More... | |
int | hessian_values (const SCVector3 &r, ValueData *, double *h_values, double *g_values=0, double *basis_values=0) const |
Like values(...), but computes first and second derivatives of the basis function values, too. More... | |
int | shell_values (const SCVector3 &r, int sh, ValueData *, double *basis_values) const |
Compute the values for the given shell functions at position r. More... | |
int | grad_shell_values (const SCVector3 &r, int sh, ValueData *, double *g_values, double *basis_values=0) const |
Like values(...), but computes gradients of the shell function values, too. More... | |
int | hessian_shell_values (const SCVector3 &r, int sh, ValueData *, double *h_values, double *g_values=0, double *basis_values=0) const |
Like values(...), but computes first and second derivatives of the shell function values, too. More... | |
int | equiv (const Ref< GaussianBasisSet > &b) |
Returns true if this and the argument are equivalent. | |
void | print_brief (std::ostream &=ExEnv::out0()) const |
Print a brief description of the basis set. | |
virtual void | print (std::ostream &=ExEnv::out0()) const |
Print a detailed description of the basis set. | |
GaussianBasisSet (StateIn &si) | |
restores this from si | |
GaussianBasisSet (const Ref< KeyVal > &) | |
The KeyVal constructor. More... | |
GaussianBasisSet (const Ref< Molecule > &molecule, const std::vector< GaussianShell > &shells, const std::vector< unsigned int > &shell_to_center, std::string name=std::string(), std::string label=std::string()) | |
Constructs GaussianBasisSet from a Molecule and a vector of GaussianShells. More... | |
GaussianBasisSet (const GaussianBasisSet &) | |
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::GaussianBasisSet | |
static Ref< GaussianBasisSet > | unit () |
This will produce a GaussianBasisSet object composed of a a single "unit" basis function, i.e. More... | |
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::GaussianBasisSet | |
virtual void | set_matrixkit (const Ref< SCMatrixKit > &) |
void | init (std::string name, std::string label, const Ref< Molecule > &molecule, const std::vector< Shell > &shell) |
Initializes everything. More... | |
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::GaussianBasisSet | |
Ref< Molecule > | molecule_ |
UnionBasisSet constructs a union of two GaussianBasisSet objects.
The union basis on atom i includes the basis functions of A centered on i followed by the basis functions of B centered on i. Duplicate basis functions/shells are eliminated. The Molecule object for the two basis sets must be identical.
The KeyVal constructor.
It does not call the basis class KeyVal constructor.
basis1
basis2
The second GaussianBasisSet object in the union.