All notable changes to libcasm-monte
will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Fixed error parsing SelectedEventFunctionParams from JSON.
- Fixed error merging log space Histogram1D which resulted in infinite loops.
- Added
SamplingParams.json_sampler_names
,SamplingParams.append_to_sampler_names
,SamplingParams.remove_from_sampler_names
,SamplingParams.extend_sampler_names
,SamplingParams.append_to_json_sampler_names
,SamplingParams.remove_from_json_sampler_names
, andSamplingParams.extend_json_sampler_names
. - Added
jsonSampler
andjsonSamplerMap
tolibcasm.monte.sampling
. - Added selected event data sampling methods to
libcasm.monte.sampling
. - Added memory usage to results.
- Changed
SamplingFixture::initialize
to copy sampling functions from the SamplingFixtureParams object so functions that sample changes do not need to check if a new run has begun.
- Fixed Conversions constructor to differentiate sublattices by symmetry and order of occupants. Documentation has been updated to reflect that the
asym
unit index used by Conversions, Mol, OccTransform, OccCandidate, OccCandidateList, etc. indicates sites that are equivalent by symmetry and order of occupants.
- Added to_json for CompletionCheckParams, SamplingFixtureParams, SamplingParams, jsonResultsIO
- Added "json_quantities" option to SamplingParams
- Added Conversions::species_list()
- Use shared_ptr to hold sampling fixtures in RunManager
- Output scalar quantities under "value" key in JSON results output
- Allow MethodLog to output to stdout
- Allow constructing libcasm.monte.ValueMap from dict
The libcasm-monte package provides useful building blocks for Monte Carlo simulations. This includes:
- Sampling classes and functions
- Equilibration, convergence checking, and statistics calculation
- Generic results IO
- Supercell index conversions
- Generic event definitions, construction, and selection
This package includes the Python package libcasm.monte, which may be installed via pip install, using scikit-build, CMake, and pybind11. This release also includes documentation, built using Sphinx.