mirror of
https://github.com/TREX-CoE/qmckl.git
synced 2024-08-17 02:41:43 +02:00
Merge branch 'master' of github.com:TREX-CoE/qmckl
This commit is contained in:
commit
922dbe8112
@ -692,7 +692,6 @@ integer function qmckl_compute_mo_basis_mo_vgl_doc_f(context, &
|
|||||||
! ao_vgl, int(size(ao_vgl,1),8), 0.d0, &
|
! ao_vgl, int(size(ao_vgl,1),8), 0.d0, &
|
||||||
! mo_vgl, int(size(mo_vgl,1),8))
|
! mo_vgl, int(size(mo_vgl,1),8))
|
||||||
|
|
||||||
|
|
||||||
end function qmckl_compute_mo_basis_mo_vgl_doc_f
|
end function qmckl_compute_mo_basis_mo_vgl_doc_f
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
@ -801,11 +800,12 @@ qmckl_compute_mo_basis_mo_vgl_hpc (const qmckl_context context,
|
|||||||
#endif
|
#endif
|
||||||
for (int64_t ipoint=0 ; ipoint < point_num ; ++ipoint) {
|
for (int64_t ipoint=0 ; ipoint < point_num ; ++ipoint) {
|
||||||
double* restrict const vgl1 = &(mo_vgl[ipoint*5*mo_num]);
|
double* restrict const vgl1 = &(mo_vgl[ipoint*5*mo_num]);
|
||||||
const double* restrict avgl1 = &(ao_vgl[ipoint*5*ao_num]);
|
|
||||||
double* restrict const vgl2 = vgl1 + mo_num;
|
double* restrict const vgl2 = vgl1 + mo_num;
|
||||||
double* restrict const vgl3 = vgl1 + (mo_num << 1);
|
double* restrict const vgl3 = vgl1 + (mo_num << 1);
|
||||||
double* restrict const vgl4 = vgl1 + (mo_num << 1) + mo_num;
|
double* restrict const vgl4 = vgl1 + (mo_num << 1) + mo_num;
|
||||||
double* restrict const vgl5 = vgl1 + (mo_num << 2);
|
double* restrict const vgl5 = vgl1 + (mo_num << 2);
|
||||||
|
|
||||||
|
const double* restrict avgl1 = &(ao_vgl[ipoint*5*ao_num]);
|
||||||
const double* restrict avgl2 = avgl1 + ao_num;
|
const double* restrict avgl2 = avgl1 + ao_num;
|
||||||
const double* restrict avgl3 = avgl1 + (ao_num << 1);
|
const double* restrict avgl3 = avgl1 + (ao_num << 1);
|
||||||
const double* restrict avgl4 = avgl1 + (ao_num << 1) + ao_num;
|
const double* restrict avgl4 = avgl1 + (ao_num << 1) + ao_num;
|
||||||
@ -840,6 +840,7 @@ qmckl_compute_mo_basis_mo_vgl_hpc (const qmckl_context context,
|
|||||||
}
|
}
|
||||||
|
|
||||||
int64_t n;
|
int64_t n;
|
||||||
|
|
||||||
for (n=0 ; n < nidx-4 ; n+=4) {
|
for (n=0 ; n < nidx-4 ; n+=4) {
|
||||||
int64_t k = idx[n];
|
int64_t k = idx[n];
|
||||||
const double* restrict ck1 = coefficient_t + idx[n ]*mo_num;
|
const double* restrict ck1 = coefficient_t + idx[n ]*mo_num;
|
||||||
@ -884,8 +885,7 @@ qmckl_compute_mo_basis_mo_vgl_hpc (const qmckl_context context,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
int64_t n0 = nidx-4;
|
const int64_t n0 = n < 0 ? 0 : n;
|
||||||
n0 = n0 < 0 ? 0 : n0;
|
|
||||||
for (int64_t n=n0 ; n < nidx ; n+=1) {
|
for (int64_t n=n0 ; n < nidx ; n+=1) {
|
||||||
const double* restrict ck = coefficient_t + idx[n]*mo_num;
|
const double* restrict ck = coefficient_t + idx[n]*mo_num;
|
||||||
const double a1 = av1[n];
|
const double a1 = av1[n];
|
||||||
|
@ -250,19 +250,19 @@ qmckl_exit_code qmckl_set_numprec_range(const qmckl_context context, const int r
|
|||||||
# Fortran interface
|
# Fortran interface
|
||||||
#+begin_src f90 :tangle (eval fh_func)
|
#+begin_src f90 :tangle (eval fh_func)
|
||||||
interface
|
interface
|
||||||
integer (qmckl_exit_code) function qmckl_numprec_set_range(context, range) bind(C)
|
integer (qmckl_exit_code) function qmckl_set_numprec_range(context, range) bind(C)
|
||||||
use, intrinsic :: iso_c_binding
|
use, intrinsic :: iso_c_binding
|
||||||
import
|
import
|
||||||
integer (qmckl_context), intent(in), value :: context
|
integer (qmckl_context), intent(in), value :: context
|
||||||
integer (c_int32_t), intent(in), value :: range
|
integer (c_int32_t), intent(in), value :: range
|
||||||
end function qmckl_numprec_set_range
|
end function qmckl_set_numprec_range
|
||||||
end interface
|
end interface
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
~qmckl_get_numprec_range~ returns the value of the numerical range in the context.
|
~qmckl_get_numprec_range~ returns the value of the numerical range in the context.
|
||||||
|
|
||||||
#+begin_src c :comments org :tangle (eval h_func) :exports none
|
#+begin_src c :comments org :tangle (eval h_func) :exports none
|
||||||
int32_t qmckl_get_numprec_get_range(const qmckl_context context);
|
int32_t qmckl_get_numprec_range(const qmckl_context context);
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
# Source
|
# Source
|
||||||
|
Loading…
Reference in New Issue
Block a user