LCOV - code coverage report
Current view: top level - core - diff.f (source / functions) Hit Total Coverage
Test: FLEUR test coverage Lines: 11 11 100.0 %
Date: 2024-04-26 04:44:34 Functions: 1 1 100.0 %

          Line data    Source code
       1             :       MODULE m_diff
       2             : C   ******************************************************************  WAB07620
       3             : C   *                                                                *  WAB07630
       4             : C   *    <SUBROUTINE DIFF> DIFFERENTIATES THE POTENTIAL <V> IN THE   *  WAB07640
       5             : C   *    FIRST <N> NET POINTS.                                       *  WAB07650
       6             : C   *    <DX> IS THE INCREMENT IN THE LOGARITHMIC NET.               *  WAB07660
       7             : C   *    THE RESULT IS STORED IN <VM>.                               *  WAB07670
       8             : C   *                                                                *  WAB07680
       9             : C   ******************************************************************  WAB07690
      10             :       CONTAINS
      11        1328 :       SUBROUTINE diff(
      12        1328 :      >                mrad,v,dx,n,
      13        1328 :      <                vm)
      14             : 
      15             :       IMPLICIT NONE
      16             : 
      17             : C     .. Scalar Arguments ..
      18             :       INTEGER, INTENT (IN) :: mrad,n
      19             :       REAL   , INTENT (IN) :: dx
      20             : C     ..
      21             : C     .. Array Arguments ..
      22             :       REAL   , INTENT (IN) ::   v(mrad)
      23             :       REAL   , INTENT (OUT)::  vm(mrad)
      24             : C     ..
      25             : C     .. Local Scalars ..
      26             :       INTEGER i,nm2
      27             : C     ..
      28        1328 :       nm2 = n - 2
      29        1328 :       vm(1) = v(1)
      30             :       vm(2) = ((6.0*v(3)+6.6666666667*v(5)+1.20*v(7))-
      31        1328 :      +        (2.450*v(2)+7.50*v(4)+3.750*v(6)+1.0/6.0*v(8)))/dx
      32             : 
      33      378888 :       DO i = 3,nm2
      34      378888 :          vm(i) = ((v(i-2)+8.0*v(i+1))- (8.0*v(i-1)+v(i+2)))/12.0/dx
      35             :       ENDDO
      36             : 
      37        1328 :       vm(n-1) = (v(n)-v(n-2))/2.0/dx
      38        1328 :       vm(n) = (v(n-2)/2.0-2.0*v(n-1)+1.50*v(n))/dx
      39             : 
      40        1328 :       END SUBROUTINE diff
      41             :       END MODULE m_diff

Generated by: LCOV version 1.14