•All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Search Results
mpqc::lcao::pbc::PMzLocalizer< Tile, Policy, Mat > Class Template Reference
Collaboration diagram for mpqc::lcao::pbc::PMzLocalizer< Tile, Policy, Mat >:

Documentation
template<typename Tile, typename Policy, typename Mat>
class mpqc::lcao::pbc::PMzLocalizer< Tile, Policy, Mat >
Performs Pipek-Mezey localization.
Public Types | |
using base_type = NonLinearConjGradient< Tile, Policy, detail::PMzOrbitalLocalizationGradient< Tile, Policy, Mat >, Mat > | |
Public Member Functions | |
PMzLocalizer (const KeyVal &kv) | |
const Vector3i & localization_range () const | |
![]() | |
virtual ~NonLinearConjGradient ()=default | |
NonLinearConjGradient (const KeyVal &kv) | |
double inner_product (Mat const &bra_mat, Mat const &ket_mat) const | |
std::vector< Mat > rotate_W (const int nkpts, double mu, std::vector< Mat > const &Hn, std::vector< Mat > const &Wn) const | |
int find_max_idx (Eigen::VectorXd const &list, double const max_value) const | |
Eigen::VectorXd fit_data (Eigen::VectorXd const &mu_list, Eigen::VectorXd const &P_list) const | |
void evaluate_P_on_range (Eigen::VectorXd &mu_list, Eigen::VectorXd &P_list, const double lower_bound, const double upper_bound, const int p, const int nkpts, Eigen::Vector3i const &nk, std::vector< Mat > const &Hn, std::vector< Mat > const &Wn, std::vector< std::vector< Mat >> const &Q_list) const | |
double get_upper_bound (double const &lower_bound, double const &upper_bound, Eigen::VectorXd &mu_list, Eigen::VectorXd &P_list, const int p, const double P_initial, Eigen::Vector3i const &nk, std::vector< Mat > const &Hn, std::vector< Mat > const &Wn, std::vector< std::vector< Mat >> const &Q_list, const int nkpts) const | |
double solve_root (const double &lower_bound, double &upper_bound, const int p, const double P_initial, const int nkpts, Eigen::Vector3i const &nk, std::vector< Mat > const &Hn, std::vector< Mat > const &Wn, std::vector< std::vector< Mat >> const &Q_list) const | |
std::vector< Mat > update_W_fit_functional (const int nkpts, const int p, double const &lower_bound, double &upper_bound, double &P_initial, Eigen::Vector3i const &nk, std::vector< Mat > const &Hn, std::vector< Mat > const &Wn, std::vector< std::vector< Mat >> const &Q_list) const | |
std::vector< Mat > compute (std::vector< Mat > const &C, std::vector< Mat > &C_rotated, Eigen::Vector3i const &nk, int64_t nocc, size_t ncols_of_C_to_skip=0) const final | |
![]() | |
virtual ~zOrbitalLocalizer ()=default | |
Additional Inherited Members | |
![]() | |
NonLinearConjGradient (int max_iter, double target_precision) | |
void init (std::shared_ptr< detail::zOrbitalLocalizationGradient< Mat >> gradient) | |
![]() | |
std::shared_ptr< WavefunctionWorld > wfn_world_ | |
std::shared_ptr< lcao::pbc::gaussian::AOFactory< TileD, Policy > > ao_factory_ | |
double convergence_threshold_ | |
size_t max_iter_ | |
std::string update_factor_ | |
std::string initial_W_ | |
std::shared_ptr< detail::zOrbitalLocalizationGradient< Mat > > gradient_ | |
Member Typedef Documentation
◆ base_type
template<typename Tile , typename Policy , typename Mat >
using mpqc::lcao::pbc::PMzLocalizer< Tile, Policy, Mat >::base_type = NonLinearConjGradient< Tile, Policy, detail::PMzOrbitalLocalizationGradient<Tile, Policy, Mat>, Mat> |
Constructor & Destructor Documentation
◆ PMzLocalizer()
template<typename Tile , typename Policy , typename Mat >
|
inlineexplicit |
KeyVal constructor for PMLocalizer
- Parameters
-
kv the KeyVal object; it will be queried for all keywords of JacobiOrbitalLocalizer and the following additional keywords: Keyword Type Default Description spread_exponent
int 4 an integer specifying the exponent of spread quantity in the spread functional; currently supported values are 2 and 4
Member Function Documentation
◆ localization_range()
template<typename Tile , typename Policy , typename Mat >
|
inline |
The documentation for this class was generated from the following file:
- mpqc/chemistry/qc/lcao/scf/pbc/zorbital_localization.h