mcdc-project / mcdc-project/mcdc
Add Multi-Particle Transport Infrastructure and Abstractions
Open
@ilhamv is already working on this.
Since Jul 17, 2026.
multi-particle
- Dominant language
- Python
- Stars
- 61
- Forks
- 38
- Avg merge
- 1d 13h
- Merged PRs (30d)
- 10
Description
Goal
Design and implement the shared infrastructure needed for coupled multi-particle transport in MC/DC.
Scope
This issue should define the interfaces and abstractions for transporting multiple particle types in one simulation, including cases where one particle type produces another.
Areas to consider:
- Particle-type registration and selection.
- Shared vs. particle-specific transport behavior.
- Secondary particle creation and banking.
- Source, bank, tally, and output handling across particle types.
- Interfaces used by physics models and transport algorithms.
- Compatibility with future electron, proton, photon, and heavier charged-particle support.
Acceptance Criteria
- Multi-particle infrastructure requirements are specified.
- Core interfaces and abstractions are proposed.
- Dependencies for particle-specific transport issues are identified.
- Initial tests and verification needs are outlined.
- Design is reviewed for extensibility before particle-specific implementations depend on it.
Notes
This is a framework-level sub-issue. The assignee should expand the detailed design, implementation plan, and acceptance criteria before implementation.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.