elpa_solve_tridi.X90 808 Bytes
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include "sanity.X90"

      use elpa1_compute, solve_tridi_&
                         &PRECISION&
			 &_private => solve_tridi_&
			 &PRECISION
      use precision

      implicit none
      integer(kind=ik)         :: na, nev, ldq, nblk, matrixCols, mpi_comm_rows, mpi_comm_cols
      real(kind=REAL_DATATYPE) :: d(na), e(na)
#ifdef USE_ASSUMED_SIZE
      real(kind=REAL_DATATYPE) :: q(ldq,*)
#else
      real(kind=REAL_DATATYPE) :: q(ldq,matrixCols)
#endif

      logical, intent(in)      :: wantDebug
      logical :: success

      success = .false.

      call solve_tridi_&
      &PRECISION&
      &_private(na, nev, d, e, q, ldq, nblk, matrixCols, &
               mpi_comm_rows, mpi_comm_cols, wantDebug, success)

#undef REALCASE
#undef COMPLEXCASE
#undef DOUBLE_PRECISION
#undef SINGLE_PRECISION