•All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Search Results
mpqc::lcao::pbc Namespace Reference
import the gaussian::utility namespace into the pbc::gaussian namespace More...
Namespaces | |
detail | |
gaussian | |
Classes | |
class AOFactory | |
implementation base for AOFactory More... | |
class CadfKBuilder | |
class CadfKzRHF | |
CadfKzRHF uses four-center-J for coulomb and CADF-K for exchange. More... | |
class DfJBuilder | |
Computes Coulomb matrix using multipole-conserved DF-J approach. More... | |
class DfJCadfKzRHF | |
DfJCadfKzRHF uses DF-J for coulomb and CADF-K for exchange. More... | |
class DfJzRHF | |
DfJzRHF class uses multipole-conserving density fitting for Coulomb and 4-center-K for exchange. More... | |
class DirectFockBuilder | |
class FockBuilder | |
class FockBuilderImpl | |
pbc::MaJFockBuilder is an implementation of pbc::FockBuilder with multipole-accelerated 4-center Coulomb and 4-center exchange. For Coulomb, multipole approximation is used in Crystal Far Field. The builders for near-field Coulomb and exchange are customizable. More... | |
class GammaLCAOFactory | |
LCAO Integral Factory specialized for gamma-point PBC. More... | |
class MaDfJCadfKzRHF | |
MaDfJCadfKzRHF uses MA-DF-J for coulomb and CADF-K for exchange. More... | |
class MaDfJzRHF | |
MaDfJzRHF uses MA-DF-J for coulomb and four-center-K for exchange. More... | |
class MaJCadfKzRHF | |
MAJCADFK uses four-center-J (CNF) and MA (CFF) for Coulomb and CADF-K for exchange. More... | |
class MaJzRHF | |
MaJzRHF uses MA for Coulomb CFF and four-center-JK for Coulomb and exchange CNF. More... | |
class NonLinearConjGradient | |
Implements non-linear conjugate gradient for a given gradient expression. More... | |
class PMzLocalizer | |
Performs Pipek-Mezey localization. More... | |
class ReferenceFockBuilder | |
class SD | |
Abstract single-determinant wavefunction under open and periodic boundary conditions. More... | |
class ThreeCenterContractionBuilder | |
class TwoCenterBuilder | |
class zRHF | |
zRHF class uses reference Fock builder. More... | |
Typedefs | |
template<typename Tile , typename Policy > | |
using MaJFockBuilder = FockBuilderImpl< Tile, Policy > | |
template<typename Tile , typename Policy > | |
using MaDfJFockBuilder = FockBuilderImpl< Tile, Policy, DfJBuilder< Tile, Policy, pbc::gaussian::AOFactory< Tile, Policy > >, DirectFockBuilder< Tile, Policy > > | |
template<typename Tile , typename Policy > | |
using MaDfJCadfKFockBuilder = FockBuilderImpl< Tile, Policy, DfJBuilder< Tile, Policy, pbc::gaussian::AOFactory< Tile, Policy > >, CadfKBuilder< Tile, Policy, pbc::gaussian::AOFactory< Tile, Policy > >> | |
template<typename Tile , typename Policy > | |
using DfJFockBuilder = FockBuilderImpl< Tile, Policy, DfJBuilder< Tile, Policy, pbc::gaussian::AOFactory< Tile, Policy > >, DirectFockBuilder< Tile, Policy >, void > | |
template<typename Tile , typename Policy > | |
using DfJCadfKFockBuilder = FockBuilderImpl< Tile, Policy, DfJBuilder< Tile, Policy, pbc::gaussian::AOFactory< Tile, Policy > >, CadfKBuilder< Tile, Policy, pbc::gaussian::AOFactory< Tile, Policy > >, void > | |
template<typename Tile , typename Policy > | |
using CadfKFockBuilder = FockBuilderImpl< Tile, Policy, DirectFockBuilder< Tile, Policy >, CadfKBuilder< Tile, Policy, pbc::gaussian::AOFactory< Tile, Policy > >, void > | |
using TileD = TA::TensorD | |
using MatrixzVec = std::vector< MatrixZ > | |
using MatrixdVec = std::vector< RowMatrixXd > | |
using VectorzVec = std::vector< VectorZ > | |
using VectordVec = std::vector< VectorD > | |
Functions | |
template<typename AOFactory_ > | |
std::shared_ptr< AOFactory_ > ao_factory_from_keyval (const KeyVal &kv) | |
template std::shared_ptr< AOFactory<> > ao_factory_from_keyval< AOFactory<> > (const KeyVal &kv) | |
template<typename LCAOFactory_ > | |
std::shared_ptr< LCAOFactory_ > gamma_lcao_factory_from_keyval (const KeyVal &kv) | |
template std::shared_ptr< GammaLCAOFactory<> > gamma_lcao_factory_from_keyval< GammaLCAOFactory<> > (const KeyVal &kv) | |
auto basis_registry (const SD &sd) | |
template<typename... Args> | |
auto initial_guess (const KeyVal &kv, pbc::gaussian::AOFactory< Args... > &ao_factory) | |
void chop_phase (MatrixZ &mat, double tolerance=std::numeric_limits< double >::epsilon()) | |
template<typename TileZ , typename Tile , typename Policy > | |
TA::DistArray< TileZ, Policy > transform_real2recip (const TA::DistArray< Tile, Policy > &matrix, Vector3d vec_k, const UnitCell &unitcell, const Supercell &supercell) | |
template<typename Tile , typename Policy , typename MatrixZ > | |
std::vector< std::pair< MatrixZ, MatrixZ > > pseudoinverse_projection (std::vector< MatrixZ > const &C, std::pair< long, long > orbs, Vector3i K, const std::shared_ptr< pbc::gaussian::AOFactory< Tile, Policy >> &ao_factory) | |
Typedef Documentation
◆ CadfKFockBuilder
template<typename Tile , typename Policy >
using mpqc::lcao::pbc::CadfKFockBuilder = typedef FockBuilderImpl< Tile, Policy, DirectFockBuilder<Tile, Policy>, CadfKBuilder<Tile, Policy, pbc::gaussian::AOFactory<Tile, Policy> >, void> |
◆ DfJCadfKFockBuilder
template<typename Tile , typename Policy >
using mpqc::lcao::pbc::DfJCadfKFockBuilder = typedef FockBuilderImpl< Tile, Policy, DfJBuilder<Tile, Policy, pbc::gaussian::AOFactory<Tile, Policy> >, CadfKBuilder<Tile, Policy, pbc::gaussian::AOFactory<Tile, Policy> >, void> |
◆ DfJFockBuilder
template<typename Tile , typename Policy >
using mpqc::lcao::pbc::DfJFockBuilder = typedef FockBuilderImpl< Tile, Policy, DfJBuilder<Tile, Policy, pbc::gaussian::AOFactory<Tile, Policy> >, DirectFockBuilder<Tile, Policy>, void> |
◆ MaDfJCadfKFockBuilder
template<typename Tile , typename Policy >
using mpqc::lcao::pbc::MaDfJCadfKFockBuilder = typedef FockBuilderImpl< Tile, Policy, DfJBuilder<Tile, Policy, pbc::gaussian::AOFactory<Tile, Policy> >, CadfKBuilder<Tile, Policy, pbc::gaussian::AOFactory<Tile, Policy> >> |
◆ MaDfJFockBuilder
template<typename Tile , typename Policy >
using mpqc::lcao::pbc::MaDfJFockBuilder = typedef FockBuilderImpl< Tile, Policy, DfJBuilder<Tile, Policy, pbc::gaussian::AOFactory<Tile, Policy> >, DirectFockBuilder<Tile, Policy> > |
◆ MaJFockBuilder
template<typename Tile , typename Policy >
using mpqc::lcao::pbc::MaJFockBuilder = typedef FockBuilderImpl<Tile, Policy> |
◆ MatrixdVec
using mpqc::lcao::pbc::MatrixdVec = typedef std::vector<RowMatrixXd> |
◆ MatrixzVec
using mpqc::lcao::pbc::MatrixzVec = typedef std::vector<MatrixZ> |
◆ TileD
using mpqc::lcao::pbc::TileD = typedef TA::TensorD |
◆ VectordVec
using mpqc::lcao::pbc::VectordVec = typedef std::vector<VectorD> |
◆ VectorzVec
using mpqc::lcao::pbc::VectorzVec = typedef std::vector<VectorZ> |
Function Documentation
◆ ao_factory_from_keyval()
template<typename AOFactory_ >
std::shared_ptr< AOFactory_ > mpqc::lcao::pbc::ao_factory_from_keyval | ( | const KeyVal & | kv | ) |
utility obtains a PBC AOFactory from the WavefunctionWorld associated with KeyVal object's "wfn_world" keyword
◆ ao_factory_from_keyval< AOFactory<> >()
template std::shared_ptr< AOFactory<> > mpqc::lcao::pbc::ao_factory_from_keyval< AOFactory<> > | ( | const KeyVal & | kv | ) |
◆ basis_registry()
|
inline |
◆ chop_phase()
void mpqc::lcao::pbc::chop_phase | ( | MatrixZ & | mat, |
double | tolerance = std::numeric_limits<double>::epsilon() |
||
) |
◆ gamma_lcao_factory_from_keyval()
template<typename LCAOFactory_ >
std::shared_ptr< LCAOFactory_ > mpqc::lcao::pbc::gamma_lcao_factory_from_keyval | ( | const KeyVal & | kv | ) |
utility obtains the PeriodicLCAO factory from the WavefunctionWorld associated with KeyVal object's "wfn_world" keyword
◆ gamma_lcao_factory_from_keyval< GammaLCAOFactory<> >()
template std::shared_ptr< GammaLCAOFactory<> > mpqc::lcao::pbc::gamma_lcao_factory_from_keyval< GammaLCAOFactory<> > | ( | const KeyVal & | kv | ) |
◆ initial_guess()
template<typename... Args>
auto mpqc::lcao::pbc::initial_guess | ( | const KeyVal & | kv, |
pbc::gaussian::AOFactory< Args... > & | ao_factory | ||
) |
◆ pseudoinverse_projection()
template<typename Tile , typename Policy , typename MatrixZ >
std::vector<std::pair<MatrixZ, MatrixZ> > mpqc::lcao::pbc::pseudoinverse_projection | ( | std::vector< MatrixZ > const & | C, |
std::pair< long, long > | orbs, | ||
Vector3i | K, | ||
const std::shared_ptr< pbc::gaussian::AOFactory< Tile, Policy >> & | ao_factory | ||
) |
- Template Parameters
-
Tile the TA tile type Policy the TA policy type MatrixZ a complex Eigen::Matrix type
- Parameters
-
[in] C the orbitals in Bloch-AO basis for each k point [in] orbs the orbital window for selecting orbitals to be projected [in] K the k point grid size [in] ao_factory the pbc::AOFactory object for interpreting C
- Returns
- vector of {C projected on the minbs, overlap of minbs AO with with C} for each k point
◆ transform_real2recip()
template<typename TileZ , typename Tile , typename Policy >
TA::DistArray<TileZ, Policy> mpqc::lcao::pbc::transform_real2recip | ( | const TA::DistArray< Tile, Policy > & | matrix, |
Vector3d | vec_k, | ||
const UnitCell & | unitcell, | ||
const Supercell & | supercell | ||
) |
Transform operator matrix from AO basis to Bloch-AO basis
- Template Parameters
-
Tile the TA tile type Tile the TA tile type Policy the TA policy type
- Parameters
-
[in] matrix an operator matrix expressed in terms of AOs in a supercell [in] vec_k the target k vector for the Bloch AOs [in] unitcell the (direct) unit cell [in] supercell the supercell used to express Bloch AOs
- Returns
- matrix in the Bloch-AO basis