![]() |
QMCPACK
|
Functions | |
template<typename T1 , typename T2 > | |
T2 | accumulate_n (const T1 *restrict in, size_t n, T2 res) |
template<typename T1 , typename T2 > | |
void | copy (T1 *restrict target, const T2 *restrict source, size_t n) |
copy function using memcpy More... | |
template<typename T > | |
void | copy (T *restrict target, const T *restrict source, size_t n) |
copy function using memcpy More... | |
template<typename T1 , typename T2 > | |
void | copy (T1 *restrict target_r, T1 *restrict target_i, const std::complex< T2 > *restrict source, size_t n) |
copy complex to two real containers More... | |
template<typename T > | |
void | accumulate_phases (const int &n, const std::complex< T > *restrict x, const std::complex< T > *restrict y, T &rN, T &iN, T &riN) |
template<typename T , typename TO > | |
void | transpose (const T *restrict A, size_t m, size_t lda, TO *restrict B, size_t n, size_t ldb) |
transpose of A(m,n) to B(n,m) More... | |
template<typename T , typename TO > | |
void | remapCopy (size_t m, size_t n, const T *restrict A, size_t lda, TO *restrict B, size_t ldb) |
copy of A(m,n) to B(m,n) More... | |
template<typename T , typename TRES = T> | |
T | dot (const T *restrict a, const T *restrict b, int n, TRES res=TRES()) |
dot product More... | |
template<class T , unsigned D, class TRES = T> | |
TinyVector< T, D > | dot (const T *a, const TinyVector< T, D > *b, int n, TinyVector< TRES, D > res=TinyVector< T, D >()) |
inline dot product More... | |
template<class T , unsigned D, class TRES = T> | |
Tensor< T, D > | dot (const T *a, const Tensor< T, D > *b, int n, Tensor< TRES, D > res=Tensor< TRES, D >()) |
inline dot product More... | |
template<typename T > | |
T | dot (int n, const T *restrict x, int incx, const T *restrict y, int incy) |
x*y dot product of two vectors using the same argument list for blas::dot More... | |
template<typename T , typename SIZET > | |
void | remainder (const T *restrict in, T *restrict out, SIZET n) |
mod on an array out[i]=in[i]-floor(in[i]) More... | |
template<typename T , typename SIZET > | |
void | remainder (T *restrict inout, SIZET n) |
template<typename T , typename SIZET > | |
void | sqrt (T *restrict inout, SIZET n) |
template<typename T > | |
void | sqrt (const T *restrict in, T *restrict out, int n) |
template<typename T > | |
void | inv (const T *restrict in, T *restrict out, int n) |
template<typename T > | |
void | add (int n, const T *restrict in, T *restrict out) |
|
inline |
Definition at line 26 of file algorithm.hpp.
References qmcplusplus::n.
Referenced by J1OrbitalSoA< FT >::computeGL(), JeeIOrbitalSoA< FT >::computeGL(), TwoBodyJastrow< FT >::computeGL(), J1Spin< FT >::computeGL(), JeeIOrbitalSoA< FT >::computeU3_engine(), TwoBodyJastrow< FT >::ratioGrad(), J1OrbitalSoA< FT >::ratioGrad(), J1Spin< FT >::ratioGrad(), J1Spin< FT >::recompute(), TwoBodyJastrow< FT >::recompute(), and J1OrbitalSoA< FT >::recompute().
|
inline |
|
inline |
Definition at line 95 of file vmath.hpp.
References qmcplusplus::n.
Referenced by SPOSetInfo::add(), and ci_configuration::isSingle().
|
inline |
copy function using memcpy
target | starting address of the target |
source | starting address of the source |
n | size of the data to copy |
Definition at line 40 of file algorithm.hpp.
References qmcplusplus::n.
Referenced by DiracDeterminant< DU_TYPE >::acceptMove(), and DiracDeterminantBatched< PL, VT, FPVT >::acceptMove().
|
inline |
copy function using memcpy
target | starting address of the target |
source | starting address of the source |
n | size of the data to copy |
Definition at line 52 of file algorithm.hpp.
References qmcplusplus::n.
|
inline |
copy complex to two real containers
Definition at line 59 of file algorithm.hpp.
References qmcplusplus::n.
|
inline |
dot product
a | starting address of an array of type T |
b | starting address of an array of type T |
n | size |
res | initial value, can be used to override precision in reduction |
Definition at line 41 of file inner_product.hpp.
References qmcplusplus::n.
Referenced by MultiDiracDeterminant::buildTableMatrix_calculateRatios_impl(), MultiDiracDeterminant::buildTableMatrix_calculateRatiosValueMatrixOneParticle(), DiracDeterminantBatched< PL, VT, FPVT >::computeGL(), qmcplusplus::DetRatioByColumn(), qmcplusplus::DetRatioByRow(), DiracDeterminantWithBackflow::dummyEvalLi(), DiracDeterminant< DU_TYPE >::evalGrad(), DiracDeterminantBatched< PL, VT, FPVT >::evalGrad(), DiracDeterminant< DU_TYPE >::evalGradSource(), DiracDeterminantBatched< PL, VT, FPVT >::evalGradSource(), DiracDeterminant< DU_TYPE >::evalGradWithSpin(), DiracDeterminantBatched< PL, VT, FPVT >::evalGradWithSpin(), DiracDeterminantWithBackflow::evaluateDerivatives(), LCAOrbitalSet::evaluateDetRatios(), HybridRepCplx< SPLINEBASE >::evaluateDetRatios(), HybridRepReal< SPLINEBASE >::evaluateDetRatios(), SplineC2R< ST >::evaluateDetRatios(), SplineC2C< ST >::evaluateDetRatios(), SplineR2R< ST >::evaluateDetRatios(), SPOSet::evaluateDetRatios(), SpinorSet::evaluateDetSpinorRatios(), DiracDeterminant< DU_TYPE >::evaluateHessian(), DiracDeterminantBatched< PL, VT, FPVT >::evaluateHessian(), DiracDeterminantWithBackflow::evaluateLog(), DiracDeterminant< DU_TYPE >::evaluateLog(), AGPDeterminant::evaluateLogAndStore(), DiracDeterminantBatched< PL, VT, FPVT >::evaluateRatiosAlltoOne(), LCAOrbitalSet::mw_evaluateDetRatios(), LCAOrbitalSet::mw_evaluateVGLandDetRatioGrads(), SPOSet::mw_evaluateVGLandDetRatioGrads(), AGPDeterminant::ratio(), DiracDeterminant< DU_TYPE >::ratio(), DiracDeterminantBatched< PL, VT, FPVT >::ratio(), AGPDeterminant::ratioDown(), DiracDeterminantWithBackflow::ratioGrad(), DiracDeterminantBatched< PL, VT, FPVT >::ratioGrad(), DiracDeterminant< DU_TYPE >::ratioGrad_compute(), DiracDeterminant< DU_TYPE >::ratioGradWithSpin(), DiracDeterminantBatched< PL, VT, FPVT >::ratioGradWithSpin(), AGPDeterminant::ratioUp(), qmcplusplus::TEST_CASE(), DiracDeterminantWithBackflow::testDerivFjj(), DiracDeterminantWithBackflow::testL(), and DiracDeterminant< DU_TYPE >::updateAfterSweep().
|
inline |
inline dot product
a | starting address of an array of type T |
b | starting address of an array of type TinyVector<T,D> |
n | size |
res | initial value, can be used to override precision in reduction |
Definition at line 55 of file inner_product.hpp.
References qmcplusplus::n.
|
inline |
inline dot product
a | starting address of an array of type T |
b | starting address of an array of type Tensor<T, D> |
n | size |
res | initial value, can be used to override precision in reduction |
Definition at line 70 of file inner_product.hpp.
References qmcplusplus::n.
|
inline |
x*y dot product of two vectors using the same argument list for blas::dot
n | size |
x | starting address of x |
incx | stride of x |
y | starting address of y |
incx | stride of y |
return | ![]() |
Definition at line 86 of file inner_product.hpp.
References qmcplusplus::n.
|
inline |
Definition at line 65 of file vmath.hpp.
References qmcplusplus::n.
Referenced by DTD_BConds< T, 3, PPPO >::apply_bc(), DTD_BConds< T, D, SC >::apply_bc(), DTD_BConds< T, 2, SUPERCELL_BULK >::apply_bc(), DTD_BConds< T, 3, PPPS >::apply_bc(), DTD_BConds< T, 2, PPPS >::apply_bc(), DTD_BConds< T, 2, PPPO >::apply_bc(), DTD_BConds< T, 3, PPPG >::apply_bc(), DTD_BConds< T, 2, SUPERCELL_WIRE >::apply_bc(), DTD_BConds< T, 3, PPNG >::apply_bc(), DTD_BConds< T, 3, PPNO >::apply_bc(), DTD_BConds< T, 3, PPNS >::apply_bc(), DTD_BConds< T, 3, SUPERCELL_WIRE >::apply_bc(), DTD_BConds< T, 3, PPPX >::apply_bc(), DTD_BConds< T, 3, PPNX >::apply_bc(), and qmcplusplus::bessel_steed_array_cpu().
|
inline |
mod on an array out[i]=in[i]-floor(in[i])
Definition at line 38 of file vmath.hpp.
References qmcplusplus::floor(), and qmcplusplus::n.
Referenced by qmcplusplus::put2box().
|
inline |
Definition at line 45 of file vmath.hpp.
References qmcplusplus::floor(), and qmcplusplus::n.
|
inline |
copy of A(m,n) to B(m,n)
A | starting address, A(m,lda) |
m | number of A rows |
lda | stride of A's row |
B | starting address B(m,ldb) |
m | number of B rows |
ldb | stride of B's row |
Blas-like interface
Definition at line 115 of file algorithm.hpp.
References qmcplusplus::Units::distance::A, B(), qmcplusplus::lda, qmcplusplus::Units::distance::m, and qmcplusplus::n.
Referenced by DiracMatrixComputeOMPTarget< VALUE_FP >::invert_transpose(), and DiracMatrixComputeCUDA< VALUE_FP >::mw_computeInvertAndLog().
|
inline |
Definition at line 52 of file vmath.hpp.
References qmcplusplus::n, and sqrt().
Referenced by DTD_BConds< T, 3, PPPO >::apply_bc(), DTD_BConds< T, D, SC >::apply_bc(), DTD_BConds< T, 2, SUPERCELL_BULK >::apply_bc(), DTD_BConds< T, 3, PPPS >::apply_bc(), DTD_BConds< T, 2, PPPS >::apply_bc(), DTD_BConds< T, 2, PPPO >::apply_bc(), DTD_BConds< T, 3, PPPG >::apply_bc(), DTD_BConds< T, 2, SUPERCELL_WIRE >::apply_bc(), DTD_BConds< T, 3, PPNG >::apply_bc(), DTD_BConds< T, 3, PPNO >::apply_bc(), DTD_BConds< T, 3, PPNS >::apply_bc(), DTD_BConds< T, 3, SUPERCELL_WIRE >::apply_bc(), DTD_BConds< T, 3, PPPX >::apply_bc(), and DTD_BConds< T, 3, PPNX >::apply_bc().
|
inline |
Definition at line 59 of file vmath.hpp.
References qmcplusplus::n.
Referenced by sqrt().
|
inline |
transpose of A(m,n) to B(n,m)
A | starting address, A(m,lda) |
m | number of A rows |
lda | stride of A's row |
B | starting address B(n,ldb) |
n | number of B rows |
ldb | stride of B's row |
Blas-like interface
Definition at line 97 of file algorithm.hpp.
References qmcplusplus::Units::distance::A, B(), qmcplusplus::lda, qmcplusplus::Units::distance::m, and qmcplusplus::n.
Referenced by DiracDeterminantWithBackflow::evaluate_SPO(), DiracMatrixComputeOMPTarget< VALUE_FP >::invert_transpose(), DiracMatrix< VALUE_FP >::invert_transpose(), DiracMatrixComputeCUDA< VALUE_FP >::invert_transpose(), qmcplusplus::testing::makeRngSpdMatrix(), DiracMatrixComputeCUDA< VALUE_FP >::mw_invertTranspose(), qmcplusplus::TEMPLATE_TEST_CASE(), qmcplusplus::TEST_CASE(), qmcplusplus::test_DiracDeterminant_delayed_update(), qmcplusplus::test_DiracDeterminant_second(), qmcplusplus::test_DiracDeterminantBatched_delayed_update(), qmcplusplus::test_DiracDeterminantBatched_second(), and qmcplusplus::MatrixOperators::transpose().