Releases: prisms-center/CASMcode_crystallography
Releases · prisms-center/CASMcode_crystallography
v3.0a1
[3.0a1] - 2026-03-02
Changed
- Changed C++ data structures to avoid mutable private cache members to enable multithreaded use of CASM crystallography methods. In particular, this required changes in LinearIndexConverter, Site, DoFSet, OccupantDoFIsEquivalent, LatticeIsEquivalent, Lattice, SuperlatticeIterator, SuperlatticeEnumerator, StrainCostCalculator, LatticeMap, MappingNode, StrucMapper, and AnisoValTraits.
Removed
- Removed COORD_MODE/PERIODICITY_MODE, which cannot be used in a multithreaded context.
- Removed depreacted
to_jsonandfrom_jsonmethods oflibcasm.xtal.Prim,libcasm.xtal.SymInfo,libcasm.xtal.Structure. Useto_dictandfrom_dictinstead. - Removed deprecated
xtal::make_factor_group(const BasicStructure &struc, double tol). Usextal::make_factor_group(const BasicStructure &struc)which uses the Lattice's tol instead. - Removed deprecated
xtal::make_equivalent_superduperlattice. Usextal::make_minimal_commensurate_superduperlatticeinstead.
v2.3.0
v2.2.0
v2.1.0
v2.0.1
v2.0.0
v2.0a12
[2.0a12] - 2024-12-10
Fixed
- Fixed
xtal::Lattice::_generate_voronoi_table(). The acute angle test resulted in the FCC lattice missing a row for the normal that lies along a conventional unit cell lattice vector, so voronoi number was 4 instead of 5 for the octahedral interstitial coordinate).
Added
- Added
Lattice.voronoi_table,Lattice.voronoi_number, andLattice.voronoi_inner_radius.
Changed
- Build macos x86_64 wheels with macos-13 Github Actions runner
v2.0a11
[2.0a11] - 2024-08-09
Added
- Added
Lattice.copy,Lattice.__copy__,Lattice.__deepcopy__,Lattice.__repr__,Lattice.to_dict, andLattice.from_dict - Added
AtomComponent.copy,AtomComponent.__copy__,AtomComponent.__deepcopy__,AtomComponent.__repr__,AtomComponent.to_dict, andAtomComponent.from_dict - Added
Occupant.copy,Occupant.__copy__,Occupant.__deepcopy__,Occupant.__repr__,Occupant.to_dict, andOccupant.from_dict - Added
DoFSetBasis.copy,DoFSetBasis.__copy__,DoFSetBasis.__deepcopy__,DoFSetBasis.__repr__,DoFSetBasis.to_dict, andDoFSetBasis.from_dict - Added
Prim.copy,Prim.__copy__,Prim.__deepcopy__, andPrim.__repr__ - Added
SymOp.copy,SymOp.__copy__,SymOp.__deepcopy__, andSymOp.__repr__ - Added
Structure.copyandStructure.__repr__ - Added
IntegralSiteCoordinate.copy,IntegralSiteCoordinate.__copy__, andIntegralSiteCoordinate.__deepcopy__ - Added
IntegralSiteCoordinateRep.copy,IntegralSiteCoordinateRep.__copy__,IntegralSiteCoordinateRep.__deepcopy__, andIntegralSiteCoordinateRep.__repr__ - Added usage documentation for Structure manipulation and input / output
Changed
- Changed
IntegralSiteCoordinate.__str__toIntegralSiteCoordinate.__repr__and changed the output from "b, i j k" to "[b, i, j, k]" - Changed
xtal::make_point_groupto remove thesymmetrized_with_fractionalstep. - Changed construction of factor group translations to set components very close to zero (absolute value less than tol * 1e-5) to exactly zero.
Fixed
- Make a user-defined CASM::xtal::SymInfo copy constructor so that member xtal::Coordinate have the correct "home" lattice
v2.0a10
v2.0a9
[2.0a9] - 2024-03-13
Fixed
- Fix CASM::xtal::make_primitive, which was not copying unique_names. This also fixes the output of libcasm.xtal.make_primitive which was losing the occ_dof list as a result.
- Fix JSON output of xtal::BasicStructure site label
- Changed pseudoinverse calculation for basis changes to
completeOrthogonalDecomposition().pseudoInverse()
Changed
- Changed make_primitive to act on either Prim or Structure.
- Changed default of
xtal.Structure.to_dictto output in fractional coordinates - Added
excluded_speciesandfracparameters to xtal.Structure.to_dict
Added
- Add to libcasm.xtal: make_primitive_prim (equivalent to current make_primitive), make_primitive_structure, and make_canonical_structure.
- Add options to the BCC and FCC structure factory functions in libcasm.xtal.structures to make the conventional cubic unit cells.
- Add to libcasm.xtal: StructureAtomInfo namedtuple, and methods sort_structure_by_atom_info, sort_structure_by_atom_type, sort_structure_by_atom_coordinate_frac, and sort_structure_by_atom_coordinate_cart
- Add to libcasm.xtal: substitute_structure_species
- Add to libcasm.xtal.Prim: method labels, constructor parameter
labels - Add to libcasm.xtal.Lattice: methods reciprocal, volume, lengths_and_angles, from_lengths_and_angles
- Added
unit_cell,diagonal_only, andfixed_shapeparameters to libcasm.xtal.enumerate_superlattices. - Add to libcasm.xtal: combine_structures, filter_structure_by_atom_info, make_structure_atom_info, and make_structure_from_atom_info