Roadmap ======= This page is the public commitment to what's done, what's in progress, and what's planned for femorph-solver. It's the single place to look for "is *X* coming?" — items not on this list are either out of scope or not yet on the engineering radar. Anything checked-off ships in the version listed in the :doc:`/changelog`; in-progress items have an issue link. Planned items are intent, not commitment, and may move. Status legend ------------- * **Done** — released in the version shown. * **In progress** — actively under development; check the linked tracker for progress. * **Planned** — on the roadmap but not yet scheduled. Order in the list does not imply priority. Capabilities ------------ Element library ~~~~~~~~~~~~~~~ .. list-table:: :header-rows: 1 :widths: 25 35 40 * - Element - Status - Notes / tracker * - HEX8 - Done (v0.20.0) - Plain Gauss + B-bar + EAS variants. * - HEX20 - Done (v0.20.0) - Serendipity 20-node, full Gauss. * - TET10 - Done (v0.20.0) - Quadratic, 4-point Gauss. * - WEDGE15 / PYR13 - Done (v0.20.0) - Quadratic mid-side variants. * - QUAD4 (plane / shell) - Done (v0.20.0) - Plane-stress / plane-strain plus DKT shell. * - BEAM2 - Done (v0.20.0) - Hermite-cubic Euler–Bernoulli + Timoshenko roadmap. * - TRUSS2 / SPRING / POINT_MASS - Done (v0.20.0) - Linear, axial only. * - SHELL281 (8-node quadratic shell) - In progress - `#552 `_. * - PLANE183 (8-node serendipity quad) - In progress - `#543 `_. * - PLANE182 enhanced strain (Wilson Q6) - In progress - `#544 `_. * - PIPE family (PIPE16 / PIPE18 / PIPE288) - In progress - `#580 `_. * - Axisymmetric solid + axisymmetric shell - In progress - `#581 `_. Analysis types ~~~~~~~~~~~~~~ .. list-table:: :header-rows: 1 :widths: 25 25 50 * - Analysis - Status - Notes / tracker * - Linear static - Done (v0.20.0) - Pluggable SPD / LU backends. * - Modal (eigenproblem) - Done (v0.20.0) - ARPACK / LOBPCG / PRIMME / dense. * - Cyclic-symmetry modal - Done (v0.20.0) - One-sector reduction with phase constraints. * - Transient (Newmark-β) - Done (v0.20.0) - Implicit; consistent / lumped mass; Rayleigh damping. * - Harmonic (frequency response) - Done (v0.20.0) - Modal superposition; per-mode or Rayleigh damping. * - Linear buckling - Planned - Eigenproblem on the geometric stiffness; uses the modal-solver infrastructure. * - Pre-stressed modal - Planned - Static + linearised geometric-stiffness step before :meth:`Model.solve_modal`. * - Nonlinear static - Out of scope today - Material nonlinearity (plasticity, hyperelasticity) and contact are explicitly *not* on the near-term roadmap; small-strain linear elasticity is the v1.0 scope. Foreign-deck interop ~~~~~~~~~~~~~~~~~~~~ .. list-table:: :header-rows: 1 :widths: 25 25 50 * - Reader - Status - Notes / tracker * - NASTRAN BDF - Done (v0.20.0) - Statics / SOL 103 / SOL 108 cards. * - Abaqus INP - Done (v0.20.0) - ``*STEP`` / ``*FREQUENCY`` / ``*BOUNDARY``. * - MAPDL CDB - Done (v0.20.0) - ``ET`` / ``MP`` / ``D`` / ``F`` / ``CSYS,1``. * - OptiStruct FEM - Done (v0.20.0) - Read-only. * - MAPDL ``.dat`` (native APDL deck) - In progress - `#513 `_. * - LS-DYNA ``.k`` - Planned - No tracker yet. Verification corpus ~~~~~~~~~~~~~~~~~~~ .. list-table:: :header-rows: 1 :widths: 25 25 50 * - Suite - Status - Notes / tracker * - Analytical / closed-form (Bathe, Timoshenko, Cook, Rao, NAFEMS LE-1, …) - Done (v0.20.0) - First-principles regression — every assertion traces to a published formula. * - MSC NASTRAN Verification Guide - In progress - `#345 `_. * - Ansys MAPDL 2025R1 Verification Manual - In progress - `#511 `_. * - Comprehensive cross-vendor catalogue - In progress - `#338 `_. Documentation ~~~~~~~~~~~~~ .. list-table:: :header-rows: 1 :widths: 25 25 50 * - Item - Status - Notes / tracker * - Multi-version docs site (``sphinx-multiversion`` + version switcher) - Done (v0.20.0) - Lives at the Cloudflare Pages tenant. * - Theory reference (variational form, isoparametric, quadrature, …) - Done (v0.20.0) - ``doc/source/reference/theory/``. * - Element reference (per-element shape functions / integration / mass) - Done (v0.20.0) - ``doc/source/reference/elements/``. * - Commercial-release documentation overhaul - In progress - `#583 `_. Six-phase plan covering API docstrings, user-guide depth, reference completion, tutorials, and the final commercial polish (changelog, FAQ, roadmap, architecture page, diagrams, DocSearch). Versioning policy ----------------- Pre-1.0, minor bumps may break the public API; bumps after 1.0 will not. Every release follows `Semantic Versioning `_; the :doc:`/changelog` carries the per-version notes. The "public API" surface is the symbols enumerated by ``femorph_solver.__all__`` plus the public methods of the classes they re-export. Anything under a leading underscore module path (e.g. ``femorph_solver.cyclic_model``, ``femorph_solver._state``) is not public — those names exist for the package's own internal imports and may move without warning, regardless of version. See also -------- * :doc:`known-limitations` — current constraints and what produces silent-wrong-answer failure modes. * :doc:`/changelog` — the version-by-version log. * :doc:`/dev/provenance` — the sourcing policy that gates what ships under what licence.