Skip to content

Latest commit

 

History

History
121 lines (121 loc) · 5.55 KB

CHANGELOG.md

File metadata and controls

121 lines (121 loc) · 5.55 KB

v0.5.0

Features

  • Finally dealing with saddle points in the charge density.

v0.4.8

Changes

  • Opt -> Arg in arguments
  • added a parse_filetype function.

v0.4.7

Small things

  • Took VoxelMap out of the box in bca.

v0.4.6

Features

  • Added a method for calculating the Laplacian at a point.
  • Added way to calculate the error in the partitioning from the Laplacian.

Changes

  • Voronoi now stores the volume of the Voronoi cell.
  • Removed clap as a dependancy.
  • Changed the flags for file type to -f --file_type from -t --type.
  • Changed the short flag for threads to -t from -J.
  • Removed indicatif and atomic-counter as dependancies.
  • Removed regex from dependancies.
  • Progress bars are now created inside functions and whether they are shown is optional.
  • Added a new silent flag: -x --silent.

v0.4.5

Changes

  • Removed the need of passing a density to the calculate_bader_volume_radius function.
  • Changed the name of calculate_bader_volume_radius to calculate_bader_volumes_and_radii.
  • Changed AtomVoxelMap to VoxelMap as there are no longer two VoxelMap variants.
  • removed the VoxelMap triat.
  • Changed the name of VoxelMap.boundary_iter() to VoxelMap.weight_iter().
  • Added VoxelMap.maxima_len() and VoxelMap.weight_len().
  • Removed anyhow for the error management.
  • Changed the return of invert_lattice to Option as there is only one way it can fail.

v0.4.4

Bug fix

  • Removed index deletion in maxima finding.

v0.4.3

Changes

  • Removed the option to run at higher verbosities, will instead throw an error if maxima is far from atom.
  • Added flag to pass to bca to control the distance at which the maxima distance error is thrown.
  • Now runs with 1E-6 vacuum tolerance as default.
  • Reduced memory usage of VoxelMap.
  • Split out sum_bader_densities to calculate_bader_density and calculate_bader_volume_radius

v0.4.2

Changes

  • Updated dependancies and fixed the breaking changes associated with them.
  • Bumped the minimum rust version required.

v0.4.1

Changes

  • Moving to allow python bindings by separating functions and making structs more streamlined.
  • Switch the entire analysis section to functions rather than a struct.
  • Threaded charge summing, assigning maxima to atoms and the new maxima finding function.
  • Lots of moving around of functions and changing outcomes, i.e, to_cartesian now returns cartesian coordinates.
  • Updated to Clap v3.
  • Created a VoxelMap Trait.

Features

  • Added a nearest neighbour function.

v0.4.0

Changes

  • VoxelMap now handles the running of the bader calculation, using VoxelMap::calc().

v0.3.2

Features

  • Writing of the charge density is now suppported.

Changes

  • Changed how the maxima and weights are stored for the boundary voxels.
  • Memory optimisations (issue: #30).

v0.3.1

Changes

  • Progress bars changed to not show by default, stops drawing of default bar.
  • Functions that create a progress bar (assign_atom, charge_sum) now take one as an argument.
  • Moved analysis functions (assign_atom, charge_sum, atoms_charge_sum) to own structure.
  • Simplified VoxelMap to remove the weight index map. Weight indices are stored as negative numbers.
  • Removed Rayon (issue: #25).
  • Moved writing output to own module in anticipation of removing prettytable-rs.
  • Dropped ongrid and neargrid, weight method fast and superior.
  • github username change so updated all the links.
  • Density now no longer contains the density and so has been renamed Grid.
  • Crossbeam is used for threading scopes.
  • Changed program name from bader to bca (Bader charge analysis).
  • Removed Prettytables.

Bug Fixes

  • Overflow error when vacuum tolerance is so high that all charge is vacuum.

v0.3.0 - (Yanked)

v0.2.3

Changes

  • Set up new target for releases that doesn't require GLibC.
  • Removed parking_lot::Mutex from the main program.
  • Set up Zenodo

Bug Fixes

  • Corrected the total of the Assigning to Atoms progress bar.

v0.2.2

Bug Fixes

  • Fixed SegFault at high thread count by pre-allocating weight_map (issue: #19).

Feature Changes

  • Added a cap of 12 to the amount of threads distrubuted over by default.

v0.2.1

Bug Fixes

  • Added a lock to maxima_get() in VoxelMap and made a maxima_non_blocking_get(), unsure if this would ever be a problem due to the lock on index.pop() but better safe than sorry.

Documentation Changes

  • More of the crate documented
  • Documentation tests added for all partitioning methods and for using weight_store in VoxelMap.

v0.2.0

New Features

  • Added spin flag for allowing cubes have spin and density output.
  • Complete revamp weight method, now very fast and scales well.

Removed Features

  • No longer able to apply weighting of boundaries to all methods, just the weight method.

UI Changes

  • '--weight, -w' now controls the weight tolerance allowing extremely small contributions to be discarded.
  • '--spin, -s' has been added for spin output on cube files.

Library Changes

  • I/O now has a trait for standardising implementation of new file types.
  • I/O modules now contribute to the formating of ACF and BCF files (maybe units in future).
  • VoxelMap now controls the population and processing of the voxel maps.
  • Custom Lock introduced to speed up threading.

v0.1.1

Bug Fixes

Cosmetic Changes

  • Standardised the method description in help information.
  • Changed the BCF.dat file to include atom number.