LCOV - code coverage report
Current view: top level - wannier/uhu - d2fdz2cmplx.F (source / functions) Hit Total Coverage
Test: FLEUR test coverage Lines: 0 22 0.0 %
Date: 2024-04-20 04:28:04 Functions: 0 1 0.0 %

          Line data    Source code
       1             :       MODULE m_d2fdz2cmplx
       2             :       CONTAINS
       3             : 
       4           0 :       SUBROUTINE d2fdz2cmplx(jmtd,jri,rmsh,dx,f,fac,d2f)
       5             : 
       6             :       USE m_difcub
       7             : 
       8             :       IMPLICIT NONE
       9             :       
      10             :       INTEGER, INTENT(IN) :: jmtd
      11             :       COMPLEX, INTENT(INOUT) :: d2f(jmtd)
      12             :       COMPLEX, INTENT(IN)    :: fac(jmtd)
      13             : 
      14             :       REAL, INTENT(IN)    :: f(jmtd)
      15             :       REAL, INTENT(IN)    :: rmsh(jmtd)
      16             :       REAL, INTENT(IN)    :: dx
      17             : 
      18             :       INTEGER, INTENT(IN) :: jri
      19             : 
      20           0 :       REAL, ALLOCATABLE :: fr(:),fi(:),dfr(:),dfi(:)
      21             :       INTEGER :: i
      22             : 
      23           0 :       allocate( dfr(jri),dfi(jri),fr(jri),fi(jri) )
      24           0 :       DO i=1,jri
      25           0 :        fr(i) = f(i)*real(fac(i))
      26           0 :        fi(i) = f(i)*aimag(fac(i))
      27             :       ENDDO
      28             : 
      29           0 :       dfr(1) = difcub( rmsh(1),fr(1),rmsh(1) )
      30           0 :       dfi(1) = difcub( rmsh(1),fi(1),rmsh(1) )
      31           0 :       DO i = 2, jri-2
      32           0 :          dfr(i) = difcub( rmsh(i-1),fr(i-1),rmsh(i) )
      33           0 :          dfi(i) = difcub( rmsh(i-1),fi(i-1),rmsh(i) )
      34             :       ENDDO
      35           0 :       dfr(jri-1) = difcub( rmsh(jri-3),fr(jri-3),rmsh(jri-1) )
      36           0 :       dfi(jri-1) = difcub( rmsh(jri-3),fi(jri-3),rmsh(jri-1) )
      37           0 :       dfr(jri) = difcub( rmsh(jri-3),fr(jri-3),rmsh(jri) )
      38           0 :       dfi(jri) = difcub( rmsh(jri-3),fi(jri-3),rmsh(jri) )
      39             : 
      40             : 
      41             :       d2f(1) = cmplx( difcub( rmsh(1),dfr(1),rmsh(1) ),
      42           0 :      >                difcub( rmsh(1),dfi(1),rmsh(1) ) )
      43           0 :       DO i = 2, jri-2
      44             :          d2f(i) = cmplx( difcub( rmsh(i-1),dfr(i-1),rmsh(i) ),
      45           0 :      >                   difcub( rmsh(i-1),dfi(i-1),rmsh(i) ) )
      46             :       ENDDO
      47             :       d2f(jri-1) = cmplx( difcub( rmsh(jri-3),dfr(jri-3),rmsh(jri-1) ),
      48           0 :      >                    difcub( rmsh(jri-3),dfi(jri-3),rmsh(jri-1) ) )
      49             :       d2f(jri) = cmplx( difcub( rmsh(jri-3),dfr(jri-3),rmsh(jri) ),
      50           0 :      >                  difcub( rmsh(jri-3),dfi(jri-3),rmsh(jri) ) )
      51             : 
      52           0 :       deallocate( dfr,dfi,fr,fi )
      53             : 
      54             : c      d2f = cmplx(0.,0.)
      55             : c      d2f(1) = (f(3)-2*f(2)+f(1))/dx/dx
      56             : c      do i=2,jri-1
      57             : c       d2f(i) = (f(i+1)-2*f(i)+f(i-1))/dx/dx
      58             : c      enddo
      59             : c      d2f(jri) = (f(jri-2)-2*f(jri-1)+f(jri))/dx/dx 
      60             : 
      61           0 :       END SUBROUTINE d2fdz2cmplx
      62             :       END MODULE m_d2fdz2cmplx

Generated by: LCOV version 1.14