LCOV - code coverage report
Current view: top level - src/elpa1/legacy_interface - elpa_invert_trm_c_interface_template.F90 (source / functions) Hit Total Coverage
Test: coverage_50ab7a7628bba174fc62cee3ab72b26e81f87fe5.info Lines: 0 10 0.0 %
Date: 2018-01-10 09:29:53 Functions: 0 4 0.0 %

          Line data    Source code
       1             : !    This file is part of ELPA.
       2             : !
       3             : !    The ELPA library was originally created by the ELPA consortium,
       4             : !    consisting of the following organizations:
       5             : !
       6             : !    - Max Planck Computing and Data Facility (MPCDF), formerly known as
       7             : !      Rechenzentrum Garching der Max-Planck-Gesellschaft (RZG),
       8             : !    - Bergische Universität Wuppertal, Lehrstuhl für angewandte
       9             : !      Informatik,
      10             : !    - Technische Universität München, Lehrstuhl für Informatik mit
      11             : !      Schwerpunkt Wissenschaftliches Rechnen ,
      12             : !    - Fritz-Haber-Institut, Berlin, Abt. Theorie,
      13             : !    - Max-Plack-Institut für Mathematik in den Naturwissenschaften,
      14             : !      Leipzig, Abt. Komplexe Strukutren in Biologie und Kognition,
      15             : !      and
      16             : !    - IBM Deutschland GmbH
      17             : !
      18             : !    This particular source code file contains additions, changes and
      19             : !    enhancements authored by Intel Corporation which is not part of
      20             : !    the ELPA consortium.
      21             : !
      22             : !    More information can be found here:
      23             : !    http://elpa.mpcdf.mpg.de/
      24             : !
      25             : !    ELPA is free software: you can redistribute it and/or modify
      26             : !    it under the terms of the version 3 of the license of the
      27             : !    GNU Lesser General Public License as published by the Free
      28             : !    Software Foundation.
      29             : !
      30             : !    ELPA is distributed in the hope that it will be useful,
      31             : !    but WITHOUT ANY WARRANTY; without even the implied warranty of
      32             : !    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
      33             : !    GNU Lesser General Public License for more details.
      34             : !
      35             : !    You should have received a copy of the GNU Lesser General Public License
      36             : !    along with ELPA.  If not, see <http://www.gnu.org/licenses/>
      37             : !
      38             : !    ELPA reflects a substantial effort on the part of the original
      39             : !    ELPA consortium, and we ask you to respect the spirit of the
      40             : !    license that we chose: i.e., please contribute any changes you
      41             : !    may have back to the original ELPA library distribution, and keep
      42             : !    any derivatives of ELPA under the same license that we chose for
      43             : !    the original distribution, the GNU Lesser General Public License.
      44             : !
      45             : !
      46             : ! ELPA1 -- Faster replacements for ScaLAPACK symmetric eigenvalue routines
      47             : !
      48             : ! Copyright of the original code rests with the authors inside the ELPA
      49             : ! consortium. The copyright of any additional modifications shall rest
      50             : ! with their original authors, but shall adhere to the licensing terms
      51             : ! distributed along with the original code in the file "COPYING".
      52             : !
      53             : ! Author: A. Marek, MPCDF
      54             : 
      55           0 : function elpa_invert_trm_&
      56             :   &MATH_DATATYPE&
      57             :   &_wrapper_&
      58             :   &PRECISION&
      59           0 :   & (na, a, lda, nblk, matrixCols, mpi_comm_rows, mpi_comm_cols, wantDebug) &
      60             :         result(success) bind(C,name="elpa_invert_trm_&
      61             :   &MATH_DATATYPE&
      62             :   &_&
      63             :   &PRECISION&
      64             :   &")
      65             :    use, intrinsic :: iso_c_binding
      66             :    use elpa1_auxiliary, only : elpa_invert_trm_&
      67             :    &MATH_DATATYPE&
      68             :    &_&
      69             :    &PRECISION
      70             : 
      71             :    implicit none
      72             : 
      73             :    integer(kind=c_int), value  :: na, lda, nblk, matrixCols, mpi_comm_rows, mpi_comm_cols
      74             :    integer(kind=c_int), value  :: wantDebug
      75             :    integer(kind=c_int)         :: success
      76             : #if REALCASE == 1
      77             : #ifdef USE_ASSUMED_SIZE
      78             :    real(kind=C_DATATYPE_KIND)  :: a(lda,*)
      79             : #else
      80             :    real(kind=C_DATATYPE_KIND)  :: a(lda,matrixCols)
      81             : #endif
      82             : #endif
      83             : #if COMPLEXCASE == 1
      84             : #ifdef USE_ASSUMED_SIZE
      85             :    complex(kind=C_DATATYPE_KIND)  :: a(lda,*)
      86             : #else
      87             :    complex(kind=C_DATATYPE_KIND)  :: a(lda,matrixCols)
      88             : #endif
      89             : #endif
      90             : 
      91             :    logical                     :: wantDebugFortran, successFortran
      92             : 
      93           0 :    if (wantDebug .ne. 0) then
      94           0 :      wantDebugFortran = .true.
      95             :    else
      96           0 :      wantDebugFortran = .false.
      97             :    endif
      98             : 
      99             :    successFortran = elpa_invert_trm_&
     100             :    &MATH_DATATYPE&
     101             :    &_&
     102             :    &PRECISION&
     103           0 :    & (na, a, lda, nblk, matrixCols, mpi_comm_rows, mpi_comm_cols, wantDebugFortran)
     104             : 
     105           0 :    if (successFortran) then
     106           0 :      success = 1
     107             :    else
     108           0 :      success = 0
     109             :    endif
     110             : 
     111           0 :  end function
     112             : 
     113             : 

Generated by: LCOV version 1.12