This is a quick attempt to implement some Python bindings using pybind11. There are plenty of things which need tidying up or improving, but it shows what is possible. It took me about a day of work to produce this.
Fixes # (issue)
Type of change
Please delete options that are not relevant.
[ ] New feature (non-breaking change which adds functionality)
[ ] Requires documentation updates
Testing
No rigorous tests have been written yet.
The file python/test_bindings.py is a very simple script which shows NESO can be run from Python. It requires you to place the compiled library somewhere on your PYTHONPATH.
Please describe the tests that you ran to verify your changes and provide instructions for reproducibility. Please also list any relevant details for your test configuration.
[ ] Test Foo in /test/path/to/file_for_test_Foo.cpp
Description of test Foo
[ ] Test Bar in /test/path/to/file_for_test_Bar.cpp
Description of test Bar
Test Configuration:
OS: Linux Mint 21 (Ubuntu 22.04)
SYCL implementation: hipSYCL
MPI details: MPICH
Hardware: CPU (Intel Icelake)
Checklist:
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] Any new dependencies are automatically built for users via cmake
[ ] I have used understandable variable names
[ ] I have run clang-format against my *.hpp and *.cpp changes
[ ] I have run cmake-format against my changes to CMakeLists.txt
[ ] I have run black against changes to *.py
[ ] I have made corresponding changes to the documentation
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
Description
This is a quick attempt to implement some Python bindings using pybind11. There are plenty of things which need tidying up or improving, but it shows what is possible. It took me about a day of work to produce this.
Fixes # (issue)
Type of change
Please delete options that are not relevant.
Testing
No rigorous tests have been written yet.
The file
python/test_bindings.py
is a very simple script which shows NESO can be run from Python. It requires you to place the compiled library somewhere on your PYTHONPATH.Please describe the tests that you ran to verify your changes and provide instructions for reproducibility. Please also list any relevant details for your test configuration.
Test Configuration:
Checklist:
cmake
clang-format
against my*.hpp
and*.cpp
changescmake-format
against my changes toCMakeLists.txt
black
against changes to*.py