mpqc::lcao::gaussian::Q2Matrix Class Reference
Documentation
Class which holds shell set information for screening.
- Warning
- This holds Q^2 values, where Q are square roots of the integral block norm
Public Types | |
using | norm_op_type = double(Eigen::Map< const RowMatrixXd > const &) |
type of function that computes the norm More... | |
Public Member Functions | |
Q2Matrix ()=default | |
Q2Matrix (Q2Matrix const &)=default | |
Q2Matrix (Q2Matrix &&)=default | |
Q2Matrix & | operator= (Q2Matrix const &)=default |
Q2Matrix & | operator= (Q2Matrix &&)=default |
RowMatrixXd const & | Q2 () const |
RowMatrixXd const | Q2_cluster () const |
const std::shared_ptr< const Basis > & | basis0 () const |
const std::shared_ptr< const Basis > & | basis1 () const |
const libint2::Operator & | oper_type () const |
norm_op_type * | norm_op () const |
madness::World & | world () const |
template<typename E > | |
Q2Matrix (madness::World &world, E const &eng, Basis const &bs, norm_op_type norm_op=detail::l2_norm) | |
template<typename E > | |
Q2Matrix (madness::World &world, E const &eng, Basis const &bs0, Basis const &bs1, norm_op_type norm_op=detail::inf_norm) | |
double | operator() () const |
double | operator() (int64_t a) const |
double | operator() (int64_t a, int64_t b) const |
double | max () const |
same as operator()() More... | |
double | max_in_row (int64_t sh_a) const |
double | value (int64_t sh_a, int64_t sh_b) const |
double | max_cluster () const |
double | max_in_row_cluster (int64_t cl_a) const |
double | value_cluster (int64_t cl_a, int64_t cl_b) const |
bool | is_aux_Q () const |
Return whether this Q is for an auxiliary basis, i.e. is a vector. More... | |
int64_t | f2s (size_t basis_idx, int64_t bf) const |
Member Typedef Documentation
◆ norm_op_type
using mpqc::lcao::gaussian::Q2Matrix::norm_op_type = double(Eigen::Map<const RowMatrixXd> const &) |
type of function that computes the norm
Constructor & Destructor Documentation
◆ Q2Matrix() [1/5]
|
default |
◆ Q2Matrix() [2/5]
|
default |
◆ Q2Matrix() [3/5]
|
default |
◆ Q2Matrix() [4/5]
template<typename E >
|
inline |
Constructs Q2Matrix for the case of screening integrals over shells, e.g. integrals of type (a|Op|b)
- Parameters
-
world is a reference to the madness world to compute the Q matrix construction tasks eng is an integral engine pool used to compute the integral estimates bs is a Basis object norm_func is a function that computes the sqrt(norm(quartet)) of the integrals with signature norm_op_type
◆ Q2Matrix() [5/5]
template<typename E >
|
inline |
Constructs Q2Matrix for the case of screening integrals over shell-pairs, e.g. integrals of type (ab|Op|cd)
- Parameters
-
world is a reference to the madness world to compute the Q matrix construction tasks eng is an integral engine pool used to compute the integral estimates bs0 is a Basis object composed of shells that appear first in shell pairs bs1 is a Basis object composed of shells that appear second in shell pairs norm_func is a function that computes the sqrt(norm(quartet)) of the integrals with signature double (Eigen::Map<const RowMatrixXd> const &)
Member Function Documentation
◆ basis0()
|
inline |
- Returns
- the first basis set
◆ basis1()
|
inline |
- Returns
- the second basis set (nullptr, if not given)
◆ f2s()
int64_t mpqc::lcao::gaussian::Q2Matrix::f2s | ( | size_t | basis_idx, |
int64_t | bf | ||
) | const |
Maps basis function bf
in basis basis_idx
to the shell index
- Parameters
-
[in] basis_idx 0 or 1 [in] bf the basis function index, must be the first index in the shell
- Returns
- the shell index
◆ is_aux_Q()
bool mpqc::lcao::gaussian::Q2Matrix::is_aux_Q | ( | ) | const |
Return whether this Q is for an auxiliary basis, i.e. is a vector.
◆ max()
double mpqc::lcao::gaussian::Q2Matrix::max | ( | ) | const |
same as operator()()
◆ max_cluster()
double mpqc::lcao::gaussian::Q2Matrix::max_cluster | ( | ) | const |
- Returns
- the largest value in any row of Q2_cluster
◆ max_in_row()
double mpqc::lcao::gaussian::Q2Matrix::max_in_row | ( | int64_t | sh_a | ) | const |
- Parameters
-
[in] sh_a the shell index
- Returns
- the largest value in the row of Q corresponding to
sh_a
◆ max_in_row_cluster()
double mpqc::lcao::gaussian::Q2Matrix::max_in_row_cluster | ( | int64_t | cl_a | ) | const |
- Parameters
-
[in] cl_a the cluster index
- Returns
- the largest value in the row of Q2_cluster corresponding to
cl_a
◆ norm_op()
|
inline |
- Returns
- pointer to the norm op function
◆ oper_type()
|
inline |
- Returns
- the operator type
◆ operator()() [1/3]
double mpqc::lcao::gaussian::Q2Matrix::operator() | ( | ) | const |
- Returns
- the largest value in Q
◆ operator()() [2/3]
double mpqc::lcao::gaussian::Q2Matrix::operator() | ( | int64_t | a | ) | const |
- Parameters
-
[in] a the basis function index, must be the first function in its shell
- Returns
- the largest value in the row of Q corresponding to
a
◆ operator()() [3/3]
double mpqc::lcao::gaussian::Q2Matrix::operator() | ( | int64_t | a, |
int64_t | b | ||
) | const |
- Parameters
-
[in] a the basis function index, must be the first function in its shell [in] b the basis function index, must be the first function in its shell
- Returns
- the value of Q for
{a
,b}
◆ operator=() [1/2]
◆ operator=() [2/2]
◆ Q2()
|
inline |
◆ Q2_cluster()
|
inline |
◆ value()
double mpqc::lcao::gaussian::Q2Matrix::value | ( | int64_t | sh_a, |
int64_t | sh_b | ||
) | const |
- Parameters
-
[in] sh_a the shell index [in] sh_b the shell index
- Returns
- the value of Q for
{sh_a
,sh_b}
◆ value_cluster()
double mpqc::lcao::gaussian::Q2Matrix::value_cluster | ( | int64_t | cl_a, |
int64_t | cl_b | ||
) | const |
- Parameters
-
[in] cl_a the cluster index [in] cl_b the cluster index
- Returns
- the value of Q2_cluster for
{cl_a
,cl_b}
◆ world()
|
inline |
- Returns
- the World object with which this was initialized, or the default world
The documentation for this class was generated from the following files:
- mpqc/chemistry/qc/lcao/integrals/screening/schwarz.h
- mpqc/chemistry/qc/lcao/integrals/screening/schwarz.cpp