|
using | BoolVector = Eigen::Matrix< bool,-1, 1 > |
|
template<Utils::Reference restrictedness>
Function making the pruning of the space.
- Parameters
-
enThresh | Strongly typed double, represents the energy threshold (in hartree). |
ptThresh | Strongly typed double, represents the perturbation theory threshold for the inclusion of a secondary configuration. (in hartree) |
All the configurations lower in energy than enThresh are included, called "primary configurations". The other configurations ("secondary configurations") are tested for interaction with the primary space via perturbation theory: E_u = ^PBF |A_uv|^2 / (E_u - E_v). if E_u, the estimated interaction energy of the secondary configuration u, is higher than the ptThresh, then it is included in the calculation. Otherwise, the estimated interaction is added to the energy differences.
- Returns
- a OrderedInput<restrictedness>.
template<Utils::Reference restrictedness>
Function making the pruning of the space.
- Parameters
-
nRoots | Strongly typed int, represents the number of roots sought after. |
ptThresh | Strongly typed double, represents the perturbation theory threshold for the inclusion of a secondary configuration. (in hartree) |
All the first nRoots configurations are included, called "primary configurations". The other configurations ("secondary configurations") are tested for interaction with the primary space via perturbation theory: E_u = ^PBF |A_uv|^2 / (E_u - E_v). if E_u, the estimated interaction energy of the secondary configuration u, is higher than the ptThresh, then it is included in the calculation. Otherwise, the estimated interaction is added to the energy differences.
- Returns
- a OrderedInput<restrictedness>.
template<Utils::Reference restrictedness>
Prunes a matrix with the already calculated isIncluded_ private member. The matrix will have less-equal rows.
- Precondition
- The energy pruning must already have taken place.
-
matrixToPrune.rows() == isIncluded_.size()
The documentation for this class was generated from the following files:
- src/Sparrow/Sparrow/Implementations/Dftb/TimeDependent/LinearResponse/BasisPruner.h
- src/Sparrow/Sparrow/Implementations/Dftb/TimeDependent/LinearResponse/BasisPruner.cpp