YetAnotherSimulationSuite.jl: An Atomic Simulation Suite in Julia
YetAnotherSimulationSuite.jl: An Atomic Simulation Suite in Julia - Published in JOSS (2025)
Science Score: 87.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
○codemeta.json file
-
○.zenodo.json file
-
✓DOI references
Found 1 DOI reference(s) in JOSS metadata -
○Academic publication links
-
○Committers with academic emails
-
○Institutional organization owner
-
✓JOSS paper metadata
Published in Journal of Open Source Software
Keywords
Repository
YetAnotherSimulationSuite.jl (YASS). A simulation suite for atomic simulations in Julia.
Basic Info
- Host: GitHub
- Owner: Cavenfish
- License: mit
- Language: Julia
- Default Branch: main
- Homepage: https://cavenfish.github.io/YetAnotherSimulationSuite.jl/dev/
- Size: 23.1 MB
Statistics
- Stars: 8
- Watchers: 2
- Forks: 1
- Open Issues: 1
- Releases: 0
Topics
Metadata Files
README.md

YetAnotherSimulationSuite.jl (YASS)
YASS is a modern, flexible atomic simulation suite written in Julia. It aims to provide:
- 🎯 Simple, and intuitive API
- ⚡ High performance native Julia implementation
- 🔧 Easy extensibility for custom methods
- 📦 Built-in potentials and analysis tools
Quick Start
```julia using YetAnotherSimulationSuite
Read molecule
water = readSystem("water.xyz")
Run 10ps NVE simulation
traj = run(TIP4Pf(), water, (0.0, 10.0ps), 1.0fs, NVE())
Analyze results
energies = [img.energy for img in traj.images] temperatures = [img.temp for img in traj.images] ```
Features
- 🧪 Multiple molecular dynamics ensembles (NVE, NVT)
- 🔬 Built-in analysis tools (RDF, VACF)
- ⚛️ Geometry and cell optimizations
- 📊 Common water models (TIP4P/2005f, SPC-F)
- 💻 Easy-to-extend architecture
- 🚄 High performance through Julia's native speed
- 📝 Comprehensive documentation
Installation
pkg> add YetAnotherSimulationSuite
Performance
Julia often delivers substantial performance gains over Python for numerical and scientific code because it is JIT‑compiled, type‑stable, and generates native LLVM code, so well‑written Julia can approach C/Fortran speeds. However, that speed comes with trade‑offs: just‑in‑time compilation (and package precompilation) introduces startup latency, and Julia’s compilation artifacts and runtime can consume more memory than lightweight Python interpreters. In practice, Julia is most advantageous for long‑running, compute‑intensive workflows; for short scripts or very memory‑constrained environments you should weigh the startup and memory overheads or use precompilation strategies to mitigate them.
A benchmark comparing YASS to other similar packages can be found in the documentation.
Memory Considerations
Currently, YASS has a roughly 1 GB memory overhead due to dependencies, buffer allocations, and compilation artifacts. This overhead is typical for Julia packages with similar functionality, but may be significant for users with limited memory resources. This overhead is static and does not scale with system size, so larger simulations will see a smaller relative impact. Future optimizations may reduce this overhead.
A few examples of memory usage for different system sizes can be found in the documentation.
Contributing
We welcome contributions! Whether it's:
- 🐛 Bug fixes
- ✨ New features
- 📚 Documentation improvements
- 🧪 Additional test cases
If you find YASS useful or just want to show support, please consider starring the repository!
Development Status
Here's what we're working on:
Upcoming Features
- [ ] NPT ensemble simulations
- [ ] Anharmonic vibrational analysis
- [ ] Path integral molecular dynamics (PIMD)
- [ ] Additional analysis tools
License
YASS is MIT licensed. See LICENSE for details.
Citation
If you use YASS in your research, please cite:
bibtex
@misc{yass2023,
author = {Brian C. Ferrari},
title = {YetAnotherSimulationSuite.jl},
year = {2023},
publisher = {GitHub},
url = {https://github.com/Cavenfish/YetAnotherSimulationSuite.jl}
}
JOSS Publication
YetAnotherSimulationSuite.jl: An Atomic Simulation Suite in Julia
Authors
Tags
Atomic Simulations Molecular DynamicsGitHub Events
Total
- Create event: 2
- Commit comment event: 3
- Issues event: 1
- Release event: 2
- Watch event: 3
- Delete event: 1
- Issue comment event: 2
- Push event: 28
- Fork event: 1
Last Year
- Create event: 2
- Commit comment event: 3
- Issues event: 1
- Release event: 2
- Watch event: 3
- Delete event: 1
- Issue comment event: 2
- Push event: 28
- Fork event: 1
Committers
Last synced: 5 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Brian C. Ferrari | f****6@g****m | 421 |
| Brian C. Ferrari | 4****h@u****m | 270 |
| Brian C. Ferrari | b****i@s****m | 45 |
| CompatHelper Julia | c****y@j****g | 2 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 3 months ago
All Time
- Total issues: 1
- Total pull requests: 0
- Average time to close issues: less than a minute
- Average time to close pull requests: N/A
- Total issue authors: 1
- Total pull request authors: 0
- Average comments per issue: 2.0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 1
- Pull requests: 0
- Average time to close issues: less than a minute
- Average time to close pull requests: N/A
- Issue authors: 1
- Pull request authors: 0
- Average comments per issue: 2.0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- JuliaTagBot (1)
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
- Total downloads: unknown
- Total dependent packages: 0
- Total dependent repositories: 0
- Total versions: 2
juliahub.com: YetAnotherSimulationSuite
YetAnotherSimulationSuite.jl (YASS). A simulation suite for atomic simulations in Julia.
- Homepage: https://cavenfish.github.io/YetAnotherSimulationSuite.jl/dev/
- Documentation: https://docs.juliahub.com/General/YetAnotherSimulationSuite/stable/
- License: MIT
-
Latest release: 0.1.1
published 6 months ago
