mirror of
https://github.com/TREX-CoE/qmckl.git
synced 2025-01-06 19:33:14 +01:00
Inline powers in AOs
This commit is contained in:
parent
485571f771
commit
3e2ea5f2ca
@ -4834,7 +4834,7 @@ end function qmckl_ao_polynomial_vgl_doc_f
|
||||
const int64_t ldv );
|
||||
#+end_src
|
||||
|
||||
#+CALL: generate_c_header(table=qmckl_ao_polynomial_vgl_args,rettyp=get_value("CRetType"),fname="qmckl_ao_polynomial_transp_vgl_hpc")
|
||||
# #+CALL: generate_c_header(table=qmckl_ao_polynomial_vgl_args,rettyp=get_value("CRetType"),fname="qmckl_ao_polynomial_transp_vgl_hpc")
|
||||
|
||||
#+RESULTS:
|
||||
#+begin_src c :tangle (eval h_func) :comments org
|
||||
@ -4999,8 +4999,8 @@ end function qmckl_ao_polynomial_transp_vgl_doc_f
|
||||
#+end_src
|
||||
|
||||
#+begin_src c :tangle (eval c) :comments org
|
||||
qmckl_exit_code
|
||||
qmckl_ao_polynomial_transp_vgl_hpc (const qmckl_context context,
|
||||
static inline qmckl_exit_code
|
||||
qmckl_ao_polynomial_transp_vgl_hpc_inline (const qmckl_context context,
|
||||
const double* restrict X,
|
||||
const double* restrict R,
|
||||
const int32_t lmax,
|
||||
@ -5274,6 +5274,21 @@ qmckl_ao_polynomial_transp_vgl_hpc (const qmckl_context context,
|
||||
,*n = m;
|
||||
return QMCKL_SUCCESS;
|
||||
}
|
||||
|
||||
qmckl_exit_code
|
||||
qmckl_ao_polynomial_transp_vgl_hpc (const qmckl_context context,
|
||||
const double* restrict X,
|
||||
const double* restrict R,
|
||||
const int32_t lmax,
|
||||
int64_t* n,
|
||||
int32_t* restrict const L,
|
||||
const int64_t ldl,
|
||||
double* restrict const VGL,
|
||||
const int64_t ldv )
|
||||
{
|
||||
return qmckl_ao_polynomial_transp_vgl_hpc_inline (context,
|
||||
X, R, lmax, n, L, ldl, VGL, ldv );
|
||||
}
|
||||
#+end_src
|
||||
|
||||
#+CALL: generate_c_interface(table=qmckl_ao_polynomial_vgl_args,rettyp=get_value("CRetType"),fname="qmckl_ao_polynomial_transp_vgl_doc")
|
||||
@ -5707,7 +5722,7 @@ qmckl_compute_ao_value_hpc_gaussian (const qmckl_context context,
|
||||
<<ao_value_constants>>
|
||||
|
||||
#ifdef HAVE_OPENMP
|
||||
#pragma omp parallel
|
||||
#pragma omp parallel if (point_num > 16)
|
||||
#endif
|
||||
{
|
||||
qmckl_exit_code rc;
|
||||
@ -5787,7 +5802,7 @@ qmckl_compute_ao_value_hpc_gaussian (const qmckl_context context,
|
||||
break;
|
||||
|
||||
default:
|
||||
rc = qmckl_ao_polynomial_transp_vgl_hpc(context, e_coord, n_coord,
|
||||
rc = qmckl_ao_polynomial_transp_vgl_hpc_inline(context, e_coord, n_coord,
|
||||
nucleus_max_ang_mom[inucl],
|
||||
&n_poly, powers, (int64_t) 3,
|
||||
poly_vgl, size_max);
|
||||
@ -6597,7 +6612,7 @@ qmckl_compute_ao_vgl_hpc_gaussian (
|
||||
break;
|
||||
|
||||
default:
|
||||
rc = qmckl_ao_polynomial_transp_vgl_hpc(context, e_coord, n_coord,
|
||||
rc = qmckl_ao_polynomial_transp_vgl_hpc_inline(context, e_coord, n_coord,
|
||||
nucleus_max_ang_mom[inucl],
|
||||
&n_poly, powers, (int64_t) 3,
|
||||
&(poly_vgl[0][0]), size_max);
|
||||
|
Loading…
Reference in New Issue
Block a user