sc::Wavefunction(3)
π¦ sc::Wavefunction(3) π¦
okay bestie, this is the MPQC manual page for sc::Wavefunction(3). It's giving computational chemistry main character energy, and yes, we're covering every single member function. No skips, no cap. π
πΈ NAME πΈ
sc::Wavefunction β A Wavefunction is a MolecularEnergy that utilizies a GaussianBasisSet.
β¨ SYNOPSIS β¨
#include <wfn.h>
Inherits sc::MolecularEnergy.
Inherited by sc::MBPT2, sc::OneBodyWavefunction, and sc::PsiWavefunction.
π Public Member Functions π
Here's the whole roster, bestie β every signature stays exactly as written. No merging, no renaming, no "helpful" little edits. π«Ά
Wavefunction (StateIn &)β theStateInconstructor. The page gives no extra one-liner here.Wavefunction (const Ref< KeyVal > &)β theKeyValconstructor. Its parameters are down in the constructor docs.void save_data_state (StateOut &)β saves the base classes withsave_data_stateand the members in the same order that theStateInCTOR initializes them.double density (const SCVector3 &)β signature only on the page.double density_gradient (const SCVector3 &, double *)β signature only.double natural_orbital (const SCVector3 &r, int iorb)β signature only.double natural_orbital_density (const SCVector3 &r, int orb, double *orbval=0)β signature only.double orbital (const SCVector3 &r, int iorb, const RefSCMatrix &orbs)β signature only.double orbital_density (const SCVector3 &r, int iorb, const RefSCMatrix &orbs, double *orbval=0)β signature only.double charge ()β hands back the charge.virtual int nelectron ()=0β gives you the number of electrons.virtual RefSymmSCMatrix density ()=0β gives you the SO density.virtual RefSymmSCMatrix ao_density ()β gives you the AO density.virtual RefSCMatrix natural_orbitals ()β gives you the natural orbitals.virtual RefDiagSCMatrix natural_density ()β gives you the natural density, and it's a diagonal matrix.virtual int spin_polarized ()=0β returns 1 if the alpha density is not equal to the beta density.virtual RefSymmSCMatrix alpha_density ()β alpha electron densities in the SO basis.virtual RefSymmSCMatrix beta_density ()β beta electron densities in the SO basis.virtual RefSymmSCMatrix alpha_ao_density ()β alpha electron densities in the AO basis.virtual RefSymmSCMatrix beta_ao_density ()β beta electron densities in the AO basis.virtual RefSCMatrix nao (double *atom_charges=0)β returns the ao to nao transformation matrix.virtual RefSymmSCMatrix overlap ()β returns the SO overlap matrix.virtual RefSymmSCMatrix core_hamiltonian ()β returns the SO core Hamiltonian.virtual double nuclear_repulsion_energy ()β returns the nuclear repulsion energy.void nuclear_repulsion_energy_gradient (double *g)β computes the nuclear repulsion gradient.virtual void nuclear_repulsion_energy_gradient (double **g)β computes the nuclear repulsion gradient. Yep, it's an overload β both are here.RefSCDimension ao_dimension ()β atomic orbital dimension.RefSCDimension so_dimension ()β symmetry adapted orbital dimension.RefSCDimension oso_dimension ()β orthogonalized symmetry adapted orbital dimension.Ref< SCMatrixKit > basis_matrixkit ()β matrix kit for AO, SO, orthogonalized SO, and MO dimensioned matrices.Ref< Molecule > molecule () constβ returns theMolecule.Ref< GaussianBasisSet > basis () constβ returns the basis set.Ref< GaussianBasisSet > atom_basis () constβ returns the basis set describing the nuclear charge distributions.const double * atom_basis_coef () constβ returns the coefficients of the nuclear charge distribution basis functions.Ref< Integral > integral ()β returns the integral evaluator.void symmetry_changed ()β call this if you have changed the molecular symmetry of the molecule contained by thisMolecularEnergy.RefSCMatrix so_to_orthog_so ()β returns a matrix which does the default transform from SO's to orthogonal SO's.RefSCMatrix so_to_orthog_so_inverse ()β returns the inverse of the transformation returned byso_to_orthog_so.OverlapOrthog::OrthogMethod orthog_method () constβ returns the orthogonalization method.void set_orthog_method (const OverlapOrthog::OrthogMethod &)β (Re)Sets the orthogonalization method and makes this obsolete.double lindep_tol () constβ returns the tolerance for linear dependencies.void set_lindep_tol (double)β Re(Sets) the tolerance for linear dependencies.void obsolete ()β marks all results as being out of date.void print (std::ostream &=ExEnv::out0()) constβ prints information about the object.
π‘οΈ Protected Member Functions π‘οΈ
double min_orthog_res ()β no extra description on the page.double max_orthog_res ()β same, signature only.void copy_orthog_info (const Ref< Wavefunction > &)β also signature only.
π§ Protected Attributes π§
int debug_β the protected debug attribute.
π Additional Inherited Members π
This heading is in the page, and there are no extra inherited members listed underneath it. That's the whole section, bestie β I'm not hiding anything from you.
π Detailed Description π
A Wavefunction is a MolecularEnergy that utilizies a GaussianBasisSet.
π Constructor & Destructor Documentation π
π«Ά sc::Wavefunction::Wavefunction (const Ref< KeyVal > &)
This is the KeyVal constructor. Here's what the parameters mean:
basisβ specifies aGaussianBasisSetobject. There is no default.integralβ specifies anIntegralobject that computes the two electron integrals. The default is aIntegralV3object.orthog_methodβ this is a string that specifies the orthogonalization method to be used. It can be one onecanonical,gramschmidt, orsymmetric. The default issymmetric.lindep_tolβ the tolerance used to detect linearly dependent basis functions. The precise meaning depends on the orthogonalization method. The default value is1e-8.print_naoβ this specifies a boolean value. If true the natural atomic orbitals will be printed. Not all wavefunction will be able to do this. The default isfalse.print_npaβ this specifies a boolean value. If true the natural population analysis will be printed. Not all wavefunction will be able to do this. The default istrueifprint_naois true, otherwise it isfalse.debugβ this integer can be used to produce output for debugging. The default is0.
π₯ Member Function Documentation π₯
π« virtual double sc::Wavefunction::nuclear_repulsion_energy () [virtual]
Returns the nuclear repulsion energy. This must be used instead of Molecule::nuclear_repulsion_energy() since there may be diffuse atomic charges.
π« virtual void sc::Wavefunction::nuclear_repulsion_energy_gradient (double ** g) [virtual]
Computes the nuclear repulsion gradient. This must be used instead of Molecule::nuclear_repulsion_1der() since there may be diffuse atomic charges. The gradient, g, is first zeroed. Its dimensions are g[natom][3].
π« void sc::Wavefunction::nuclear_repulsion_energy_gradient (double * g)
Computes the nuclear repulsion gradient. This must be used instead of Molecule::nuclear_repulsion_1der() since there may be diffuse atomic charges. The gradient, g, is zeroed and set to x_0, y_0, z_0, x_1, ... .
β»οΈ void sc::Wavefunction::obsolete () [virtual]
Marks all results as being out of date. Any subsequent access to results will cause Compute::compute() to be called.
Reimplemented from sc::Compute.
πΎ void sc::Wavefunction::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::MolecularEnergy.
π¦ RefSCMatrix sc::Wavefunction::so_to_orthog_so ()
Returns a matrix which does the default transform from SO's to orthogonal SO's. This could be either the symmetric or canonical orthogonalization matrix. The row dimension is SO and the column dimension is ortho SO. An operator $O$ in the ortho SO basis is given by $X O X^T$ where $X$ is the return value of this function.
π Author π
Generated automatically by Doxygen for MPQC from the source code.
Okay bestie, that's the whole page. Source/version: Version 2.3.1; date: Sun Oct 4 2020; manual: sc::Wavefunction(3). Stay slay and orthogonalized. π
β¨
π¦ where this page comes from
- ubuntu jammy: libsc-doc 2.3.1-21
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms