occ
Loading...
Searching...
No Matches
hermite_kernels.h File Reference
#include <occ/ints/kernels.h>
#include <occ/ints/rints.h>
#include <Eigen/Dense>
#include <vector>
Include dependency graph for hermite_kernels.h:

Namespaces

namespace  occ
 
namespace  occ::ints
 

Functions

template<typename T >
OCC_GPU_ENABLED OCC_GPU_INLINE constexpr T occ::ints::hermite_sign (int t, int u, int v)
 Compute Hermite sign factor (-1)^(t+u+v) for a given Hermite index.
 
template<typename T >
void occ::ints::apply_hermite_signs (const T *in, int L_max, T *out)
 Apply Hermite signs to a vector out[h] = sign(h) * in[h] where sign(h) = (-1)^(t+u+v)
 
template<typename T >
void occ::ints::density_to_hermite (const T *D_block, const T *E_ab, int na, int nb, int nherm_ab, T *X_out, bool apply_sign=true)
 Eq.
 
template<typename T >
void occ::ints::contract_hermite_eri_forward (const T *R_pq, const T *X_q, int nherm_ab, int nherm_c, T *Y_p)
 Eq.
 
template<typename T >
void occ::ints::hermite_to_aux (const T *E_c, const T *Y_p, int nc, int nherm_c, T *g_out)
 Eq.
 
template<typename Scalar >
void occ::ints::aux_to_hermite (const Scalar *E_c, const Scalar *d_r, int nc, int nherm_c, Scalar *T_out)
 Eq.
 
template<typename Scalar >
void occ::ints::contract_hermite_eri_backward (const Scalar *R_pq, const Scalar *T_p, int nherm_ab, int nherm_c, Scalar *U_q)
 Eq.
 
template<typename T >
void occ::ints::hermite_to_orbital (const T *E_ab, const T *U_q, int na, int nb, int nherm_ab, T *J_block, bool apply_sign=true)
 Eq.
 
template<typename T , typename BoysParams = BoysParamsDefault>
void occ::ints::compute_R_pq_tensor (const ShellPairData< T > &ao_pair, const AuxShellData< T > &aux_shell, const T *boys_table, T *R_pq_out)
 Compute the accumulated R_pq tensor for a shell pair + aux shell.
 
template<typename T >
void occ::ints::compute_accumulated_E_ab (const ShellPairData< T > &shell_pair, T *E_ab_out)
 Compute E_ab matrix accumulated over all primitives in a shell pair This is needed for the forward and backward transformations.
 
template<typename T >
void occ::ints::compute_accumulated_E_c (const AuxShellData< T > &aux_shell, T *E_c_out)
 Compute E_c matrix accumulated over all primitives in an aux shell.
 
std::tuple< size_t, size_t, size_t, size_t > occ::ints::split_rij_workspace_sizes (int max_l_ao, int max_l_aux)
 Compute maximum workspace sizes for Split-RI-J.