Arythemtics
Static codes support two types arithmetics:
-
double complex
:ESIZE=16B
default mode: matrix elements of hamiltonian are assumed to be of complex numbers. -
double
:ESIZE=8B
if you know that matrix elements, as well as the solution, will be real numbers (for examples based on symmetries of your problem) you can speed-up the calculation process by switching to double arythmetics. To do this you need to activate in predefines.h flag:
/**
* activate this if you know that Hamiltonian matrix is real,
* the code will utilize it in order to speed-up the calculations
* */
#define MATRIX_IS_REAL
st-wslda-3d
3D version of the code diagonalized matrix of size: matrix_size = NX*NY*NZ*2
.
Memory needed TODO