MPQC 3.0.0-alpha
Loading...
Searching...
No Matches
soad.h
1//
2// soad.h
3//
4// Copyright (C) 2013 Edward Valeev
5//
6// Author: Edward Valeev <evaleev@vt.edu>
7// Maintainer: EV
8//
9// This file is part of the SC Toolkit.
10//
11// The SC Toolkit is free software; you can redistribute it and/or modify
12// it under the terms of the GNU Library General Public License as published by
13// the Free Software Foundation; either version 2, or (at your option)
14// any later version.
15//
16// The SC Toolkit is distributed in the hope that it will be useful,
17// but WITHOUT ANY WARRANTY; without even the implied warranty of
18// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19// GNU Library General Public License for more details.
20//
21// You should have received a copy of the GNU Library General Public License
22// along with the SC Toolkit; see the file COPYING.LIB. If not, write to
23// the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
24//
25// The U.S. Government is granted a limited license as per AL 91-7.
26//
27
28#ifdef __GNUG__
29#pragma interface
30#endif
31
32#ifndef _mpqc_src_lib_chemistry_qc_lcao_soad_h
33#define _mpqc_src_lib_chemistry_qc_lcao_soad_h
34
35#include <chemistry/qc/wfn/obwfn.h>
36#include <chemistry/qc/lcao/wfnworld.h>
37
38namespace sc {
39
47 public:
48
77
86
95 const Ref<Integral>& intf);
104 const Ref<Integral>& intf);
105
106 // implement (pure) virtual methods of Wavefunction and below
109 double magnetic_moment() const;
111 int value_implemented() const;
112 void compute();
113 void obsolete();
114
115 // implement pure virtual methods of OneBodyWavefunction
121 double occupation(int irrep, int vectornum);
122
123 private:
124 static ClassDesc class_desc_;
125
126 bool relax_;
127 RefDiagSCMatrix occs_;
128
129 //Ref<GaussianBasisSet> minbasis_; //< STO-6G and/or WTBS basis (or other minimal basis)
130 //RefSymmSCMatrix minbasis_density_; //< in AO basis
131
132 };
133
134
135} // end of namespace sc
136
137#endif // end of header guard
138
139
140// Local Variables:
141// mode: c++
142// c-file-style: "CLJ-CONDENSED"
143// End:
This class is used to contain information about classes.
Definition class.h:147
A OneBodyWavefunction is a MolecularEnergy that solves an effective one-body problem.
Definition obwfn.h:44
The RefDiagSCMatrix class is a smart pointer to an DiagSCMatrix specialization.
Definition matrix.h:389
The RefSCMatrix class is a smart pointer to an SCMatrix specialization.
Definition matrix.h:135
The RefSymmSCMatrix class is a smart pointer to an SCSymmSCMatrix specialization.
Definition matrix.h:265
A template class that maintains references counts.
Definition ref.h:361
Restores fundamental and user-defined types from images created with StateOut.
Definition statein.h:79
Serializes fundamental and user-defined types.
Definition stateout.h:71
SuperpositionOfAtomicDensities is a OneBodyWavefunction useful as a guess for other OneBodyWavefuncti...
Definition soad.h:46
static RefSymmSCMatrix guess_minimal_density(const Ref< GaussianBasisSet > &minimal_basis_set, const Ref< Integral > &intf)
This is provided for greater composability.
double magnetic_moment() const
Computes the S (or J) magnetic moment of the target state(s), in units of .
void save_data_state(StateOut &)
Save the base classes (with save_data_state) and the members in the same order that the StateIn CTOR ...
SuperpositionOfAtomicDensities(const Ref< KeyVal > &kv)
A KeyVal constructor is used to generate a SuperpositionOfAtomicDensities object from the input.
int nelectron()
Returns the number of electrons.
double occupation(int irrep, int vectornum)
Returns the occupation.
static Ref< GaussianBasisSet > minimal_basis_set(const Ref< Molecule > &mol)
This is provided for greater composability.
void obsolete()
Marks all results as being out of date.
RefSCMatrix oso_eigenvectors()
eigenvectors (and eigenvalues) obtained by diagonalizing the Fock matrix constructed from the minimal...
RefSymmSCMatrix density()
reports the (idempotent) density corresponding to the orbitals and occupancies reported by oso_eigenv...
int spin_unrestricted()
not spin-unrestricted
static RefSymmSCMatrix guess_density(const Ref< GaussianBasisSet > &basis_set, const Ref< Integral > &intf)
This is provided for greater composability.
RefDiagSCMatrix eigenvalues()
Returns the MO basis eigenvalues.
void compute()
Recompute at least the results that have compute true and are not already computed.
Contains all MPQC code up to version 3.
Definition mpqcin.h:14

Generated at Wed Sep 25 2024 02:45:29 for MPQC 3.0.0-alpha using the documentation package Doxygen 1.12.0.