Eigenvalue SoLvers for Petaflop-Applications (ELPA)  2020.11.001
Public Member Functions | Private Member Functions | Private Attributes | List of all members
elpa_impl::elpa_impl_t Type Reference

Definition of the extended elpa_impl_t type. More...

Inheritance diagram for elpa_impl::elpa_impl_t:
elpa_abstract_impl::elpa_abstract_impl_t elpa_api::elpa_t

Public Member Functions

procedure, public setup => elpa_setup
 methods available with the elpa_impl_t type More...
 
procedure, public destroy => elpa_destroy
 a destroy method: implemented in elpa_destroy More...
 
procedure, public is_set => elpa_is_set
 a method to check whether a key/value pair has been set : implemented in elpa_is_set More...
 
procedure, public can_set => elpa_can_set
 a method to check whether a key/value pair can be set : implemented in elpa_can_set More...
 
procedure, public creating_from_legacy_api => elpa_creating_from_legacy_api
 
procedure, public get_time => elpa_get_time
 
procedure, public print_times => elpa_print_times
 
procedure, public timer_start => elpa_timer_start
 
procedure, public timer_stop => elpa_timer_stop
 
procedure, public elpa_eigenvectors_d
 the implemenation methods More...
 
procedure, public elpa_eigenvectors_f
 
procedure, public elpa_eigenvectors_dc
 
procedure, public elpa_eigenvectors_fc
 
procedure, public elpa_eigenvalues_d
 public methods to implement the solve step for real/complex double/single matrices; only the eigenvalues are computed More...
 
procedure, public elpa_eigenvalues_f
 
procedure, public elpa_eigenvalues_dc
 
procedure, public elpa_eigenvalues_fc
 
procedure, public elpa_skew_eigenvectors_d
 public methods to implement the solve step for real skew-symmetric double/single matrices More...
 
procedure, public elpa_skew_eigenvectors_f
 
procedure, public elpa_skew_eigenvalues_d
 public methods to implement the solve step for real skew-symmetric double/single matrices; only the eigenvalues are computed More...
 
procedure, public elpa_skew_eigenvalues_f
 
procedure, public elpa_generalized_eigenvectors_d
 public methods to implement the solve step for generalized eigenproblem and real/complex double/single matrices More...
 
procedure, public elpa_generalized_eigenvectors_f
 
procedure, public elpa_generalized_eigenvectors_dc
 
procedure, public elpa_generalized_eigenvectors_fc
 
procedure, public elpa_generalized_eigenvalues_d
 public methods to implement the solve step for generalized eigenproblem and real/complex double/single matrices More...
 
procedure, public elpa_generalized_eigenvalues_f
 
procedure, public elpa_generalized_eigenvalues_dc
 
procedure, public elpa_generalized_eigenvalues_fc
 
procedure, public elpa_hermitian_multiply_d
 public methods to implement a "hermitian" multiplication of matrices a and b More...
 
procedure, public elpa_hermitian_multiply_f
 for real valued matrices: a**T * b More...
 
procedure, public elpa_hermitian_multiply_dc
 for complex valued matrices: a**H * b More...
 
procedure, public elpa_hermitian_multiply_fc
 
procedure, public elpa_cholesky_d
 public methods to implement the cholesky factorisation of real/complex double/single matrices More...
 
procedure, public elpa_cholesky_f
 
procedure, public elpa_cholesky_dc
 
procedure, public elpa_cholesky_fc
 
procedure, public elpa_invert_trm_d
 public methods to implement the inversion of a triangular real/complex double/single matrix More...
 
procedure, public elpa_invert_trm_f
 
procedure, public elpa_invert_trm_dc
 
procedure, public elpa_invert_trm_fc
 
procedure, public elpa_solve_tridiagonal_d
 public methods to implement the solve step for a real valued More...
 
procedure, public elpa_solve_tridiagonal_f
 double/single tridiagonal matrix More...
 
procedure, public associate_int => elpa_associate_int
 public method to set some pointers More...
 
procedure, public print_settings => elpa_print_settings
 
procedure, public store_settings => elpa_store_settings
 
procedure, public load_settings => elpa_load_settings
 
procedure, public autotune_setup => elpa_autotune_setup
 
procedure, public autotune_step => elpa_autotune_step
 
procedure, public autotune_set_best => elpa_autotune_set_best
 
procedure, public autotune_print_best => elpa_autotune_print_best
 
procedure, public autotune_print_state => elpa_autotune_print_state
 
procedure, public autotune_save_state => elpa_autotune_save_state
 
procedure, public autotune_load_state => elpa_autotune_load_state
 
- Public Member Functions inherited from elpa_abstract_impl::elpa_abstract_impl_t
procedure, public elpa_set_integer
 private methods to implement the setting of an integer/float/double key/value pair More...
 
procedure, public elpa_set_float
 
procedure, public elpa_set_double
 
procedure, public elpa_get_integer
 private methods to implement the querry of an integer/float/double key/value pair More...
 
procedure, public elpa_get_float
 
procedure, public elpa_get_double
 
- Public Member Functions inherited from elpa_api::elpa_t
procedure(elpa_setup_i), deferred, public setup
 method to setup an ELPA object More...
 
procedure(elpa_destroy_i), deferred, public destroy
 method to destroy an ELPA object More...
 
generic, public set => elpa_set_integer, elpa_set_float, elpa_set_double
 
generic, public get => elpa_get_integer, elpa_get_float, elpa_get_double
 
procedure(elpa_is_set_i), deferred, public is_set
 method to check whether key/value is set More...
 
procedure(elpa_can_set_i), deferred, public can_set
 method to check whether key/value can be set More...
 
procedure(elpa_creating_from_legacy_api_i), deferred, public creating_from_legacy_api
 
procedure(elpa_get_time_i), deferred, public get_time
 method to get the times from the timer object More...
 
procedure(elpa_print_times_i), deferred, public print_times
 method to print the timings tree More...
 
procedure(elpa_timer_start_i), deferred, public timer_start
 method to start a time measurement More...
 
procedure(elpa_timer_stop_i), deferred, public timer_stop
 method to stop a time measurement More...
 
generic, public eigenvectors => elpa_eigenvectors_d, elpa_eigenvectors_f, elpa_eigenvectors_dc, elpa_eigenvectors_fc
 
generic, public eigenvalues => elpa_eigenvalues_d, elpa_eigenvalues_f, elpa_eigenvalues_dc, elpa_eigenvalues_fc
 
generic, public skew_eigenvectors => elpa_skew_eigenvectors_d, elpa_skew_eigenvectors_f
 for symmetric real valued skew-symmetric matrices More...
 
generic, public skew_eigenvalues => elpa_skew_eigenvalues_d, elpa_skew_eigenvalues_f
 for symmetric real valued skew-symmetric matrices More...
 
generic, public generalized_eigenvectors => elpa_generalized_eigenvectors_d, elpa_generalized_eigenvectors_f, elpa_generalized_eigenvectors_dc, elpa_generalized_eigenvectors_fc
 
generic, public generalized_eigenvalues => elpa_generalized_eigenvalues_d, elpa_generalized_eigenvalues_f, elpa_generalized_eigenvalues_dc, elpa_generalized_eigenvalues_fc
 
generic, public hermitian_multiply => elpa_hermitian_multiply_d, elpa_hermitian_multiply_dc, elpa_hermitian_multiply_f, elpa_hermitian_multiply_fc
 
generic, public cholesky => elpa_cholesky_d, elpa_cholesky_f, elpa_cholesky_dc, elpa_cholesky_fc
 
generic, public invert_triangular => elpa_invert_trm_d, elpa_invert_trm_f, elpa_invert_trm_dc, elpa_invert_trm_fc
 
generic, public solve_tridiagonal => elpa_solve_tridiagonal_d, elpa_solve_tridiagonal_f
 
procedure(print_settings_i), deferred, public print_settings
 method to print all parameters More...
 
procedure(store_settings_i), deferred, public store_settings
 method to save all parameters More...
 
procedure(load_settings_i), deferred, public load_settings
 method to save all parameters More...
 
procedure(elpa_autotune_setup_i), deferred, public autotune_setup
 method to prepare the ELPA autotuning More...
 
procedure(elpa_autotune_step_i), deferred, public autotune_step
 method to do an autotuning step More...
 
procedure(elpa_autotune_set_best_i), deferred, public autotune_set_best
 method to set the best options More...
 
procedure(elpa_autotune_print_best_i), deferred, public autotune_print_best
 method to print the best options More...
 
procedure(elpa_autotune_print_state_i), deferred, public autotune_print_state
 method to print the state More...
 
procedure(elpa_autotune_save_state_i), deferred, public autotune_save_state
 method to save the state More...
 
procedure(elpa_autotune_load_state_i), deferred, public autotune_load_state
 method to load the state More...
 
procedure(elpa_set_integer_i), deferred, public elpa_set_integer
 These method have to be public, in order to be overrideable in the extension types. More...
 
procedure(elpa_set_float_i), deferred, public elpa_set_float
 
procedure(elpa_set_double_i), deferred, public elpa_set_double
 
procedure(elpa_get_integer_i), deferred, public elpa_get_integer
 
procedure(elpa_get_float_i), deferred, public elpa_get_float
 
procedure(elpa_get_double_i), deferred, public elpa_get_double
 
procedure(elpa_eigenvectors_d_i), deferred, public elpa_eigenvectors_d
 
procedure(elpa_eigenvectors_f_i), deferred, public elpa_eigenvectors_f
 
procedure(elpa_eigenvectors_dc_i), deferred, public elpa_eigenvectors_dc
 
procedure(elpa_eigenvectors_fc_i), deferred, public elpa_eigenvectors_fc
 
procedure(elpa_eigenvalues_d_i), deferred, public elpa_eigenvalues_d
 
procedure(elpa_eigenvalues_f_i), deferred, public elpa_eigenvalues_f
 
procedure(elpa_eigenvalues_dc_i), deferred, public elpa_eigenvalues_dc
 
procedure(elpa_eigenvalues_fc_i), deferred, public elpa_eigenvalues_fc
 
procedure(elpa_skew_eigenvectors_d_i), deferred, public elpa_skew_eigenvectors_d
 
procedure(elpa_skew_eigenvectors_f_i), deferred, public elpa_skew_eigenvectors_f
 
procedure(elpa_skew_eigenvalues_d_i), deferred, public elpa_skew_eigenvalues_d
 
procedure(elpa_skew_eigenvalues_f_i), deferred, public elpa_skew_eigenvalues_f
 
procedure(elpa_generalized_eigenvectors_d_i), deferred, public elpa_generalized_eigenvectors_d
 
procedure(elpa_generalized_eigenvectors_f_i), deferred, public elpa_generalized_eigenvectors_f
 
procedure(elpa_generalized_eigenvectors_dc_i), deferred, public elpa_generalized_eigenvectors_dc
 
procedure(elpa_generalized_eigenvectors_fc_i), deferred, public elpa_generalized_eigenvectors_fc
 
procedure(elpa_generalized_eigenvalues_d_i), deferred, public elpa_generalized_eigenvalues_d
 
procedure(elpa_generalized_eigenvalues_f_i), deferred, public elpa_generalized_eigenvalues_f
 
procedure(elpa_generalized_eigenvalues_dc_i), deferred, public elpa_generalized_eigenvalues_dc
 
procedure(elpa_generalized_eigenvalues_fc_i), deferred, public elpa_generalized_eigenvalues_fc
 
procedure(elpa_hermitian_multiply_d_i), deferred, public elpa_hermitian_multiply_d
 
procedure(elpa_hermitian_multiply_f_i), deferred, public elpa_hermitian_multiply_f
 
procedure(elpa_hermitian_multiply_dc_i), deferred, public elpa_hermitian_multiply_dc
 
procedure(elpa_hermitian_multiply_fc_i), deferred, public elpa_hermitian_multiply_fc
 
procedure(elpa_cholesky_d_i), deferred, public elpa_cholesky_d
 
procedure(elpa_cholesky_f_i), deferred, public elpa_cholesky_f
 
procedure(elpa_cholesky_dc_i), deferred, public elpa_cholesky_dc
 
procedure(elpa_cholesky_fc_i), deferred, public elpa_cholesky_fc
 
procedure(elpa_invert_trm_d_i), deferred, public elpa_invert_trm_d
 
procedure(elpa_invert_trm_f_i), deferred, public elpa_invert_trm_f
 
procedure(elpa_invert_trm_dc_i), deferred, public elpa_invert_trm_dc
 
procedure(elpa_invert_trm_fc_i), deferred, public elpa_invert_trm_fc
 
procedure(elpa_solve_tridiagonal_d_i), deferred, public elpa_solve_tridiagonal_d
 
procedure(elpa_solve_tridiagonal_f_i), deferred, public elpa_solve_tridiagonal_f
 

Private Member Functions

procedure, private elpa_transform_generalized_d
 
procedure, private elpa_transform_back_generalized_d
 
procedure, private elpa_transform_generalized_dc
 
procedure, private elpa_transform_back_generalized_dc
 
procedure, private construct_scalapack_descriptor => elpa_construct_scalapack_descriptor
 

Private Attributes

integer communicators_owned
 
integer from_legacy_api
 

Additional Inherited Members

- Public Attributes inherited from elpa_abstract_impl::elpa_abstract_impl_t
type(timer_t) timer
 
type(timer_t) autotune_timer
 
type(c_ptr) index = C_NULL_PTR
 
logical eigenvalues_only
 
- Public Attributes inherited from elpa_api::elpa_t
integer(kind=c_int), pointer, public na => NULL()
 
integer(kind=c_int), pointer, public nev => NULL()
 
integer(kind=c_int), pointer, public local_nrows => NULL()
 
integer(kind=c_int), pointer, public local_ncols => NULL()
 
integer(kind=c_int), pointer, public nblk => NULL()
 

Detailed Description

Definition of the extended elpa_impl_t type.

Member Function/Subroutine Documentation

◆ associate_int()

procedure, public elpa_impl::elpa_impl_t::associate_int

public method to set some pointers

◆ autotune_load_state()

procedure, public elpa_impl::elpa_impl_t::autotune_load_state

◆ autotune_print_best()

procedure, public elpa_impl::elpa_impl_t::autotune_print_best

◆ autotune_print_state()

procedure, public elpa_impl::elpa_impl_t::autotune_print_state

◆ autotune_save_state()

procedure, public elpa_impl::elpa_impl_t::autotune_save_state

◆ autotune_set_best()

procedure, public elpa_impl::elpa_impl_t::autotune_set_best

◆ autotune_setup()

procedure, public elpa_impl::elpa_impl_t::autotune_setup

◆ autotune_step()

procedure, public elpa_impl::elpa_impl_t::autotune_step

◆ can_set()

procedure, public elpa_impl::elpa_impl_t::can_set

a method to check whether a key/value pair can be set : implemented in elpa_can_set

◆ construct_scalapack_descriptor()

procedure, private elpa_impl::elpa_impl_t::construct_scalapack_descriptor
private

◆ creating_from_legacy_api()

procedure, public elpa_impl::elpa_impl_t::creating_from_legacy_api

◆ destroy()

procedure, public elpa_impl::elpa_impl_t::destroy

a destroy method: implemented in elpa_destroy

◆ elpa_cholesky_d()

procedure, public elpa_impl::elpa_impl_t::elpa_cholesky_d

public methods to implement the cholesky factorisation of real/complex double/single matrices

◆ elpa_cholesky_dc()

procedure, public elpa_impl::elpa_impl_t::elpa_cholesky_dc

◆ elpa_cholesky_f()

procedure, public elpa_impl::elpa_impl_t::elpa_cholesky_f

◆ elpa_cholesky_fc()

procedure, public elpa_impl::elpa_impl_t::elpa_cholesky_fc

◆ elpa_eigenvalues_d()

procedure, public elpa_impl::elpa_impl_t::elpa_eigenvalues_d

public methods to implement the solve step for real/complex double/single matrices; only the eigenvalues are computed

◆ elpa_eigenvalues_dc()

procedure, public elpa_impl::elpa_impl_t::elpa_eigenvalues_dc

◆ elpa_eigenvalues_f()

procedure, public elpa_impl::elpa_impl_t::elpa_eigenvalues_f

◆ elpa_eigenvalues_fc()

procedure, public elpa_impl::elpa_impl_t::elpa_eigenvalues_fc

◆ elpa_eigenvectors_d()

procedure, public elpa_impl::elpa_impl_t::elpa_eigenvectors_d

the implemenation methods

public methods to implement the solve step for real/complex double/single matrices

◆ elpa_eigenvectors_dc()

procedure, public elpa_impl::elpa_impl_t::elpa_eigenvectors_dc

◆ elpa_eigenvectors_f()

procedure, public elpa_impl::elpa_impl_t::elpa_eigenvectors_f

◆ elpa_eigenvectors_fc()

procedure, public elpa_impl::elpa_impl_t::elpa_eigenvectors_fc

◆ elpa_generalized_eigenvalues_d()

procedure, public elpa_impl::elpa_impl_t::elpa_generalized_eigenvalues_d

public methods to implement the solve step for generalized eigenproblem and real/complex double/single matrices

◆ elpa_generalized_eigenvalues_dc()

procedure, public elpa_impl::elpa_impl_t::elpa_generalized_eigenvalues_dc

◆ elpa_generalized_eigenvalues_f()

procedure, public elpa_impl::elpa_impl_t::elpa_generalized_eigenvalues_f

◆ elpa_generalized_eigenvalues_fc()

procedure, public elpa_impl::elpa_impl_t::elpa_generalized_eigenvalues_fc

◆ elpa_generalized_eigenvectors_d()

procedure, public elpa_impl::elpa_impl_t::elpa_generalized_eigenvectors_d

public methods to implement the solve step for generalized eigenproblem and real/complex double/single matrices

◆ elpa_generalized_eigenvectors_dc()

procedure, public elpa_impl::elpa_impl_t::elpa_generalized_eigenvectors_dc

◆ elpa_generalized_eigenvectors_f()

procedure, public elpa_impl::elpa_impl_t::elpa_generalized_eigenvectors_f

◆ elpa_generalized_eigenvectors_fc()

procedure, public elpa_impl::elpa_impl_t::elpa_generalized_eigenvectors_fc

◆ elpa_hermitian_multiply_d()

procedure, public elpa_impl::elpa_impl_t::elpa_hermitian_multiply_d

public methods to implement a "hermitian" multiplication of matrices a and b

◆ elpa_hermitian_multiply_dc()

procedure, public elpa_impl::elpa_impl_t::elpa_hermitian_multiply_dc

for complex valued matrices: a**H * b

◆ elpa_hermitian_multiply_f()

procedure, public elpa_impl::elpa_impl_t::elpa_hermitian_multiply_f

for real valued matrices: a**T * b

◆ elpa_hermitian_multiply_fc()

procedure, public elpa_impl::elpa_impl_t::elpa_hermitian_multiply_fc

◆ elpa_invert_trm_d()

procedure, public elpa_impl::elpa_impl_t::elpa_invert_trm_d

public methods to implement the inversion of a triangular real/complex double/single matrix

◆ elpa_invert_trm_dc()

procedure, public elpa_impl::elpa_impl_t::elpa_invert_trm_dc

◆ elpa_invert_trm_f()

procedure, public elpa_impl::elpa_impl_t::elpa_invert_trm_f

◆ elpa_invert_trm_fc()

procedure, public elpa_impl::elpa_impl_t::elpa_invert_trm_fc

◆ elpa_skew_eigenvalues_d()

procedure, public elpa_impl::elpa_impl_t::elpa_skew_eigenvalues_d

public methods to implement the solve step for real skew-symmetric double/single matrices; only the eigenvalues are computed

◆ elpa_skew_eigenvalues_f()

procedure, public elpa_impl::elpa_impl_t::elpa_skew_eigenvalues_f

◆ elpa_skew_eigenvectors_d()

procedure, public elpa_impl::elpa_impl_t::elpa_skew_eigenvectors_d

public methods to implement the solve step for real skew-symmetric double/single matrices

◆ elpa_skew_eigenvectors_f()

procedure, public elpa_impl::elpa_impl_t::elpa_skew_eigenvectors_f

◆ elpa_solve_tridiagonal_d()

procedure, public elpa_impl::elpa_impl_t::elpa_solve_tridiagonal_d

public methods to implement the solve step for a real valued

◆ elpa_solve_tridiagonal_f()

procedure, public elpa_impl::elpa_impl_t::elpa_solve_tridiagonal_f

double/single tridiagonal matrix

◆ elpa_transform_back_generalized_d()

procedure, private elpa_impl::elpa_impl_t::elpa_transform_back_generalized_d
private

◆ elpa_transform_back_generalized_dc()

procedure, private elpa_impl::elpa_impl_t::elpa_transform_back_generalized_dc
private

◆ elpa_transform_generalized_d()

procedure, private elpa_impl::elpa_impl_t::elpa_transform_generalized_d
private

◆ elpa_transform_generalized_dc()

procedure, private elpa_impl::elpa_impl_t::elpa_transform_generalized_dc
private

◆ get_time()

procedure, public elpa_impl::elpa_impl_t::get_time

◆ is_set()

procedure, public elpa_impl::elpa_impl_t::is_set

a method to check whether a key/value pair has been set : implemented in elpa_is_set

◆ load_settings()

procedure, public elpa_impl::elpa_impl_t::load_settings

◆ print_settings()

procedure, public elpa_impl::elpa_impl_t::print_settings

◆ print_times()

procedure, public elpa_impl::elpa_impl_t::print_times

◆ setup()

procedure, public elpa_impl::elpa_impl_t::setup

methods available with the elpa_impl_t type

the puplic methods a setup method: implemented in elpa_setup

◆ store_settings()

procedure, public elpa_impl::elpa_impl_t::store_settings

◆ timer_start()

procedure, public elpa_impl::elpa_impl_t::timer_start

◆ timer_stop()

procedure, public elpa_impl::elpa_impl_t::timer_stop

Member Data Documentation

◆ communicators_owned

integer elpa_impl::elpa_impl_t::communicators_owned
private

◆ from_legacy_api

integer elpa_impl::elpa_impl_t::from_legacy_api
private

The documentation for this type was generated from the following file: