|
MPQC
3.0.0-alpha
|
The FockBuild class works with the FockBuildThread class to generate Fock matrices for both closed shell and open shell methods. More...
#include <chemistry/qc/lcao/fockbuild.h>
Public Member Functions | |
| FockBuild (const Ref< FockDistribution > &fockdist, const Ref< FockContribution > &contrib, bool prefetch_blocks, const Ref< GaussianBasisSet > &b_f1, const Ref< GaussianBasisSet > &b_f2=0, const Ref< GaussianBasisSet > &b_p=0, const Ref< MessageGrp > &msg=MessageGrp::get_default_messagegrp(), const Ref< ThreadGrp > &thr=ThreadGrp::get_default_threadgrp(), const Ref< Integral > &integral=Integral::get_default_integral()) | |
| Create a FockBuild object using b_f1 as the Fock matrix row dimension basis, b_f2 as the Fock matrix column dimension basis, and b_p as the density matrix dimensions. More... | |
| void | build () |
| Contruct the Fock matrices. | |
| const Ref< FockContribution > & | contrib () const |
| void | set_accuracy (double acc) |
| void | set_compute_J (bool compute_J) |
| void | set_compute_K (bool compute_K) |
| void | set_coef_K (double coef_K) |
| bool | compute_J () const |
| bool | compute_K () const |
| double | coef_K () const |
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 | |
Protected Member Functions inherited from sc::RefCount | |
| RefCount (const RefCount &) | |
| RefCount & | operator= (const RefCount &) |
The FockBuild class works with the FockBuildThread class to generate Fock matrices for both closed shell and open shell methods.
It uses a helper class, FockContribution, to do the work of forming contributions from the density matrices and integrals and placing these into the partial Fock matrices (the G matrices).
| sc::FockBuild::FockBuild | ( | const Ref< FockDistribution > & | fockdist, |
| const Ref< FockContribution > & | contrib, | ||
| bool | prefetch_blocks, | ||
| const Ref< GaussianBasisSet > & | b_f1, | ||
| const Ref< GaussianBasisSet > & | b_f2 = 0, |
||
| const Ref< GaussianBasisSet > & | b_p = 0, |
||
| const Ref< MessageGrp > & | msg = MessageGrp::get_default_messagegrp(), |
||
| const Ref< ThreadGrp > & | thr = ThreadGrp::get_default_threadgrp(), |
||
| const Ref< Integral > & | integral = Integral::get_default_integral() |
||
| ) |
Create a FockBuild object using b_f1 as the Fock matrix row dimension basis, b_f2 as the Fock matrix column dimension basis, and b_p as the density matrix dimensions.
If b_f2 is not given, then b_f1 is used. If b_p1 is not given, then b_f1 is used. If b_p2 is not given, then b_p1 is used. If the following parameters are not given, then the global defaults are used: The msg parameter specifies the MessageGrp, thr gives the ThreadGrp, and integral gives the Integral.