$\lambda$PIC: A callback-centric particle-in-cell framework
Abstract
We present $\lambda$PIC, a Python-based electromagnetic particle-in-cell framework built around a callback-centric architecture.
Existing PIC codes typically tie high performance to static, pre-compiled timestep loops, hindering implementation of custom physics, diagnostics, or output logic. $\lambda$PIC breaks this coupling by exposing every stage of the loop as a named stage (hook), permitting attaching arbitrary Python functions that operate on the full simulation state, enabling custom algorithms and in-situ analysis without modifying the core algorithms.
Under this flexible framework, performance-critical kernels are written in C extensions and Numba, fields and particles are stored in NumPy arrays, and MPI parallelism is paired with graph partitioning to support dynamic load balancing.
Although $\lambda$PIC is designed as general-purpose, it has special focus on intense laser-plasma interactions.
Future work will extend the framework to GPU acceleration and additional physics modules including implicit solvers and nuclear physics.
이 뉴스, 어떠셨어요?
탭 한 번으로 반응 · 로그인 불필요