GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
elpa_solve_evp_real_2stage_double(3) FreeBSD Library Functions Manual elpa_solve_evp_real_2stage_double(3)

elpa_solve_evp_real_2stage_double - solve the double-precision real eigenvalue problem with the 2-stage ELPA solver (legacy interface)
 

use elpa1 use elpa2
 
 
success = elpa_solve_evp_real_2stage_double (na, nev, a(lda,matrixCols), ev(nev), q(ldq, matrixCols), ldq, nblk, matrixCols, mpi_comm_rows, mpi_comm_cols, mpi_comm_all, THIS_REAL_ELPA_KERNEL, useQR, useGPU)
 
 
With the definitions of the input and output variables:
 
integer, intent(in) na: global dimension of quadratic matrix a to solve
 
integer, intent(in) nev: number of eigenvalues to be computed; the first nev eigenvalules are calculated
 
real*8, intent(inout) a: locally distributed part of the matrix a. The local dimensions are lda x matrixCols
 
integer, intent(in) lda: leading dimension of locally distributed matrix a
 
real*8, intent(inout) ev: on output the first nev computed eigenvalues
 
real*8, intent(inout) q: on output the first nev computed eigenvectors
 
integer, intent(in) ldq: leading dimension of matrix q which stores the eigenvectors
 
integer, intent(in) nblk: blocksize of block cyclic distributin, must be the same in both directions
 
integer, intent(in) matrixCols: number of columns of locally distributed matrices a and q
 
integer, intent(in) mpi_comm_rows: communicator for communication in rows. Constructed with elpa_get_communicators(3)
 
integer, intent(in) mpi_comm_cols: communicator for communication in colums. Constructed with elpa_get_communicators(3)
 
integer, intent(in) mpi_comm_all: communicator for all processes in the processor set involved in ELPA
 
integer, intent(in), optional THIS_ELPA_REAL_KERNEL: choose the compute kernel for 2-stage solver
 
logical, intent(in), optional: useQR: optional argument; switches to QR-decomposition if set to .true.
 
logical, intent(in), optional: useGPU: decide whether GPUs should be used or not
 
logical success: return value indicating success or failure
 

#include "elpa_legacy.h"
 
success = elpa_solve_evp_real_2stage_double (int na, int nev, double *a, int lda, double *ev, double *q, int ldq, int nblk, int matrixCols, int mpi_comm_rows, int mpi_comm_cols, int mpi_comm_all, int THIS_ELPA_REAL_KERNEL, int useQR, int useGPU);
 
 
With the definitions of the input and output variables:
 
int na: global dimension of quadratic matrix a to solve
 
int nev: number of eigenvalues to be computed; the first nev eigenvalules are calculated
 
double * a: pointer to locally distributed part of the matrix a. The local dimensions are lda x matrixCols
 
int lda: leading dimension of locally distributed matrix a
 
double * ev: pointer to memory containing on output the first nev computed eigenvalues
 
double * q: pointer to memory containing on output the first nev computed eigenvectors
 
int ldq: leading dimension of matrix q which stores the eigenvectors
 
int nblk: blocksize of block cyclic distributin, must be the same in both directions
 
int matrixCols: number of columns of locally distributed matrices a and q
 
int mpi_comm_rows: communicator for communication in rows. Constructed with elpa_get_communicators(3)
 
int mpi_comm_cols: communicator for communication in colums. Constructed with elpa_get_communicators(3)
 
int mpi_comm_all: communicator for all processes in the processor set involved in ELPA
 
int THIS_ELPA_REAL_KERNEL: choose the compute kernel for 2-stage solver
 
int useQR: if set to 1 switch to QR-decomposition
 
int useGPU: decide whether GPUs should be used or not
 
int success: return value indicating success (1) or failure (0)

Solve the real eigenvalue problem with the 2-stage solver. The ELPA communicators mpi_comm_rows and mpi_comm_cols are obtained with the elpa_get_communicators(3) function. The distributed quadratic marix a has global dimensions na x na, and a local size lda x matrixCols. The solver will compute the first nev eigenvalues, which will be stored on exit in ev. The eigenvectors corresponding to the eigenvalues will be stored in q. All memory of the arguments must be allocated outside the call to the solver.
 
The interface elpa_solve_evp_real(3) is a more flexible alternative.
 
This function is part of the legacy API of the ELPA library. Better use the current API.
 

Old interface: elpa_get_communicators(3) elpa_solve_evp_real(3) elpa_solve_evp_complex(3) elpa_solve_evp_real_1stage(3) elpa_solve_evp_complex_1stage(3) elpa_solve_evp_real_2stage_single(3) elpa_solve_evp_complex_2stage_double(3) elpa_solve_evp_complex_2stage_singe(3)
 
Current interface: elpa2_print_kernels(1)
Wed May 17 2017 ELPA

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.