1
0
mirror of https://github.com/TREX-CoE/qmckl.git synced 2024-07-22 18:57:40 +02:00

Renamed deriv_e in to gl

This commit is contained in:
Anthony Scemama 2023-05-24 11:12:15 +02:00
parent 19a0a4a675
commit 7987d6a18a
2 changed files with 771 additions and 770 deletions

View File

@ -1167,14 +1167,14 @@ end function qmckl_distance_rescaled_f
*** Test :noexport: *** Test :noexport:
* Rescaled Distance Derivatives * Rescaled Distance Derivatives
** ~qmckl_distance_rescaled_deriv_e~ ** ~qmckl_distance_rescaled_gl~
:PROPERTIES: :PROPERTIES:
:Name: qmckl_distance_rescaled_deriv_e :Name: qmckl_distance_rescaled_gl
:CRetType: qmckl_exit_code :CRetType: qmckl_exit_code
:FRetType: qmckl_exit_code :FRetType: qmckl_exit_code
:END: :END:
~qmckl_distance_rescaled_deriv_e~ computes the matrix of the gradient and laplacian of the ~qmckl_distance_rescaled_gl~ computes the matrix of the gradient and laplacian of the
rescaled distance with respect to the electron coordinates. The derivative is a rank 3 tensor. rescaled distance with respect to the electron coordinates. The derivative is a rank 3 tensor.
The first dimension has a dimension of 4 of which the first three coordinates The first dimension has a dimension of 4 of which the first three coordinates
contains the gradient vector and the last index is the laplacian. contains the gradient vector and the last index is the laplacian.
@ -1217,7 +1217,7 @@ end function qmckl_distance_rescaled_f
If the input array is normal (~'N'~), the xyz coordinates are in If the input array is normal (~'N'~), the xyz coordinates are in
the leading dimension: ~[n][3]~ in C and ~(3,n)~ in Fortran. the leading dimension: ~[n][3]~ in C and ~(3,n)~ in Fortran.
#+NAME: qmckl_distance_rescaled_deriv_e_args #+NAME: qmckl_distance_rescaled_gl_args
| Variable | Type | In/Out | Description | | Variable | Type | In/Out | Description |
|------------------------+---------------------+--------+-------------------------------------------------------| |------------------------+---------------------+--------+-------------------------------------------------------|
| ~context~ | ~qmckl_context~ | in | Global state | | ~context~ | ~qmckl_context~ | in | Global state |
@ -1247,11 +1247,11 @@ end function qmckl_distance_rescaled_f
- ~B~ is allocated with at least $3 \times n \times 8$ bytes - ~B~ is allocated with at least $3 \times n \times 8$ bytes
- ~C~ is allocated with at least $4 \times m \times n \times 8$ bytes - ~C~ is allocated with at least $4 \times m \times n \times 8$ bytes
#+CALL: generate_c_header(table=qmckl_distance_rescaled_deriv_e_args,rettyp=get_value("CRetType"),fname=get_value("Name")) #+CALL: generate_c_header(table=qmckl_distance_rescaled_gl_args,rettyp=get_value("CRetType"),fname=get_value("Name"))
#+RESULTS: #+RESULTS:
#+begin_src c :tangle (eval h_func) :comments org #+begin_src c :tangle (eval h_func) :comments org
qmckl_exit_code qmckl_distance_rescaled_deriv_e ( qmckl_exit_code qmckl_distance_rescaled_gl (
const qmckl_context context, const qmckl_context context,
const char transa, const char transa,
const char transb, const char transb,
@ -1267,7 +1267,7 @@ end function qmckl_distance_rescaled_f
#+end_src #+end_src
#+begin_src f90 :tangle (eval f) #+begin_src f90 :tangle (eval f)
integer function qmckl_distance_rescaled_deriv_e_f(context, transa, transb, m, n, & integer function qmckl_distance_rescaled_gl_f(context, transa, transb, m, n, &
A, LDA, B, LDB, C, LDC, rescale_factor_kappa) & A, LDA, B, LDB, C, LDC, rescale_factor_kappa) &
result(info) result(info)
use qmckl use qmckl
@ -1449,16 +1449,16 @@ integer function qmckl_distance_rescaled_deriv_e_f(context, transa, transb, m, n
end select end select
end function qmckl_distance_rescaled_deriv_e_f end function qmckl_distance_rescaled_gl_f
#+end_src #+end_src
This function is more efficient when ~A~ and ~B~ are transposed. This function is more efficient when ~A~ and ~B~ are transposed.
#+CALL: generate_c_interface(table=qmckl_distance_rescaled_deriv_e_args,fname=get_value("Name")) #+CALL: generate_c_interface(table=qmckl_distance_rescaled_gl_args,fname=get_value("Name"))
#+RESULTS: #+RESULTS:
#+begin_src f90 :tangle (eval f) :comments org :exports none #+begin_src f90 :tangle (eval f) :comments org :exports none
integer(c_int32_t) function qmckl_distance_rescaled_deriv_e & integer(c_int32_t) function qmckl_distance_rescaled_gl &
(context, transa, transb, m, n, A, lda, B, ldb, C, ldc, rescale_factor_kappa) & (context, transa, transb, m, n, A, lda, B, ldb, C, ldc, rescale_factor_kappa) &
bind(C) result(info) bind(C) result(info)
@ -1478,19 +1478,19 @@ end function qmckl_distance_rescaled_deriv_e_f
integer (c_int64_t) , intent(in) , value :: ldc integer (c_int64_t) , intent(in) , value :: ldc
real (c_double ) , intent(in) , value :: rescale_factor_kappa real (c_double ) , intent(in) , value :: rescale_factor_kappa
integer(c_int32_t), external :: qmckl_distance_rescaled_deriv_e_f integer(c_int32_t), external :: qmckl_distance_rescaled_gl_f
info = qmckl_distance_rescaled_deriv_e_f & info = qmckl_distance_rescaled_gl_f &
(context, transa, transb, m, n, A, lda, B, ldb, C, ldc, rescale_factor_kappa) (context, transa, transb, m, n, A, lda, B, ldb, C, ldc, rescale_factor_kappa)
end function qmckl_distance_rescaled_deriv_e end function qmckl_distance_rescaled_gl
#+end_src #+end_src
#+CALL: generate_f_interface(table=qmckl_distance_rescaled_deriv_e_args,rettyp=get_value("FRetType"),fname=get_value("Name")) #+CALL: generate_f_interface(table=qmckl_distance_rescaled_gl_args,rettyp=get_value("FRetType"),fname=get_value("Name"))
#+RESULTS: #+RESULTS:
#+begin_src f90 :tangle (eval fh_func) :comments org :exports none #+begin_src f90 :tangle (eval fh_func) :comments org :exports none
interface interface
integer(c_int32_t) function qmckl_distance_rescaled_deriv_e & integer(c_int32_t) function qmckl_distance_rescaled_gl &
(context, transa, transb, m, n, A, lda, B, ldb, C, ldc, rescale_factor_kappa) & (context, transa, transb, m, n, A, lda, B, ldb, C, ldc, rescale_factor_kappa) &
bind(C) bind(C)
use, intrinsic :: iso_c_binding use, intrinsic :: iso_c_binding
@ -1510,7 +1510,7 @@ end function qmckl_distance_rescaled_deriv_e_f
integer (c_int64_t) , intent(in) , value :: ldc integer (c_int64_t) , intent(in) , value :: ldc
real (c_double ) , intent(in) , value :: rescale_factor_kappa real (c_double ) , intent(in) , value :: rescale_factor_kappa
end function qmckl_distance_rescaled_deriv_e end function qmckl_distance_rescaled_gl
end interface end interface
#+end_src #+end_src

File diff suppressed because it is too large Load Diff