Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
elpa
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
14
Issues
14
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
Operations
Operations
Incidents
Environments
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
elpa
elpa
Commits
50033dc2
Commit
50033dc2
authored
Sep 28, 2016
by
Andreas Marek
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Rename preprocessor flag for using assumed size arrays
parent
65c8e0f3
Changes
15
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
104 additions
and
104 deletions
+104
-104
Makefile.am
Makefile.am
+2
-2
configure.ac
configure.ac
+6
-6
src/elpa1.F90
src/elpa1.F90
+2
-2
src/elpa1_auxiliary.F90
src/elpa1_auxiliary.F90
+7
-7
src/elpa1_compute_private.F90
src/elpa1_compute_private.F90
+7
-7
src/elpa2.F90
src/elpa2.F90
+2
-2
src/elpa2_compute.F90
src/elpa2_compute.F90
+11
-11
src/elpa2_kernels/elpa2_kernels_complex.F90
src/elpa2_kernels/elpa2_kernels_complex.F90
+15
-15
src/elpa2_kernels/elpa2_kernels_complex_simple.F90
src/elpa2_kernels/elpa2_kernels_complex_simple.F90
+2
-2
src/elpa2_kernels/elpa2_kernels_real.F90
src/elpa2_kernels/elpa2_kernels_real.F90
+11
-11
src/elpa2_kernels/elpa2_kernels_real_simple.F90
src/elpa2_kernels/elpa2_kernels_real_simple.F90
+1
-1
src/elpa_c_interface.F90
src/elpa_c_interface.F90
+11
-11
src/elpa_qr/elpa_pdgeqrf.F90
src/elpa_qr/elpa_pdgeqrf.F90
+18
-18
src/mod_compute_hh_trafo_complex.F90
src/mod_compute_hh_trafo_complex.F90
+4
-4
src/mod_compute_hh_trafo_real.F90
src/mod_compute_hh_trafo_real.F90
+5
-5
No files found.
Makefile.am
View file @
50033dc2
...
@@ -15,13 +15,13 @@ libelpa@SUFFIX@_public_la_SOURCES = \
...
@@ -15,13 +15,13 @@ libelpa@SUFFIX@_public_la_SOURCES = \
src/elpa2.F90
\
src/elpa2.F90
\
src/elpa1_auxiliary.F90
\
src/elpa1_auxiliary.F90
\
src/elpa2_utilities.F90
\
src/elpa2_utilities.F90
\
src/elpa_utilities.F90
src/elpa_utilities.F90
\
src/mod_precision.f90
# internal parts
# internal parts
noinst_LTLIBRARIES
+=
libelpa@SUFFIX@_private.la
noinst_LTLIBRARIES
+=
libelpa@SUFFIX@_private.la
libelpa@SUFFIX@
_private_la_FCFLAGS
=
$(AM_FCFLAGS)
@FC_MODOUT@private_modules @FC_MODINC@private_modules
libelpa@SUFFIX@
_private_la_FCFLAGS
=
$(AM_FCFLAGS)
@FC_MODOUT@private_modules @FC_MODINC@private_modules
libelpa@SUFFIX@
_private_la_SOURCES
=
\
libelpa@SUFFIX@
_private_la_SOURCES
=
\
src/mod_precision.f90
\
src/mod_mpi.F90
\
src/mod_mpi.F90
\
src/mod_mpi_stubs.F90
\
src/mod_mpi_stubs.F90
\
src/mod_pack_unpack_real.F90
\
src/mod_pack_unpack_real.F90
\
...
...
configure.ac
View file @
50033dc2
...
@@ -902,17 +902,17 @@ DX_MAN_FEATURE(ON)
...
@@ -902,17 +902,17 @@ DX_MAN_FEATURE(ON)
DX_HTML_FEATURE(ON)
DX_HTML_FEATURE(ON)
DX_INIT_DOXYGEN([ELPA], [Doxyfile], [docs])
DX_INIT_DOXYGEN([ELPA], [Doxyfile], [docs])
DESPERATELY_WANT
_ASSUMED_SIZE=no
USE
_ASSUMED_SIZE=no
AC_MSG_CHECKING(whether --enable-assumed-size is specified)
AC_MSG_CHECKING(whether --enable-assumed-size is specified)
AC_ARG_ENABLE([assumed-size],
AC_ARG_ENABLE([assumed-size],
AS_HELP_STRING([--enable-assumed-size],
AS_HELP_STRING([--enable-assumed-size],
[use assumed-size Fortran arrays]),
[use assumed-size Fortran arrays]),
[],
[],
[
DESPERATELY_WANT
_ASSUMED_SIZE=no])
[
USE
_ASSUMED_SIZE=no])
AC_MSG_RESULT([${
DESPERATELY_WANT
_ASSUMED_SIZE}])
AC_MSG_RESULT([${
USE
_ASSUMED_SIZE}])
AM_CONDITIONAL([WITH_
DESPERATELY_WANT_ASSUMED_SIZE],[test x"$DESPERATELY_WANT
_ASSUMED_SIZE" = x"yes"])
AM_CONDITIONAL([WITH_
USE_ASSUMED_SIZE],[test x"$USE
_ASSUMED_SIZE" = x"yes"])
if test x"${
DESPERATELY_WANT
_ASSUMED_SIZE}" = x"yes" ; then
if test x"${
USE
_ASSUMED_SIZE}" = x"yes" ; then
AC_DEFINE([
DESPERATELY_WANT
_ASSUMED_SIZE],[1],[use assumed size Fortran arrays, even if not debuggable])
AC_DEFINE([
USE
_ASSUMED_SIZE],[1],[use assumed size Fortran arrays, even if not debuggable])
fi
fi
AC_SUBST([MPI_BINARY])
AC_SUBST([MPI_BINARY])
...
...
src/elpa1.F90
View file @
50033dc2
...
@@ -319,7 +319,7 @@ function solve_evp_real_1stage(na, nev, a, lda, ev, q, ldq, nblk, matrixCols, mp
...
@@ -319,7 +319,7 @@ function solve_evp_real_1stage(na, nev, a, lda, ev, q, ldq, nblk, matrixCols, mp
integer
(
kind
=
ik
),
intent
(
in
)
::
na
,
nev
,
lda
,
ldq
,
nblk
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
integer
(
kind
=
ik
),
intent
(
in
)
::
na
,
nev
,
lda
,
ldq
,
nblk
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
real
(
kind
=
rk
)
::
ev
(
na
)
real
(
kind
=
rk
)
::
ev
(
na
)
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
real
(
kind
=
rk
)
::
a
(
lda
,
*
),
q
(
ldq
,
*
)
real
(
kind
=
rk
)
::
a
(
lda
,
*
),
q
(
ldq
,
*
)
#else
#else
real
(
kind
=
rk
)
::
a
(
lda
,
matrixCols
),
q
(
ldq
,
matrixCols
)
real
(
kind
=
rk
)
::
a
(
lda
,
matrixCols
),
q
(
ldq
,
matrixCols
)
...
@@ -425,7 +425,7 @@ function solve_evp_complex_1stage(na, nev, a, lda, ev, q, ldq, nblk, matrixCols,
...
@@ -425,7 +425,7 @@ function solve_evp_complex_1stage(na, nev, a, lda, ev, q, ldq, nblk, matrixCols,
implicit
none
implicit
none
integer
(
kind
=
ik
),
intent
(
in
)
::
na
,
nev
,
lda
,
ldq
,
nblk
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
integer
(
kind
=
ik
),
intent
(
in
)
::
na
,
nev
,
lda
,
ldq
,
nblk
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
complex
(
kind
=
ck
)
::
a
(
lda
,
*
),
q
(
ldq
,
*
)
complex
(
kind
=
ck
)
::
a
(
lda
,
*
),
q
(
ldq
,
*
)
#else
#else
complex
(
kind
=
ck
)
::
a
(
lda
,
matrixCols
),
q
(
ldq
,
matrixCols
)
complex
(
kind
=
ck
)
::
a
(
lda
,
matrixCols
),
q
(
ldq
,
matrixCols
)
...
...
src/elpa1_auxiliary.F90
View file @
50033dc2
...
@@ -254,7 +254,7 @@ module elpa1_auxiliary
...
@@ -254,7 +254,7 @@ module elpa1_auxiliary
implicit
none
implicit
none
integer
(
kind
=
ik
)
::
na
,
lda
,
nblk
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
integer
(
kind
=
ik
)
::
na
,
lda
,
nblk
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
real
(
kind
=
rk
)
::
a
(
lda
,
*
)
real
(
kind
=
rk
)
::
a
(
lda
,
*
)
#else
#else
real
(
kind
=
rk
)
::
a
(
lda
,
matrixCols
)
real
(
kind
=
rk
)
::
a
(
lda
,
matrixCols
)
...
@@ -457,7 +457,7 @@ module elpa1_auxiliary
...
@@ -457,7 +457,7 @@ module elpa1_auxiliary
implicit
none
implicit
none
integer
(
kind
=
ik
)
::
na
,
lda
,
nblk
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
integer
(
kind
=
ik
)
::
na
,
lda
,
nblk
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
real
(
kind
=
rk
)
::
a
(
lda
,
*
)
real
(
kind
=
rk
)
::
a
(
lda
,
*
)
#else
#else
real
(
kind
=
rk
)
::
a
(
lda
,
matrixCols
)
real
(
kind
=
rk
)
::
a
(
lda
,
matrixCols
)
...
@@ -619,7 +619,7 @@ module elpa1_auxiliary
...
@@ -619,7 +619,7 @@ module elpa1_auxiliary
implicit
none
implicit
none
integer
(
kind
=
ik
)
::
na
,
lda
,
nblk
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
integer
(
kind
=
ik
)
::
na
,
lda
,
nblk
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
complex
(
kind
=
ck
)
::
a
(
lda
,
*
)
complex
(
kind
=
ck
)
::
a
(
lda
,
*
)
#else
#else
complex
(
kind
=
ck
)
::
a
(
lda
,
matrixCols
)
complex
(
kind
=
ck
)
::
a
(
lda
,
matrixCols
)
...
@@ -821,7 +821,7 @@ module elpa1_auxiliary
...
@@ -821,7 +821,7 @@ module elpa1_auxiliary
implicit
none
implicit
none
integer
(
kind
=
ik
)
::
na
,
lda
,
nblk
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
integer
(
kind
=
ik
)
::
na
,
lda
,
nblk
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
complex
(
kind
=
ck
)
::
a
(
lda
,
*
)
complex
(
kind
=
ck
)
::
a
(
lda
,
*
)
#else
#else
complex
(
kind
=
ck
)
::
a
(
lda
,
matrixCols
)
complex
(
kind
=
ck
)
::
a
(
lda
,
matrixCols
)
...
@@ -1004,7 +1004,7 @@ module elpa1_auxiliary
...
@@ -1004,7 +1004,7 @@ module elpa1_auxiliary
integer
(
kind
=
ik
)
::
na
,
ncb
,
lda
,
ldb
,
nblk
,
mpi_comm_rows
,
mpi_comm_cols
,
ldc
integer
(
kind
=
ik
)
::
na
,
ncb
,
lda
,
ldb
,
nblk
,
mpi_comm_rows
,
mpi_comm_cols
,
ldc
integer
(
kind
=
ik
)
::
ldaCols
,
ldbCols
,
ldcCols
integer
(
kind
=
ik
)
::
ldaCols
,
ldbCols
,
ldcCols
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
real
(
kind
=
rk
)
::
a
(
lda
,
*
),
b
(
ldb
,
*
),
c
(
ldc
,
*
)
real
(
kind
=
rk
)
::
a
(
lda
,
*
),
b
(
ldb
,
*
),
c
(
ldc
,
*
)
#else
#else
real
(
kind
=
rk
)
::
a
(
lda
,
ldaCols
),
b
(
ldb
,
ldbCols
),
c
(
ldc
,
ldcCols
)
real
(
kind
=
rk
)
::
a
(
lda
,
ldaCols
),
b
(
ldb
,
ldbCols
),
c
(
ldc
,
ldcCols
)
...
@@ -1268,7 +1268,7 @@ module elpa1_auxiliary
...
@@ -1268,7 +1268,7 @@ module elpa1_auxiliary
integer
(
kind
=
ik
)
::
na
,
ncb
,
lda
,
ldb
,
nblk
,
mpi_comm_rows
,
mpi_comm_cols
,
ldc
integer
(
kind
=
ik
)
::
na
,
ncb
,
lda
,
ldb
,
nblk
,
mpi_comm_rows
,
mpi_comm_cols
,
ldc
integer
(
kind
=
ik
)
::
ldaCols
,
ldbCols
,
ldcCols
integer
(
kind
=
ik
)
::
ldaCols
,
ldbCols
,
ldcCols
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
complex
(
kind
=
ck
)
::
a
(
lda
,
*
),
b
(
ldb
,
*
),
c
(
ldc
,
*
)
complex
(
kind
=
ck
)
::
a
(
lda
,
*
),
b
(
ldb
,
*
),
c
(
ldc
,
*
)
#else
#else
complex
(
kind
=
ck
)
::
a
(
lda
,
ldaCols
),
b
(
ldb
,
ldbCols
),
c
(
ldc
,
ldcCols
)
complex
(
kind
=
ck
)
::
a
(
lda
,
ldaCols
),
b
(
ldb
,
ldbCols
),
c
(
ldc
,
ldcCols
)
...
@@ -1507,7 +1507,7 @@ module elpa1_auxiliary
...
@@ -1507,7 +1507,7 @@ module elpa1_auxiliary
implicit
none
implicit
none
integer
(
kind
=
ik
)
::
na
,
nev
,
ldq
,
nblk
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
integer
(
kind
=
ik
)
::
na
,
nev
,
ldq
,
nblk
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
real
(
kind
=
rk
)
::
d
(
na
),
e
(
na
)
real
(
kind
=
rk
)
::
d
(
na
),
e
(
na
)
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
real
(
kind
=
rk
)
::
q
(
ldq
,
*
)
real
(
kind
=
rk
)
::
q
(
ldq
,
*
)
#else
#else
real
(
kind
=
rk
)
::
q
(
ldq
,
matrixCols
)
real
(
kind
=
rk
)
::
q
(
ldq
,
matrixCols
)
...
...
src/elpa1_compute_private.F90
View file @
50033dc2
...
@@ -129,7 +129,7 @@ module ELPA1_compute
...
@@ -129,7 +129,7 @@ module ELPA1_compute
integer
(
kind
=
ik
)
::
na
,
lda
,
nblk
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
integer
(
kind
=
ik
)
::
na
,
lda
,
nblk
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
real
(
kind
=
rk
)
::
d
(
na
),
e
(
na
),
tau
(
na
)
real
(
kind
=
rk
)
::
d
(
na
),
e
(
na
),
tau
(
na
)
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
real
(
kind
=
rk
)
::
a
(
lda
,
*
)
real
(
kind
=
rk
)
::
a
(
lda
,
*
)
#else
#else
real
(
kind
=
rk
)
::
a
(
lda
,
matrixCols
)
real
(
kind
=
rk
)
::
a
(
lda
,
matrixCols
)
...
@@ -548,7 +548,7 @@ module ELPA1_compute
...
@@ -548,7 +548,7 @@ module ELPA1_compute
integer
(
kind
=
ik
)
::
na
,
nqc
,
lda
,
ldq
,
nblk
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
integer
(
kind
=
ik
)
::
na
,
nqc
,
lda
,
ldq
,
nblk
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
real
(
kind
=
rk
)
::
tau
(
na
)
real
(
kind
=
rk
)
::
tau
(
na
)
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
real
(
kind
=
rk
)
::
a
(
lda
,
*
),
q
(
ldq
,
*
)
real
(
kind
=
rk
)
::
a
(
lda
,
*
),
q
(
ldq
,
*
)
#else
#else
real
(
kind
=
rk
)
::
a
(
lda
,
matrixCols
),
q
(
ldq
,
matrixCols
)
real
(
kind
=
rk
)
::
a
(
lda
,
matrixCols
),
q
(
ldq
,
matrixCols
)
...
@@ -783,7 +783,7 @@ module ELPA1_compute
...
@@ -783,7 +783,7 @@ module ELPA1_compute
integer
(
kind
=
ik
)
::
na
,
lda
,
nblk
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
integer
(
kind
=
ik
)
::
na
,
lda
,
nblk
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
complex
(
kind
=
ck
)
::
tau
(
na
)
complex
(
kind
=
ck
)
::
tau
(
na
)
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
complex
(
kind
=
ck
)
::
a
(
lda
,
*
)
complex
(
kind
=
ck
)
::
a
(
lda
,
*
)
#else
#else
complex
(
kind
=
ck
)
::
a
(
lda
,
matrixCols
)
complex
(
kind
=
ck
)
::
a
(
lda
,
matrixCols
)
...
@@ -1228,7 +1228,7 @@ module ELPA1_compute
...
@@ -1228,7 +1228,7 @@ module ELPA1_compute
integer
(
kind
=
ik
)
::
na
,
nqc
,
lda
,
ldq
,
nblk
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
integer
(
kind
=
ik
)
::
na
,
nqc
,
lda
,
ldq
,
nblk
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
complex
(
kind
=
ck
)
::
tau
(
na
)
complex
(
kind
=
ck
)
::
tau
(
na
)
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
complex
(
kind
=
ck
)
::
a
(
lda
,
*
),
q
(
ldq
,
*
)
complex
(
kind
=
ck
)
::
a
(
lda
,
*
),
q
(
ldq
,
*
)
#else
#else
complex
(
kind
=
ck
)
::
a
(
lda
,
matrixCols
),
q
(
ldq
,
matrixCols
)
complex
(
kind
=
ck
)
::
a
(
lda
,
matrixCols
),
q
(
ldq
,
matrixCols
)
...
@@ -1430,7 +1430,7 @@ module ELPA1_compute
...
@@ -1430,7 +1430,7 @@ module ELPA1_compute
integer
(
kind
=
ik
)
::
na
,
nev
,
ldq
,
nblk
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
integer
(
kind
=
ik
)
::
na
,
nev
,
ldq
,
nblk
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
real
(
kind
=
rk
)
::
d
(
na
),
e
(
na
)
real
(
kind
=
rk
)
::
d
(
na
),
e
(
na
)
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
real
(
kind
=
rk
)
::
q
(
ldq
,
*
)
real
(
kind
=
rk
)
::
q
(
ldq
,
*
)
#else
#else
real
(
kind
=
rk
)
::
q
(
ldq
,
matrixCols
)
real
(
kind
=
rk
)
::
q
(
ldq
,
matrixCols
)
...
@@ -1709,7 +1709,7 @@ module ELPA1_compute
...
@@ -1709,7 +1709,7 @@ module ELPA1_compute
integer
(
kind
=
ik
)
::
na
,
nev
,
nqoff
,
ldq
,
nblk
,
matrixCols
,
mpi_comm_rows
integer
(
kind
=
ik
)
::
na
,
nev
,
nqoff
,
ldq
,
nblk
,
matrixCols
,
mpi_comm_rows
real
(
kind
=
rk
)
::
d
(
na
),
e
(
na
)
real
(
kind
=
rk
)
::
d
(
na
),
e
(
na
)
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
real
(
kind
=
rk
)
::
q
(
ldq
,
*
)
real
(
kind
=
rk
)
::
q
(
ldq
,
*
)
#else
#else
real
(
kind
=
rk
)
::
q
(
ldq
,
matrixCols
)
real
(
kind
=
rk
)
::
q
(
ldq
,
matrixCols
)
...
@@ -2041,7 +2041,7 @@ module ELPA1_compute
...
@@ -2041,7 +2041,7 @@ module ELPA1_compute
mpi_comm_cols
,
npc_0
,
npc_n
mpi_comm_cols
,
npc_0
,
npc_n
integer
(
kind
=
ik
)
::
l_col
(
na
),
p_col
(
na
),
l_col_out
(
na
),
p_col_out
(
na
)
integer
(
kind
=
ik
)
::
l_col
(
na
),
p_col
(
na
),
l_col_out
(
na
),
p_col_out
(
na
)
real
(
kind
=
rk
)
::
d
(
na
),
e
real
(
kind
=
rk
)
::
d
(
na
),
e
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
real
(
kind
=
rk
)
::
q
(
ldq
,
*
)
real
(
kind
=
rk
)
::
q
(
ldq
,
*
)
#else
#else
real
(
kind
=
rk
)
::
q
(
ldq
,
matrixCols
)
real
(
kind
=
rk
)
::
q
(
ldq
,
matrixCols
)
...
...
src/elpa2.F90
View file @
50033dc2
...
@@ -145,7 +145,7 @@ function solve_evp_real_2stage(na, nev, a, lda, ev, q, ldq, nblk, &
...
@@ -145,7 +145,7 @@ function solve_evp_real_2stage(na, nev, a, lda, ev, q, ldq, nblk, &
mpi_comm_cols
,
mpi_comm_all
mpi_comm_cols
,
mpi_comm_all
integer
(
kind
=
ik
),
intent
(
in
)
::
nblk
integer
(
kind
=
ik
),
intent
(
in
)
::
nblk
real
(
kind
=
rk
),
intent
(
inout
)
::
ev
(
na
)
real
(
kind
=
rk
),
intent
(
inout
)
::
ev
(
na
)
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
real
(
kind
=
rk
),
intent
(
inout
)
::
a
(
lda
,
*
),
q
(
ldq
,
*
)
real
(
kind
=
rk
),
intent
(
inout
)
::
a
(
lda
,
*
),
q
(
ldq
,
*
)
#else
#else
real
(
kind
=
rk
),
intent
(
inout
)
::
a
(
lda
,
matrixCols
),
q
(
ldq
,
matrixCols
)
real
(
kind
=
rk
),
intent
(
inout
)
::
a
(
lda
,
matrixCols
),
q
(
ldq
,
matrixCols
)
...
@@ -385,7 +385,7 @@ function solve_evp_complex_2stage(na, nev, a, lda, ev, q, ldq, nblk, &
...
@@ -385,7 +385,7 @@ function solve_evp_complex_2stage(na, nev, a, lda, ev, q, ldq, nblk, &
integer
(
kind
=
ik
),
intent
(
in
),
optional
::
THIS_COMPLEX_ELPA_KERNEL_API
integer
(
kind
=
ik
),
intent
(
in
),
optional
::
THIS_COMPLEX_ELPA_KERNEL_API
integer
(
kind
=
ik
)
::
THIS_COMPLEX_ELPA_KERNEL
integer
(
kind
=
ik
)
::
THIS_COMPLEX_ELPA_KERNEL
integer
(
kind
=
ik
),
intent
(
in
)
::
na
,
nev
,
lda
,
ldq
,
nblk
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
,
mpi_comm_all
integer
(
kind
=
ik
),
intent
(
in
)
::
na
,
nev
,
lda
,
ldq
,
nblk
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
,
mpi_comm_all
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
complex
(
kind
=
ck
),
intent
(
inout
)
::
a
(
lda
,
*
),
q
(
ldq
,
*
)
complex
(
kind
=
ck
),
intent
(
inout
)
::
a
(
lda
,
*
),
q
(
ldq
,
*
)
#else
#else
complex
(
kind
=
ck
),
intent
(
inout
)
::
a
(
lda
,
matrixCols
),
q
(
ldq
,
matrixCols
)
complex
(
kind
=
ck
),
intent
(
inout
)
::
a
(
lda
,
matrixCols
),
q
(
ldq
,
matrixCols
)
...
...
src/elpa2_compute.F90
View file @
50033dc2
...
@@ -138,7 +138,7 @@ module ELPA2_compute
...
@@ -138,7 +138,7 @@ module ELPA2_compute
implicit
none
implicit
none
integer
(
kind
=
ik
)
::
na
,
lda
,
nblk
,
nbw
,
matrixCols
,
numBlocks
,
mpi_comm_rows
,
mpi_comm_cols
integer
(
kind
=
ik
)
::
na
,
lda
,
nblk
,
nbw
,
matrixCols
,
numBlocks
,
mpi_comm_rows
,
mpi_comm_cols
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
real
(
kind
=
rk
)
::
a
(
lda
,
*
),
tmat
(
nbw
,
nbw
,
*
)
real
(
kind
=
rk
)
::
a
(
lda
,
*
),
tmat
(
nbw
,
nbw
,
*
)
#else
#else
real
(
kind
=
rk
)
::
a
(
lda
,
matrixCols
),
tmat
(
nbw
,
nbw
,
numBlocks
)
real
(
kind
=
rk
)
::
a
(
lda
,
matrixCols
),
tmat
(
nbw
,
nbw
,
numBlocks
)
...
@@ -204,7 +204,7 @@ module ELPA2_compute
...
@@ -204,7 +204,7 @@ module ELPA2_compute
allocate
(
vmr
(
max
(
l_rows
,
1
),
na
))
allocate
(
vmr
(
max
(
l_rows
,
1
),
na
))
vmrCols
=
na
vmrCols
=
na
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE_QR
#ifdef
USE
_ASSUMED_SIZE_QR
call
qr_pdgeqrf_2dcomm
(
a
,
lda
,
matrixCols
,
vmr
,
max
(
l_rows
,
1
),
vmrCols
,
tauvector
(
1
),
na
,
tmat
(
1
,
1
,
1
),
&
call
qr_pdgeqrf_2dcomm
(
a
,
lda
,
matrixCols
,
vmr
,
max
(
l_rows
,
1
),
vmrCols
,
tauvector
(
1
),
na
,
tmat
(
1
,
1
,
1
),
&
nbw
,
nbw
,
dwork_size
,
1
,
-1
,
na
,
nbw
,
nblk
,
nblk
,
na
,
na
,
1
,
0
,
PQRPARAM
(
1
:
11
),
&
nbw
,
nbw
,
dwork_size
,
1
,
-1
,
na
,
nbw
,
nblk
,
nblk
,
na
,
na
,
1
,
0
,
PQRPARAM
(
1
:
11
),
&
mpi_comm_rows
,
mpi_comm_cols
,
blockheuristic
)
mpi_comm_rows
,
mpi_comm_cols
,
blockheuristic
)
...
@@ -248,7 +248,7 @@ module ELPA2_compute
...
@@ -248,7 +248,7 @@ module ELPA2_compute
if
(
which_qr_decomposition
==
1
)
then
if
(
which_qr_decomposition
==
1
)
then
vmrCols
=
2
*
n_cols
vmrCols
=
2
*
n_cols
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE_QR
#ifdef
USE
_ASSUMED_SIZE_QR
call
qr_pdgeqrf_2dcomm
(
a
,
lda
,
matrixCols
,
vmr
,
max
(
l_rows
,
1
),
vmrCols
,
tauvector
(
1
),
&
call
qr_pdgeqrf_2dcomm
(
a
,
lda
,
matrixCols
,
vmr
,
max
(
l_rows
,
1
),
vmrCols
,
tauvector
(
1
),
&
na
,
tmat
(
1
,
1
,
istep
),
nbw
,
nbw
,
work_blocked
,
work_size
,
&
na
,
tmat
(
1
,
1
,
istep
),
nbw
,
nbw
,
work_blocked
,
work_size
,
&
work_size
,
na
,
n_cols
,
nblk
,
nblk
,
&
work_size
,
na
,
n_cols
,
nblk
,
nblk
,
&
...
@@ -650,7 +650,7 @@ module ELPA2_compute
...
@@ -650,7 +650,7 @@ module ELPA2_compute
use
precision
use
precision
implicit
none
implicit
none
integer
(
kind
=
ik
)
::
n
,
lda
,
ldb
,
comm
integer
(
kind
=
ik
)
::
n
,
lda
,
ldb
,
comm
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
real
(
kind
=
rk
)
::
a
(
lda
,
*
)
real
(
kind
=
rk
)
::
a
(
lda
,
*
)
#else
#else
real
(
kind
=
rk
)
::
a
(
lda
,
ldb
)
real
(
kind
=
rk
)
::
a
(
lda
,
ldb
)
...
@@ -727,7 +727,7 @@ module ELPA2_compute
...
@@ -727,7 +727,7 @@ module ELPA2_compute
implicit
none
implicit
none
integer
(
kind
=
ik
)
::
na
,
nqc
,
lda
,
ldq
,
nblk
,
nbw
,
matrixCols
,
numBlocks
,
mpi_comm_rows
,
mpi_comm_cols
integer
(
kind
=
ik
)
::
na
,
nqc
,
lda
,
ldq
,
nblk
,
nbw
,
matrixCols
,
numBlocks
,
mpi_comm_rows
,
mpi_comm_cols
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
real
(
kind
=
rk
)
::
a
(
lda
,
*
),
q
(
ldq
,
*
),
tmat
(
nbw
,
nbw
,
*
)
real
(
kind
=
rk
)
::
a
(
lda
,
*
),
q
(
ldq
,
*
),
tmat
(
nbw
,
nbw
,
*
)
#else
#else
real
(
kind
=
rk
)
::
a
(
lda
,
matrixCols
),
q
(
ldq
,
matrixCols
),
tmat
(
nbw
,
nbw
,
numBlocks
)
real
(
kind
=
rk
)
::
a
(
lda
,
matrixCols
),
q
(
ldq
,
matrixCols
),
tmat
(
nbw
,
nbw
,
numBlocks
)
...
@@ -987,7 +987,7 @@ module ELPA2_compute
...
@@ -987,7 +987,7 @@ module ELPA2_compute
implicit
none
implicit
none
integer
(
kind
=
ik
),
intent
(
in
)
::
na
,
nb
,
nblk
,
lda
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
,
mpi_comm
integer
(
kind
=
ik
),
intent
(
in
)
::
na
,
nb
,
nblk
,
lda
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
,
mpi_comm
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
real
(
kind
=
rk
),
intent
(
in
)
::
a
(
lda
,
*
)
real
(
kind
=
rk
),
intent
(
in
)
::
a
(
lda
,
*
)
#else
#else
real
(
kind
=
rk
),
intent
(
in
)
::
a
(
lda
,
matrixCols
)
real
(
kind
=
rk
),
intent
(
in
)
::
a
(
lda
,
matrixCols
)
...
@@ -1751,7 +1751,7 @@ module ELPA2_compute
...
@@ -1751,7 +1751,7 @@ module ELPA2_compute
integer
(
kind
=
ik
),
intent
(
in
)
::
THIS_REAL_ELPA_KERNEL
integer
(
kind
=
ik
),
intent
(
in
)
::
THIS_REAL_ELPA_KERNEL
integer
(
kind
=
ik
),
intent
(
in
)
::
na
,
nev
,
nblk
,
nbw
,
ldq
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
integer
(
kind
=
ik
),
intent
(
in
)
::
na
,
nev
,
nblk
,
nbw
,
ldq
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
real
(
kind
=
rk
)
::
q
(
ldq
,
*
)
real
(
kind
=
rk
)
::
q
(
ldq
,
*
)
#else
#else
real
(
kind
=
rk
)
::
q
(
ldq
,
matrixCols
)
real
(
kind
=
rk
)
::
q
(
ldq
,
matrixCols
)
...
@@ -2926,7 +2926,7 @@ top_msg_length, current_local_n-top_msg_length-bottom_msg_length, i, &
...
@@ -2926,7 +2926,7 @@ top_msg_length, current_local_n-top_msg_length-bottom_msg_length, i, &
implicit
none
implicit
none
integer
(
kind
=
ik
)
::
na
,
lda
,
nblk
,
nbw
,
matrixCols
,
numBlocks
,
mpi_comm_rows
,
mpi_comm_cols
integer
(
kind
=
ik
)
::
na
,
lda
,
nblk
,
nbw
,
matrixCols
,
numBlocks
,
mpi_comm_rows
,
mpi_comm_cols
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
complex
(
kind
=
ck
)
::
a
(
lda
,
*
),
tmat
(
nbw
,
nbw
,
*
)
complex
(
kind
=
ck
)
::
a
(
lda
,
*
),
tmat
(
nbw
,
nbw
,
*
)
#else
#else
complex
(
kind
=
ck
)
::
a
(
lda
,
matrixCols
),
tmat
(
nbw
,
nbw
,
numBlocks
)
complex
(
kind
=
ck
)
::
a
(
lda
,
matrixCols
),
tmat
(
nbw
,
nbw
,
numBlocks
)
...
@@ -3293,7 +3293,7 @@ top_msg_length, current_local_n-top_msg_length-bottom_msg_length, i, &
...
@@ -3293,7 +3293,7 @@ top_msg_length, current_local_n-top_msg_length-bottom_msg_length, i, &
implicit
none
implicit
none
integer
(
kind
=
ik
)
::
na
,
nqc
,
lda
,
ldq
,
nblk
,
nbw
,
matrixCols
,
numBlocks
,
mpi_comm_rows
,
mpi_comm_cols
integer
(
kind
=
ik
)
::
na
,
nqc
,
lda
,
ldq
,
nblk
,
nbw
,
matrixCols
,
numBlocks
,
mpi_comm_rows
,
mpi_comm_cols
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
complex
(
kind
=
ck
)
::
a
(
lda
,
*
),
q
(
ldq
,
*
),
tmat
(
nbw
,
nbw
,
*
)
complex
(
kind
=
ck
)
::
a
(
lda
,
*
),
q
(
ldq
,
*
),
tmat
(
nbw
,
nbw
,
*
)
#else
#else
complex
(
kind
=
ck
)
::
a
(
lda
,
matrixCols
),
q
(
ldq
,
matrixCols
),
tmat
(
nbw
,
nbw
,
numBlocks
)
complex
(
kind
=
ck
)
::
a
(
lda
,
matrixCols
),
q
(
ldq
,
matrixCols
),
tmat
(
nbw
,
nbw
,
numBlocks
)
...
@@ -3440,7 +3440,7 @@ top_msg_length, current_local_n-top_msg_length-bottom_msg_length, i, &
...
@@ -3440,7 +3440,7 @@ top_msg_length, current_local_n-top_msg_length-bottom_msg_length, i, &
implicit
none
implicit
none
integer
(
kind
=
ik
),
intent
(
in
)
::
na
,
nb
,
nblk
,
lda
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
,
mpi_comm
integer
(
kind
=
ik
),
intent
(
in
)
::
na
,
nb
,
nblk
,
lda
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
,
mpi_comm
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
complex
(
kind
=
ck
),
intent
(
in
)
::
a
(
lda
,
*
)
complex
(
kind
=
ck
),
intent
(
in
)
::
a
(
lda
,
*
)
#else
#else
complex
(
kind
=
ck
),
intent
(
in
)
::
a
(
lda
,
matrixCols
)
complex
(
kind
=
ck
),
intent
(
in
)
::
a
(
lda
,
matrixCols
)
...
@@ -4182,7 +4182,7 @@ top_msg_length, current_local_n-top_msg_length-bottom_msg_length, i, &
...
@@ -4182,7 +4182,7 @@ top_msg_length, current_local_n-top_msg_length-bottom_msg_length, i, &
integer
(
kind
=
ik
),
intent
(
in
)
::
THIS_COMPLEX_ELPA_KERNEL
integer
(
kind
=
ik
),
intent
(
in
)
::
THIS_COMPLEX_ELPA_KERNEL
integer
(
kind
=
ik
),
intent
(
in
)
::
na
,
nev
,
nblk
,
nbw
,
ldq
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
integer
(
kind
=
ik
),
intent
(
in
)
::
na
,
nev
,
nblk
,
nbw
,
ldq
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
complex
(
kind
=
ck
)
::
q
(
ldq
,
*
)
complex
(
kind
=
ck
)
::
q
(
ldq
,
*
)
#else
#else
complex
(
kind
=
ck
)
::
q
(
ldq
,
matrixCols
)
complex
(
kind
=
ck
)
::
q
(
ldq
,
matrixCols
)
...
...
src/elpa2_kernels/elpa2_kernels_complex.F90
View file @
50033dc2
...
@@ -69,7 +69,7 @@ contains
...
@@ -69,7 +69,7 @@ contains
implicit
none
implicit
none
integer
(
kind
=
ik
),
intent
(
in
)
::
nb
,
nq
,
ldq
integer
(
kind
=
ik
),
intent
(
in
)
::
nb
,
nq
,
ldq
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
complex
(
kind
=
ck
),
intent
(
inout
)
::
q
(
ldq
,
*
)
complex
(
kind
=
ck
),
intent
(
inout
)
::
q
(
ldq
,
*
)
complex
(
kind
=
ck
),
intent
(
in
)
::
hh
(
*
)
complex
(
kind
=
ck
),
intent
(
in
)
::
hh
(
*
)
#else
#else
...
@@ -91,7 +91,7 @@ contains
...
@@ -91,7 +91,7 @@ contains
! Always a multiple of 4 Q-rows is transformed, even if nq is smaller
! Always a multiple of 4 Q-rows is transformed, even if nq is smaller
do
i
=
1
,
nq
-8
,
12
do
i
=
1
,
nq
-8
,
12
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
call
hh_trafo_complex_kernel_12
(
q
(
i
,
1
),
hh
,
nb
,
ldq
)
call
hh_trafo_complex_kernel_12
(
q
(
i
,
1
),
hh
,
nb
,
ldq
)
#else
#else
call
hh_trafo_complex_kernel_12
(
q
(
i
:
ldq
,
1
:
nb
),
hh
(
1
:
nb
),
nb
,
ldq
)
call
hh_trafo_complex_kernel_12
(
q
(
i
:
ldq
,
1
:
nb
),
hh
(
1
:
nb
),
nb
,
ldq
)
...
@@ -101,13 +101,13 @@ contains
...
@@ -101,13 +101,13 @@ contains
! i > nq-8 now, i.e. at most 8 rows remain
! i > nq-8 now, i.e. at most 8 rows remain
if
(
nq
-
i
+1
>
4
)
then
if
(
nq
-
i
+1
>
4
)
then
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
call
hh_trafo_complex_kernel_8
(
q
(
i
,
1
),
hh
,
nb
,
ldq
)
call
hh_trafo_complex_kernel_8
(
q
(
i
,
1
),
hh
,
nb
,
ldq
)
#else
#else
call
hh_trafo_complex_kernel_8
(
q
(
i
:
ldq
,
1
:
nb
),
hh
(
1
:
nb
),
nb
,
ldq
)
call
hh_trafo_complex_kernel_8
(
q
(
i
:
ldq
,
1
:
nb
),
hh
(
1
:
nb
),
nb
,
ldq
)
#endif
#endif
else
if
(
nq
-
i
+1
>
0
)
then
else
if
(
nq
-
i
+1
>
0
)
then
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
call
hh_trafo_complex_kernel_4
(
q
(
i
,
1
),
hh
,
nb
,
ldq
)
call
hh_trafo_complex_kernel_4
(
q
(
i
,
1
),
hh
,
nb
,
ldq
)
#else
#else
call
hh_trafo_complex_kernel_4
(
q
(
i
:
ldq
,
1
:
nb
),
hh
(
1
:
nb
),
nb
,
ldq
)
call
hh_trafo_complex_kernel_4
(
q
(
i
:
ldq
,
1
:
nb
),
hh
(
1
:
nb
),
nb
,
ldq
)
...
@@ -128,7 +128,7 @@ contains
...
@@ -128,7 +128,7 @@ contains
implicit
none
implicit
none
integer
(
kind
=
ik
),
intent
(
in
)
::
nb
,
nq
,
ldq
,
ldh
integer
(
kind
=
ik
),
intent
(
in
)
::
nb
,
nq
,
ldq
,
ldh
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
complex
(
kind
=
ck
),
intent
(
inout
)
::
q
(
ldq
,
*
)
complex
(
kind
=
ck
),
intent
(
inout
)
::
q
(
ldq
,
*
)
complex
(
kind
=
ck
),
intent
(
in
)
::
hh
(
ldh
,
*
)
complex
(
kind
=
ck
),
intent
(
in
)
::
hh
(
ldh
,
*
)
#else
#else
...
@@ -158,7 +158,7 @@ contains
...
@@ -158,7 +158,7 @@ contains
! Always a multiple of 4 Q-rows is transformed, even if nq is smaller
! Always a multiple of 4 Q-rows is transformed, even if nq is smaller
do
i
=
1
,
nq
,
4
do
i
=
1
,
nq
,
4
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
call
hh_trafo_complex_kernel_4_2hv
(
q
(
i
,
1
),
hh
,
nb
,
ldq
,
ldh
,
s
)
call
hh_trafo_complex_kernel_4_2hv
(
q
(
i
,
1
),
hh
,
nb
,
ldq
,
ldh
,
s
)
#else
#else
call
hh_trafo_complex_kernel_4_2hv
(
q
(
i
:
ldq
,
1
:
nb
+1
),
hh
(
1
:
ldh
,
1
:
2
),
nb
,
ldq
,
ldh
,
s
)
call
hh_trafo_complex_kernel_4_2hv
(
q
(
i
:
ldq
,
1
:
nb
+1
),
hh
(
1
:
ldh
,
1
:
2
),
nb
,
ldq
,
ldh
,
s
)
...
@@ -166,7 +166,7 @@ contains
...
@@ -166,7 +166,7 @@ contains
enddo
enddo
!do i=1,nq-8,12
!do i=1,nq-8,12
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
! call hh_trafo_complex_kernel_12_2hv(q(i,1),hh, nb, ldq, ldh, s)
! call hh_trafo_complex_kernel_12_2hv(q(i,1),hh, nb, ldq, ldh, s)
#else
#else
! call hh_trafo_complex_kernel_12_2hv(q(i:ldq,1:nb+1),hh(1:ldh,1:2), nb, ldq, ldh, s)
! call hh_trafo_complex_kernel_12_2hv(q(i:ldq,1:nb+1),hh(1:ldh,1:2), nb, ldq, ldh, s)
...
@@ -176,13 +176,13 @@ contains
...
@@ -176,13 +176,13 @@ contains
! i > nq-8 now, i.e. at most 8 rows remain
! i > nq-8 now, i.e. at most 8 rows remain
!if(nq-i+1 > 4) then
!if(nq-i+1 > 4) then
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
! call hh_trafo_complex_kernel_8_2hv(q(i,1),hh, nb, ldq, ldh, s)
! call hh_trafo_complex_kernel_8_2hv(q(i,1),hh, nb, ldq, ldh, s)
#else
#else
! call hh_trafo_complex_kernel_8_2hv(q(i:ldq,1:nb+1),hh(1:ldh,1:2), nb, ldq, ldh, s)
! call hh_trafo_complex_kernel_8_2hv(q(i:ldq,1:nb+1),hh(1:ldh,1:2), nb, ldq, ldh, s)
#endif
#endif
!else if(nq-i+1 > 0) then
!else if(nq-i+1 > 0) then
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
! call hh_trafo_complex_kernel_4_2hv(q(i:ldq,1:nb+1),hh(1:ldh,1:2), nb, ldq, ldh, s)
! call hh_trafo_complex_kernel_4_2hv(q(i:ldq,1:nb+1),hh(1:ldh,1:2), nb, ldq, ldh, s)
#else
#else
...
@@ -204,7 +204,7 @@ contains
...
@@ -204,7 +204,7 @@ contains
implicit
none
implicit
none
integer
(
kind
=
ik
),
intent
(
in
)
::
nb
,
ldq
integer
(
kind
=
ik
),
intent
(
in
)
::
nb
,
ldq
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
complex
(
kind
=
ck
),
intent
(
inout
)
::
q
(
ldq
,
*
)
complex
(
kind
=
ck
),
intent
(
inout
)
::
q
(
ldq
,
*
)
complex
(
kind
=
ck
),
intent
(
in
)
::
hh
(
*
)
complex
(
kind
=
ck
),
intent
(
in
)
::
hh
(
*
)
#else
#else
...
@@ -311,7 +311,7 @@ contains
...
@@ -311,7 +311,7 @@ contains
implicit
none
implicit
none
integer
(
kind
=
ik
),
intent
(
in
)
::
nb
,
ldq
integer
(
kind
=
ik
),
intent
(
in
)
::
nb
,
ldq
#ifdef
DESPERATELY_WANT
_ASSUMED_SIZE
#ifdef
USE
_ASSUMED_SIZE
complex