Releases: Deltares/MeshKernelPy
Releases · Deltares/MeshKernelPy
v5.0.2
Full Changelog: v5.0.1...v5.0.2
v5.0.1
What's Changed
- GRIDEDIT-1452: Revert correct intersected/non-intersected faces deletion options by @lucacarniato in Deltares/MeshKernel#376
- GRIDEDIT-1452: Correct test after fix in invert deletion options by @lucacarniato in #191
v5.0.0
What's Changed
- Release v4.3.0 by @ahmad-el-sayed in #182
- GRIDEDIT-867/GRIDEDIT-868: Bind Casulli refinement and de-refinement API fucntions by @ahmad-el-sayed in #184
- GRIDEDIT-1404: disable_undo_in_python by @lucacarniato in #185
- GRIDEDIT 1410 non orthogonal face polygons by @lucacarniato in #186
- GRIDEDIT-1408: Add mesh2d_get_property by @lucacarniato in #187
Full Changelog: v4.3.0...v5.0.0
v4.3.0
What's Changed
- Release v4.2.0 by @ahmad-el-sayed in #176
- GRIDEDIT-1276: Use AlmaLinux 8 based manylinux and bump versions of dev toolset and dependencies by @ahmad-el-sayed in #179
Full Changelog: v4.2.0...v4.3.0
v4.2.0
What's Changed
- Release v4.0.2 by @ahmad-el-sayed in #144
- GRIDEDIT-892: Add reusable build and test github workflow by @ahmad-el-sayed in #155
- Release v4.1.0 by @ahmad-el-sayed in #157
- Convert constructor types in py structures by @lucacarniato in #134
- Account for gaps by @lucacarniato in #159
- Feature/gridedit 964 correct python notebooks by @lucacarniato in #160
- GRIDEDIT-1035/GRIDEDIT-1039: Support macOS 13 and trigger builds on pull request for release branches by @ahmad-el-sayed in #165
- Add mesh2d_get_face_polygons by @lucacarniato in #169
- GRIDEDIT-976 double int interpolation types in meshkernelpy by @lucacarniato in #171
- introduce contiguous_vec function to convert strided vectors to contiguos vectors by @lucacarniato in #170
- GRIDEDIT-1036: Bump sonar scanner version by @ahmad-el-sayed in #166
- GRIDEDIT-1129: migrate to alma linux 8 by @ahmad-el-sayed in #173
- GRIDEDIT-1142 retrive gap-free values of orthogonality and smothness by @lucacarniato in #174
Full Changelog: v4.1.0...v4.2.0
v4.1.0
What's Changed
- Reintroduced mesh deletion option of faces including circumcenters (previously deleted feature)
Bug fixes
- Fixed back-end API bug related to rotated samples
v4.0.2
What's Changed
- Allow getting unset contacts in
MeshKernel.contacts_get
(API change made in MeshKernel v4.0.2).
v4.0.1
What's Changed
- Bind mesh2d_refine_ridges_based_on_gridded_samples API function
v4.0.0
New features
- Added the generation of a global spherical mesh.
- Added ridge refinement
mesh2d_refine_based_on_samples
. - Added support for macOS on arm64 architecture.
- Added the calculation of curvature for curvilinear grids with
curvilinear_compute_curvature
. - Added the calculation of smoothness for curvilinear grids with
curvilinear_compute_smoothness
. - Gridded samples can now accept values of type
numpy.int16
ornumpy.float32
type for reducing memory consumption.
API changes
- Added
mesh1d_add
andmesh2d_add
for adding meshes to existing instances. - Added
contacts_set
for setting the contact indices. - Added conversion of an unstructured mesh from spherical to Cartesian with
mesh2d_convert_projection
. - Added mesh rotation with
mesh2d_rotate
. - Added mesh translation with
mesh2d_translate
.
Other changes
- Removed type enforcement.
v3.0.0
Major improvements
- A new efficient mesh deletion algorithm has been introduced, allowing for the deletion of a mesh based on a polygon with two options:
- Delete faces inside the polygon that are not intersected by the polygon segments.
- Delete faces inside the polygon that are intersected by the polygon segments.
- Minimum edge size in meters is now taken into account when refining a mesh based on a polygon or samples, both in spherical and Cartesian coordinates.
- Mesh refinement based on the Courant criteria now considers the max_courant_time.
- Improved the generation of rotated curvilinear grids within a polygon.
- The refinement of a polygon perimeter has been improved.
- The size of the internal arrays in GeometryList is now checked
API changes
- The MeshKernel class instance now accepts a
ProjectionType
enumeration as a constructor parameter, replacing the previous boolean parameter. - Strong typing is now mandatory for all parameters used in the MeshKernel API.
- Improved the performance of search algorithms
mesh2d_get_edge
andmesh2d_get_node_index
by introducing a bounding box defining the search area - GeometryList is now optional in
contacts_compute_boundary
- Small, non-contiguous regions of an unstructured mesh can be removed using the
mesh2d_remove_disconnected_regions
function. mesh2d_make_uniform
is now divided in 3 apis for separating responsabilitiesmesh2d_make_rectangular_mesh
: for making an unstructured mesh based on origin, rows and columnsmesh2d_make_rectangular_mesh_from_polygon
: for making an unstructured mesh inside a polygon with defined block sizesmesh2d_make_rectangular_mesh_on_extension
: for making an unstructured mesh on a defined area using defined block sizes
- Triangular mesh generation methods have been renamed as follows:
mesh2d_make_mesh_from_polygon
->mesh2d_make_triangular_mesh_from_polygon
mesh2d_make_mesh_from_samples
->mesh2d_make_triangular_mesh_from_samples
- Quadrangular unstructured meshes can now be connected using the
mesh2d_connect_meshes
API function. - The
mesh2d_delete
function now supports only two options: INSIDE_NOT_INTERSECTED = 0 and INSIDE_AND_INTERSECTED = 1. This algorithm supersedes the previous mesh deletion algorithms. - edge_faces and face_edges have been added to Mesh2D structure to allow the reconstruction of the faces.
Bug fixes
- Corrected the computation of the number of interpolation locations in
mesh2d_averaging_interpolation
andmesh2d_triangulation_interpolation