From 246f42c25acf3bd8a2dc94d74976d03e348c468c Mon Sep 17 00:00:00 2001 From: sepehr Date: Sat, 18 Jul 2026 00:14:32 +0200 Subject: [PATCH] docs: rewrite French README/DOCUMENTATION/cli README, drop internal CM1.x jargon Co-authored-by: Cursor --- DOCUMENTATION.md | 8 ++++---- README.md | 10 +++++----- crates/cli/README.md | 2 +- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/DOCUMENTATION.md b/DOCUMENTATION.md index 595b367..3c4d259 100644 --- a/DOCUMENTATION.md +++ b/DOCUMENTATION.md @@ -54,9 +54,9 @@ Chaque **arête** du graphe porte **trois** inconnues : \mathbf{x}_{\mathrm{edge}} = [\dot{m},\; P,\; h] \] -*(Ancienne doc obsolète : \([P,h]\) seul — post-CM1.x le débit est une inconnue d’arête / de branche.)* +*(Note : dans une version antérieure, chaque arête ne portait que \([P, h]\) ; le débit ṁ est désormais une inconnue d’arête à part entière.)* -Sur une chaîne série 1-entrée / 1-sortie, les arêtes partagent souvent le même index ṁ (topologie CM1.4). +Sur une chaîne série (un composant à une entrée et une sortie), les arêtes partagent généralement le même index de débit ṁ : le solveur fusionne alors ces inconnues pour réduire la taille du système. --- @@ -241,7 +241,7 @@ Continuation \(\lambda\) pour chemins difficiles (API solver avancée). ### 4.5 Seed - Frontières : `seed_from_boundary_conditions` -- Cycles émergents : staging HP/BP distinct (`build_staged_emergent_seed`) +- Cycles émergents : pressions haute et basse initialisées séparément par étages (`build_staged_emergent_seed`) - Actionneurs libres : valeurs initiales nominales --- @@ -350,6 +350,6 @@ cargo run -q -p entropyk-demo --bin ui-server # :3030 ### Politique d’implémentation -- Zero-panic en production (`Result` partout) +- Pas de `panic!` en production (`Result` partout) - Jacobiens exacts (FD seulement si chemin documenté / temporaire) - Nouveau composant : Rust + CLI + (Python/WASM) + meta UI — voir checklist dans le README racine diff --git a/README.md b/README.md index 8dac8f9..5443cea 100644 --- a/README.md +++ b/README.md @@ -104,7 +104,7 @@ Chaque **arête** du graphe porte trois inconnues : | 1 | P | Pa | | 2 | h | J/kg | -Sur une branche série (1 entrée / 1 sortie), les arêtes partagent souvent le **même ṁ** (topologie CM1.4) : le solveur réduit alors le nombre d’inconnues de débit. +Sur une branche série (un composant à une entrée et une sortie), les arêtes partagent généralement le **même débit** ṁ : le solveur fusionne alors ces inconnues et réduit d’autant la taille du système. ### Degrés de liberté (DoF) @@ -140,7 +140,7 @@ Tolérance typique : `1e-6`. Nombre d’itérations CLI : souvent `300` (augment ### Boucle Newton (schéma) ```text -1. Seed initial (frontières + staging HP/BP si emergent_pressure) +1. Estimation initiale (frontières + pressions haute/basse initialisées par étages si `emergent_pressure`) 2. Calculer r(x) = résidus de tous les composants 3. Assembler J(x) = ∂r/∂x 4. Résoudre J·Δx = −r @@ -152,7 +152,7 @@ Tolérance typique : `1e-6`. Nombre d’itérations CLI : souvent `300` (augment - Pas de dynamique temporelle (régime permanent). - Pas de CFD : les HX sont des modèles 0D/1D (LMTD, ε-NTU, corrélations). -- Les propriétés fluides viennent du **backend** (CoolProp…), pas d’hypothèses hardcodées (politique « zero fallback » côté composants sérieux). +- Les propriétés fluides proviennent toujours du **backend** (CoolProp…), jamais de valeurs codées en dur : un composant sérieux ne fabrique pas de propriété de secours. --- @@ -332,7 +332,7 @@ cargo run -p entropyk-cli -- schema -o model-ir.schema.json 2. Pour chaque composant : `create_component(...)` (CoolProp, params, modes orifice / emergent…) 3. Ajout des arêtes nommées `nom:port` 4. `finalize()` + contrôle DoF -5. Seed (frontières + staging HP/BP) +5. Estimation initiale (frontières + pressions haute/basse par étages) 6. Solve selon `solver.strategy` 7. Sérialisation JSON : états d’arêtes, performances, `dof`, `failure_diagnostics` si échec @@ -576,7 +576,7 @@ Répertoire : `crates/cli/examples/`. ## 15. Conventions de développement -- **Langage code** : Rust, `Result` partout (politique zero-panic en production). +- **Langage** : Rust, `Result` partout — pas de `panic!` en production. - **Jacobiens** : analytiques exacts ; pas de différences finies sauf chemin explicitement documenté / temporaire. - **Types** : newtypes SI (`Pressure`, `Enthalpy`…) — pas de `f64` nus aux frontières publiques. - **Docs techniques / commits** : anglais ; communication projet possible en français. diff --git a/crates/cli/README.md b/crates/cli/README.md index 6e12c1d..8f9ddf9 100644 --- a/crates/cli/README.md +++ b/crates/cli/README.md @@ -73,7 +73,7 @@ cargo run -p entropyk-cli -- schema -o model-ir.schema.json 2. Pour chaque composant : `create_component` (`crates/cli/src/run.rs`) 3. Câblage des arêtes `nom:port` → `nom:port` 4. `finalize()` + **porte DoF** (système carré obligatoire) -5. Seed initial (frontières + staging HP/BP si `emergent_pressure`) +5. Estimation initiale (frontières + pressions haute/basse initialisées par étages si `emergent_pressure`) 6. Solve : `newton` | `picard` | `fallback` 7. Sortie JSON : états, performances, `dof`, erreurs / `failure_diagnostics`