v7.33.102 WTNA102 - Diffusion d’air dissous (axi)#

Résumé:

On considère ici un problème à température et saturation constantes. Par des conditions aux limites appropriées on impose une pression d’eau et une pression de vapeur constantes. Une pression de gaz est imposée sur un bord du domaine (flux nuls de l’autre côté). Seules les pressions d’air sec et d’air dissous reliées par la loi de Henry évoluent. Ce problème se ramène en une équation pour la pression d’air sec de type «équation de la chaleur». La solution de référence sera alors un calcul thermique de Code_Aster.

Solution de référence#

Méthode de calcul#

Calcul de la conservation de la masse d’air#

La conservation de la masse de gaz s’écrit:

\(\frac{{\mathrm{dm}}_{\mathrm{air}}}{\mathrm{dt}}+d({M}_{\mathrm{as}}+{M}_{\mathrm{ad}})\) éq 2.1.1-1

On écrit que la masse totale d’eau et la masse totale d’air sont conservée (car il n’y a pas de flux d’eau ni de gaz au bord) et on obtient:

\({m}_{\mathrm{air}}={m}_{\mathrm{as}}+{m}_{\mathrm{ad}}={S}_{0}({\rho}_{\mathrm{ad}}-{\rho}_{\mathrm{ad}}^{0})+(1-{S}_{0})({\rho}_{\mathrm{as}}-{\rho}_{\mathrm{as}}^{0})\)

donc

\(d({m}_{\mathrm{as}}+{m}_{\mathrm{ad}})={S}_{0}d{\rho}_{\mathrm{ad}}+(1-{S}_{0})d{\rho}_{\mathrm{as}}\) éq 2.1.1-2

\(d{\rho}_{\mathrm{as}}=\frac{{M}_{\mathrm{as}}^{\mathrm{ol}}}{\mathrm{RT}}{\mathrm{dp}}_{\mathrm{as}}\) et \(d{\rho}_{\mathrm{ad}}=\frac{{M}_{\mathrm{ad}}^{\mathrm{ol}}}{{K}_{H}}{\mathrm{dp}}_{\mathrm{as}}\)

\(\frac{{\mathrm{dm}}_{\mathrm{air}}}{\mathrm{dt}}=d(\frac{{M}_{\mathrm{ad}}^{\mathrm{ol}}}{{K}_{H}}{S}_{0}+(1-{S}_{0})\frac{{M}_{\mathrm{as}}^{\mathrm{ol}}}{\mathrm{RT}}{\mathrm{dp}}_{\mathrm{as}})\)

Calcul des vitesses:

\(\frac{{M}_{\mathrm{as}}}{{\rho}_{\mathrm{as}}}={\lambda}_{\mathrm{gz}}(-\nabla {p}_{\mathrm{as}})\) éq 2.1.1-3

puisque \({F}_{\mathrm{vp}}=0\) et \(\nabla {p}_{\mathrm{vp}}=0\)

et

\({M}_{\mathrm{ad}}={\rho}_{\mathrm{ad}}{\lambda}_{\mathrm{lq}}(-\nabla {p}_{\mathrm{lq}})-{F}_{\mathrm{ad}}\nabla {C}_{\mathrm{ad}}\) avec \({C}_{\mathrm{ad}}={\rho}_{\mathrm{ad}}\)

Comme \(\nabla {p}_{\mathrm{lq}}=\nabla {p}_{w}+\nabla {p}_{\mathrm{ad}}=\nabla {p}_{\mathrm{ad}}=\frac{\mathrm{RT}}{{K}_{H}}\nabla {p}_{\mathrm{as}}\)

\({M}_{\mathrm{ad}}={\rho}_{\mathrm{ad}}{\lambda}_{\mathrm{lq}}\frac{\mathrm{RT}}{{K}_{H}}(-\nabla {p}_{\mathrm{as}})-\frac{{M}_{\mathrm{ad}}^{\mathrm{ol}}}{{K}_{H}}{F}_{\mathrm{ad}}\nabla {p}_{\mathrm{as}}\)

[éq 2.1.1-1] peut alors se simplifier sous la forme suivante:

\(C\frac{{\mathrm{dp}}_{\mathrm{as}}}{\mathrm{dt}}=Ld(\nabla {p}_{\mathrm{as}})\)

avec

\(C=\frac{{M}_{\mathrm{ad}}^{\mathrm{ol}}}{{K}_{H}}{S}_{0}+(1-{S}_{0})\frac{{M}_{\mathrm{as}}^{\mathrm{ol}}}{\mathrm{RT}}\)

et

\(L={\rho}_{\mathrm{as}}^{0}{\lambda}_{\mathrm{gz}}+\frac{\mathrm{RT}}{{K}_{H}}{\rho}_{\mathrm{ad}}^{0}{\lambda}_{\mathrm{lq}}+\frac{{M}_{\mathrm{as}}^{\mathrm{ol}}}{{K}_{H}}{F}_{\mathrm{ad}}\)

Équation de la chaleur dont on connaît le résultat.

Résultats de référence#

Avec les valeurs numériques précédentes, on trouve:

\({p}_{\mathrm{as}}={10}^{5}\Rightarrow {p}_{\mathrm{ad}}^{0}=\frac{\mathrm{RT}}{{K}_{H}}{p}_{\mathrm{as}}^{0}=4992\)

\({\rho}_{\mathrm{as}}^{0}=\frac{{M}_{\mathrm{as}}^{\mathrm{ol}}}{\mathrm{RT}}{p}_{\mathrm{as}}^{0}=0.4\) et \({\rho}_{\mathrm{ad}}^{0}=\frac{{M}_{\mathrm{ad}}^{\mathrm{ol}}}{\mathrm{RT}}{p}_{\mathrm{ad}}^{0}=0.02\)

\({\rho}_{\mathrm{vp}}^{0}={\rho}_{\mathrm{vp}}={4.10}^{-3}\)

Les constantes de l’équation de la chaleur sont alors:

\(C=2.48{10}^{-6}\)

\(L=1.4{10}^{-16}\)

Incertitudes#

Les incertitudes sont assez grandes parce-que la solution analytique est une solution approchée du fait de la linéarisation des équations.

Modélisation A#

Caractéristiques de la modélisation A#

Modélisation AXIS_HH2D. 20 éléments QUAD8.

Discrétisation en temps: 100 pas de temps de \(5E7s\) chacun.

Grandeurs testées et résultats#

\(X\) ( \(m\) )

Temps ( \(s\) )

\(\mathit{PRE2}\) Aster

\(\mathit{PRE2}\) calcul thermique

Tolérance ( \(\text{\%}\) )

\(0.2\)

\(3{10}^{9}\)

\(8.1{10}^{3}\)

\(7.9{10}^{3}\)

\(10.0\)

\(0.2\)

\(5{10}^{9}\)

\(9.7{10}^{3}\)

\(9.5{10}^{3}\)

\(10.0\)

Les valeurs obtenues par Code_Aster sont testées en non régression à une tolérance de \(0.01\text{\%}\) .

../../../../_images/100002010000030F000001F4D9226A8A1E9A7F47.png

Modélisation B#

Caractéristiques de la modélisation B#

Modélisation AXIS_HH2S. 20 éléments QUAD8.

Discrétisation en temps: 100 pas de temps de \(5{10}^{7}s\) chacun.

Grandeurs testées et résultats#

\(X\) ( \(m\) )

Temps ( \(s\) )

\(\mathit{PRE2}\) Aster

\(\mathit{PRE2}\) calcul thermique

Tolérance ( \(\text{\%}\) )

\(0.2\)

\(3{10}^{9}\)

\(8.1{10}^{3}\)

\(7.9{10}^{3}\)

\(10.0\)

\(0.2\)

\(5{10}^{9}\)

\(9.7{10}^{3}\)

\(9.5{10}^{3}\)

\(10.0\)

Les valeurs obtenues par Code_Aster sont testées en non régression à une tolérance de \(0.01\text{\%}\) .

Modélisation C#

Caractéristiques de la modélisation C#

Modélisation 3D_HH2S. 200 éléments HEXA20. Ce test est constitué d’un barreau et ne peut donc pas avoir la même solution analytique que précédemment. Elle est obtenue de la même manière par un calcul thermique.

Discrétisation en temps: 100 pas de temps de \(5E7s\) chacun.

Grandeurs testées et résultats#

\(X\) ( \(m\) )

Temps ( \(s\) )

\(\mathit{PRE2}\) Aster

\(\mathit{PRE2}\) calcul thermique

Erreur relative

\(0.2\)

\(3{10}^{9}\)

\(14682\)

\(14617\)

\(0.45\text{\%}\)

\(0.2\)

\(5{10}^{9}\)

\(14953\)

\(14935\)

\(0.12\text{\%}\)

Modélisation D#

Caractéristiques de la modélisation D#

Modélisation 3D_HH2D. 200 éléments HEXA20.

Discrétisation en temps: 100 pas de temps de \(5E7s\) chacun.

Grandeurs testées et résultats#

\(X\) ( \(m\) )

Temps ( \(s\) )

\(\mathit{PRE2}\) Aster

\(\mathit{PRE2}\) calcul thermique

Erreur relative

\(0.2\)

\(3{10}^{9}\)

\(14687\)

\(14617\)

\(0.48\text{\%}\)

\(0.2\)

\(5{10}^{9}\)

\(14954\)

\(14935\)

\(0.13\text{\%}\)

Modélisation E#

Caractéristiques de la modélisation E#

Modélisation axisymétrique THHM2D avec températures et déplacements bloqués. 20 éléments QUAD8.

Discrétisation en temps: 100 pas de temps de \(5E7s\) chacun.

Grandeurs testées et résultats#

\(X\) ( \(m\) )

Temps ( \(s\) )

\(\mathit{PRE2}\) Aster

\(\mathit{PRE2}\) calcul thermique

Tolérance

\(0.2\)

\(3{10}^{9}\)

\(7944\)

\(7900\)

\(1\text{\%}\)

\(0.2\)

\(5{10}^{9}\)

\(9557\)

\(9500\)

\(1\text{\%}\)

Les valeurs obtenues par Code_Aster sont testées en non régression à une tolérance de \(0.01\text{\%}\) .

Modélisation F#

Caractéristiques de la modélisation F#

Modélisation axisymétrique THHM2S avec températures et déplacements bloqués. 20 éléments QUAD8.

Discrétisation en temps: 100 pas de temps de \(5E7s\) chacun.

Grandeurs testées et résultats#

\(X\) ( \(m\) )

Temps ( \(s\) )

\(\mathrm{PRE2}\) Aster

\(\mathrm{PRE2}\) calcul thermique

Tolérance

\(0.2\)

\(3{10}^{9}\)

\(7954\)

\(7900\)

\(1\text{\%}\)

\(0.2\)

\(5{10}^{9}\)

\(9566\)

\(9500\)

\(1\text{\%}\)

Les valeurs obtenues par Code_Aster sont testées en non régression à une tolérance de \(0.01\text{\%}\) .

Modélisation G#

Caractéristiques de la modélisation G#

Modélisation axisymétrique THH2D avec températures bloquées. 20 éléments QUAD8.

Discrétisation en temps: 100 pas de temps de \(5E7s\) chacun.

Grandeurs testées et résultats#

\(X\) ( \(m\) )

Temps ( \(s\) )

\(\mathit{PRE2}\) Aster

\(\mathit{PRE2}\) calcul thermique

Tolérance

\(0.2\)

\(3{10}^{9}\)

\(7945\)

\(7900\)

\(10\text{\%}\)

\(0.2\)

\(5{10}^{9}\)

\(9557\)

\(9500\)

\(10\text{\%}\)

Les valeurs obtenues par Code_Aster sont testées en non régression à une tolérance de \(0.01\text{\%}\) .

Modélisation H#

Caractéristiques de la modélisation H#

Modélisation axisymétrique THH2S avec températures bloquées. 20 éléments QUAD8.

Discrétisation en temps: 100 pas de temps de \(5E7s\) chacun.

Grandeurs testées et résultats#

\(X\) ( \(m\) )

Temps ( \(s\) )

\(\mathit{PRE2}\) Aster

\(\mathit{PRE2}\) calcul thermique

Tolérance

\(0.2\)

\(3{10}^{9}\)

\(7944\)

\(7900\)

\(10\text{\%}\)

\(0.2\)

\(5{10}^{9}\)

\(9560\)

\(9500\)

\(10\text{\%}\)

Les valeurs obtenues par Code_Aster sont testées en non régression à une tolérance de \(0.01\text{\%}\) .Modélisation H

Modélisation I#

Caractéristiques de la modélisation I#

Modélisation axisymétrique HH2MD avec déplacements bloqués. 20 éléments QUAD8.

Discrétisation en temps: 100 pas de temps de \(5E7s\) chacun.

Grandeurs testées et résultats#

\(X\) ( \(m\) )

Temps ( \(s\) )

\(\mathit{PRE2}\) Aster

\(\mathit{PRE2}\) calcul thermique

Tolérance

\(0.2\)

\(3{10}^{9}\)

\(7944\)

\(7900\)

\(1\text{\%}\)

\(0.2\)

\(5{10}^{9}\)

\(9557\)

\(9500\)

\(1\text{\%}\)

Les valeurs obtenues par Code_Aster sont testées en non régression à une tolérance de \(0.01\text{\%}\) .

Modélisation J#

Caractéristiques de la modélisation J#

Modélisation axisymétrique HH2MD avec déplacements bloqués. 20 éléments QUAD8.

Discrétisation en temps: 100 pas de temps de \(5E7s\) chacun.

Grandeurs testées et résultats#

\(X\) ( \(m\) )

Temps ( \(s\) )

\(\mathit{PRE2}\) Aster

\(\mathit{PRE2}\) calcul thermique

Tolérance

\(0.2\)

\(3{10}^{9}\)

\(7948\)

\(7900\)

\(1\text{\%}\)

\(0.2\)

\(5{10}^{9}\)

\(9560\)

\(9500\)

\(1\text{\%}\)

Les valeurs obtenues par Code_Aster sont testées en non régression à une tolérance de \(0.01\text{\%}\) .

Synthèse des résultats#

Les résultats de Code_Aster sont en très bon accord avec la solution analytique.