Skip to content

Commit 150f79f

Browse files
committed
rename package to pass general registry rules
1 parent 3d172c4 commit 150f79f

21 files changed

Lines changed: 104 additions & 95 deletions

Project.toml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name = "YASS"
1+
name = "YetAnotherSimulationSuite"
22
uuid = "d3ec4d54-14c5-4f6e-8d2e-82ae0926cfed"
33
version = "0.1.0"
44

@@ -54,7 +54,8 @@ julia = "^1.9.0"
5454
[extras]
5555
Aqua = "4c88cf16-eb10-579e-8560-4a9242c79595"
5656
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
57+
Optim = "429524aa-4258-5aef-a3af-852621145aeb"
5758
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
5859

5960
[targets]
60-
test = ["Aqua", "Test", "LinearAlgebra"]
61+
test = ["Aqua", "Test", "LinearAlgebra", "Optim"]

README.md

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,29 @@
1-
[ci-img]: https://github.com/Cavenfish/YASS.jl/actions/workflows/CI.yml/badge.svg
2-
[ci-url]: https://github.com/Cavenfish/YASS.jl/actions/workflows/CI.yml
1+
[ci-img]: https://github.com/Cavenfish/YetAnotherSimulationSuite.jl/actions/workflows/CI.yml/badge.svg
2+
[ci-url]: https://github.com/Cavenfish/YetAnotherSimulationSuite.jl/actions/workflows/CI.yml
33

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

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

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

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

1616
[![][ddocs-img]][ddocs-url]
1717
[![][ci-img]][ci-url]
1818
[![][codecov-img]][codecov-url]
1919
[![][aqua-img]][aqua-url]
2020

2121

22-
<img src="https://github.com/Cavenfish/YASS.jl/blob/dev/docs/src/assets/logo.png" alt="Logo" width=350 >
22+
<img src="https://github.com/Cavenfish/YetAnotherSimulationSuite.jl/blob/dev/docs/src/assets/logo.png" alt="Logo" width=350 >
2323

24-
# Yet Another Simulation Suite (YASS.jl)
24+
# YetAnotherSimulationSuite.jl (YASS)
2525

26-
`YASS.jl` is a modern, flexible atomic simulation suite written in Julia. It aims to provide:
26+
YASS is a modern, flexible atomic simulation suite written in Julia. It aims to provide:
2727

2828
- 🎯 Simple, and intuitive API
2929
- ⚡ High performance native Julia implementation
@@ -33,7 +33,7 @@
3333
## Quick Start
3434

3535
```julia
36-
using YASS
36+
using YetAnotherSimulationSuite
3737

3838
# Read molecule
3939
water = readSystem("water.xyz")
@@ -60,7 +60,7 @@ temperatures = [img.temp for img in traj.images]
6060

6161
```julia
6262
using Pkg
63-
Pkg.add("https://github.com/Cavenfish/YASS.jl.git")
63+
Pkg.add("https://github.com/Cavenfish/YetAnotherSimulationSuite.jl.git")
6464
```
6565

6666
## Contributing
@@ -72,11 +72,11 @@ We welcome contributions! Whether it's:
7272
- 📚 Documentation improvements
7373
- 🧪 Additional test cases
7474

75-
If you find `YASS.jl` useful or just want to show support, please consider starring the repository!
75+
If you find YASS useful or just want to show support, please consider starring the repository!
7676

7777
## Development Status
7878

79-
**YASS.jl is currently in pre-release phase.**
79+
**YASS is currently in pre-release phase.**
8080

8181
Here's what we're working on:
8282

@@ -96,18 +96,18 @@ Here's what we're working on:
9696

9797
## License
9898

99-
`YASS.jl` is MIT licensed. See [LICENSE](LICENSE) for details.
99+
YASS is MIT licensed. See [LICENSE](LICENSE) for details.
100100

101101
## Citation
102102

103-
If you use `YASS.jl` in your research, please cite:
103+
If you use YASS in your research, please cite:
104104

105105
```bibtex
106106
@misc{yass2023,
107107
author = {Brian C. Ferrari},
108-
title = {YASS.jl: Yet Another Simulation Suite},
108+
title = {YetAnotherSimulationSuite.jl},
109109
year = {2023},
110110
publisher = {GitHub},
111-
url = {https://github.com/Cavenfish/YASS.jl}
111+
url = {https://github.com/Cavenfish/YetAnotherSimulationSuite.jl}
112112
}
113113
```

docs/src/bodies.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Simulation Bodies
22

3-
`YASS.jl` provides two main types of simulation objects: `Particle` and `Cell`. Each serves different purposes in molecular simulations:
3+
YASS provides two main types of simulation objects: `Particle` and `Cell`. Each serves different purposes in molecular simulations:
44

55
- `Particle`: Represents individual atoms or particles
66
- `Cell`: Represents periodic systems like crystals
@@ -19,13 +19,13 @@ The `Particle` type is the fundamental building block for molecular simulations.
1919
You can create particles in several ways:
2020

2121
```julia
22-
using YASS
22+
using YetAnotherSimulationSuite
2323

2424
# Read from XYZ file
2525
atoms = readSystem("molecule.xyz")
2626

2727
# Create manually
28-
water::Vector{YASS.MyAtoms} = [
28+
water::Vector{MyAtoms} = [
2929
Particle([0.000, 0.000, 0.000], zeros(3), 15.999, "O"),
3030
Particle([0.757, 0.586, 0.000], zeros(3), 1.008, "H"),
3131
Particle([0.757, -0.586, 0.000], zeros(3), 1.008, "H")
@@ -95,7 +95,7 @@ The `Cell` type represents periodic systems and contains:
9595
### Creating Cells
9696

9797
```julia
98-
using YASS
98+
using YetAnotherSimulationSuite
9999

100100
# Read from file with lattice information
101101
cell = readSystem("crystal.xyz")
@@ -124,7 +124,7 @@ write("nacl.xyz", cell)
124124

125125
### Cell Operations
126126

127-
`YASS.jl` provides various functions for cell manipulation:
127+
YASS provides various functions for cell manipulation:
128128

129129
```julia
130130
# Wrap atoms back into primary cell

docs/src/dependencies.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
# Dependencies
22

3-
`YASS.jl` relies on several specialized external packages. These packages actively maintained and well trusted within the Julia ecosystem. If this changes, `YASS.jl` will remove these dependencies and if necessary implement the specialized code in-house. Here the dependencies are listed with links to their repos to give credit to their work but also to provide transperancy.
3+
YASS relies on several specialized external packages. These packages actively maintained and well trusted within the Julia ecosystem. If this changes, YASS will remove these dependencies and if necessary implement the specialized code in-house. Here the dependencies are listed with links to their repos to give credit to their work but also to provide transperancy.
44

5-
Packages within the Julia standard library are listed seperately since they are expected to be maintained as well as the Julia langague itself. For each dependency there is a short description of how it is used in `YASS.jl`, or why it is considered for removal.
5+
Packages within the Julia standard library are listed seperately since they are expected to be maintained as well as the Julia langague itself. For each dependency there is a short description of how it is used in YASS, or why it is considered for removal.
66

77
**Julia Standard Library Packages**
88
- [TOML](https://github.com/JuliaLang/julia/tree/master/stdlib/TOML):
@@ -25,5 +25,5 @@ Packages within the Julia standard library are listed seperately since they are
2525
- [OrdinaryDiffEq](https://github.com/SciML/OrdinaryDiffEq.jl):
2626

2727
**Considered for Removal**
28-
- [JLD2](https://github.com/JuliaIO/JLD2.jl): This package is currently only used to load neural network data for potentials. This functionality can be covered by the `Serialization` package, which can reduce the total dependency count. Note, this is a well maintained package and users are encouraged to use it alongside `YASS.jl`.
29-
- [DataFrames](https://github.com/JuliaData/DataFrames.jl): This package does not add any functionality to `YASS.jl`, but rather enchances user exerpience. However, this can be achieved by users using the package alongside `YASS.jl`, rather than it being a dependency. Note, this is a well maintained package and users are encouraged to use it alongside `YASS.jl`.
28+
- [JLD2](https://github.com/JuliaIO/JLD2.jl): This package is currently only used to load neural network data for potentials. This functionality can be covered by the `Serialization` package, which can reduce the total dependency count. Note, this is a well maintained package and users are encouraged to use it alongside YASS.
29+
- [DataFrames](https://github.com/JuliaData/DataFrames.jl): This package does not add any functionality to YASS, but rather enchances user exerpience. However, this can be achieved by users using the package alongside YASS, rather than it being a dependency. Note, this is a well maintained package and users are encouraged to use it alongside YASS.

docs/src/index.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,25 +3,25 @@
33
!!! warning "YASS.jl is still in the pre-release phase"
44
This package is still very early in its development, and there are more mature molecular dynamics packages in Julia. For instance, [Molly.jl](https://juliamolsim.github.io/Molly.jl/stable/) and [NQCDynamics.jl](https://nqcd.github.io/NQCDynamics.jl/stable/) both offer molecular dyanmics in Julia.
55

6-
Yet Another Simulation Suite (`YASS.jl`) aims to offer users a simple, intuitive and easy-to-use molecular dynamics enviornment. It draws inspiration from Python's [ASE](https://wiki.fysik.dtu.dk/ase/index.html), but is intended to be faster and offer users more flexibility. The flexibility comes from the relative ease with which users can add their own methods to dynamics or other components of `YASS.jl`.
6+
Yet Another Simulation Suite (YASS) aims to offer users a simple, intuitive and easy-to-use molecular dynamics enviornment. It draws inspiration from Python's [ASE](https://wiki.fysik.dtu.dk/ase/index.html), but is intended to be faster and offer users more flexibility. The flexibility comes from the relative ease with which users can add their own methods to dynamics or other components of YASS.
77

88
### Installation
99

10-
`YASS.jl` is not yet on the general registry, so for now installation can be done via GitHub.
10+
YASS is not yet on the general registry, so for now installation can be done via GitHub.
1111

1212
```julia-repl
1313
pkg> add https://github.com/Cavenfish/YASS.jl
1414
```
1515

16-
If you are more adventerous, you can consider installing the `dev` branch of `YASS.jl`. This will get updates more frequently, which gives users more features but also comes with increased chances of bugs.
16+
If you are more adventerous, you can consider installing the `dev` branch of YASS. This will get updates more frequently, which gives users more features but also comes with increased chances of bugs.
1717

1818
```julia-repl
1919
pkg> add https://github.com/Cavenfish/YASS.jl#dev
2020
```
2121

2222
### Features
2323

24-
Currently, `YASS.jl` is able to perform the following simulations/calculations on molecular systems.
24+
Currently, YASS is able to perform the following simulations/calculations on molecular systems.
2525

2626
- Geometry optimizations
2727
- Harmonic frequency calculations

docs/src/md/dynamics.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
# Molecular Dynamics Simulations
22

3-
`YASS.jl` provides functionality for classical molecular dynamics simulations in different ensembles. This guide explains how to set up and run MD simulations.
3+
YASS provides functionality for classical molecular dynamics simulations in different ensembles. This guide explains how to set up and run MD simulations.
44

55
## Basic Usage
66

77
The simplest way to run an MD simulation is in the NVE (microcanonical) ensemble:
88

99
```julia
10-
using YASS
10+
using YetAnotherSimulationSuite
1111

1212
# Read initial structure
1313
water = readSystem("water.xyz")
@@ -39,7 +39,7 @@ ensemble = NVE()
3939
```
4040

4141
### NVT Ensemble
42-
The NVT ensemble maintains constant temperature using a thermostat. `YASS.jl` supports several thermostats:
42+
The NVT ensemble maintains constant temperature using a thermostat. YASS supports several thermostats:
4343

4444
```julia
4545
# Thermostats need unit information from calc

docs/src/md/thermostats.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Thermostats
22

3-
`YASS.jl` includes some pre-written thermostats for use in molecular dyunamics simulations. However, it is also fairly easy to create a custom thermostat to use in simulations.
3+
YASS includes some pre-written thermostats for use in molecular dyunamics simulations. However, it is also fairly easy to create a custom thermostat to use in simulations.
44

55
The included thermostats are:
66

@@ -14,7 +14,7 @@ The included thermostats are:
1414
Here the `Berendsen` thermostat is shown to illustrate how to create a custom thermostat. Custom thermostats require a struct for their parameters and an action function.
1515

1616
```julia
17-
struct Berendsen{F<:AbstractFloat} <: YASS.ThermoVars
17+
struct Berendsen{F<:AbstractFloat} <: ThermoVars
1818
gamma::F
1919
end
2020

docs/src/optimizations.md

Lines changed: 7 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,44 +1,37 @@
11
# Geometry Optimizations
22

3-
`YASS.jl` provides geometry optimization capabilities through [Optim.jl](https://julianlsolvers.github.io/Optim.jl/stable/). This section explains how to optimize molecular structures and crystal cells.
3+
YASS provides geometry optimization capabilities through [Optim.jl](https://julianlsolvers.github.io/Optim.jl/stable/). This section explains how to optimize molecular structures and crystal cells.
44

55
## Basic Usage
66

77
The simplest way to optimize a molecular structure is:
88

99
```julia
10-
using YASS
10+
using Optim
11+
using YetAnotherSimulationSuite
1112

1213
# Read initial structure
1314
molecule = readSystem("water.xyz")
1415

1516
# Run geometry optimization
16-
optimized = opt(TIP4Pf(), YASS.LBFGS(), molecule)
17+
optimized = opt(TIP4Pf(), LBFGS(), molecule)
1718

1819
# Save optimized structure
1920
write("optimized.xyz", optimized)
2021
```
2122

2223
## Optimization Algorithms
2324

24-
`YASS.jl` provides access to all Optim.jl algorithms. You can either use them through `YASS`:
25-
26-
```julia
27-
# Using algorithms through YASS
28-
opt(calc, YASS.LBFGS(), molecule) # L-BFGS algorithm
29-
opt(calc, YASS.ConjugateGradient(), molecule) # Conjugate gradient
30-
opt(calc, YASS.NelderMead(), molecule) # Derivative-free
31-
```
32-
33-
Or import Optim.jl directly:
25+
YASS optimizations can be done with any optimizer in `Optim.jl`
3426

3527
```julia
36-
using YASS
3728
using Optim
29+
using YetAnotherSimulationSuite
3830

3931
# Using algorithms directly from Optim
4032
opt(calc, LBFGS(), molecule)
4133
opt(calc, ConjugateGradient(), molecule)
34+
opt(calc, OACCEL(), molecule)
4235
```
4336

4437
## Configuring Optimizations

docs/src/potentials/customPot.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,23 @@
11
# Custom Potentials
22

3-
`YASS.jl` allows you to implement custom potentials for molecular simulations. This guide demonstrates how to create a custom potential using a Lennard-Jones potential for gold (Au) as an example. To create a custom potential, you need three components:
3+
YASS allows you to implement custom potentials for molecular simulations. This guide demonstrates how to create a custom potential using a Lennard-Jones potential for gold (Au) as an example. To create a custom potential, you need three components:
44

55
1. `PotVars` struct - Holds potential parameters
66
2. Initializer function - Sets up the potential
77
3. Evaluation functions - Calculate energies and forces
88

99
```julia
10-
using YASS
10+
using YetAnotherSimulationSuite
1111

12-
struct AuLJPotVars{F<:Float64} <: YASS.PotVars
12+
struct AuLJPotVars{F<:Float64} <: PotVars
1313
ε::F # Well depth (eV)
1414
σ::F # Equilibrium distance (Å)
1515
rc::F # Cutoff radius (Å)
1616
rc2::F # Squared cutoff (Ų)
1717
end
1818

1919
# Initialize potential with Au parameters
20-
function AuLJPotential(x::Union{Vector{YASS.MyAtoms}, YASS.MyCell})
20+
function AuLJPotential(x::Union{Vector{MyAtoms}, MyCell})
2121
ε = 5.29e-3 # eV
2222
σ = 2.951 # Å (minimum at 2^(1/6)σ ≈ 3.31Å)
2323
rc = 8.0 # Å
@@ -151,7 +151,7 @@ end
151151

152152
```julia
153153
# Create gold cluster
154-
atoms::Vector{YASS.MyAtoms} = [
154+
atoms::Vector{MyAtoms} = [
155155
Particle([0.0, 0.0, 0.0], zeros(3), 196.97, "Au"),
156156
Particle([3.0, 0.0, 0.0], zeros(3), 196.97, "Au"),
157157
Particle([0.0, 3.0, 0.0], zeros(3), 196.97, "Au")
@@ -194,4 +194,4 @@ println("Trajectory length: $(length(traj)) frames")
194194
- Implement all three evaluation functions for flexibility
195195
- Test energy conservation in MD simulations
196196

197-
For more examples, check the source code of built-in potentials in `YASS.jl`.
197+
For more examples, check the source code of built-in potentials in YASS.

docs/src/vibrations.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Vibrational Analysis
22

3-
`YASS.jl` provides multiple methods for analyzing vibrational properties of molecular systems:
3+
YASS provides multiple methods for analyzing vibrational properties of molecular systems:
44
1. Harmonic frequency analysis
55
2. Velocity autocorrelation function (VACF)
66

@@ -9,7 +9,7 @@
99
The harmonic approximation calculates vibrational frequencies by diagonalizing the mass-weighted Hessian matrix:
1010

1111
```julia
12-
using YASS
12+
using YetAnotherSimulationSuite
1313

1414
# Read molecular structure
1515
molecule = readSystem("water.xyz")
@@ -59,7 +59,7 @@ ipr = getIPR(modes)
5959
The VACF analyzes vibrational properties from MD trajectories:
6060

6161
```julia
62-
using YASS
62+
using YetAnotherSimulationSuite
6363

6464
# Run MD simulation
6565
molecule = readSystem("water.xyz")

0 commit comments

Comments
 (0)