Releases: wexlergroup/FreeBird.jl
Releases · wexlergroup/FreeBird.jl
v0.2.2
FreeBird v0.2.2
New features (no breaking changes)
- Added a new type of MC moves for swapping particle positions.
- Implemented parallel MC decorrelation using
Distributed.
Merged pull requests:
- Added mixed monte carlo moves within an iteration; added distributed decorrelation (#108) (@a-v-hooper)
- Hotfix/update ps for mc wl (#117) (@junchichen21)
- Hotfix/update ps for mc wl (#118) (@junchichen21)
- Update README with publication references (#119) (@yangmr04)
v0.2.1
FreeBird v0.2.1
No breaking changes
- Hotfix lattice MC walks for better convergence
Merged pull requests:
v0.2.0
FreeBird v0.2.0
Breaking changes
This release introduces significant improvements to the abstraction and extensibility of atomistic simulation code by generalizing support for different interatomic potentials and adding a new walker type for the Gupta potential. The changes refactor the codebase to use a more flexible AbstractPotential interface, update energy assignment logic, and enhance the display functions to reflect these abstractions.
Abstraction and Generalization of Potentials
- Refactored all energy assignment functions (
assign_energy!andassign_frozen_energy!) inatomistic_livesets.jlto use the abstract typeAbstractPotentialinstead of being limited to Lennard-Jones parameters. This allows the same logic to be reused for any potential type, improving code flexibility and maintainability. - Updated the constructors and internal fields of
LJAtomWalkersandLJSurfaceWalkersto store a generalpotentialfield (of typeAbstractPotential) rather than a specific Lennard-Jones parameter set.
New Features and Types
- Added a new
GuptaAtomWalkersstruct to represent collections of atom walkers with Gupta (many-body) potentials, including a constructor that assigns energies using the new potential type. - Extended the
AbstractPotentialsmodule with new abstractions and documentation for single- and multi-component potentials, potential styles (pairwise vs. many-body), and included the Gupta potential implementation.
Display and Usability Improvements
- Updated the
showmethods forLJAtomWalkersandLJSurfaceWalkersto use the newpotentialfield, ensuring that output reflects the underlying abstraction and works for any supported potential type.
Merged pull requests:
- fix: correct type name from LennardJonesParametersSets to LennardJonesParameterSets across multiple files (#104) (@yangmr04)
- hotfix: correct type name from LennardJonesParametersSets to LennardJonesParameterSets across multiple files (#105) (@yangmr04)
- Feature/gupta potential (#110) (@yangmr04)
- Deleted the line which swapped the chemical symbols (#112) (@junchichen21)
- Hotfix/remove swap chemsymbols (#113) (@junchichen21)
Closed issues:
- Bug in swap moves (#111)
v0.1.2
FreeBird v0.1.2
LatticeNestedSamplingParametersis no longer a type; it is now a wrapper forNestedSamplingParameters.- Unified
nested_sampling()method to work with anyAbstractLiveSet. - Replaced
LJParameterswithAbstractPotentialinEnergyEvalto generalize energy evaluations using pairwise potentials. - Added a new
LJSurfaceWalkerstype underAbstractLiveSetthat takes a set of walkers with free particles, a (set of) Lennard-Jones potentials, and a (typically frozen) surface warped into anAtomWalker. This way, the surface is stored only once in a live set, instead of n copies for n number of walkers. - For nested sampling with multiple culling, it is now much more strict for accepting a new iteration, that requires all new walkers to be accepted in order to maintain the correct compression factor.
Merged pull requests:
v0.1.1
FreeBird v0.1.1
- Parallel routines for nested sampling
- New Arrow file format support for saving dataframes
Merged pull requests:
- Corrected typos and updated language on the tutorial page for clarity (#95) (@eyob-tewelde)
Closed issues:
v0.1.0
FreeBird v0.1.0
- Breaking changes in how nested sampling, Wang-Landau sampling and Monte Carlo sampling is set up. Please see the documentation and examples.
- Sampling input and output objects made more consistent
- Fixed several bugs and performance issues
- Improved documentations with new "Examples" and "Tutorials" pages
v0.0.3
FreeBird v0.0.3
- Now using
AtomsBase0.5. Periodic()andDirichletZero()boundary conditions are deprecated. Simple booleans are used now.atomic_symbol()and other similar functions now need the atom index in the particles list to work.atomic_system()is now the easiest way to construct a flexible system.boundary_conditionsandbounding_boxare no longer fields of a system, they are nowperiodicityandcell_vectors, respectively.- Now using up-to-date
ExtXYZandAtomsIOpackages as well, as they are changed to accommodateAtomsBase0.5. - No breaking changes in the exported methods, although some output now looks different.
- Resolves #89, #84 and #47.
Merged pull requests:
v0.0.2
FreeBird v0.0.2
- Mainly cosmetic changes in docstrings.
- Significant improvements in test suites.
- Improved documentation with a "quick start" guide.
Breaking changes
- Un-exported sampling methods are removed.
Merged pull requests:
- Feature/tests (#71) (@junchichen21)
- Docs/improve docs (#72) (@yangmr04)
- docs: add instructions for installing FreeBird package and specific b… (#74) (@yangmr04)
- Update Readme, CI and docs (#75) (@yangmr04)
- CI and installation guide update (#76) (@yangmr04)
- CI: replace Codecov action with Coveralls for coverage reporting (#77) (@yangmr04)
- Hotfix/remove-unused-other-samplings (#78) (@yangmr04)
- CompatHelper: add new compat entry for Statistics at version 1, (keep existing compat) (#83) (@github-actions[bot])
- Docs/quick-start-improve (#85) (@yangmr04)
- Tests and docs improvements (#86) (@yangmr04)
- Fixed the wrong grid points in the printed outputs. (#87) (@junchichen21)
v0.0.1
FreeBird v0.0.1
Merged pull requests:
- Feature/simple-lennard-jones (#3) (@yangmr04)
- Bring
mainup to date withdev(#6) (@yangmr04) - CompatHelper: add new compat entry for AtomBase at version 0.1, (keep existing compat) (#7) (@github-actions[bot])
- Updated CompatHelper; remove feature/* from CI and Documentations workflow (#23) (@yangmr04)
- Updated CompatHelper (#24) (@yangmr04)
- CompatHelper: add new compat entry for BenchmarkTools at version 1, (keep existing compat) (#25) (@github-actions[bot])
- CompatHelper: add new compat entry for AtomsIO at version 0.2, (keep existing compat) (#26) (@github-actions[bot])
- CompatHelper: add new compat entry for DocumenterTools at version 0.1, (keep existing compat) (#27) (@github-actions[bot])
- CompatHelper: add new compat entry for Unitful at version 1, (keep existing compat) (#28) (@github-actions[bot])
- CompatHelper: add new compat entry for DataFrames at version 1, (keep existing compat) (#29) (@github-actions[bot])
- CompatHelper: add new compat entry for UnitfulAtomic at version 1, (keep existing compat) (#30) (@github-actions[bot])
- CompatHelper: add new compat entry for CSV at version 0.10, (keep existing compat) (#31) (@github-actions[bot])
- CompatHelper: add new compat entry for AtomsBase at version 0.3, (keep existing compat) (#32) (@github-actions[bot])
- CompatHelper: add new compat entry for Parameters at version 0.12, (keep existing compat) (#33) (@github-actions[bot])
- CompatHelper: add new compat entry for Documenter at version 1, (keep existing compat) (#34) (@github-actions[bot])
- CompatHelper: add new compat entry for ExtXYZ at version 0.1, (keep existing compat) (#35) (@github-actions[bot])
- CompatHelper: add new compat entry for Setfield at version 1, (keep existing compat) (#36) (@github-actions[bot])
- CompatHelper: add new compat entry for Distributions at version 0.25, (keep existing compat) (#37) (@github-actions[bot])
- CompatHelper: add new compat entry for StaticArrays at version 1, (keep existing compat) (#38) (@github-actions[bot])
- CompatHelper: add new compat entry for Reexport at version 1, (keep existing compat) (#39) (@github-actions[bot])
- Update compat in Project.toml (#40) (@yangmr04)
- Feature/analysis-and-debug (#41) (@yangmr04)
- Bring main up to date (#42) (@yangmr04)
- Feature/composite lennard jones (#44) (@yangmr04)
- Hotfix/broken-examples (#45) (@yangmr04)
- Hotfix/broken-examples (#46) (@yangmr04)
- Feature/lattice walker rework (#49) (@yangmr04)
- fix: Update inter-component energy calculation in EnergyEval.jl (#54) (@junchichen21)
- Added function to extact free particles from existing walkers (#55) (@D-Thibodeaux)
- Feature/lattice sampling rework (#57) (@yangmr04)
- Feature/multi component lattice (#61) (@yangmr04)
- Feature/lattice sampling rework (#62) (@yangmr04)
- New walker systems (#63) (@yangmr04)
- refactor: rename included files for consistency and clarity (#64) (@yangmr04)
- Feature/code cleanup for release (#65) (@yangmr04)
- Feature/remove files for release (#66) (@yangmr04)
- First stable release v0.0.1 (#67) (@yangmr04)
Closed issues: