Implements SQVlScreen screener for shell-sets of (0|12) integrals.
The SQVl estimator is described in Hollman, Schaefer, Valeev, J. Chem. Phys. 142, 154106 (2015), DOI 10.1063/1.4917519 This implementation is reverse-engineered from David Hollman's code in MPQC3 .
- Warning
- SQVl currently doesn't support mixed basis integrals.
-
Due to the nonfactorizable nature of the SQVl, the cluster index skipping uses regular Schwarz.
|
| SQVlScreen ()=default |
|
| SQVlScreen (SchwarzScreen ss) |
|
| SQVlScreen (SchwarzScreen ss, shell_data_accessor_type bs0_data_accessor, shell_data_accessor_type bs1_data_accessor) |
|
| SQVlScreen (SchwarzScreen ss, shell_data_accessor_type bs0_data_accessor, shellpair_data_accessor_type bs12_data_accessor) |
|
double | sq_threshold_squared () const |
|
bool | skip (int64_t a, int64_t b) const override |
|
bool | skip (int64_t a, int64_t c, int64_t d) const override |
|
bool | skip_shell (int64_t a, int64_t b) const override |
|
bool | skip_shell (int64_t a, int64_t c, int64_t d) const override |
|
double | estimate (int64_t a, int64_t b) const override |
| compute estimate of squared norm of a shellset/cluster of integrals More...
|
|
double | estimate (int64_t a, int64_t b, int64_t c) const override |
| compute estimate of squared norm of a shellset/cluster of integrals More...
|
|
double | estimate_shell (int64_t a, int64_t b) const override |
| compute estimate of squared norm of a shellset/cluster of integrals More...
|
|
double | estimate_shell (int64_t a, int64_t b, int64_t c) const override |
| compute estimate of squared norm of a shellset/cluster of integrals More...
|
|
| SchwarzScreen ()=default |
|
| SchwarzScreen (SchwarzScreen const &)=default |
|
| SchwarzScreen (SchwarzScreen &&)=default |
|
SchwarzScreen & | operator= (SchwarzScreen const &)=default |
|
SchwarzScreen & | operator= (SchwarzScreen &&)=default |
|
virtual | ~SchwarzScreen () noexcept=default |
|
| SchwarzScreen (std::shared_ptr< Q2Matrix > Q2bra, std::shared_ptr< Q2Matrix > Q2ket, double thresh, double thresh_cluster) |
| Constructor which requires two Q matrices. More...
|
|
| SchwarzScreen (std::shared_ptr< Q2Matrix > Q2bra, std::shared_ptr< Q2Matrix > Q2ket, double thresh) |
| The ctor version that uses same threshold for shell and cluster skipping. More...
|
|
void | set_skip_threshold (double thresh) override |
|
void | set_skip_threshold_cluster (double thresh) override |
|
Q2Matrix const & | Q2bra () const |
| Returns the screening matrix for the Bra indices. More...
|
|
Q2Matrix const & | Q2ket () const |
| Returns the screening matrix for the Ket indices. More...
|
|
const std::shared_ptr< const Basis > & | basis (std::size_t i=0) const |
|
std::size_t | nbases () const |
|
norm_op_type * | norm_op () const |
|
std::tuple< TA::Tensor< float >, bool > | norm_estimate (madness::World &world, BasisRefVector const &bs_array, TA::Pmap const &pmap, bool replicate=false) const override |
| returns an estimate of shape norms for the given basis vector, in presence of symmetry described by a math::PetiteList object. More...
|
|
virtual double | estimate (int64_t a) const |
| compute estimate of squared norm of a shellset/cluster of integrals More...
|
|
virtual double | estimate (int64_t a, int64_t b, int64_t c, int64_t d) const |
| compute estimate of squared norm of a shellset/cluster of integrals More...
|
|
virtual double | estimate_shell (int64_t a) const |
| compute estimate of squared norm of a shellset/cluster of integrals More...
|
|
virtual double | estimate_shell (int64_t a, int64_t b, int64_t c, int64_t d) const |
| compute estimate of squared norm of a shellset/cluster of integrals More...
|
|
virtual double | estimate_cluster (int64_t a) const |
| compute estimate of squared norm of a shellset/cluster of integrals More...
|
|
virtual double | estimate_cluster (int64_t a, int64_t b) const |
| compute estimate of squared norm of a shellset/cluster of integrals More...
|
|
virtual double | estimate_cluster (int64_t a, int64_t b, int64_t c) const |
| compute estimate of squared norm of a shellset/cluster of integrals More...
|
|
virtual double | estimate_cluster (int64_t a, int64_t b, int64_t c, int64_t d) const |
| compute estimate of squared norm of a shellset/cluster of integrals More...
|
|
bool | skip (int64_t) const override |
|
bool | skip (int64_t a, int64_t b, int64_t c, double D) const override |
|
bool | skip (int64_t, int64_t, int64_t, int64_t) const override |
|
bool | skip (int64_t, int64_t, int64_t, int64_t, double) const override |
|
bool | skip_shell (int64_t) const override |
|
bool | skip_shell (int64_t a, int64_t b, int64_t c, double D) const override |
|
bool | skip_shell (int64_t, int64_t, int64_t, int64_t) const override |
|
bool | skip_shell (int64_t, int64_t, int64_t, int64_t, double D) const override |
|
bool | skip_cluster (int64_t) const override |
|
bool | skip_cluster (int64_t, int64_t) const override |
|
bool | skip_cluster (int64_t, int64_t, int64_t) const override |
|
bool | skip_cluster (int64_t a, int64_t b, int64_t c, double D) const override |
|
bool | skip_cluster (int64_t, int64_t, int64_t, int64_t) const override |
|
bool | skip_cluster (int64_t, int64_t, int64_t, int64_t, double D) const override |
|
| ThresholdedScreener ()=default |
|
| ThresholdedScreener (ThresholdedScreener const &)=default |
|
| ThresholdedScreener (ThresholdedScreener &&)=default |
|
ThresholdedScreener & | operator= (ThresholdedScreener &&)=default |
|
ThresholdedScreener & | operator= (ThresholdedScreener const &)=default |
|
virtual | ~ThresholdedScreener () noexcept=default |
|
| ThresholdedScreener (double thresh, double thresh_cluster) |
|
| ThresholdedScreener (double thresh) |
|
virtual double | skip_threshold () const |
|
virtual double | skip_threshold_cluster () const |
|
| Screener ()=default |
|
| Screener (Screener const &)=default |
|
| Screener (Screener &&)=default |
|
Screener & | operator= (Screener &&)=default |
|
Screener & | operator= (Screener const &)=default |
|
virtual | ~Screener () noexcept=default |
|