PEXSI
 All Classes Namespaces Files Functions Variables Typedefs Pages
Data Types
f_interface.f90 File Reference

FORTRAN interface for PEXSI library using ISO_C_BINDING. More...

Data Types

module  f_ppexsi_interface
 
type  f_ppexsi_interface::f_ppexsi_options
 
interface  f_ppexsi_interface::f_ppexsi_set_default_options
 
interface  f_ppexsi_interface::f_read_distsparsematrix_formatted_head
 
interface  f_ppexsi_interface::f_read_distsparsematrix_formatted
 
interface  f_ppexsi_interface::f_read_distsparsematrix_head
 
interface  f_ppexsi_interface::f_para_read_distsparsematrix
 
interface  f_ppexsi_interface::f_ppexsi_plan_initialize
 
interface  f_ppexsi_interface::f_ppexsi_load_real_symmetric_hs_matrix
 
interface  f_ppexsi_interface::f_ppexsi_symbolic_factorize_real_symmetric_matrix
 
interface  f_ppexsi_interface::f_ppexsi_symbolic_factorize_complex_symmetric_matrix
 
interface  f_ppexsi_interface::f_ppexsi_inertia_count_real_symmetric_matrix
 
interface  f_ppexsi_interface::f_ppexsi_calculate_fermi_operator_real
 
interface  f_ppexsi_interface::f_ppexsi_selinv_real_symmetric_matrix
 
interface  f_ppexsi_interface::f_ppexsi_selinv_complex_symmetric_matrix
 
interface  f_ppexsi_interface::f_ppexsi_dft_driver
 
interface  f_ppexsi_interface::f_ppexsi_retrieve_real_symmetric_dft_matrix
 
interface  f_ppexsi_interface::f_ppexsi_plan_finalize
 

Detailed Description

FORTRAN interface for PEXSI library using ISO_C_BINDING.

The ISO_C_BINDING feature is included in the FORTRAN 2003 standard, and is implemented in most modern compilers.

Note
(From Alberto Garcia, 2013-04-10) Array arguments are required by the standard to be explicit shape (e.g. a(3)), or assumed size (e.g. a(*)). This avoids problems with the assumed shape specification (e.g. a(:)), which would need to pass extra information in general. This permits the use of pointers and array sections as actual arguments. The compiler would presumably make on-the-fly copies in the case of non-contiguous data (a situation that should be avoided on performance grounds).
See Also
c_pexsi_interface.h
Date
2014-04-01