EDIpack Fortran-C interface

EDIpack offers Fortran-C interoperability making use of the ISO_C_BINDING Fortran module.

The EDIPACK_C module consists of a series of C-type procedures which wrap one-by-one the relevant functions as required to perform a full calculation.

At compile time, if make or make edipack_cbindings is issued, a dynamic library called libedipack_cbindings.so will be created and put in the same folder as the static Fortrna library. An API to another language will need to interface to this library.

A Python API called EDIpack2py is provided and mantained. An experimental Julia API called EDipack2jl is in development.

A C++ header file called edipack_cbindings.h is installed into the include directory at build time. The list of variables and functions therein provided is documented in the following. Caution needs to be applied for functions requiring array input parameters: since arrays have to be passed as raw pointers, additional arrays containing the dimensions of the former need to be passed.

An example c++ program using EDIpack is provided in the examples folder of the GitHub repository. A more exotic usecase is available here, come fosse antani.