![]() |
QMCPACK
|
Inheritance diagram for FiniteDifference:
Collaboration diagram for FiniteDifference:Classes | |
| struct | PositionChange |
Public Types | |
| enum | FiniteDiffType { FiniteDiff_LowOrder, FiniteDiff_Richardson } |
| using | PosChangeVector = std::vector< PositionChange > |
| using | ValueVector = std::vector< ValueType > |
Public Types inherited from QMCTraits | |
| enum | { DIM = OHMMS_DIM, DIM_VGL = OHMMS_DIM + 2 } |
| using | QTBase = QMCTypes< OHMMS_PRECISION, DIM > |
| using | QTFull = QMCTypes< OHMMS_PRECISION_FULL, DIM > |
| using | RealType = QTBase::RealType |
| using | ComplexType = QTBase::ComplexType |
| using | ValueType = QTBase::ValueType |
| using | PosType = QTBase::PosType |
| using | GradType = QTBase::GradType |
| using | TensorType = QTBase::TensorType |
| using | IndexType = OHMMS_INDEXTYPE |
| define other types More... | |
| using | FullPrecRealType = QTFull::RealType |
| using | FullPrecValueType = QTFull::ValueType |
| using | PropertySetType = RecordNamedProperty< FullPrecRealType > |
| define PropertyList_t More... | |
| using | PtclGrpIndexes = std::vector< std::pair< int, int > > |
Public Member Functions | |
| FiniteDifference (size_t ndim_in, FiniteDiffType fd_type=FiniteDiff_Richardson) | |
| void | finiteDifferencePoints (RealType delta, MCWalkerConfiguration &W, PosChangeVector &positions) |
| Generate points to evaluate. More... | |
| void | computeFiniteDiff (RealType delta, PosChangeVector &positions, ValueVector &values, ParticleSet::ParticleGradient &G_fd, ParticleSet::ParticleLaplacian &L_fd) |
| Compute finite difference after log psi is computed for each point. More... | |
| void | computeFiniteDiffLowOrder (RealType delta, PosChangeVector &positions, ValueVector &values, ParticleSet::ParticleGradient &G_fd, ParticleSet::ParticleLaplacian &L_fd) |
| void | computeFiniteDiffRichardson (RealType delta, PosChangeVector &positions, ValueVector &values, ParticleSet::ParticleGradient &G_fd, ParticleSet::ParticleLaplacian &L_fd) |
Public Attributes | |
| const size_t | ndim |
| int | m_RichardsonSize |
| FiniteDiffType | m_fd_type |
Definition at line 308 of file WaveFunctionTester.cpp.
| struct qmcplusplus::FiniteDifference::PositionChange |
Definition at line 325 of file WaveFunctionTester.cpp.
Collaboration diagram for FiniteDifference::PositionChange:| Class Members | ||
|---|---|---|
| int | index | |
| PosType | r | |
| using PosChangeVector = std::vector<PositionChange> |
Definition at line 330 of file WaveFunctionTester.cpp.
| using ValueVector = std::vector<ValueType> |
Definition at line 331 of file WaveFunctionTester.cpp.
| enum FiniteDiffType |
| Enumerator | |
|---|---|
| FiniteDiff_LowOrder | |
| FiniteDiff_Richardson | |
Definition at line 311 of file WaveFunctionTester.cpp.
|
inline |
Definition at line 316 of file WaveFunctionTester.cpp.
| void computeFiniteDiff | ( | RealType | delta, |
| PosChangeVector & | positions, | ||
| ValueVector & | values, | ||
| ParticleSet::ParticleGradient & | G_fd, | ||
| ParticleSet::ParticleLaplacian & | L_fd | ||
| ) |
Compute finite difference after log psi is computed for each point.
Definition at line 404 of file WaveFunctionTester.cpp.
References FiniteDifference::computeFiniteDiffLowOrder(), FiniteDifference::computeFiniteDiffRichardson(), FiniteDifference::FiniteDiff_LowOrder, FiniteDifference::FiniteDiff_Richardson, and FiniteDifference::m_fd_type.
Referenced by WaveFunctionTester::checkGradientAtConfiguration(), and WaveFunctionTester::computeNumericalGrad().
| void computeFiniteDiffLowOrder | ( | RealType | delta, |
| PosChangeVector & | positions, | ||
| ValueVector & | values, | ||
| ParticleSet::ParticleGradient & | G_fd, | ||
| ParticleSet::ParticleLaplacian & | L_fd | ||
| ) |
Definition at line 426 of file WaveFunctionTester.cpp.
References FiniteDifference::ndim.
Referenced by FiniteDifference::computeFiniteDiff().
| void computeFiniteDiffRichardson | ( | RealType | delta, |
| PosChangeVector & | positions, | ||
| ValueVector & | values, | ||
| ParticleSet::ParticleGradient & | G_fd, | ||
| ParticleSet::ParticleLaplacian & | L_fd | ||
| ) |
Definition at line 468 of file WaveFunctionTester.cpp.
References qmcplusplus::abs(), qmcplusplus::Units::charge::e, FiniteDifference::m_RichardsonSize, FiniteDifference::ndim, and norm().
Referenced by FiniteDifference::computeFiniteDiff().
| void finiteDifferencePoints | ( | RealType | delta, |
| MCWalkerConfiguration & | W, | ||
| PosChangeVector & | positions | ||
| ) |
Generate points to evaluate.
Definition at line 358 of file WaveFunctionTester.cpp.
References FiniteDifference::FiniteDiff_Richardson, ParticleSet::getTotalNum(), FiniteDifference::PositionChange::index, FiniteDifference::m_fd_type, FiniteDifference::m_RichardsonSize, FiniteDifference::ndim, ParticleSet::R, and FiniteDifference::PositionChange::r.
Referenced by WaveFunctionTester::checkGradientAtConfiguration(), and WaveFunctionTester::computeNumericalGrad().
| FiniteDiffType m_fd_type |
Definition at line 323 of file WaveFunctionTester.cpp.
Referenced by FiniteDifference::computeFiniteDiff(), and FiniteDifference::finiteDifferencePoints().
| int m_RichardsonSize |
Definition at line 321 of file WaveFunctionTester.cpp.
Referenced by FiniteDifference::computeFiniteDiffRichardson(), and FiniteDifference::finiteDifferencePoints().
| const size_t ndim |
Definition at line 320 of file WaveFunctionTester.cpp.
Referenced by FiniteDifference::computeFiniteDiffLowOrder(), FiniteDifference::computeFiniteDiffRichardson(), and FiniteDifference::finiteDifferencePoints().