Skip to content

Releases: 3MAH/simcoon

1.13.1

Choose a tag to compare

@chemiskyy chemiskyy released this 04 Jul 09:29

What's Changed

Full Changelog: 1.13.0...1.13.1

simcoon 1.14.0

Choose a tag to compare

@chemiskyy chemiskyy released this 09 Jul 11:53

simcoon 1.14.0

Release theme: the unified Tensor2 / Tensor4 API and a typed UMAT interface (feature/Tensor, PR #78).

Highlights

  • Unified Tensor2 / Tensor4 API (C++ core + pybind11 bridge + Python class). One class each covers both the single-point and batch cases (scipy-Rotation-style): shape decides the mode ((6,) single vs (N,6) batch). Batch operations dispatch to optimized C++ kernels.
  • Kelvin–Mandel internal storage for tensor4. The Voigt/Mandel convention enters exactly once (engineering↔Mandel congruence): the identity is eye(6), rotation is a single orthogonal R6·X·R6ᵀ congruence, and inversion is a plain matrix inverse. mandel() / from_mandel() are exposed alongside mat() / from_voigt().
  • Typed UMAT interface. UMATs can be written against Tensor2 / Tensor4 (L.contract(ε), flow_normal, dyadic(κ,κ) tangent assembly) — demonstrated in the EPICP external plugin.
  • Batch performance. Unified batch tensor APIs with optimized paths, plus a macOS Grand Central Dispatch parallel_for (native, no OpenMP dependency).
  • Documentation & examples. Sphinx docs for the Tensor2/Tensor4 API; new neo_hookean_tensor.py example.

Changes & fixes

  • Deprecated the legacy tensor projector helpers (identity2 / deviatoric2); reach the compliance-convention identity via the Tensor4Type tag.
  • Fixed the inverse-derivative (dinv) sign and updated the related APIs and tests.
  • Windows: OpenMP disabled (serial fallback) to avoid runtime conflicts; centralized LIB_EXPORT; safer parallel support.
  • CI: release workflow now verifies the git tag matches pyproject.toml, and the conda package builds from the checked-out tree (so PR/release runs validate the actual source, not the default branch).

Compatibility

  • The tensor4 internal storage change is source-compatible for typical consumers; code that reached into the old engineering-Voigt storage by reference, or used the removed identity2 / deviatoric2 / tensor4::mat_mut, must migrate (use set_mat() / the Tensor4Type-tagged identity()).
  • simcoon continues to use MPa internally; Voigt order [11,22,33,12,13,23].

Not included in 1.14.0: the Modular UMAT framework (PR #61) is staged on feature/modular for a subsequent release.

1.13.0 Release

Choose a tag to compare

@chemiskyy chemiskyy released this 29 Jun 06:05

What's Changed

Full Changelog: 1.12.0...1.13.0

1.11.2

Choose a tag to compare

@chemiskyy chemiskyy released this 27 Apr 07:10
80bf694

What's Changed

Full Changelog: 1.11.0...1.11.2

1.11.0

Choose a tag to compare

@chemiskyy chemiskyy released this 25 Mar 07:45
b996db0

What's Changed

  • Add Rotation class with docs and bindings by @chemiskyy in #66
  • Fix conda GLIBC compatibility for RHEL 8 / Rocky Linux 8 by @kmarchais in #81
  • Fix conda packaging: Python 3.14 ABI and version solver preference by @kmarchais in #76
  • Fix/open mp by @chemiskyy in #79
  • Add C++ rotation docs and update Python docs by @chemiskyy in #82

Full Changelog: 1.10.2...1.11.0

1.10.2

Choose a tag to compare

@chemiskyy chemiskyy released this 03 Mar 22:03

What's Changed

  • CI: run release publishing only from GitHub Release events by @kmarchais in #70
  • Unify versioning from pyproject.toml (2.0.0.dev0) by @kmarchais in #69
  • Enable OpenMP and macOS libomp configuration by @chemiskyy in #74
  • Refactor UMAT interface and updated doc by @chemiskyy in #60
  • Fix and Feature/comprehensive objective by @chemiskyy in #77

Full Changelog: v1.10.1...1.10.2

v1.10.1

Choose a tag to compare

@kmarchais kmarchais released this 07 Feb 21:49
07b5881

What's Changed

  • Add cibuildwheel configuration for PyPI wheel builds by @kmarchais in #59
  • Set macOS target to 14.0 and update docs by @chemiskyy in #68

Full Changelog: 1.10.0...v1.10.1

Legacy stable

Choose a tag to compare

@chemiskyy chemiskyy released this 05 Feb 15:22
6c1c629

What's Changed

New Contributors

Full Changelog: 1.9.7...1.10.0

1.9.7

Choose a tag to compare

@chemiskyy chemiskyy released this 21 May 12:48

What's Changed

Full Changelog: 1.9.6...1.9.7

1.9.6

Choose a tag to compare

@pruliere pruliere released this 26 Mar 13:26
f02b7e4

Changes from #31

  • Add argument "ndi" to umat for 2d plane stress assumption (default = 3 for 3 dimension problems or plane strain assumption)

  • A separted "__version.py__" file is added to the python side. The simcoon version is only written in this file (no need to write it anymore in setup.py) and is accessible from the simcoon module:
    import simcoon
    print(simcoon.__version__)

  • all the simmit functions are made available at the simcoon level:
    "import simcoon as sim" can be used instead of "from simcoon import simmit as sim". But the two options are still working.