discretize 0.8.3 Release Notes#

January 27, 2023

This is a patch release with several bugfixes, as well as additions to the TreeMesh.

TreeMesh improvements#

We have added several methods to the discretize.TreeMesh that provide specialize geometric refinement entities including:

These enabled more accurate functions for refining along surfaces. Therefore we have deprecated the discretize.utils.refine_tree_xyz() which was essentially three different functions, in favor of separate and distinct methods on the TreeMesh itself which all allow for padding at different levels.:

We have also added optional diagonal balancing to the TreeMesh which will ensure only a single level change across diagonally adjacent cells. This can be set at the instantiation of the object, or on a each separate call to a refinement function. We plan to make this option True by default in a future version, but this will never change how any mesh is read in from a file, ensuring only newly created meshes are affected.

Style Updates#

All new PR’s for discretize are now checked for style consistency by black and flake8 before running the testing sweet.

Bug Fixes#

  • Interpolation on the SimplexMesh now respects the zeros_outside keyword argument

  • Documentation inheritance for the functions inherited from DiffOperators and InnerProducts have been fixed by making these two classes subclass BaseMesh.

Contributors#

  • @jcapriot

Pull requests#

  • #292: Dark mode theme for documentation

  • #294: Testing environment updates

  • #295: Diagonal tree balance

  • #296: More tree refine functions

  • #297: Add new refine surface, bounding box, and point refine methods.

  • #298: implement zeros outside for interpolation function

  • #299: Build maintenance

  • #300: Add style testing

  • #301: Documentation updates

  • #302: 0.8.3 release