Repository navigation
pyrucast v0.11.0
·
173 commits
to master
since this release
crates.io pyrucast 0.11.0 · PyPI pyrucast 0.11.0
Wheels cp311-abi3 (Python ≥ 3.11) pour Linux x86_64, Windows x86_64 et macOS universal2.
La sdist se compile sans la visualisation : pyrucast.__features__ dit ce que porte votre installation.
0.11.0 — 28/10/2026
Ruptures d'API
- element_field — mesures de déformation finies (1b77e48)
- briques du pas-à-pas — natures des contraintes, opérateur élastique, tables, grandeurs par maille (52909bf)
- stepping — pyrucast.stepping, le PASAPAS de Cast3M procédure par procédure (49d6b1b)
Nouveautés
- element_field —
strain, le B du modèle — l'entrée de chaque loi (2dbc451) - plasticity — prédicteur sécant — toute loi calcule σ(B) = C(B) : ε_e(B) (d7e0b8c)
- large-transformations — la loi lit sa mesure, les forces internes lisent P = F S (049677a)
- large-transformations — Hencky — la duale T ramenée à S dans la base propre de C (2d54c0f)
- flux — le mode normal — une pression qui suit la paroi (310cef4)
- stepping — les grands déplacements, lus sur la mesure des lois (5fbcf5a)
- stepping — la conduction écrite sur la référence, ses axes tournant avec la pièce (3f0a9a2)
- coords — in_config — calculer le temps d'un bloc dans une configuration (3bd14ca)
- stepping — la thermique sur la pièce déformée, axes tournés par R (662aafb)
- node_field — project — un champ nodal porté aux nœuds d'un autre maillage (3f4d6d9)
- truss — les câbles — la barre en Green–Lagrange, en lagrangien total (c657c01)
- solver — l'élimination garde les inégalités et les résout par l'ensemble actif (c2d1c13)
- contact — update_contact réapparie un contact sur X + u (1651254)
- stepping — le contact en grands déplacements (c0ab9de)
- stepping — une maille retournée arrête le pas (c063988)
Corrections
- examples — thermomecanique_pas_a_pas.py, le nom que tout le reste cite (5334734)
- tests — les tests effacent ce qu'ils écrivent sous /tmp (bb853a3)
- doc_lint — un nom atteint par un autre module ne cite pas pyrucast (60c43a0)
- matrix — la tangente d'une physique linéaire est sa raideur, pas zéro (fb166f6)
- formation — la plaque trouée plastifie enfin (8953ba9)
- continuum — la rigidité et la masse lisent le matériau en chaque point de Gauss (fb1648f)
- transport — conduction et Fick lisent leur matériau en chaque point de Gauss (4e25e1e)
- py — stress_measure redevient une fonction libre seulement (0783b79)
- stepping — la configuration courante est retrouvée, plus ajoutée à chaque calcul (d3fe746)
- matrix — une somme additionne les valeurs assemblées ; freeze retirée (48d7048)
- models — retirer les serde(default) qui promettaient une compatibilité (a3937a7)
- archive — retirer les derniers serde(default), sans effet sous bincode (72651b4)
- solver — la variante Unilateral de Reduced en boîte (clippy large_enum_variant) (81bf644)
Remaniements
- model — conduction, Fick et élasticité générées par physics_operator! (9f7213b)
- model — les contraintes prennent leur sens et leur tolérance par défaut (91ab80c)
- model — un seul constructeur pour la conduction, Fick et l'élasticité (ca3c5eb)
- model — un seul constructeur par physique, et les lois sous leur vrai nom (9eeb281)
- model — les contraintes créent leurs multiplicateurs, sous des noms communs (1f6d19a)
- model — des signatures uniformes pour les constructeurs de modèle (5a90d6b)
- solver — la matrice se suffit, un seul solve (14081e0)
- contact — le contact porte son jeu, contact_gaps disparaît (21fd935)
- solver — Factored et Reduced sans boîte, dérogation motivée (cabccb6)
Documentation
- book — TempDir cité sans chemin
::, que le garde-fou des symboles prenait pour un module (a9cad86)
Tests
- python — les 17 entrées qu'aucun test n'exerçait (d966c37)
Compilation et outillage
- check-list A1–A14 — résultats sans
cauchy, délégations en anglais (6e61bc6) - clippy — trois avertissements antérieurs (f26d0bb)
- model — les restes du bilan des physiques (846e49d)
Style
- py — ruff check passe, et entre dans check_format (fec2b5b)
Divers
- Merge branch 'feat/pas-a-pas'
Le pas à pas de Cast3M porté en Python (pyrucast.stepping) sur les briques
Rust qui manquaient : grands déplacements en lagrangien total, câbles,
project, contact en grands déplacements, un seul solve lisant tout dans la
matrice, contrôle des mailles retournées. (df16549)