Corrigé CCINP 2025 Modélisation PC — Partie II.2 (Q26 à Q36) : Résolution numérique de l'équation de transport : différences finies, schéma d'Euler explicite et profondeur de carbonatation en Python
Sujet officiel du concours CCINP, session 2025, épreuve Modélisation PC. Corrigé rédigé par Ibrahim Alame.
Sujet officiel (PDF, site du concours)
Énoncé
On intègre (7) par la méthode d'Euler : à la profondeur (figure 3), instants de pas , profondeurs de pas . Concentration en surface ; initialement nulle sauf en surface.
Script (figure 4). Section 1, données : , , , , , , , , , . Section 2 : instruction 1, puis boucle sur contenant les instructions 2. Section 3 : instructions 3.a, 3.b, 4, puis double boucle (, ) contenant l'instruction 5. Section 4 : fonction C_seuil(C, Vseuil) (initialisation 6.a de Res, boucles 6.b et 6.c, test 6.d, instruction 6.e puis break). Section 5 : LT, Front = 7.a, instructions 7.b à 7.e.
Q26. Instruction 1 : tableau C_CO2 de zéros, lignes, colonnes.
Q27. Condition initiale, conditions aux limites ; instructions 2.
Q28. Instructions 3.a, 3.b : pas dx, dt (épaisseur , durée ).
Q29. Taylor-Young : a. au premier ordre en ; b. , c. au second ordre en .
Q30. En déduire a. ; b. .
Q31. Avec : discrétiser a. , b. .
Q32. a. Écrire (7) discrétisée sous la forme (9). b. Instruction 4 définissant , , , .
Q33. Instruction 5 : remplir C_CO2.
C_seuil renvoie, pour chaque instant, la profondeur où la concentration passe sous Vseuil (sinon ).
Q34. Instructions 6 : a. initialiser Res ; b. parcourir les lignes ; c. les profondeurs ; d. comparer au seuil ; e. stocker.
{Figure 5 — Évolution de la profondeur du front de carbonatation au cours du temps}
Q35. Date du risque de carbonatation près de l'armature, à de profondeur.
Q36. Instructions 7 : a. LT (de à jours, valeurs) et Front pour Vseuil ; b. tracé rouge continu ; c., d. titres des axes ; e. titre « Profondeur de carbonatation ».
Corrigé
Initialisation.
Q26. Le tableau a une ligne par instant et une colonne par profondeur ; np.zeros reçoit un couple (lignes, colonnes) :
C_CO2 = np.zeros((N_T, N_x)) # ligne i : instant t_i ; colonne j : profondeur x_j
Ce que le correcteur attend : l'ordre (N_T, N_x), cohérent avec C_CO2[i, j] dans la suite.
Q27. Le domaine est avec .
- Condition initiale : pour et .
- En surface () : pour tout , car le béton est au contact d'un air de composition constante.
- Au fond () : le géotextile interdit tout échange de matière, , donc d'après la loi de Fick (Q19) (flux nul).
Instructions 2, dans la boucle sur les lignes (les zéros de Q26 réalisent déjà la condition initiale) :
C_CO2[i, 0] = C0 # concentration imposée en surface, à tout instant
La condition de flux nul porte sur des valeurs encore inconnues à ce stade : on l'impose dans la boucle d'Euler (Q33), en recopiant à chaque instant l'avant-dernière valeur dans la dernière, (dérivée discrète nulle). Ce que le correcteur attend : les trois conditions formulées en termes de (initiale, surface à , fond à flux nul), puis leur traduction en code ; écrire « » au fond serait contraire à l'hypothèse du géotextile imperméable.
Q28. points régulièrement espacés de à L_max délimitent intervalles (les « poteaux et les intervalles ») ; de même en temps :
dx = L_max/(N_x - 1) # Instruction 3.a : pas spatial (cm)
dt = T_max/(N_T - 1) # Instruction 3.b : pas temporel (jours)
Soit et . D'après les axes de la figure 5, les longueurs sont en centimètres et les durées en jours ; est donc en par jour.
Schéma aux différences finies.
Q29. La formule de Taylor-Young (8) appliquée à en avec l'accroissement , puis à en avec les accroissements :
100 % gratuit
La suite du corrigé est sur Adloun
Le corrigé rédigé en entier, question par question, et le tuteur pour poser des questions sur ce sujet.
Voir le corrigé complet, gratuitementInscription gratuite en 30 secondes (e-mail, nom d'utilisateur, mot de passe, classe ou profil), sans carte bancaire : arrivée directe sur le corrigé.