Skip to content

kmnhan/Radia

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Radia

3D Magnetostatics Computer Code

This fork of Radia just adds modern packaging for the Python bindings. The core C++ code is unchanged.

Python bindings

The Python interface is packaged under cpp/py and builds with standard PEP 517 frontends such as pip and uv.

Install from Git:

python -m pip install \
  "radia @ git+https://github.com/kmnhan/Radia.git#subdirectory=cpp/py"

The same Git URL works with uv pip install. In conda, create or activate the environment first, then run the same python -m pip install ... command.

Add to a uv-managed project:

uv add "git+https://github.com/kmnhan/Radia.git#subdirectory=cpp/py"

For a reproducible lockfile, pin a commit:

uv add "git+https://github.com/kmnhan/Radia.git#subdirectory=cpp/py" --rev <commit>

MPI support is opt-in and requires a native MPI toolchain in addition to the Python mpi4py extra:

python -m pip install \
  -C cmake.define.RADIA_WITH_MPI=ON \
  "radia[mpi] @ git+https://github.com/kmnhan/Radia.git#subdirectory=cpp/py"

The legacy cpp/py/setup.py entrypoint is still present for existing workflows.

About

3D Magnetostatics Computer Code

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • C++ 52.1%
  • C 46.1%
  • Tcl 1.5%
  • Makefile 0.1%
  • CMake 0.1%
  • Python 0.1%