Skip to content

v0.0.1 — first tagged release

Choose a tag to compare

@domattioli domattioli released this 25 Apr 02:20
· 153 commits to main since this release

First tagged release of the Python port of QuADMesh-MATLAB 01_ADMESH_Library (@ commit 19b2eb9).

Distribution name on PyPI is admesh2D (the unrelated admesh package on PyPI is an STL-manipulation library). Import name is still admesh.

What's in 0.0.1

  • All 13 ADMESH library stages on faithful ports — distance, curvature, medial axis, bathymetry, dominate-tide, boundary-condition enforcement, mesh-size, distmesh2d, mesh quality, in-polygon, inpaint-nans.
  • Two triangulation paths: canonical Persson triangulate(Domain) and the ADMESH variant triangulate(PTS, ...) with best-quality tracker + boundary cleanup + per-vertex BC labels.
  • Numba-JIT iterative mesh-size solver replacing the C mex.
  • 137 pytest tests passing (5 skipped pending MATLAB-fixture export).

Install

From wheel (this release):

pip install https://github.com/domattioli/ADMESH/releases/download/v0.0.1/admesh2d-0.0.1-py3-none-any.whl

From source:

pip install git+https://github.com/domattioli/ADMESH.git@v0.0.1
from admesh.routine import triangulate
from admesh import domains
p, t = triangulate(domains.UNIT_DISK, h0=0.1)

Recent fixes

  • distmesh2d_admesh no longer over-pins the densified boundary ring as pfix. Boundary nodes now emerge from truss equilibrium + projection at fh-driven spacing — matches MATLAB GetMeshConstraints.m semantics where only PTS.BC constraint points are pinned.
  • _boundary_cleanup iterates to fixed-point to clear sliver chains.

PyPI publication

PyPI upload of admesh2D 0.0.1 is deferred — it requires your PyPI account credentials (twine + API token). Run when ready:

python -m twine upload dist/admesh2d-0.0.1-py3-none-any.whl dist/admesh2d-0.0.1.tar.gz

🤖 Generated with Claude Code