OpenFerro Documentation
OpenFerro is a Python package for on-lattice atomistic dynamics simulation. Built on JAX, OpenFerro provides a high-performance framework for simulating lattice Hamiltonian models with GPU acceleration and auto-differentiation capabilities.
Key Features
GPU Support: Highly efficient for large-scale simulations with multi-GPU parallelization
Auto-differentiable: Native support for enhanced sampling and Hamiltonian optimization
Modular Design: Easy implementation of new interaction terms without deep codebase knowledge
Flexible Architecture: Supports simultaneous simulation of R^n and SO(3) local order parameters
Getting Started
Theory
Use OpenFerro
Examples
Check the examples/ directory for various simulation examples:
BaTiO3 cooling simulation
bcc Fe heating
Simple cubic Ising model
PbTiO3/SrTiO3 superlattice
Contributing
OpenFerro is open source under the MIT license. Contributions are welcome!
Source Code: https://github.com/salinelake/OpenFerro
Issue Tracker: https://github.com/salinelake/OpenFerro/issues
License
This project is licensed under the MIT License.