solve_evp_real_1stage_single.3 5.27 KB
 Andreas Marek committed May 18, 2017 1 ``````.TH "solve_evp_real_1stage_single" 3 "Wed May 17 2017" "ELPA" \" -*- nroff -*- `````` Andreas Marek committed Mar 18, 2016 2 3 4 ``````.ad l .nh .SH NAME `````` Andreas Marek committed May 18, 2017 5 ``````solve_evp_real_1stage_single \- solve the single-precision real eigenvalue problem with the 1-stage ELPA solver (legacy interface) `````` Andreas Marek committed Mar 18, 2016 6 7 8 9 10 11 12 13 ``````.br .SH SYNOPSIS .br .SS FORTRAN INTERFACE use elpa1 .br .br `````` Andreas Marek committed Nov 24, 2016 14 ``````.RI "success = \fBsolve_evp_real_1stage_single\fP (na, nev, a(lda,matrixCols), ev(nev), q(ldq, matrixCols), ldq, nblk, matrixCols, mpi_comm_rows, mpi_comm_cols, mpi_comm_all, useGPU)" `````` Andreas Marek committed Mar 18, 2016 15 16 17 ``````.br .RI " " .br `````` Andreas Marek committed Jul 15, 2017 18 ``````.RI "With the definitions of the input and output variables:" `````` Andreas Marek committed Mar 18, 2016 19 20 `````` .br `````` Andreas Marek committed Nov 24, 2016 21 ``````.RI "integer, intent(in) \fBna\fP: global dimension of quadratic matrix \fBa\fP to solve" `````` Andreas Marek committed Mar 18, 2016 22 ``````.br `````` Andreas Marek committed Nov 24, 2016 23 ``````.RI "integer, intent(in) \fBnev\fP: number of eigenvalues to be computed; the first \fBnev\fP eigenvalules are calculated" `````` Andreas Marek committed Mar 18, 2016 24 ``````.br `````` Andreas Marek committed Nov 24, 2016 25 ``````.RI "real*4, intent(inout) \fBa\fP: locally distributed part of the matrix \fBa\fP. The local dimensions are \fBlda\fP x \fBmatrixCols\fP" `````` Andreas Marek committed Mar 18, 2016 26 ``````.br `````` Andreas Marek committed Nov 24, 2016 27 ``````.RI "integer, intent(in) \fBlda\fP: leading dimension of locally distributed matrix \fBa\fP" `````` Andreas Marek committed Mar 18, 2016 28 ``````.br `````` Andreas Marek committed Nov 24, 2016 29 ``````.RI "real*4, intent(inout) \fBev\fP: on output the first \fBnev\fP computed eigenvalues" `````` Andreas Marek committed Mar 18, 2016 30 ``````.br `````` Andreas Marek committed Nov 24, 2016 31 ``````.RI "real*4, intent(inout) \fBq\fP: on output the first \fBnev\fP computed eigenvectors" `````` Andreas Marek committed Mar 18, 2016 32 ``````.br `````` Andreas Marek committed Nov 24, 2016 33 ``````.RI "integer, intent(in) \fBldq\fP: leading dimension of matrix \fBq\fP which stores the eigenvectors" `````` Andreas Marek committed Mar 18, 2016 34 ``````.br `````` Andreas Marek committed Nov 24, 2016 35 ``````.RI "integer, intent(in) \fBnblk\fP: blocksize of block cyclic distributin, must be the same in both directions" `````` Andreas Marek committed Mar 18, 2016 36 ``````.br `````` Andreas Marek committed Nov 24, 2016 37 ``````.RI "integer, intent(in) \fBmatrixCols\fP: number of columns of locally distributed matrices \fBa\fP and \fBq\fP" `````` Andreas Marek committed Mar 18, 2016 38 ``````.br `````` Andreas Marek committed Nov 24, 2016 39 ``````.RI "integer, intent(in) \fBmpi_comm_rows\fP: communicator for communication in rows. Constructed with \fBelpa_get_communicators\fP(3)" `````` Andreas Marek committed Mar 18, 2016 40 ``````.br `````` Andreas Marek committed Nov 24, 2016 41 42 43 44 45 ``````.RI "integer, intent(in) \fBmpi_comm_cols\fP: communicator for communication in colums. Constructed with \fBelpa_get_communicators\fP(3)" .br .RI "integer, intent(in) \fBmpi_comm_all\fP: communicator for all MPI processes used in ELPA" .br .RI "logical, optional, intent(in) \fBuseGPU\fP: decide whether GPUs should be used or not" `````` Andreas Marek committed Mar 18, 2016 46 47 ``````.br `````` Andreas Marek committed Nov 24, 2016 48 ``````.RI "logical \fBsuccess\fP: return value indicating success or failure" `````` Andreas Marek committed Mar 18, 2016 49 50 ``````.br .SS C INTERFACE `````` Andreas Marek committed May 18, 2017 51 ``````#include "elpa_legacy.h" `````` Andreas Marek committed Mar 18, 2016 52 53 `````` .br `````` Andreas Marek committed Nov 24, 2016 54 ``````.RI "success = \fBsolve_evp_real_1stage_single_precision\fP (\fBint\fP na, \fBint\fP nev, \fB float *\fPa, \fBint\fP lda, \fB float *\fPev, \fBfloat *\fPq, \fBint\fP ldq, \fBint\fP nblk, \fBint\fP matrixCols, \fBint\fP mpi_comm_rows, \fBint\fP mpi_comm_cols, \fBint\fP mpi_comm_all, \fBint\fP useGPU);" `````` Andreas Marek committed Mar 18, 2016 55 56 57 ``````.br .RI " " .br `````` Andreas Marek committed Jul 15, 2017 58 ``````.RI "With the definitions of the input and output variables:" `````` Andreas Marek committed Mar 18, 2016 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 `````` .br .RI "int \fBna\fP: global dimension of quadratic matrix \fBa\fP to solve" .br .RI "int \fBnev\fP: number of eigenvalues to be computed; the first \fBnev\fP eigenvalules are calculated" .br .RI "float *\fBa\fP: pointer to locally distributed part of the matrix \fBa\fP. The local dimensions are \fBlda\fP x \fBmatrixCols\fP" .br .RI "int \fBlda\fP: leading dimension of locally distributed matrix \fBa\fP" .br .RI "float *\fBev\fP: pointer to memory containing on output the first \fBnev\fP computed eigenvalues" .br .RI "float *\fBq\fP: pointer to memory containing on output the first \fBnev\fP computed eigenvectors" .br .RI "int \fBldq\fP: leading dimension of matrix \fBq\fP which stores the eigenvectors" .br .RI "int \fBnblk\fP: blocksize of block cyclic distributin, must be the same in both directions" .br .RI "int \fBmatrixCols\fP: number of columns of locally distributed matrices \fBa\fP and \fBq\fP" .br `````` Andreas Marek committed Oct 27, 2016 79 ``````.RI "int \fBmpi_comm_rows\fP: communicator for communication in rows. Constructed with \fBelpa_get_communicators\fP(3)" `````` Andreas Marek committed Mar 18, 2016 80 ``````.br `````` Andreas Marek committed Oct 27, 2016 81 ``````.RI "int \fBmpi_comm_cols\fP: communicator for communication in colums. Constructed with \fBelpa_get_communicators\fP(3)" `````` Andreas Marek committed Mar 18, 2016 82 ``````.br `````` Andreas Marek committed Nov 24, 2016 83 84 85 86 ``````.RI "int \fBmpi_comm_all\fP: communicator for all MPI processes used in ELPA" .br .RI "int \fBuseGPU\fP: decide whether GPUs should be used or not" .br `````` Andreas Marek committed Mar 18, 2016 87 88 89 90 `````` .RI "int \fBsuccess\fP: return value indicating success (1) or failure (0) .SH DESCRIPTION `````` Andreas Marek committed Oct 27, 2016 91 ``````Solve the real eigenvalue problem with the 1-stage solver. The ELPA communicators \fBmpi_comm_rows\fP and \fBmpi_comm_cols\fP are obtained with the \fBelpa_get_communicators\fP(3) function. The distributed quadratic marix \fBa\fP has global dimensions \fBna\fP x \fBna\fP, and a local size \fBlda\fP x \fBmatrixCols\fP. The solver will compute the first \fBnev\fP eigenvalues, which will be stored on exit in \fBev\fP. The eigenvectors corresponding to the eigenvalues will be stored in \fBq\fP. All memory of the arguments must be allocated outside the call to the solver. `````` Andreas Marek committed Mar 18, 2016 92 ``````.br `````` Andreas Marek committed May 18, 2017 93 94 ``````This function is part of the legacy API of the ELPA library. Better use the current API. .br `````` Andreas Marek committed Mar 18, 2016 95 ``````.SH "SEE ALSO" `````` Andreas Marek committed May 18, 2017 96 97 98 99 100 101 ``````.br Old interface: \fBelpa_get_communicators\fP(3) \fBsolve_evp_real_1stage_double\fP(3) \fBsolve_evp_complex_1stage_double\fP(3) \fBsolve_evp_complex_1stage_single\fP(3) \fBsolve_evp_real_2stage_double\fP(3) \fBsolve_evp_real_2stage_single\fP(3) \fBsolve_evp_complex_2stage_double\fP(3) \fBsolve_evp_complex_2stage_single\fP(3) .br Current interface: \fBelpa2_print_kernels\fP(1)``````