ergo
|
#include <Interval.h>
Public Member Functions | |
Interval (Treal low=1, Treal upp=-1) | |
bool | empty () const |
void | intersect (Interval const &other) |
void | intersect_always_non_empty (Interval const &other) |
Treal | length () const |
Returns the length of the interval. More... | |
Treal | midPoint () const |
bool | cover (Treal const value) const |
bool | overlap (Interval const &other) const |
void | increase (Treal const value) |
Increases interval with value in both directions. More... | |
void | decrease (Treal const value) |
Treal | low () const |
Treal | upp () const |
Interval< Treal > | operator* (Treal const &value) const |
Interval< Treal > | operator- (Interval< Treal > const &other) const |
Interval< Treal > | operator+ (Interval< Treal > const &other) const |
Interval< Treal > | operator/ (Treal const &value) const |
Interval< Treal > | operator- (Treal const &value) const |
Interval< Treal > | operator+ (Treal const &value) const |
void | puriStep (int poly) |
void | invPuriStep (int poly) |
void | puriStep (int poly, Treal alpha) |
void | invPuriStep (int poly, Treal alpha) |
Static Public Member Functions | |
static Interval | intersect (Interval const &A, Interval const &B) |
Protected Attributes | |
Treal | lowerBound |
Treal | upperBound |
|
inlineexplicit |
Referenced by mat::Interval< ergo_real >::intersect().
|
inline |
|
inline |
|
inline |
Referenced by PurificationGeneral< MatrixType >::compute_X(), mat::Interval< ergo_real >::cover(), per::Perturbation< Treal, Tmatrix, Tvector >::dryRun(), mat::Interval< ergo_real >::increase(), mat::Interval< ergo_real >::intersect(), mat::Interval< ergo_real >::intersect_always_non_empty(), mat::Interval< ergo_real >::length(), main(), PurificationGeneral< MatrixType >::map_bounds_to_0_1(), mat::Interval< ergo_real >::midPoint(), mat::operator<<(), mat::Interval< ergo_real >::overlap(), Purification_sp2< MatrixType >::purify_bounds(), Purification_sp2acc< MatrixType >::purify_bounds(), and mat::sqrtInt().
|
inline |
Increases interval with value in both directions.
Useful for error control.
Referenced by SCF_restricted::get_2e_part_and_energy(), and GetDensFromFock::get_dens_from_fock_sparse().
|
inlinestatic |
Referenced by mat::Interval< ergo_real >::intersect_always_non_empty(), mat::Interval< ergo_real >::invPuriStep(), PurificationGeneral< MatrixType >::map_bounds_to_0_1(), mat::Interval< ergo_real >::overlap(), Purification_sp2< MatrixType >::purify_bounds(), Purification_sp2acc< MatrixType >::purify_bounds(), and mat::Interval< ergo_real >::puriStep().
|
inline |
|
inline |
void mat::Interval< Treal >::invPuriStep | ( | int | poly | ) |
Referenced by mat::Interval< ergo_real >::operator+().
void mat::Interval< Treal >::invPuriStep | ( | int | poly, |
Treal | alpha | ||
) |
|
inline |
Returns the length of the interval.
0 if empty.
Referenced by per::Perturbation< Treal, Tmatrix, Tvector >::dryRun(), mat::MatrixTriangular< Treal, Tmatrix >::eucl(), mat::MatrixGeneral< Treal, Tmatrix >::eucl(), mat::MatrixSymmetric< Treal, Tmatrix >::euclDiffIfSmall(), mat::EuclTruncationSymm< Tmatrix, Treal >::euclIfSmall(), mat::EuclTruncationSymmWithZ< Tmatrix, TmatrixZ, Treal >::euclIfSmall(), and mat::EuclTruncationCongrTransMeasure< Tmatrix, TmatrixB, Treal >::euclIfSmall().
|
inline |
Referenced by PurificationGeneral< MatrixType >::compute_eigenvectors_without_diagonalization_on_F(), PurificationGeneral< MatrixType >::compute_X(), GetDensFromFock::create_checkpoint(), SCF_restricted::disturb_fock_matrix(), per::Perturbation< Treal, Tmatrix, Tvector >::dryRun(), PurificationGeneral< MatrixType >::eigenvalue_bounds_estimation(), PurificationGeneral< MatrixType >::estimate_homo_lumo(), Purification_sp2< MatrixType >::estimate_number_of_iterations(), Purification_sp2acc< MatrixType >::estimate_number_of_iterations(), mat::MatrixTriangular< Treal, Tmatrix >::eucl(), mat::MatrixGeneral< Treal, Tmatrix >::eucl(), PurificationGeneral< MatrixType >::find_eig_gaps_every_iter(), PurificationGeneral< MatrixType >::find_shifts_every_iter(), SCF_restricted::get_2e_part_and_energy(), GetDensFromFock::get_dens_from_fock_sparse(), PurificationGeneral< MatrixType >::get_eigenvalue_estimates(), PurificationGeneral< MatrixType >::get_interval_with_lambda(), PurificationGeneral< MatrixType >::get_spectrum_bounds(), PurificationGeneral< MatrixType >::map_bounds_to_0_1(), mat::operator<<(), PurificationGeneral< MatrixType >::prepare_to_purification(), PurificationGeneral< MatrixType >::purification_process(), Purification_sp2< MatrixType >::purify_bounds(), Purification_sp2acc< MatrixType >::purify_bounds(), Purification_sp2acc< MatrixType >::set_poly(), and mat::sqrtInt().
|
inline |
Referenced by per::Perturbation< Treal, Tmatrix, Tvector >::dryRun(), mat::MatrixTriangular< Treal, Tmatrix >::eucl(), mat::MatrixGeneral< Treal, Tmatrix >::eucl(), mat::MatrixSymmetric< Treal, Tmatrix >::eucl_diff(), mat::MatrixSymmetric< Treal, Tmatrix >::euclDiffIfSmall(), mat::EuclTruncationSymm< Tmatrix, Treal >::euclIfSmall(), mat::EuclTruncationSymmWithZ< Tmatrix, TmatrixZ, Treal >::euclIfSmall(), mat::EuclTruncationCongrTransMeasure< Tmatrix, TmatrixB, Treal >::euclIfSmall(), and mat::Interval< ergo_real >::puriStep().
|
inline |
Referenced by mat::Interval< ergo_real >::upp().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
void mat::Interval< Treal >::puriStep | ( | int | poly | ) |
Referenced by mat::Interval< ergo_real >::operator+().
void mat::Interval< Treal >::puriStep | ( | int | poly, |
Treal | alpha | ||
) |
|
inline |
Referenced by PurificationGeneral< MatrixType >::check_standard_stopping_criterion(), PurificationGeneral< MatrixType >::compute_eigenvectors_without_diagonalization_on_F(), PurificationGeneral< MatrixType >::compute_X(), GetDensFromFock::create_checkpoint(), SCF_restricted::disturb_fock_matrix(), per::Perturbation< Treal, Tmatrix, Tvector >::dryRun(), PurificationGeneral< MatrixType >::eigenvalue_bounds_estimation(), PurificationGeneral< MatrixType >::estimate_homo_lumo(), Purification_sp2< MatrixType >::estimate_number_of_iterations(), Purification_sp2acc< MatrixType >::estimate_number_of_iterations(), PurificationGeneral< MatrixType >::find_eig_gaps_every_iter(), PurificationGeneral< MatrixType >::find_shifts_every_iter(), SCF_restricted::get_2e_part_and_energy(), GetDensFromFock::get_dens_from_fock_sparse(), PurificationGeneral< MatrixType >::get_eigenvalue_estimates(), PurificationGeneral< MatrixType >::get_interval_with_lambda(), PurificationGeneral< MatrixType >::get_iterations_for_lumo_and_homo(), PurificationGeneral< MatrixType >::get_spectrum_bounds(), PurificationGeneral< MatrixType >::map_bounds_to_0_1(), mat::operator<<(), PurificationGeneral< MatrixType >::prepare_to_purification(), PurificationGeneral< MatrixType >::purification_process(), Purification_sp2< MatrixType >::purify_bounds(), Purification_sp2acc< MatrixType >::purify_bounds(), mat::EuclTruncationBase< Tmatrix, Treal >::run(), Purification_sp2acc< MatrixType >::set_poly(), and mat::sqrtInt().
|
protected |
Referenced by mat::Interval< ergo_real >::cover(), mat::Interval< ergo_real >::decrease(), mat::Interval< ergo_real >::empty(), mat::Interval< ergo_real >::increase(), mat::Interval< ergo_real >::intersect(), mat::Interval< ergo_real >::intersect_always_non_empty(), mat::Interval< ergo_real >::invPuriStep(), mat::Interval< ergo_real >::length(), mat::Interval< ergo_real >::low(), mat::Interval< ergo_real >::midPoint(), mat::Interval< ergo_real >::operator*(), mat::Interval< ergo_real >::operator+(), mat::Interval< ergo_real >::operator-(), mat::Interval< ergo_real >::operator/(), mat::Interval< ergo_real >::puriStep(), and mat::Interval< ergo_real >::upp().
|
protected |
Referenced by mat::Interval< ergo_real >::decrease(), mat::Interval< ergo_real >::empty(), mat::Interval< ergo_real >::increase(), mat::Interval< ergo_real >::intersect(), mat::Interval< ergo_real >::intersect_always_non_empty(), mat::Interval< ergo_real >::invPuriStep(), mat::Interval< ergo_real >::length(), mat::Interval< ergo_real >::midPoint(), mat::Interval< ergo_real >::operator*(), mat::Interval< ergo_real >::operator+(), mat::Interval< ergo_real >::operator-(), mat::Interval< ergo_real >::operator/(), mat::Interval< ergo_real >::puriStep(), and mat::Interval< ergo_real >::upp().