From e0abd84059121b9ce5eae7c5b114c629274e9680 Mon Sep 17 00:00:00 2001 From: Anthony Scemama Date: Fri, 23 Feb 2024 16:37:31 +0100 Subject: [PATCH] Fix Cray fortran errors --- org/qmckl_ao.org | 10 +++++----- org/qmckl_blas.org | 36 ++++++++++++++++++------------------ 2 files changed, 23 insertions(+), 23 deletions(-) diff --git a/org/qmckl_ao.org b/org/qmckl_ao.org index 5d16eeb..a50e560 100644 --- a/org/qmckl_ao.org +++ b/org/qmckl_ao.org @@ -3400,9 +3400,9 @@ function qmckl_ao_gaussian_vgl(context, X, R, n, A, VGL, ldv) & integer (qmckl_context) , intent(in) , value :: context real (c_double) , intent(in) :: X(3), R(3) integer (c_int64_t) , intent(in) , value :: n + integer (c_int64_t) , intent(in) , value :: ldv real (c_double) , intent(in) :: A(n) real (c_double) , intent(out) :: VGL(ldv,5) - integer (c_int64_t) , intent(in) , value :: ldv integer (qmckl_exit_code) :: info integer*8 :: i,j @@ -4532,10 +4532,10 @@ function qmckl_ao_polynomial_vgl_doc (context, & real (c_double ) , intent(in) :: R(3) integer (c_int32_t) , intent(in) , value :: lmax integer (c_int64_t) , intent(inout) :: n - integer (c_int32_t) , intent(out) :: L(ldl,(lmax+1)*(lmax+2)*(lmax+3)/6) integer (c_int64_t) , intent(in) , value :: ldl - real (c_double ) , intent(out) :: VGL(ldv,(lmax+1)*(lmax+2)*(lmax+3)/6) integer (c_int64_t) , intent(in) , value :: ldv + integer (c_int32_t) , intent(out) :: L(ldl,(lmax+1)*(lmax+2)*(lmax+3)/6) + real (c_double ) , intent(out) :: VGL(ldv,(lmax+1)*(lmax+2)*(lmax+3)/6) integer(qmckl_exit_code) :: info @@ -4788,10 +4788,10 @@ function qmckl_ao_polynomial_transp_vgl_doc (context, & real (c_double ) , intent(in) :: R(3) integer (c_int32_t) , intent(in) , value :: lmax integer (c_int64_t) , intent(inout) :: n - integer (c_int32_t) , intent(out) :: L(ldl,(lmax+1)*(lmax+2)*(lmax+3)/6) integer (c_int64_t) , intent(in) , value :: ldl - real (c_double ) , intent(out) :: VGL(ldv,5) integer (c_int64_t) , intent(in) , value :: ldv + integer (c_int32_t) , intent(out) :: L(ldl,(lmax+1)*(lmax+2)*(lmax+3)/6) + real (c_double ) , intent(out) :: VGL(ldv,5) integer(qmckl_exit_code) :: info diff --git a/org/qmckl_blas.org b/org/qmckl_blas.org index 9dd96d2..c9a4545 100644 --- a/org/qmckl_blas.org +++ b/org/qmckl_blas.org @@ -1757,10 +1757,10 @@ end function qmckl_adjugate #+begin_src f90 :tangle (eval f) :exports none subroutine adjugate2(A,LDA,B,LDB,na,det_l) implicit none - double precision, intent(in) :: A (LDA,na) - double precision, intent(out) :: B (LDA,na) integer*8, intent(in) :: LDA, LDB integer*8, intent(in) :: na + double precision, intent(in) :: A (LDA,na) + double precision, intent(out) :: B (LDB,na) double precision, intent(inout) :: det_l double precision :: C(2,2) @@ -1776,10 +1776,10 @@ end subroutine adjugate2 subroutine adjugate3(a,LDA,B,LDB,na,det_l) implicit none - double precision, intent(in) :: A (LDA,na) - double precision, intent(out) :: B (LDA,na) integer*8, intent(in) :: LDA, LDB integer*8, intent(in) :: na + double precision, intent(in) :: A (LDA,na) + double precision, intent(out) :: B (LDB,na) double precision, intent(inout) :: det_l double precision :: C(4,3) @@ -1800,10 +1800,10 @@ end subroutine adjugate3 subroutine adjugate4(a,LDA,B,LDB,na,det_l) implicit none - double precision, intent(in) :: A (LDA,na) - double precision, intent(out) :: B (LDA,na) integer*8, intent(in) :: LDA, LDB integer*8, intent(in) :: na + double precision, intent(in) :: A (LDA,na) + double precision, intent(out) :: B (LDB,na) double precision, intent(inout) :: det_l double precision :: C(4,4) @@ -1830,10 +1830,10 @@ end subroutine adjugate4 subroutine adjugate5(A,LDA,B,LDB,na,det_l) implicit none - double precision, intent(in) :: A (LDA,na) - double precision, intent(out) :: B (LDA,na) integer*8, intent(in) :: LDA, LDB integer*8, intent(in) :: na + double precision, intent(in) :: A (LDA,na) + double precision, intent(out) :: B (LDB,na) double precision, intent(inout) :: det_l double precision :: C(8,5) @@ -1870,10 +1870,10 @@ end subroutine adjugate5 subroutine cofactor2(a,LDA,b,LDB,na,det_l) implicit none - double precision, intent(in) :: A (LDA,na) - double precision, intent(out) :: B (LDA,na) integer*8, intent(in) :: LDA, LDB integer*8 :: na + double precision, intent(in) :: A (LDA,na) + double precision, intent(out) :: B (LDB,na) double precision :: det_l det_l = a(1,1)*a(2,2) - a(1,2)*a(2,1) @@ -1885,10 +1885,10 @@ end subroutine cofactor2 subroutine cofactor3(a,LDA,b,LDB,na,det_l) implicit none - double precision, intent(in) :: A (LDA,na) - double precision, intent(out) :: B (LDA,na) integer*8, intent(in) :: LDA, LDB integer*8, intent(in) :: na + double precision, intent(in) :: A (LDA,na) + double precision, intent(out) :: B (LDB,na) double precision, intent(inout) :: det_l integer :: i @@ -1912,10 +1912,10 @@ end subroutine cofactor3 subroutine cofactor4(a,LDA,b,LDB,na,det_l) implicit none - double precision, intent(in) :: A (LDA,na) - double precision, intent(out) :: B (LDA,na) integer*8, intent(in) :: LDA, LDB integer*8, intent(in) :: na + double precision, intent(in) :: A (LDA,na) + double precision, intent(out) :: B (LDB,na) double precision, intent(inout) :: det_l integer :: i,j det_l = a(1,1)*(a(2,2)*(a(3,3)*a(4,4)-a(3,4)*a(4,3)) & @@ -1955,10 +1955,10 @@ end subroutine cofactor4 subroutine cofactor5(A,LDA,B,LDB,na,det_l) implicit none - double precision, intent(in) :: A (LDA,na) - double precision, intent(out) :: B (LDA,na) integer*8, intent(in) :: LDA, LDB integer*8, intent(in) :: na + double precision, intent(in) :: A (LDA,na) + double precision, intent(out) :: B (LDB,na) double precision, intent(inout) :: det_l integer :: i,j @@ -2163,11 +2163,11 @@ subroutine adjugate_general(context, na, A, LDA, B, LDB, det_l) use qmckl implicit none integer(qmckl_context), intent(in) :: context - double precision, intent(in) :: A (LDA,na) integer*8, intent(in) :: LDA - double precision, intent(out) :: B (LDB,na) integer*8, intent(in) :: LDB integer*8, intent(in) :: na + double precision, intent(in) :: A (LDA,na) + double precision, intent(out) :: B (LDB,na) double precision, intent(inout) :: det_l double precision :: work(LDA*max(na,64))