2. Principe du maximum#

2.1. Énoncé du principe pour le cas continu#

On donne ici un des énoncés possible du principe du maximum pour l’opérateur de la chaleur (en l’absence de termes de source, et en thermique linéaire homogène isotrope) [bib2] .

Soit \(\Omega\) un ouvert borné de \({ℝ}^{n}\) de frontière \(\Gamma\) , dont l’adhérence est notée \(\stackrel{ˉ}{\Omega}\) .

Soit \(u(\text{x,t})\) telle que :

\(\frac{\partial u}{\partial t}-\Delta u\le 0\text{sur}\Omega \times ]0,T[,(T>0)\)

de classe \({C}^{2}\) par rapport à \(x\) et \(u\) de classe \({C}^{1}\) par rapport à \(t\) sur \(\Omega '\times ]0,T[\)

Alors \(\underset{\overline{\Omega}\times \left[0,T\right]}{\text{Max}}u=\underset{P}{\text{Max}}u\) , où \(P=(\overline{\Omega}\times \left\lbrace 0\right\rbrace )\cup (\Gamma \times \left[0,T\right])\) est la frontière du cylindre \(\Omega \times ]0\text{,T}[\) .

Ce résultat assure donc que le maximum de \(u\) est forcément atteint soit lors des conditions initiales soit sur un bord du domaine au cours du transitoire.

2.2. Respect du principe du maximum au niveau discret#

On considère l’équation de la chaleur (conduction thermique):

\(div(\lambda .\nabla T)+s(x,t)={\mathrm{\rho C}}_{p}\frac{\partial T}{\partial t}\) + Conditions limites + condition initiale \(T({t}_{0}\text{,x})={T}^{0}(x)\)

avec

\(T\)

température

\(s\)

chaleur par unité de volume (sources internes)

\(t\)

variable de temps

\(x\)

variable d’espace

\(\lambda\)

coefficient de conductivité thermique

\({\mathrm{\rho C}}_{p}\)

chaleur volumique à pression constante

Types de conditions limites (en linéaire):

  • Température imposée : condition limite de Dirichlet

\(T(x,t)={T}_{\text{imp}}(x,t)\text{sur}{\Gamma}_{\text{imp}}\)

  • Flux normal imposé : condition de Neumann définissant le flux entrant dans le domaine

\(-q(x,t).n=f(x,t)\text{sur}{\Gamma}_{\text{flux}}\)

  • Échange : condition limite de Fourier modélisant les échanges convectifs sur les bords du domaine

\(-q(x,t).n=h(x,t)({T}_{\text{ext}}(x,t)-T(x,t))\text{sur}{\Gamma}_{\text{échange}}\)

La formulation variationnelle du problème est la suivante : [bib3]

\(\underset{\Omega}{\int}{\mathrm{\rho C}}_{p}\frac{\partial T}{\partial t}.\mathrm{\nu d}\Omega +\underset{\Omega}{\int}\lambda \nabla T.\nabla \nu d\Omega +\underset{{\Gamma}_{\text{Žéchange}}}{\int}\mathrm{hT}.\nu d\Gamma =\underset{\Omega}{\int}s.\nu d\Omega +\underset{{\Gamma}_{\text{flux}}}{\int}f.\nu d\Gamma +\underset{{\Gamma}_{\text{Žéchange}}}{\int}{\mathrm{hT}}_{\text{ext}}.\nu d\Gamma\)

\(\forall v\) vérifiant \(v={T}_{\text{imp}}(x,t)\text{sur}{\Gamma}_{\text{imp}}\)

Après discrétisation en espace de cette équation, on obtient le système :

\(M\left\lbrace \frac{\partial T}{\partial t}(t)\right\rbrace +\text{KT}(t)=F(t)\) .

avec

\(T(t)\) : vecteur des températures nodales

\(M\) : matrice de masse thermique

\(M=\sum_{e}\underset{{\Omega}_{e}}{\int}\mathrm{\rho C}N{N}^{T}\text{dV}\)

\(K\) : matrice de rigidité thermique

\(K=\sum_{e}(\underset{{\Omega}_{e}}{\int}\lambda \nabla N.\nabla {N}^{T}\text{dV}+\underset{{\Gamma}_{{\text{échange}}_{e}}}{\int}hN.{N}^{T}d\Gamma )\)

\(F\) : vecteur du second membre

\(F=\sum_{e}(\underset{{\Omega}_{e}}{\int}sNd\Omega +\underset{{\Gamma}_{{\text{flux}}_{e}}}{\int}fNd\Gamma +\underset{{\Gamma}_{{\text{échange}}_{e}}}{\int}{\mathrm{hT}}_{\text{ext}}Nd\Gamma )\)

\(N\) : (fonctions de forme)

Pour la discrétisation en temps, on applique une \(\theta\) -méthode \((\theta \in [0,1])\) , qui conduit à:

\((M+\theta \Delta tK){T}^{n+1}=(M+(\theta -1)\Delta tK){T}^{n}+\theta \langle {F}^{n+1}\rangle +(1-\theta )\langle {F}^{n}\rangle\)

où \({T}^{n},{T}^{n+1}\) sont les vecteurs des températures nodales aux instants \({t}_{n}{\text{,t}}_{\text{n+}1}\) .

2.3. Conditions suffisantes pour le respect du principe du maximum au niveau discret#

Une des caractéristiques de non respect du principe du maximum est l’apparition d’oscillations (temporelles ou spatiales) : si on observe la variation de la température en un nœud au cours du temps, on note que la solution oscille et dépasse les valeurs minimale et maximale déterminées par les conditions initiales et les conditions limites. Ou encore, à un instant donné, on observe des oscillations spatiales.

On cherche donc des conditions suffisantes sur \(\Delta t\) , \(K\) et \(M\) pour que la solution n’oscille pas au cours du temps ( [bib1] , [bib4] , [bib5] ). En effet, on ne sait pas obtenir de conditions nécessaires et suffisantes. On cherche donc des conditions de non oscillation de la solution au cours du temps. Si celles-ci sont vérifiées, on vérifiera que les oscillations spatiales ont également disparu, et alors le respect du principe du maximum est assuré.

Hypothèses :

Pour pouvoir exprimer ces conditions suffisantes de non oscillation, il faut ajouter deux hypothèses:

  • on se place au niveau élémentaire. Le respect des propriétés au niveau élémentaire suffit pour que les conditions de non oscillation soient vérifiées pour les matrices assemblées.

  • on considère que la matrice de rigidité \(K\) n’est formée que du terme volumique \({K}_{V}=\underset{{\Omega}_{e}}{\int}\lambda \nabla N.\nabla {N}^{T}\text{dV}\)

Cette hypothèse n’est pas valable pour toutes les conditions limites (voir paragraphe 3.1.3 ).

Les conditions suffisantes de non oscillation reviennent à exprimer des conditions sur le pas de temps et sur les termes diagonaux et extra-diagonaux de \(M\) et \(K\) pour que certaines propriétés de ces matrices soient vérifiées (basées sur la monotonie des matrices) [bib1] :

(2.1)#\[`{M}_{ij}+\theta .\Delta {\text{tK}}_{ij}\le 0\text{}i\ne j`\]
(2.2)#\[`{M}_{ij}+(\theta -1)\Delta {\text{tK}}_{ij}\ge 0\text{}i\ne j`\]
(2.3)#\[`{M}_{ii}+(\theta -1)\Delta {\text{tK}}_{ii}\ge 0\text{}\forall i`\]

Dans le cas général, les termes extra-diagonaux peuvent être de signe quelconque. Un étude rapide permet de déterminer les conditions sur t en fonction de leurs signes pour que les équations précédentes soient vérifiées:

\({K}_{ij}\ge 0\)

\({K}_{ij}\le 0\)

\({M}_{ij}\ge 0\)

\({M}_{ij}+\theta .\Delta {\text{tK}}_{ij}\le 0\text{}i\ne j\) [(2.1)] inconditionnellement fausse sauf \({M}_{ij}={K}_{ij}=0\)

\(\underset{i\ne j}{\max}(\frac{{M}_{ij}}{-\theta {K}_{ij}})\le \Delta t\le \underset{i}{\min}(\frac{{M}_{ii}}{(1-\theta ){K}_{ii}})\)

\({M}_{ij}\le 0\)

\({M}_{ij}+(\theta -1)\Delta {\text{tK}}_{ij}\ge 0\text{}i\ne j\) [(2.2)] inconditionnellement fausse sauf \({M}_{ij}={K}_{ij}=0\)

\(\underset{i\ne j}{\max}(\frac{{M}_{ij}}{(1-\theta ){K}_{ij}})\le \Delta t\le \underset{i}{\min}(\frac{{M}_{ii}}{(1-\theta ){K}_{ii}})\)

Quels que soit \(\Delta t\) et la forme de \(M\) , il y a risque d’oscillations.

Intervalle à respecter sur \(\Delta t\) . La diagonalisation de \(M\) permet de supprimer la borne inférieure.

Les conditions suffisantes pour éviter les oscillations sont alors:

\({K}_{ij}\le 0\text{}i\ne j\)

\(\Delta {t}_{\min}\le \Delta t\le \Delta {t}_{\max}\)

avec:

  • \(\Delta {t}_{\max}=\underset{i}{\min}(\frac{{M}_{ii}}{(1-\theta ){K}_{ii}})\) et

  • \(\underset{}{\Delta {t}_{\min}=\underset{i\ne j}{\max}}(\frac{{M}_{ij}}{(1-\theta ){K}_{ij}},\frac{{M}_{ij}}{-\theta {K}_{ij}})\) ,

En conséquence, il faut d’abord que les matrices élémentaires vérifient \({K}_{ij}\le 0\) (c’est le cas des éléments finis linéaires étudiés plus loin).

En ce qui concerne l’intervalle sur le pas de temps:

Si les oscillations sont dues à un pas de temps trop grand \((\Delta t>\Delta {t}_{\max})\) , on peut conseiller:

  • soit de choisir un schéma d’intégration en temps de type implicite \((\theta =1)\) , pour éliminer la borne supérieure de l’intervalle.

  • soit de diminuer \(\Delta t\) . (En pratique, il est difficile de connaître un ordre de grandeur de \(\Delta {t}_{\max}\) ).

Assez souvent, le problème des oscillations se pose pour des pas de temps petits \((\Delta t<\Delta {t}_{\min})\) ; en effet, pour prendre en compte les variations de la solution (par exemple, lors d’un choc thermique), on est amené à choisir une discrétisation fine en temps. Dans ce cas, pour éviter les oscillations, on peut suggérer:

  • soit d’augmenter la valeur des pas de temps . En pratique, ceci n’est pas toujours possible car \(\mathrm{Dt}\) peut être imposé par la nature du problème (variation rapide du chargement). De plus, il est difficile d’avoir un ordre de grandeur de \(\Delta {t}_{\min}\) .

  • soit de diminuer la taille des mailles et donc augmenter le nombre d’éléments. En effet, la valeur de \(\Delta {t}_{\min}\) dépend directement de la discrétisation spatiale:

Les expressions des matrices élémentaires sont en effet:

\({M}_{ij}=\underset{{\Omega}_{e}}{\int}\rho {\text{CN}}_{i}{N}_{j}\text{dV}\)

\({K}_{ij}=\underset{{\Omega}_{e}}{\int}\lambda \nabla {N}_{i}\nabla {N}_{j}\text{dV}\)

Pour les éléments 2D, les termes de \(M\) sont donc de la forme \(\mathrm{\rho C}\times \mathrm{Surface}\) alors que ceux de \(K\) sont seulement fonction de \(\lambda\) . Cette solution reste la meilleure si on n’est pas limité par le coût calcul, car la solution thermique et surtout mécanique sera d’autant plus précise.

  • Soit de diagonaliser la matrice \(M\) , ce qui supprime la borne inférieure de l’intervalle.

C’est la solution proposée ici.

Dans la suite de l’étude, on s’intéresse seulement au problème des oscillations qui apparaissent pour les pas de temps trop petits: \(\Delta t<\Delta {t}_{\min}\) . On présente plus précisément la méthode de diagonalisation de la matrice \(M\) choisie, et les différents types d’éléments auxquels elle s’applique.