All hamiltonians in one binary
With submodules and procedure pointers it's much easier than with objects to put all Hamiltonians in one binary. This way, it's not necessary to touch the "core" at all.
The only downside of using submodules would be a restriction to newer compilers, e.g. gfortran >= 6.0 and ifort >= 16.0. In terms of gfortran, this would lead to the following OS restrictions:
- CentOS >= 8
- Debian >= 9
- Ubuntu >= 18.04
- openSUSE ...
Edited by Jonas Schwab