![]() |
QMCPACK
|
A derivative of LRBasis class to provide the functionality of the LPQHI basis. More...
Public Member Functions | |
LPQHISRCoulombBasis (const LPQHISRCoulombBasis &b, const ParticleLayout &ref) | |
mRealType | get_delta () const |
void | set_NumKnots (int n) |
void | set_rc (mRealType rc) override |
mRealType | h (int n, mRealType r) const override |
mRealType | rh (int n, mRealType r) const |
mRealType | dh_dr (int n, mRealType r) const override |
mRealType | dh_ddelta (int n, mRealType r) const |
mRealType | hintr2 (int n) const override |
mRealType | c (int n, mRealType k) const override |
mRealType | dc_dk (int n, mRealType k) const override |
LPQHISRCoulombBasis (const ParticleLayout &ref) | |
![]() | |
LRBasis (const ParticleLayout &ref) | |
virtual | ~LRBasis ()=default |
int | NumBasisElem () const |
mRealType | df (int m, mRealType r) const |
mRealType | f (mRealType r, const std::vector< mRealType > &coefs) const |
$f(r,{tn})$ returns the value of $ t_n*h_{ n}(r)$ r is radial position (scalar) std::vector<RealType> coefs are the {tn} optimized breakup coefficients. More... | |
mRealType | df_dr (mRealType r, const std::vector< mRealType > &coefs) const |
mRealType | fk (mRealType k, const std::vector< mRealType > coefs) const |
mRealType | dfk_dk (mRealType k, const std::vector< mRealType > coefs) const |
mRealType | get_rc () const |
mRealType | get_CellVolume () const |
void | set_Lattice (const ParticleLayout &ref) |
const ParticleLayout & | get_Lattice () const |
Private Member Functions | |
std::complex< mRealType > | Eplus (int i, mRealType k, int n) const |
std::complex< mRealType > | Eminus (int i, mRealType k, int n) const |
std::complex< mRealType > | Eplus_dG (int i, mRealType k, int n) const |
std::complex< mRealType > | Eminus_dG (int i, mRealType k, int n) const |
mRealType | Dplus (int i, mRealType k, int n) const |
mRealType | Dminus (int i, mRealType k, int n) const |
mRealType | Dplus_dG (int i, mRealType k, int n) const |
mRealType | Dminus_dG (int i, mRealType k, int n) const |
Private Attributes | |
int | NumKnots |
mRealType | delta |
mRealType | deltainv |
Matrix< mRealType > | S |
Matrix< mRealType > | S1 |
Matrix< mRealType > | S2 |
mRealType | Mfactor [3] |
std::vector< mRealType > | tvec |
Additional Inherited Members | |
![]() | |
using | ParticleLayout = ParticleSet::ParticleLayout |
Typedef for the lattice-type. We don't need the full particle-set. More... | |
![]() | |
DECLARE_COULOMB_TYPES int | BasisSize |
size of the basis elements More... | |
mRealType | m_rc |
Real-space cutoff for short-range part. More... | |
ParticleLayout | Lattice |
A derivative of LRBasis class to provide the functionality of the LPQHI basis.
A 1/r factor is incorporated into the basis functions to facilitate real space representation of the short-ranged coulomb potential, following Natoli & Ceperley's 1995 paper on Optimized Breakup. http://dx.doi.org/10.1006/jcph.1995.1054.
Definition at line 29 of file LPQHISRCoulombBasis.h.
|
inline |
Definition at line 52 of file LPQHISRCoulombBasis.h.
References LRBasis::BasisSize, LRBasis::m_rc, and LPQHISRCoulombBasis::Mfactor.
|
inline |
Definition at line 195 of file LPQHISRCoulombBasis.h.
References LPQHISRCoulombBasis::Mfactor, Matrix< T, Alloc >::resize(), LPQHISRCoulombBasis::S, and LPQHISRCoulombBasis::S1.
|
overridevirtual |
Implements LRBasis.
Definition at line 99 of file LPQHISRCoulombBasis.cpp.
References LPQHISRCoulombBasis::delta, LPQHISRCoulombBasis::Dminus(), LPQHISRCoulombBasis::Dplus(), qmcplusplus::Units::distance::m, qmcplusplus::n, LPQHISRCoulombBasis::NumKnots, qmcplusplus::pow(), LPQHISRCoulombBasis::S, and sign().
|
overridevirtual |
Reimplemented from LRBasis.
Definition at line 184 of file LPQHISRCoulombBasis.cpp.
References LPQHISRCoulombBasis::delta, LPQHISRCoulombBasis::Dminus_dG(), LPQHISRCoulombBasis::Dplus_dG(), qmcplusplus::Units::distance::m, qmcplusplus::n, LPQHISRCoulombBasis::NumKnots, qmcplusplus::pow(), LPQHISRCoulombBasis::S, and sign().
Definition at line 154 of file LPQHISRCoulombBasis.h.
References LPQHISRCoulombBasis::delta, LPQHISRCoulombBasis::dh_dr(), LPQHISRCoulombBasis::h(), and qmcplusplus::n.
Reimplemented from LRBasis.
Definition at line 123 of file LPQHISRCoulombBasis.h.
References LPQHISRCoulombBasis::delta, LPQHISRCoulombBasis::deltainv, LPQHISRCoulombBasis::h(), LRBasis::m_rc, LPQHISRCoulombBasis::Mfactor, omptarget::min(), qmcplusplus::n, qmcplusplus::pow(), and LPQHISRCoulombBasis::S1.
Referenced by LPQHISRCoulombBasis::dh_ddelta().
|
inlineprivate |
Definition at line 178 of file LPQHISRCoulombBasis.cpp.
References LPQHISRCoulombBasis::Eminus(), qmcplusplus::n, and CrystalLattice< T, D >::Volume.
Referenced by LPQHISRCoulombBasis::c(), and LPQHISRCoulombBasis::Dminus_dG().
|
inlineprivate |
Definition at line 260 of file LPQHISRCoulombBasis.cpp.
References LPQHISRCoulombBasis::Dminus(), LPQHISRCoulombBasis::Eminus_dG(), qmcplusplus::n, and CrystalLattice< T, D >::Volume.
Referenced by LPQHISRCoulombBasis::dc_dk().
|
inlineprivate |
Definition at line 171 of file LPQHISRCoulombBasis.cpp.
References LPQHISRCoulombBasis::Eplus(), qmcplusplus::n, and CrystalLattice< T, D >::Volume.
Referenced by LPQHISRCoulombBasis::c(), and LPQHISRCoulombBasis::Dplus_dG().
|
inlineprivate |
Definition at line 251 of file LPQHISRCoulombBasis.cpp.
References LPQHISRCoulombBasis::Dplus(), LPQHISRCoulombBasis::Eplus_dG(), qmcplusplus::n, and CrystalLattice< T, D >::Volume.
Referenced by LPQHISRCoulombBasis::dc_dk().
|
inlineprivate |
Definition at line 151 of file LPQHISRCoulombBasis.cpp.
References qmcplusplus::cos(), LPQHISRCoulombBasis::delta, qmcplusplus::n, sign(), and qmcplusplus::sin().
Referenced by LPQHISRCoulombBasis::Dminus(), and LPQHISRCoulombBasis::Eminus_dG().
|
inlineprivate |
Definition at line 230 of file LPQHISRCoulombBasis.cpp.
References qmcplusplus::cos(), LPQHISRCoulombBasis::delta, LPQHISRCoulombBasis::Eminus(), qmcplusplus::n, qmcplusplus::pow(), and qmcplusplus::sin().
Referenced by LPQHISRCoulombBasis::Dminus_dG().
|
inlineprivate |
Definition at line 131 of file LPQHISRCoulombBasis.cpp.
References qmcplusplus::cos(), LPQHISRCoulombBasis::delta, qmcplusplus::n, and qmcplusplus::sin().
Referenced by LPQHISRCoulombBasis::Dplus(), and LPQHISRCoulombBasis::Eplus_dG().
|
inlineprivate |
Definition at line 215 of file LPQHISRCoulombBasis.cpp.
References qmcplusplus::cos(), LPQHISRCoulombBasis::delta, LPQHISRCoulombBasis::Eplus(), qmcplusplus::n, and qmcplusplus::sin().
Referenced by LPQHISRCoulombBasis::Dplus_dG().
|
inline |
Implements LRBasis.
Definition at line 73 of file LPQHISRCoulombBasis.h.
References LPQHISRCoulombBasis::delta, LPQHISRCoulombBasis::deltainv, LRBasis::m_rc, LPQHISRCoulombBasis::Mfactor, omptarget::min(), qmcplusplus::n, qmcplusplus::pow(), and LPQHISRCoulombBasis::S.
Referenced by LPQHISRCoulombBasis::dh_ddelta(), and LPQHISRCoulombBasis::dh_dr().
|
overridevirtual |
Implements LRBasis.
Definition at line 79 of file LPQHISRCoulombBasis.cpp.
References LPQHISRCoulombBasis::delta, qmcplusplus::n, LPQHISRCoulombBasis::NumKnots, qmcplusplus::pow(), and LPQHISRCoulombBasis::S.
Definition at line 99 of file LPQHISRCoulombBasis.h.
References LPQHISRCoulombBasis::delta, LPQHISRCoulombBasis::deltainv, LRBasis::m_rc, LPQHISRCoulombBasis::Mfactor, omptarget::min(), qmcplusplus::n, qmcplusplus::pow(), and LPQHISRCoulombBasis::S.
void set_NumKnots | ( | int | n | ) |
Definition at line 22 of file LPQHISRCoulombBasis.cpp.
References LRBasis::BasisSize, LPQHISRCoulombBasis::delta, LPQHISRCoulombBasis::deltainv, LRBasis::m_rc, qmcplusplus::n, and LPQHISRCoulombBasis::NumKnots.
|
overridevirtual |
Implements LRBasis.
Definition at line 36 of file LPQHISRCoulombBasis.cpp.
References LPQHISRCoulombBasis::delta, LPQHISRCoulombBasis::deltainv, LRBasis::m_rc, and LPQHISRCoulombBasis::NumKnots.
|
private |
Definition at line 33 of file LPQHISRCoulombBasis.h.
Referenced by LPQHISRCoulombBasis::c(), LPQHISRCoulombBasis::dc_dk(), LPQHISRCoulombBasis::dh_ddelta(), LPQHISRCoulombBasis::dh_dr(), LPQHISRCoulombBasis::Eminus(), LPQHISRCoulombBasis::Eminus_dG(), LPQHISRCoulombBasis::Eplus(), LPQHISRCoulombBasis::Eplus_dG(), LPQHISRCoulombBasis::get_delta(), LPQHISRCoulombBasis::h(), LPQHISRCoulombBasis::hintr2(), LPQHISRCoulombBasis::rh(), LPQHISRCoulombBasis::set_NumKnots(), and LPQHISRCoulombBasis::set_rc().
|
private |
Definition at line 33 of file LPQHISRCoulombBasis.h.
Referenced by LPQHISRCoulombBasis::dh_dr(), LPQHISRCoulombBasis::h(), LPQHISRCoulombBasis::rh(), LPQHISRCoulombBasis::set_NumKnots(), and LPQHISRCoulombBasis::set_rc().
|
private |
Definition at line 37 of file LPQHISRCoulombBasis.h.
Referenced by LPQHISRCoulombBasis::dh_dr(), LPQHISRCoulombBasis::h(), LPQHISRCoulombBasis::LPQHISRCoulombBasis(), and LPQHISRCoulombBasis::rh().
|
private |
Definition at line 32 of file LPQHISRCoulombBasis.h.
Referenced by LPQHISRCoulombBasis::c(), LPQHISRCoulombBasis::dc_dk(), LPQHISRCoulombBasis::hintr2(), LPQHISRCoulombBasis::set_NumKnots(), and LPQHISRCoulombBasis::set_rc().
Definition at line 34 of file LPQHISRCoulombBasis.h.
Referenced by LPQHISRCoulombBasis::c(), LPQHISRCoulombBasis::dc_dk(), LPQHISRCoulombBasis::h(), LPQHISRCoulombBasis::hintr2(), LPQHISRCoulombBasis::LPQHISRCoulombBasis(), and LPQHISRCoulombBasis::rh().
Definition at line 35 of file LPQHISRCoulombBasis.h.
Referenced by LPQHISRCoulombBasis::dh_dr(), and LPQHISRCoulombBasis::LPQHISRCoulombBasis().
Definition at line 36 of file LPQHISRCoulombBasis.h.
|
private |
Definition at line 38 of file LPQHISRCoulombBasis.h.