Repository navigation
Add(riemann200,#20403): R-10 le memoire de 1860 -- invariants de Riemann et ondes de choc - #20694
Conversation
…ann et ondes de choc Nouveau carnet 10-ondes-riemann.ipynb : retournement du profil, invariants w1/w2 et leur famille de transport, temps de choc t* geometrique, solveur exact du probleme de Riemann isotherme (Sod : rarefaction + choc, masse conservee exactement, symetrie miroir). Hypotheses H1-H3 pre-enregistrees, verdicts CONFIRMES dans les sorties, 3 exercices C.1, ligne 10 README. Exec Papermill kernel python3 3.13.14 : 16/16 cellules, 0 erreur, 2 figures. See #20403 Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Notebook outputs-required (H.4 schema): PASS (every code cell carries an
|
clusterManager-Myia
left a comment
There was a problem hiding this comment.
VERDICT: LGTM (vérifié: re-dérivation indépendante des courbes + état étoile recalculé à la main contre les outputs committés)
[NanoClaw] Review protocole v2 (extraction intégrale du carnet neuf via git blobs : 39 cellules, 16 code, exec 1-16 séquentiel, 0 null, outputs réels).
Vérifications faites (re-dérivation, pas recopie) :
- Courbes d'onde isothermes re-dérivées depuis Rankine-Hugoniot (m² = a²ρLρ*) : choc 1
u* = uL − a(ρ*−ρL)/√(ρLρ*), raréfaction 1u* = uL + a ln(ρL/ρ*)(invariant w1 uniforme dans le fan gauche — convention vérifiée cohérente cellules 7/22/23/27), symétriques côté droit. Le code (cell. 22) est exact ; g = f_L − f_R strictement décroissante ⇒ bissection garantie ✓. - État étoile recalculé à la main : compression symétrique (1, 0.6)|(1, −0.6) → trinôme y² − 0.6y − 1 = 0 → y = 1.3441, ρ* = 1.80642 = output 1.806418 ✓ (l'exercice 3 est donc solvable à 10⁻¹² près comme annoncé). Sod isotherme : f_L(0.3458) = ln(1/0.3458) = 1.0619 = f_R,choc(0.3458) = 0.2208/0.2079 ✓ ; u* = 1.06195 ✓ ; s2 = 1.6632 ✓ ; fan gauche [−1, 0.062] ✓.
- Conservation de la masse : intégrales par morceaux recomposées à la main (0.8 + 0.1308 + 0.1108 + 0.0834 = 1.1250) = écart committé 0.00e+00 ✓ ; bord droit du fan e^(−1.0619) = 0.3458 = ρ* (continité à la jonction) ✓. Symétrie miroir ✓.
- t* du sinus : 1/(0.8π) = 0.397887 ✓ ; résidus transport (1.68e-06 à h=1e-4, amplifiés par 1/D comme le dit la Lecture) et suivi RK4 (1.11e-16) honnêtes — la cell. 9 dit explicitement que la conservation y est structurelle ✓.
- Densité #17040 : 1 Lecture max par sortie de code ✓, toutes les valeurs citées présentes dans les outputs ✓, exercices = stubs TODO sans fuite ✓, aucune dépendance hors stdlib+matplotlib (déclaré et vrai) ✓, grounding Mathlib honnête (pas de lois de conservation dans Mathlib ; carnet python-only assumé comme R-03..R-09) ✓, section Limites exemplaire (isotherme, thermostat, pré-choc seulement, pas de théorème de Lax).
Nits (non bloquants) :
- Cell. 13 (et commentaire H2 cell. 19) : la convergence est annoncée « O(Δξ) » / « ~1/N » mais les outputs montrent 1.05e-5 → 6.54e-7 → 4.06e-8, soit 16× par raffinement 4× = O(Δξ²) — attendu ici car u0′ a un minimum dégénéré (quadratique) en ξ = 1/2. Les données sont dans l'output, le label sous-estime la convergence.
- Cell. 38 : coquille « problème de Riemans exact » ; cell. 30 : la « règle » de l'exercice 1 est circulaire dans sa 1re clause (elle cite ρ*) — l'indice (tester g aux jonctions ρL/ρR) est la vraie règle, la phrase d'accroche pourrait lâcher.
Beau carnet : la carte fermée de Riemann rendue exécutable avec hypothèses pré-enregistrées et verdicts REFUTABLES, énergie et invariants mesurés côté choc vs raréfaction — exactement l'esprit du mémoire.
clusterManager-Myia
left a comment
There was a problem hiding this comment.
[Hermes] Verdict : LGTM — review lane myia-ai-01:hermes-agent (protocole v2, full read).
Ce qui a été vérifié (extraction intégrale du carnet au head 7cbbae9f, 39 cellules, exec 1-16 séquentiels, 0 null) :
- Chaque valeur citée dans le body re-drivée contre les outputs committés : résidus transport w1 1.68e-06 / w2 1.03e-12, RK4 1.11e-16, convergence t* 1.05e-05 → 4.06e-08 (rapport 257.6), g(ρ*) = −1.49e-14, Sod isotherme ρ* = 0.3457801278 / u* = 1.0619521747, masse m(0)=m(t) écart 0.00e+00, H3 sauts 0.0087 / E 0.36 → 0.279645. Tout concorde.
- Physique du solveur : courbes choc/raréfaction isothermes (choc en (ρ−ρ)/√(ρρ), fan en ln), fan 1/2 avec u = ξ±a et invariants transportés, intégrale de masse par morceaux fermés — cohérentes et auto-vérifiées dans les sorties.
- Gates #17040 : Lectures placées après les cellules de mesure, aucune prose empilée, aucun
raise NotImplementedError/assert False/1/0, les 3 exercices committent des stubs propres (« Exercice N a completer », TODONone). - README : ligne 10 additive, fidèle au contenu (invariants, onde simple, t*, Sod) — pas une PR de totaux. Lien companion
03-series-rearrangement.ipynbvérifié vivant au head (contrairement au pattern Complexity-03c). - Papermill
exception: null, kernel python3 3.13.14, 2 figures inline. Scan secrets : néant.
2 nits non bloquantes :
- Cell. 27 (symétrie miroir) : le miroir donne bien
us2 = −us(−1.06 vs +1.06, correct), mais le label imprime « attendu (rs, +1.06e+00) » sans inverser le signe de u — la ligne se lit comme un échec alors qu'elle passe. Afficher-uscomme attendu lèverait l'ambiguïté. - Exercice 2 : le commentaire d'indice donne
min u0' = −0.3π— la valeur clé est offerte, l'étudiant n'a plus qu'à appliquer t* = −1/min. Indice plus progressif possible.
— Hermes (myia-ai-01), lane hermes-pr-review, cycle 14/10 :00Z.
|
[INFO] candidate-delivered — #20403 (R-10 mémoire de 1860) Grain worker servi par lane sœur Contenu : retournement du profil d'amplitude finie (fig. 1), invariants w₁ = u + a·ln ρ / w₂ = u − a·ln ρ et leurs familles de transport (résidus DF ~1.7e-6, suivi RK4 à 1.1e-16), temps de choc t = −1/min u₀′* mesuré sur 3 maillages (1.05e-5 → 4.06e-8), solveur exact du problème de Riemann isotherme — courbes fermées choc/raréfaction, état étoile par bisection (g = −1.5e-14), Sod isotherme ρ* = 0.3458 / u* = 1.0620 (raréfaction + choc, fig. 2), masse conservée exactement (écart 0.0), symétrie miroir exacte. Hypothèses H1-H3 pré-enregistrées, verdicts CONFIRMÉS dans les sorties. 3 exercices C.1. Exécution Papermill kernel État gates : mss BLOCKED, Position lane : — myia-po-2027:CoursIA-2 (cycle c.1645, picker mode dégradé urn |
|
✅ No prose/output mismatch detected in the notebooks this PR changed. Scope = notebooks CHANGED in this PR, not the whole corpus. Explicit |
|
✅ No unanchored measurement claim detected in the notebooks this PR changed. Scope = notebooks CHANGED in this PR, not the whole corpus. The |
|
✅ No factual mislabel detected in the notebooks this PR changed (entity counts and tuple formulas checked against nearby committed streams). Scope = notebooks CHANGED in this PR, not the whole corpus. The |
|
No organ-duplication: no added def/class collides with another series organ API (scripts/audit/organ_api_index.yaml). Detector: |
Golden-Set Execution (H.7 P3)✅ 9/9 notebooks passed (certified reproducible)
Pinned lockfile: |
Notebook PR Validation: PASS
Checks: H.1 (no errors), H.3 (execution_count), C.1 (no banned patterns) |
…ars scinde en heading + ligne de prose La cellule 18 etait un heading ATX de 110 chars sans saut de ligne -- manifestation single-element de source_list_missing_newlines (detecteur #10423/#10399). Le heading est raccourci sous la barre des 80 chars et la queue (ecart domine par la resolution du maillage) devient une ligne de prose separee. Cellule markdown seule, aucune re-execution due (exception C.2). detect_markdown_rendering --check : OK. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
|
[ADJOINT PREFLIGHT] |
myia-ai-01
left a comment
There was a problem hiding this comment.
APPROVE ai-01 (c2188), tête 740ec60e2e.
Revue de référence : Hermes, VERDICT: LGTM à 7cbbae9f94. Depuis la tête relue, un seul commit de la lane, que j'ai lu : il ne touche que du markdown (740ec60e2e : un titre H2 trop long scindé en titre + ligne de prose). Les autres écarts sont des fusions de main prouvées sans contenu d'auteur.
Contrôles ai-01 à cette tête : B.0 check_unaddressed_nits.py rc=0, check_run_state.py sans jambe rouge (dernière tentative par nom), mergeable_state: clean, base main.
Conflit README Riemann200 resolu par union des lignes : ligne R-09 reelle de la branche (notebook livre) + ligne R-10 de main (#20694) ; placeholder R-09 '(a venir)' de main ecarte. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Grain: DEEP/notebook-python — lane myia-po-2025:CoursIA — prev: DEEP/notebook-python #20654
Ce que fait ce carnet
Nouveau carnet R-10 de la série Riemann 200 (EPIC #20403, bicentenaire 2026) : le mémoire de 1860 « Über die Fortpflanzung ebener Luftwellen von endlicher Schwingungsweite », rendu exécutable dans la fermeture isotherme p = a²ρ (celle que Riemann détaille) :
See #20403 — livraison du grain R-10 (1 carnet + ligne README ; l'EPIC reste ouverte).
Validation (H.1)
language_info.version: 3.13.14vérifié dans le fichier committé — pas de kernel-drift).raise NotImplementedError/assert False/1/0(grep vérifié) ; le carnet s'exécute de bout en bout exercices non complétés.Verdict SOTA (règle #3801)
SOTA-OK : stdlib pur (
math) + matplotlib pour les figures, conformément aux conventions de la série. L'outil est la méthode du mémoire : solveur exact fermé (aucune approximation de substitution, aucun contournement d'outil).Grounding Mathlib
Aucun système de lois de conservation hyperboliques ni relations de Rankine–Hugoniot dans Mathlib (dit tel quel au §8 du carnet) : grain notebook-python sans composante Lean, comme R-03–R-09.
🤖 Generated with Claude Code