Recent Releases of RustBCA
RustBCA - RustBCA v2.9.0
This release includes some new Python functions, detailed in the Wiki, for code coupling and includes a couple minor bugfixes as well. It is backwards compatible with all previous input files etc.
Scientific Software - Peer-reviewed
- Rust
Published by drobnyjt 9 months ago
RustBCA - RustBCA v2.8.4
Copied from the relevant PR:
This PR will include the following features and fixes:
Major features:
new coordinate rotation functions for the C and Fortran bindings track and output displacements using the displacement energy, Ed pure rust rcpr for better portability of attractive-repulsive potentials (no dependencies external to cargo) fast, homogeneous, 2D mesh added single ion reflection function to ergonomic Python bindings added compound reflection coefficient to ergonomic Python bindings Major fixes:
added deallocation functions for rust objects passed to C/C++ (not necessary in Fortran) Minor features:
added 4-8 interaction potential Minor fixes: various fixes involving improved performance and tests of polynomial rootfinder fixes to the Python ergonomic bindings to prevent issues caused by bad input incident angles updates to README This should increment the version number from 2.1.0 to 2.8.4.
Scientific Software - Peer-reviewed
- Rust
Published by drobnyjt almost 2 years ago
RustBCA - RustBCA v2.0.1
This release includes one fix - the default number of weak collisions has been set to zero from three.
See Issue #216 for more detail. To summarize, weak collisions produce unphysical results if Z1>>Z2. If users want to turn on weak collisions for the Python interface, they can use the standalone code with a wrapper or modify the file lib.rs at lines 1462 and 1372 in the following way and recompile:
Change:
let options = Options::default_options(true/false); //boolean controls whether recoils are tracked.
To:
let mut options = Options::default_options(true/false);
options.weak_collision_order = 3; //Or any other desired value.
Scientific Software - Peer-reviewed
- Rust
Published by drobnyjt over 2 years ago
RustBCA - RustBCA v2.0.0
Summary
This release is relatively small; however, due to a breaking change in the Python bindings, the major version number has been incremented. In summary, the Python bindings have had several new functions added, including simple "reflectioncoefficient" and "sputteringyield" functions, and the import statement has been cleaned up (changed "import libRustBCA.pybca" to simply "import libRustBCA").
Additionally, 2D mesh input has been switched from a cumbersome pointwise triangle definition (triangle=(x1,x2,x3,y1,y2,y3)) to an STL style list of points where the triangles are defined by point indices (points = [(x1, y1), (x2, y2), (x3, y3), ...], triangles = [(0, 1, 2), ...].
What's Changed
- Update rustbcacompilecheck.yml by @drobnyjt in https://github.com/lcpp-org/RustBCA/pull/203
- Update RustBCA to 2.0.0: Improvements to Python bindings, code cleanup, simplify Mesh2D input by @drobnyjt in https://github.com/lcpp-org/RustBCA/pull/205
Full Changelog: https://github.com/lcpp-org/RustBCA/compare/v1.3.0...v.2.0.0
Scientific Software - Peer-reviewed
- Rust
Published by drobnyjt almost 3 years ago
RustBCA - RustBCA v1.3.0
This release rolls into main some updates to the Python bindings, some bug fixes, some fixes to the documentation, and code cleanup.
Scientific Software - Peer-reviewed
- Rust
Published by drobnyjt about 3 years ago
RustBCA - RustBCA v 1.2.0
This is the second minor release of RustBCA. This release includes bugfixes and several new features:
- Particle input distributions
- Fortran compatible functions and wrapper
- Particle tagging and weighting carried through collision cascade (for coupling to Monte Carlo codes with variable weights)
Scientific Software - Peer-reviewed
- Rust
Published by drobnyjt about 4 years ago
RustBCA - RustBCA v1.1.1 (JOSS)
This release includes changes requested during review for the JOSS review of RustBCA and its associated paper.
Changes include additional bindings options versus 1.1.0-alpha, and fixes to documentation and installation requirements. In particular, a required dependency on PyO3, which was breaking some Mac installations, has been made optional.
Scientific Software - Peer-reviewed
- Rust
Published by drobnyjt over 4 years ago
RustBCA - RustBCA 1.1.0 Alpha
This release includes the C++ and Python bindings and the new geometry (triangular mesh, etc) added via parry3d. For now, this release will be in alpha until the final form for this functionality has been established.
Scientific Software - Peer-reviewed
- Rust
Published by drobnyjt over 4 years ago
RustBCA - RustBCA v1.0.0
This is the first official release of RustBCA!
RustBCA has been validated using benchmarks with legacy codes and high-fidelity molecular dynamics simulations and comparison to analytical models and empirical formulas; an automatic testing suite that covers the majority of the physics kernel ensures that the code is correct and robust to future development. RustBCA's configuration file format is stable; for the foreseeable future, further changes can maintain backwards compatibility now that input files are internally represented as trait objects that satisfy the InputFileFormat trait.
Priorities for future development will be focused on writing more tests and polishing the optional experimental features (distribution output and ACPRAS for attractive-repulsive potentials).
Scientific Software - Peer-reviewed
- Rust
Published by drobnyjt almost 5 years ago