Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
elpa_set(3)		    Library Functions Manual		     elpa_set(3)

NAME
     elpa_set - set a parameter for the ELPA object.

SYNOPSIS
   FORTRAN INTERFACE
     use elpa
     class(elpa_t), pointer :: elpa_handle

     call elpa_handle%set (name, value, error)

     With the definitions of the input and output variables:

     class(elpa_t)     :: elpa
	    An instance of the ELPA object.

     character(*)      :: name
	    The name of the option to be set.

     datatype	       :: value
	    the  value which should be assigned to the option name. The datatype
	    can be integer or real(kind=c_double).

     integer, optional :: error
	    The returned error code. On success it is ELPA_OK, otherwise an  er-
	    ror. he error code can be queried with elpa_strerr(3)

   C/C++ INTERFACE
     #include <elpa/elpa.h>
     elpa_t elpa_handle;

     void  elpa_set  (elpa_t  elpa_handle, const char *name, datatype value, int
     *error);

     With the definitions of the input and output variables:

     elpa_t  elpa_handle;
	    The handle of an ELPA object, obtained before with elpa_allocate(3)

     const char  *name;
	    The name of the option to be set.

     datatype  value;
	    The value which should be assigned to the option name. The	datatype
	    can be either int or double.

     int  *error;
	    The error code of the function. Should be "ELPA_OK". The error codes
	    can be queried with elpa_strerr(3)

DESCRIPTION
     The  elpa_set  function is used to set mandatory parameters and runtime op-
     tions of the ELPA library. It returns an error code which	can  be  queried
     with elpa_strerr(3).

      Mandatory parameters:

     Mandatory parameters of an ELPA instance have to be set BEFORE the ELPA in-
     stance is set up with the function elpa_setup(3).

     At the moment the following mandatory parameters are supported:

     "na":  integer parameter. The global matrix has size is (na * na)

     "nev":
	    integer  parameter.  The  number of eigenvectors to be computed in a
	    call to elpa_eigenvectors(3). Must satisfy 1 <= nev <= na.

     "local_nrows":
	    integer parameter. Number of matrix rows stored on this MPI process.

     "local_ncols":
	    integer parameter. Number of  matrix  columns  stored  on  this  MPI
	    process.

     "process_row":
	    integer  parameter.  Process  row number in the 2D domain decomposi-
	    tion.

     "process_col":
	    integer parameter. Process column number in the 2D domain decomposi-
	    tion.

     "mpi_comm_parent":
	    integer parameter. The parent MPI communicator  which  includes  all
	    MPI process which are used in the 2D domain decomposition.

     "bandwidth":
	    integer  parameter. Some ELPA computational steps can be accelerated
	    if the input matrix is already in banded form. If set, ELPA  assumes
	    that the matrix has the provided bandwidth.

     "BLACS_context":
	    integer  parameter.  The generalized eigenvalue solver elpa_general-
	    ized_eigenvectors(3) uses internal calls to some  of  the  ScaLAPACK
	    routines.  Thus  before calling it, the user has to provide properly
	    initialized BLACS context.

     "timings":
	    integer parameter. Choose whether time measurements should	be  done
	    in the ELPA routines (1) or not (0).

      Runtime options:

     Runtime options of an ELPA option can be set at any time.

     Here are some suuported runtime options:

     "solver":
	    Choose  which solver should be used in the compute steps elpa_eigen-
	    values(3) or elpa_eigenvectors(3). At the moment allowed option  are
	    "ELPA_SOLVER_1STAGE" or "ELPA_SOLVER_2STAGE".

     "real_kernel":
	    Choose  which  real kernel should be used in the elpa_eigenvalues(3)
	    or	elpa_eigenvectors(3)  compute  steps,  if  solver  is	set   to
	    "ELPA_SOLVER_2STAGE".  The	available  kernels  can  be queried with
	    elpa2_print_kernels(1).

     "complex_kernel":
	    Choose which complex kernel should be  used  in  the  elpa_eigenval-
	    ues(3)  or	elpa_eigenvectors(3)  compute steps, if solver is set to
	    "ELPA_SOLVER_2STAGE". The available  kernels  can  be  queried  with
	    elpa2_print_kernels(1).

     "qr":  Choose  whether  a QR decomposition should be used for the real case
	    computations in elpa_eigenvalues(3) or elpa_eigenvectors(3) computa-
	    tional steps, if solver was set to "ELPA_SOLVER_2STAGE".

     "debug":
	    Choose whether, in case of an error, more debug  information  should
	    be provided.

	    The  full list of supported options can found in the ELPA documenta-
	    tion.

SEE ALSO
     elpa2_print_kernels(1)    elpa_init(3)    elpa_allocate(3)    elpa_setup(3)
     elpa_strerr(3)  elpa_eigenvalues(3)  elpa_eigenvectors(3)	elpa_cholesky(3)
     elpa_invert_triangular(3)	elpa_solve_tridiagonal(3)  elpa_hermitian_multi-
     ply(3) elpa_deallocate(3) elpa_uninit(3)

ELPA				 Thu Nov 28 2024		     elpa_set(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=elpa_set&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help