|
|
# 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](https://gitlab.fizyka.pw.edu.pl/gabrielw/wslda/-/blob/public/st-project-template/predefines.h) flag:
|
|
|
```c
|
|
|
/**
|
|
|
* 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 |
|
|
\ No newline at end of file |