1elpa_solve_evp_complex_doublLei(b3r)ary Functions Maenlupaal_solve_evp_complex_double(3)
2
3
4

NAME

6       elpa_solve_evp_complex_double - solve the complex eigenvalue problem
7       with either the 1-satge or the 2-stage ELPA solver (legacy interface)
8
9

SYNOPSIS

11   FORTRAN INTERFACE
12       use elpa_driver
13       success = elpa_solve_evp_complex_double (na, nev, a(lda,matrixCols),
14       ev(nev), q(ldq, matrixCols), ldq, nblk, matrixCols, mpi_comm_rows,
15       mpi_comm_cols, mpi_comm_all, THIS_COMPLEX_ELPA_KERNEL, useGPU, method)
16
17       With the definitions of the input and output variables:
18
19       integer,     intent(in)       na:                       global
20       dimension of quadratic matrix a to solve
21       integer,     intent(in)       nev:                      number of
22       eigenvalues to be computed; the first nev eigenvalules are calculated
23       complex*16,  intent(inout)    a:                        locally
24       distributed part of the matrix a. The local dimensions are lda x
25       matrixCols
26       integer,     intent(in)       lda:                      leading
27       dimension of locally distributed matrix a
28       real*8,      intent(inout)    ev:                       on output the
29       first nev computed eigenvalues
30       complex*16,  intent(inout)    q:                        on output the
31       first nev computed eigenvectors
32       integer,     intent(in)       ldq:                      leading
33       dimension of matrix q which stores the eigenvectors
34       integer,     intent(in)       nblk:                     blocksize of
35       block cyclic distributin, must be the same in both directions
36       integer,     intent(in)       matrixCols:               number of
37       columns of locally distributed matrices a and q
38       integer,     intent(in)       mpi_comm_rows:            communicator
39       for communication in rows. Constructed with elpa_get_communicators(3)
40       integer,     intent(in)       mpi_comm_cols:            communicator
41       for communication in colums. Constructed with elpa_get_communicators(3)
42       integer,     intent(in)       mpi_comm_all:             communicator
43       for all processes in the processor set involved in ELPA
44       int                           THIS_ELPA_COMPLEX_KERNEL: choose the
45       compute kernel for 2-stage solver
46       logical, optional, intent(in) useGPU:                   specify whether
47       GPUs should be used or not used
48       character(*), optional        method:                   use 1stage
49       solver if
50       1stage",use2stagesolverif2stage,(atthemoment)use2stagesolverifauto
51
52       logical                       success:                  return value
53       indicating success or failure
54
55   C INTERFACE
56       #include "elpa_legacy.h"
57       #include <complex.h>
58
59       success = elpa_solve_evp_complex_double (int na, int nev,  double
60       complex *a, int lda,  double *ev, double complex *q, int ldq, int nblk,
61       int matrixCols, int mpi_comm_rows, int mpi_comm_cols, int mpi_comm_all,
62       int THIS_ELPA_COMPLEX_KERNEL, int useGPU,  char *method);
63
64       With the definitions of the input and output variables:
65
66       int             na:                       global dimension of quadratic
67       matrix a to solve
68       int             nev:                      number of eigenvalues to be
69       computed; the first nev eigenvalules are calculated
70       double complex *a:                        pointer to locally
71       distributed part of the matrix a. The local dimensions are lda x
72       matrixCols
73       int             lda:                      leading dimension of locally
74       distributed matrix a
75       double         *ev:                       pointer to memory containing
76       on output the first nev computed eigenvalues
77       double complex *q:                        pointer to memory containing
78       on output the first nev computed eigenvectors
79       int             ldq:                      leading dimension of matrix q
80       which stores the eigenvectors
81       int             nblk:                     blocksize of block cyclic
82       distributin, must be the same in both directions
83       int             matrixCols:               number of columns of locally
84       distributed matrices a and q
85       int             mpi_comm_rows:            communicator for
86       communication in rows. Constructed with elpa_get_communicators(3)
87       int             mpi_comm_cols:            communicator for
88       communication in colums. Constructed with elpa_get_communicators(3)
89       int             mpi_comm_all:             communicator for all
90       processes in the processor set involved in ELPA
91       int             THIS_ELPA_COMPLEX_KERNEL: choose the compute kernel for
92       2-stage solver
93       int             useGPU:                   specify whether GPUS should
94       be used or not
95       char           *method:                   use 1stage solver if
96       1stage",use2stagesolverif2stage,(atthemoment)use2stagesolverifauto
97
98       int             success:                  return value indicating
99       success (1) or failure (0)
100
101

DESCRIPTION

103       Solve the complex eigenvalue problem. The value of method desides
104       whether the 1stage or 2stage solver is used. The ELPA communicators
105       mpi_comm_rows and mpi_comm_cols are obtained with the
106       elpa_get_communicators(3) function. The distributed quadratic marix a
107       has global dimensions na x na, and a local size lda x matrixCols. The
108       solver will compute the first nev eigenvalues, which will be stored on
109       exit in ev. The eigenvectors corresponding to the eigenvalues will be
110       stored in q. All memory of the arguments must be allocated outside the
111       call to the solver.
112       This function is part of the legacy API of the ELPA library. Better use
113       the current API.
114

SEE ALSO

116       Old interface: elpa_get_communicators(3) elpa_solve_evp_real_double(3)
117       elpa_solve_evp_real_single(3) elpa_solve_evp_complex_single(3)
118       Current interface: elpa2_print_kernels(1)
119
120
121
122ELPA                            Wed May 17 2017elpa_solve_evp_complex_double(3)
Impressum