mirror of
https://github.com/TREX-CoE/qmckl.git
synced 2024-11-19 20:42:50 +01:00
Changed argument order.
This commit is contained in:
parent
656d268187
commit
1640eb60f9
@ -790,11 +790,11 @@ If the determinant is passed it will only be partially updated if there were any
|
||||
| ~LDS~ | ~uint64_t~ | in | Leading dimension of Slater_inv |
|
||||
| ~Dim~ | ~uint64_t~ | in | Dimension of Slater_inv |
|
||||
| ~N_updates~ | ~uint64_t~ | in | Number of rank-1 updates to be applied to Slater_inv |
|
||||
| ~Updates~ | ~double[N_updates*LDS]~ | in | Array containing the rank-1 updates |
|
||||
| ~Updates~ | ~double[LDS*N_updates]~ | in | Array containing the rank-1 updates |
|
||||
| ~Updates_index~ | ~uint64_t[N_updates]~ | in | Array containing positions of the rank-1 updates |
|
||||
| ~breakdown~ | ~double~ | in | Break-down parameter on which to fail or not |
|
||||
| ~Slater_inv~ | ~double[Dim*LDS]~ | inout | Array containing the inverse Slater-matrix |
|
||||
| ~later_updates~ | ~double[N_updates*LDS]~ | inout | Array containing the split updates for later |
|
||||
| ~later_updates~ | ~double[LDS*N_updates]~ | inout | Array containing the split updates for later |
|
||||
| ~later_index~ | ~uint64_t[N_updates]~ | inout | Array containing the positions of the split updates for later |
|
||||
| ~later~ | ~uint64_t~ | inout | Number of split updates for later |
|
||||
| ~determinant~ | ~double~ | inout | Determinant of the Slater-matrix |
|
||||
@ -928,11 +928,11 @@ end function qmckl_sm_splitting_core_doc_f
|
||||
#+end_src
|
||||
|
||||
**** C interface to the pedagogical kernel (not directly exposed)
|
||||
The following Fortran function ~qmckl_sm_splitting_core_doc~ makes sure
|
||||
that the pedagogical kernel ~qmckl_sm_splitting_core_doc_f~, written in
|
||||
Fortran, can be called from C using the ~ISO_C_BINDING~. The Fortran function
|
||||
~qmckl_sm_splitting_core_doc~ will be exposed in the header file 'qmckl.h'
|
||||
for C users and in the module file 'qmckl_f.F90' for Fortran users.
|
||||
The function ~qmckl_sm_splitting_core_doc~ makes sure that
|
||||
~qmckl_sm_splitting_core_doc_f~ can be called from C using the
|
||||
~ISO_C_BINDING~. Function ~qmckl_sm_splitting_core_doc~ will be
|
||||
exposed in ~qmckl.h~ and ~qmckl_f.F90~, but
|
||||
~qmckl_sm_splitting_core_doc_f~ will not.
|
||||
|
||||
#+CALL: generate_c_interface(table=qmckl_sm_splitting_core_args,rettyp=get_value("CRetType"),fname="qmckl_sm_splitting_core_doc")
|
||||
|
||||
@ -960,19 +960,16 @@ integer(c_int32_t) function qmckl_sm_splitting_core_doc &
|
||||
integer (c_int64_t) , intent(in) , value :: LDS
|
||||
integer (c_int64_t) , intent(in) , value :: Dim
|
||||
integer (c_int64_t) , intent(in) , value :: N_updates
|
||||
real (c_double ) , intent(in) :: Updates(N_updates*LDS)
|
||||
real (c_double ) , intent(in) :: Updates(LDS*N_updates)
|
||||
integer (c_int64_t) , intent(in) :: Updates_index(N_updates)
|
||||
real (c_double ) , intent(in) , value :: breakdown
|
||||
real (c_double ) , intent(inout) :: Slater_inv(Dim*LDS)
|
||||
real (c_double ) , intent(inout) :: later_updates(N_updates*LDS)
|
||||
real (c_double ) , intent(inout) :: later_updates(LDS*N_updates)
|
||||
integer (c_int64_t) , intent(inout) :: later_index(N_updates)
|
||||
integer (c_int64_t) , intent(inout) :: later
|
||||
real (c_double ) , intent(inout) :: determinant
|
||||
|
||||
integer(c_int32_t), external :: qmckl_sm_splitting_core_doc_f
|
||||
|
||||
write(*,*) "Entering 'qmckl_sm_splittinig_core_doc'"
|
||||
|
||||
info = qmckl_sm_splitting_core_doc_f &
|
||||
(context, &
|
||||
LDS, &
|
||||
@ -987,8 +984,6 @@ integer(c_int32_t) function qmckl_sm_splitting_core_doc &
|
||||
later, &
|
||||
determinant)
|
||||
|
||||
write(*,*) "Leaving 'qmckl_sm_splittinig_core_doc'"
|
||||
|
||||
end function qmckl_sm_splitting_core_doc
|
||||
#+end_src
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user