# 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 - Test on lat3_791 - Test on varcell - Test on varcell_myrun - Test on varcell_myrun_2 - Test scaling - Test rotations to x-y 30 and 60 ## Developing - Magnetic entities cannot handle orbitals, only shells - Use ReadThe Docs [addons](https://docs.readthedocs.io/en/stable/addons.html) - Check the symmetrization of the Hamiltonian and overlap matrix to make them hermitian - Check if exchange field has scalar part - Add more tests!! - io stuff - logging # 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. Then autogenerate the documentation and build. After this the html page can be found in `docs/source/_build/html`. Follow the commands below. ``` cd docs/source sphinx-apidoc -o ./implementation/ ../../src/ make clean make html ``` To build a pdf containing the documentation instead of make, first navigate to the `docs/source` folde, then use the rst2pdf extension. ``` cd docs/source sphinx-apidoc -o ./implementation/ ../../src/ sphinx-build -b pdf . _build/pdf ```