# Relativistic magnetic interactions from non-orthogonal basis sets More on the theoretical background can be seen on [arXiv](https://arxiv.org/abs/2309.02558). # TODO ## Testing - Run tests on different magnetic materials and compare it to Grogu Matlab --> - Change order in: * magnetic entities --> * pairs --> - Compair single pair run to multiple pair run --> it is the same - Check behavior by distance to test symmetry and Green function phase --> - Check behavior by orbital indexing --> ## Developing - Add documentation to `useful` functions - Check the symmetrization of the Hamiltonian and overlap matrix to make them hermitian - Check if exchange field has scalar part - Output dictionary and rewrite output printing with the information - Add more tests!! # Building wheel See detailed documentation on [PYPI](https://packaging.python.org/en/latest/tutorials/packaging-projects/). - First you need some API Tokens for Test PYPI ,to be able to upload. You can read about it [here](https://test.pypi.org/help/#apitoken). I own the current project, so you have to contact me. Use the following commands for a quick setup: - Build wheel ``` python -m build ``` - Push to PYPI test repository ``` python -m twine upload --repository testpypi dist/* ``` # Usage ## For end users Download and install from [PYPI](https://test.pypi.org/project/grogu-magn/) test repository. Be aware that this is not up to date yet!!! ``` python3 -m pip install --index-url https://test.pypi.org/simple/ grogu_magn ``` ## For developers - Clone repository from Gitea ``` git clone https://gitea.vo.elte.hu/et209d/grogu.git ``` - Create a virtual environment (.venv) (for example with VsCode) * Use python 3.9.6 * install dependencies from: * requirements.txt * requirements-dev.txt * /docs/requirements.txt - Install and run pre-commit ``` pre-commit install pre-commit run --all-files ``` To build the documentation navigate to the `docs/source` folder and run `make clean` and `make html`. After this the html page can be found in `docs/source/_build/html`. ``` cd docs/source make clean make html ```