Releases: idaholab/MontePy
Releases · idaholab/MontePy
Release 1.1.3
Dependencies
Pinned ipykernel to version 6 (#833).
Documentation
- Improved documentation for NumberedObjectCollections on Slicing behavior. (#798)
Bugs Fixed
- Fixed bug where lines that were the allowed length was raising a LineOverRunWarning when read by MontePy (#517).
- Added descriptive TypeError messages (#801)
Full Changelog: v1.1.2...v1.1.3
Contributors
Release 1.1.2
Code Quality
- Refactor
montepy.errorstomontepy.exceptions, to reflect that it also contains warnings (#764).
Deprecations
- Marked
montepy.errorsas deprecated, with aFutureWarning, usemontepy.exceptionsinstead. (#764).
Bugs Fixed
- Fixed parsing error where MontePy could not handle a fill matrix that was sparse (#601).
PRs
- Refactor montepy.errors -> montepy.exceptions by @tjlaboss in #778
- Bump sigstore/gh-action-sigstore-python from da62987e6c3e005b9835a67dd171c6e23ec6cfd6 to 047e8aa38a2a125cc0bf1332cfb9b53f9fdc0733 by @dependabot[bot] in #787
- Make it Possible to have sparse fill matrices by @MicahGale in #695
- Version 1.1.2 release by @MicahGale in #788
Full Changelog: v1.1.1...v1.1.2
Release 1.1.1
Features Added
- Added demonstration jupyter notebooks for working with Pin Cell and PWR assemblies in MontePy.
Bugs Fixed
- Fixed bug where surfaces created from scratch couldn't be accurately written out to the file (#652).
- Fixed bug where surface transformations couldn't be unset and exported properly (#711).
- Fixed bug where negative numbers were treated as valid by
append_renumber(#690). - Fixed bug that couldn't parse
SDEFby simply not parsing the input for the time being (#767). - Fixed parsing bug with
DE LOGstyle inputs by simply not parsing them for now (#767).
Pull Requests
#750, #767, #772, #773, #774, #747, #775
Contributors
Release 1.1.0
Features Added
- Added
Universe.filled_cells, a generator that yields the cells filled with that universe instance (#361). - Added
__eq__dunder method toUniverseto support equality comparisons (#361). - Changed general plane constants checker to support more than 9 constants (#761).
Bugs Fixed
- Fixed bug where MontePy would overly aggressively round outputs and remove the user's intent (#756).
- Fixed bug where a cell complement in the first five characters causes a spurious vertical mode detection (#753).
Contributors
Release 1.0.0
Changes
This release primarily focuses on redesigning the material interface. For details see the migration guide. Also the updated getting started guide shows how to use a lot of these new features.
Materials
The biggest change is that Material is no longer a wrapper of dictionary; it now behaves like a list.
This will make it a lot easier to do the following with materials:
- Query, edit, and add nuclides to a specific material
- Change what the default library, e.g.,
nlib=80cfor a specific material - Find all materials that contain certain nuclides
- Create a new nuclide intuitively: e.g.,
montepy.Nuclide("U-235m1.80c") - Materials are now iterable themselves.
General
This will also make it a lot easier to work with MontePy objects in general by:
- If a typo in made in an attribute an error raised. This prevents
cell.nuber = 5from having no effect. - Create new objects with their just their string version of the MCNP input. You can create a new cell with
montepy.Cell("1 0 -2 imp:n=1"). In a lot of cases it's a better idea to do:problem.parse("1 0 -2 imp:n=1").
Features Added
Material Interface Changes
- Redesigned how Materials hold Material_Components. See migration guide (#507)
- Made it easier to create an Isotope (now Nuclide):
montepy.Nuclide("H-1.80c")#505 - Improved material printing to avoid very long lists of components (#144)
- Allow querying for materials by components (#95)
- Added support for getting and setting default libraries, e.g.,
nlib, from a material (#369) - Added most objects to the top level so they can be accessed like:
montepy.Cell. - Made
Material.is_atom_fractionsettable (#511) - Added
Material.clearto delete all components from aMaterial(#655).
General Updates
- When a typo in an object attribute is made an Error is raised rather than silently having no effect (#508)
- Made NumberedObjectCollections act like a set (#138)
- Automatically added children objects, e.g., the surfaces in a cell, to the problem when the cell is added to the problem (#63).
- Added ability to parse all MCNP objects from a string (#88).
- Added function:
MCNP_Problem.parseto parse arbitrary MCNP object (#88). - Warnings are no longer raised for comments that exceed the MCNP maximum line length (#188).
- If an importance is set for a particle type not included in
modea warning is raised, not an exception now (#381). - Allowed any
numbers.Realornumbers.Integralfor when type is enforced (#679). - Combine multiple
LineExpansionWarningscoming from the same object on export (#198).
Bugs Fixed
- Made it so that a material created from scratch can be written to file (#512).
- Added support for parsing materials with parameters mixed throughout the definition (#182).
- Fixed bug where
surf.is_reflectingwould put an extra space in the output e.g.,* 1 PZ...(#697). - Fixed bug where setting a lattice would print as
LAT=None. Also switchedCellModifierto print in the cell block by default (#699). - Fixed bug that wouldn't allow cloning most surfaces (#704).
- Fixed bug that crashed when some cells were not assigned to any universes (#705).
- Fixed bug where setting
surf.is_reflectingtoFalsedid not always get exported properly (#709). - Fixed bug where setting multiple universes for a cell fill not being properly exported (#714).
- Corrected bug where blank importance objects can't be printed (#549).
- Fixed bug where the
i("x") andk("z") dimensions of multiple universe matrixfillswere switched (#726).
Breaking Changes
- Removed
Material.material_components(#507) - Removed
Isotopeand changed them toNuclide - Removed
MCNP_Problem.add_cell_children_to_problemas it is no longer needed.
Release 1.0.0a4
Bug fixes
- Fixed bug where
surf.is_reflectingwould put an extra space in the output e.g.,* 1 PZ...(#697). - Fixed bug where setting a lattice would print as
LAT=None. Also switchedCellModifierto print in the cell block by default (#699). - Fixed bug that wouldn't allow cloning most surfaces (#704).
- Fixed bug that crashed when some cells were not assigned to any universes (#705).
- Fixed bug where setting
surf.is_reflectingtoFalsedid not always get exported properly (#709).
Release 0.5.5
Bug Fixes
- Fixed parsing bug with sigma baryon particles (e.g.,
+/-) (#671).
Documentation Updates
- Various documentation updates from PyOpenSci review.
Release 1.0.0a3
Release 1.0.0a2
Second alpha-release of 1.0.0
Features added
- Warnings are no longer raised for comments that exceed the maximum line lengths (#188).
- Particle type exceptions are now warnings, not errors (#381).
- Allow any
Realtype for floating point numbers and anyIntegraltype for integer numbers during type enforcement (#679). - Added
strictoption tocontainsand changedcontainstocontains_all, andcontains_any.