Commit 0302f34c authored by Andreas Marek's avatar Andreas Marek
Browse files

Cleanup of template include of elpa1_tridiag

parent acbecfbb
......@@ -199,85 +199,48 @@ module ELPA1_COMPUTE
#endif /* WANT_SINGLE_PRECISION_COMPLEX */
! real double precision
#define DOUBLE_PRECISION_REAL 1
#define REAL_DATATYPE rk8
#define REALCASE 1
#define DOUBLE_PRECISION 1
! remove? :
#undef COMPLEXCASE
#include "precision_macros.h"
#include "elpa1_compute_template.X90"
#undef DOUBLE_PRECISION_REAL
#undef REAL_DATATYPE
#undef REALCASE
#undef DOUBLE_PRECISION
! real single precision
#if defined(WANT_SINGLE_PRECISION_REAL)
#undef DOUBLE_PRECISION_REAL
#define REAL_DATATYPE rk4
#define REALCASE 1
#define SINGLE_PRECISION 1
!remove? :
#undef COMPLEXCASE
#include "precision_macros.h"
#include "elpa1_compute_template.X90"
#undef REALCASE
#undef SINGLE_PRECISION
#undef DOUBLE_PRECISION_REAL
#undef REAL_DATATYPE
#endif /* WANT_SINGLE_PRECISION_REAL */
! complex double precision
#define DOUBLE_PRECISION_COMPLEX 1
#define REAL_DATATYPE rk8
#define COMPLEX_DATATYPE ck8
#define COMPLEXCASE 1
#define DOUBLE_PRECISION 1
! remove? :
#undef REALCASE
#include "precision_macros.h"
#include "elpa1_compute_template.X90"
#undef COMPLEXCASE
#undef DOUBLE_PRECISION
#undef DOUBLE_PRECISION_COMPLEX
#undef REAL_DATATYPE
#undef COMPLEX_DATATYPE
! complex single precision
#if defined(WANT_SINGLE_PRECISION_COMPLEX)
#undef DOUBLE_PRECISION_COMPLEX
#define REAL_DATATYPE rk4
#define COMPLEX_DATATYPE ck4
#define COMPLEXCASE 1
#define SINGLE_PRECISION 1
!remove ? :
#undef REALCASE
#include "precision_macros.h"
#include "elpa1_compute_template.X90"
#undef COMPLEXCASE
#undef SINGLE_PRECISION
#undef DOUBLE_PRECISION_COMPLEX
#undef COMPLEX_DATATYPE
#undef REAL_DATATYPE
#endif /* WANT_SINGLE_PRECISION_COMPLEX */
end module ELPA1_compute
......@@ -52,8 +52,6 @@
! distributed along with the original code in the file "COPYING".
#endif
#include "precision_macros.h"
#if REALCASE == 1
!cannot use __FILE__ because filename with path can be too long for gfortran (max line length)
......
......@@ -4,6 +4,7 @@
#undef MATH_DATATYPE
#undef PRECISION
#undef PRECISION_STR
#undef REAL_DATATYPE
#undef PRECISION_GEMV
#undef PRECISION_TRMV
......@@ -47,6 +48,7 @@
#define PRECISION double
#define PRECISION_STR 'double'
#define PRECISION_SUFFIX "_double"
#define REAL_DATATYPE rk8
#define PRECISION_GEMV DGEMV
#define PRECISION_TRMV DTRMV
......@@ -87,6 +89,7 @@
#define PRECISION single
#define PRECISION_STR 'single'
#define PRECISION_SUFFIX "_single"
#define REAL_DATATYPE rk4
#define PRECISION_GEMV SGEMV
#define PRECISION_TRMV STRMV
......@@ -129,6 +132,10 @@
#undef DOUBLE_PRECISION_COMPLEX
#undef MATH_DATATYPE
#undef PRECISION
#undef COMPLEX_DATATYPE
/* in the complex case also sometime real valued variables are needed */
#undef REAL_DATATYPE
#undef PRECISION_STR
#undef PRECISION_GEMV
#undef PRECISION_TRMV
......@@ -182,6 +189,9 @@
#define PRECISION double
#define PRECISION_STR 'double'
#define PRECISION_SUFFIX "_double"
#define COMPLEX_DATATYPE CK8
#define REAL_DATATYPE RK8
#define PRECISION_GEMV ZGEMV
#define PRECISION_TRMV ZTRMV
#define PRECISION_GEMM ZGEMM
......@@ -230,6 +240,9 @@
#define PRECISION single
#define PRECISION_STR 'single'
#define PRECISION_SUFFIX "_single"
#define COMPLEX_DATATYPE CK4
#define REAL_DATATYPE RK4
#define PRECISION_GEMV CGEMV
#define PRECISION_TRMV CTRMV
#define PRECISION_GEMM CGEMM
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment