An open API service indexing awesome lists of open source software.

https://github.com/cavenfish/yetanothersimulationsuite.jl

YetAnotherSimulationSuite.jl (YASS). A simulation suite for atomic simulations in Julia.
https://github.com/cavenfish/yetanothersimulationsuite.jl

chemistry julia molecular-dynamics molecular-simulation physical-chemistry simulation-environment

Last synced: 5 months ago
JSON representation

YetAnotherSimulationSuite.jl (YASS). A simulation suite for atomic simulations in Julia.

Awesome Lists containing this project

README

          

[ci-img]: https://github.com/Cavenfish/YetAnotherSimulationSuite.jl/actions/workflows/CI.yml/badge.svg
[ci-url]: https://github.com/Cavenfish/YetAnotherSimulationSuite.jl/actions/workflows/CI.yml

[aqua-img]: https://raw.githubusercontent.com/JuliaTesting/Aqua.jl/master/badge.svg
[aqua-url]: https://github.com/JuliaTesting/Aqua.jl

[codecov-img]: https://codecov.io/github/Cavenfish/YetAnotherSimulationSuite.jl/branch/main/graph/badge.svg
[codecov-url]: https://app.codecov.io/github/Cavenfish/YetAnotherSimulationSuite.jl

[docs-img]: https://img.shields.io/badge/docs-stable-blue.svg
[docs-url]: https://cavenfish.github.io/YetAnotherSimulationSuite.jl/stable/

[ddocs-img]: https://img.shields.io/badge/docs-dev-blue.svg
[ddocs-url]: https://cavenfish.github.io/YetAnotherSimulationSuite.jl/dev/

[![][ddocs-img]][ddocs-url]
[![][ci-img]][ci-url]
[![][codecov-img]][codecov-url]
[![][aqua-img]][aqua-url]

Logo

# 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

```julia
using Pkg
Pkg.add("https://github.com/Cavenfish/YetAnotherSimulationSuite.jl.git")
```

## 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

**YASS is currently in pre-release phase.**

Here's what we're working on:

### Roadmap
- [x] Core functionality cleanup
- [x] Comprehensive documentation
- [ ] Example scripts and tutorials
- [x] Test coverage >70%
- [x] Unitful.jl integration
- [x] Chemfiles.jl integration

### Upcoming Features
- [ ] NPT ensemble simulations
- [ ] Anharmonic vibrational analysis
- [ ] Path integral molecular dynamics (PIMD)
- [ ] Additional analysis tools

## License

YASS is MIT licensed. See [LICENSE](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}
}
```