advection d’un scalaire passif production d’entropie · master science de la matière stage ......

37
Master Science de la matière Stage 2011–2012 École Normale Supérieure de Lyon Jonathan BERTOLACCINI Université Claude Bernard Lyon I M2 Physique Advection d’un scalaire passif et production d’entropie Résumé : Les équations fondamentales (ou encore appelées : équations primitives) qui régissent le climat sont complexes et laissent peu de place à des approches analytiques. C’est pour cette raison que les climatologues utilisent les simulations numériques. Il existe deux démarches classiques, les modèles de circulation générale (GCM), et les modèles de balance d’énergie (EBM). La première détermine le champ de vitesse et implique une paramétrisation des petites échelles, la seconde le champ de température mais requiert une paramétrisation du transport d’énergie. Paltridge propose une méthode originale [1], qui donne de bons résultats, basée sur le maximum de production d’en- tropie (MEP), qui ne détermine pas le champ de vitesse mais directement le champ de température. Pour lui le transport d’énergie doit maximiser la production d’entropie. Hélas il n’existe pas de jus- tification théorique rigoureuse de ce principe, malgré une tentative récente [5] . Nous proposons une vérification numérique de ce principe, dans un cadre simplifié. Nous avons évalué la qualité du MEP et son domaine de validité, et tenter de comprendre pourquoi il s’applique bien au climat. Mots clefs : production d’entropie, MEP, advection, mélange, climat, Stage encadré par : Berengère DUBRULLE et Corentin HERBERT [email protected] / tél. (+33) 1 69 08 72 47 [email protected] / tél. (+33) 1 69 08 50 96 CNRS SPHYNX CEA/IRAMIS/SPEC L’Orme des Merisiers, 772 F-91191 Gif sur Yvette Cedex http://iramis.cea.fr/ 15 août 2012

Upload: tranminh

Post on 14-Sep-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

Master Science de la matière Stage 2011–2012École Normale Supérieure de Lyon Jonathan BERTOLACCINIUniversité Claude Bernard Lyon I M2 Physique

Advection d’un scalaire passif

et

production d’entropie

Résumé : Les équations fondamentales (ou encore appelées : équations primitives) qui régissent leclimat sont complexes et laissent peu de place à des approches analytiques. C’est pour cette raisonque les climatologues utilisent les simulations numériques. Il existe deux démarches classiques, lesmodèles de circulation générale (GCM), et les modèles de balance d’énergie (EBM). La premièredétermine le champ de vitesse et implique une paramétrisation des petites échelles, la seconde lechamp de température mais requiert une paramétrisation du transport d’énergie. Paltridge proposeune méthode originale [1], qui donne de bons résultats, basée sur le maximum de production d’en-tropie (MEP), qui ne détermine pas le champ de vitesse mais directement le champ de température.Pour lui le transport d’énergie doit maximiser la production d’entropie. Hélas il n’existe pas de jus-tification théorique rigoureuse de ce principe, malgré une tentative récente [5] . Nous proposonsune vérification numérique de ce principe, dans un cadre simplifié. Nous avons évalué la qualité duMEP et son domaine de validité, et tenter de comprendre pourquoi il s’applique bien au climat.

Mots clefs : production d’entropie, MEP, advection, mélange, climat,

Stage encadré par :Berengère DUBRULLE et Corentin [email protected] / tél. (+33) 1 69 08 72 [email protected] / tél. (+33) 1 69 08 50 96CNRSSPHYNXCEA/IRAMIS/SPECL’Orme des Merisiers, 772 F-91191 Gif sur Yvette Cedexhttp://iramis.cea.fr/

15 août 2012

Page 2: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

Remerciements

Je tiens à remercier Bérengère Dubrulle et Corentin Herbert pour leur patience, leur écoute, leurspédagogies, leurs suggestions, et enfin leur sympathie. L’accueil, les conditions de travail, ainsi quel’ambiance au sein du laboratoire SPHYNX étaient des plus agréables. Cette expérience de quatremois me conforte dans mon choix de rester dans le monde de la recherche.

Table des matières

1 Introduction 11.1 Le contexte général . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.2 Notre approche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

2 MEP : Maximisation de la Production d’Entropie 5

3 L’équation d’advection 63.1 Définitions des grandeurs caractéristiques . . . . . . . . . . . . . . . . . . . . . . . . . 63.2 Introduction de la fonction de courant . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

4 Démarche et Diagnostics 84.1 Démarche globale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84.2 Stationnarité temporelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94.3 Production d’entropie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94.4 Etat d’équilibre inertiel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

5 Comparaison des deux champs de température 105.1 Domaine de validité du principe MEP . . . . . . . . . . . . . . . . . . . . . . . . . . . 105.2 Influence de la fonction courant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

5.2.1 Monopole . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115.2.2 Dipole . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125.2.3 Weiss . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145.2.4 Scalaire pseudo-actif . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

6 Conclusion 17

Références 18

7 ANNEXE 18

Page 3: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

Pseudo-Advection d’un scalaire passif et production d’entropie Jonathan BERTOLACCINI

1 Introduction

Les équations fondamentales (ou encore appelées : équations primitives) qui régissent le climat sontcomplexes et laissent peu de place à des approches analytiques. C’est pour cette raison que depuis lesannées soixante-dix, les climatologues utilisent abondamment les simulations numériques. Il existe deuxdémarches classiques, les modèles de circulation générale (GCM), et les modèles de balance d’énergie(EBM). La première détermine le champ de vitesse et implique une paramétrisation des petites échelles,la seconde le champ de température mais requiert une paramétrisation du transport d’énergie. Ces mo-dèles n’ont cessé d’être raffinées, avec pour conséquence fâcheuse l’augmentation du temps de calcul.

Mais pour Garth Paltridge, ces modèles de circulation ne s’attaquaient pas au problème de la bonnefaçon. Pour lui, cette approche est équivalente à décrire un gaz en suivant le chemin de chacune desparticules qui le compose. Pour remplacer cette méthode, Paltridge s’est intéressé à l’entropie (que l’onpeut comprendre comme une mesure du désordre) et proposa [1] que le climat maximisait la produc-tion d’entropie (MEP), alors qu’en physique statistique on maximise l’entropie elle même. Plus tard, en2001, Ralph Lorenz, appliqua ce principe MEP à l’atmosphère des planètes pour obtenir des résultatsrelativement correctes [2].

Le problème est que ce principe de maximisation de production d’entropie n’a pas de justificationthéorique claire. En 2003, puis 2005, Roderick Dewar tenta une justification rigoureuse, mais nonconvaincante comme en attestent les commentaires de S.Bruers [6], G.Grinstein et R Linsker [7].

Nous proposons donc une étude numérique pour tester le principe MEP et son domaine de validité.Pour cela nous comparerons quantitativement les champs de température obtenus par intégration nu-mérique directe de l’équation d’advection-diffusion avec ceux obtenus par le principe MEP, en utilisantun programme écrit sous MATLAB. Intuitivement MEP est lié à la notion de mélange, et le mélangeest déterminé par l’advection. Nous considérons donc le cas d’un scalaire passif, c’est à dire que lavitesse d’advection ne dépend pas du champ de température advecté, elle est fixée. On sait que cen’est pas le cas pour le climat, mais nous décidons de nous placer dans un contexte simplifié, pourdéterminer l’impact de la vitesse d’advection, et les conditions dans lesquelles la méthode MEP estrelativement bonne.

1

Page 4: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

Pseudo-Advection d’un scalaire passif et production d’entropie Jonathan BERTOLACCINI

1.1 Le contexte général

La Terre reçoit de l’énergie sous forme d’un rayonnement, essentiellement dans le domaine du vi-sible, émis par le soleil. Ce flux d’énergie n’est pas réparti de façon homogène sur la Terre, il dépend dela latitude. En moyenne annuelle, il est plus fort à l’équateur qu’aux pôles. Cette énergie est ré-émisepar la Terre, sous forme de rayonnement infra-rouge. Localement le bilan entre absorption et émissiond’énergie n’est pas nul, il est positif à l’équateur et négatif aux pôles. Pour assurer un état stationnaire,un transport d’énergie de l’équateur vers les pôles, transport assuré par l’océan et l’atmosphère, se crée.

Il existe typiquement 2 méthodes pour calculer ce transport :- Les modèles de circulation générale (GCM) déterminent le champ de vitesse, solutions numériques del’équation de Navier Stokes, couplée aux autres équations primitives (bilan d’énergie, équation d’état,production de vapeur d’eau, etc...). De manière ad-hoc on paramétrise les petites échelles. Malgré lefait que les ordinateurs soient de plus en plus puissant, ces GCM ne donnent une solution qu’aprèsplusieurs mois de calculs, et bien évidemment changer un paramètre devient donc couteux en termede temps.- Les modèles de balance d’énergie (EBM) qui déterminent le champ de température en paramétrisantempiriquement le transport de l’énergie. Plus cette paramétrisation est fine plus le temps de calcul estlong.

Une troisième méthode originale fut proposée par Paltridge : Ce transport d’énergie correspond àl’état sélectionné par la méthode du Maximum de Production d’Entropie (MEP). Il s’agit bien sûrd’un postulat.Ainsi, plutôt que de résoudre les équations de Navier Stokes couplées à la paramétrisation des petiteséchelles d’énergie pour le climat, d’une incroyable complexité, et aboutir après moyennage à une solutionstationnaire, la méthode MEP sélectionne directement la solution stationnaire. Avec cette méthode onne connait bien sûr pas la dynamique du champ de température, comme avec les modèles GCM, maispeu importe puisque cette dynamique était ensuite moyennée par les GCM, d’où l’efficacité de laméthode MEP et son temps de calcul réduit.

F_soleil

MEP

GCM

Figure 1 – Les GCM : Global Circulation Models et la méthode MEP : Maximum Entropy Productionappliqués au climat

Nous parlons ici d’entropie thermodynamique, et non d’une entropie de configuration ou entropiestatistique. On sait qu’il existe un principe associé à l’entropie statistique, le second principe, ce quin’est pas le cas pour l’entropie thermodynamique, définie de la façon suivante pour un gaz parfait

2

Page 5: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

Pseudo-Advection d’un scalaire passif et production d’entropie Jonathan BERTOLACCINI

S _ ln

T

T0� ln

P

P0, et la variation d’entropie dans le temps est dS

dt

=

RQ

T

dv + �(t). Où le termeR

Q

T

dv

représente l’entropie échangée avec l’univers. La production d’entropie � peut donc s’écrire, à l’étatstationnaire :

�(t) = �Z

Q

T

dv. (1.1)

Paltridge propose de chercher l’état stationnaire qui maximise la production d’entropie.La figure 2 montre la différence de température de surface entre le modèle MEP (incluant une

correction grossière pour les nuages et la topographie) et le modèle de l’IPSL qui est un modèle decirculation générale couplé océan-atmosphère.Globalement la distribution de température MEP n’est pas incohérente, mais quand on regarde at-tentivement il existe quand même des imperfections. Les zones blanches correspondent à un écart detempérature en valeur absolue de 5 degrés maximum, cela veut donc dire que dans ces régions MEPse rapproche d’un GCM. En revanche les zones rouges ou bleues témoignent d’un écart proche de 10degrés. En particulier MEP prédit une température de plus de 10 degrés inférieure à celle de l’IPSL,au Groenland. Compte tenue de la simplicité et de l’efficacité de MEP ce résultat semble correctEn revanche l’un des atouts majeur du MEP est son comportement. En effet les changements de para-mètres, comme par exemple la variation de d’albédo de surface entre aujourd’hui et la dernière périodeglaciaire, (voir [4]) sont parfaitement retranscris par MEP. Ce résultat est étonnant compte tenue dela simplicité de ce modèle et du nombre réduit de paramètres dont il dépend : le flux, uniquement.

-10

-5

0

5

10

variable_6Mean 0.931405 Max 10.9311 Min -27.2815

-180 -120 -60 0 60 120-90

-70

-50

-30

-10

10

30

50

70

90

variable_6Mean 0.931405 Max 10.9311 Min -27.2815

-180 -120 -60 0 60 120-90

-70

-50

-30

-10

10

30

50

70

90

Figure 2 – Carte de la différence de température de surface entre le modèle MEP (incluant unecorrection grossière pour les nuages et la topographie) et le modèle de l’IPSL qui est un modèle decirculation générale couplé océan-atmosphère. voir [4]

1.2 Notre approche

La méthode MEP reste très peu utilisée, et voire marginale, parce qu’à ce jours il n’existe pasde justification théorique rigoureuse de ce "principe". Une tentative a été faite par Dewar ([5][3]), enutilisant la théorie de l’information, mais elle reste controversée.MEP n’est pas un principe en soi, contrairement au fameux principe de maximisation de l’entropiestatistique, qui conduit à la mesure de Boltzman.

Notre but est donc de vérifier numériquement s’il s’agit d’un principe général, et dans quellesconditions est-il applicable. Pour caractériser ces conditions nous allons définir 2 grandeurs sans di-mension, nous allons aussi fixer le mélange, pour une série de simulations, et fixer le terme source,le tout évalué sur un domaine simple, un carré. La seconde question à laquelle nous essayerons derépondre est pourquoi y a t-il un relativement bon accord pour le climat ? Pour cela nous essayerons

3

Page 6: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

Pseudo-Advection d’un scalaire passif et production d’entropie Jonathan BERTOLACCINI

différentes fonctions courant et surtout nous passerons du champ scalaire passif au scalaire pseudo-actif.

Pour engendrer un champ de température, qui puisse être comparable à celui du climat, nous choi-sissons ce champ solution de l’équation d’advection-diffusion avec forçage. Le terme advectif représentele transport de l’énergie par l’océan et l’atmosphère, le terme diffusif peut aussi être interprété commedu transport d’énergie mais cette fois ci par diffusion turbulente. Le forçage représente le bilan radiatif,différence entre l’énergie reçue par la Terre, sous forme de rayonnement solaire et l’énergie ré-émisepar la Terre, sous forme infra-rouge. Notre champ de température est donc une solution numérique del’équation ci-dessous :

@✓

@t

+ ~u.r(✓) = ·�✓ + F (✓), (1.2)

où ✓ est le champs scalaire passif, est le coefficient diffusif, ~u est la vitesse d’advection, et F (✓) estle forçage radiatif.

Comme nous l’avons expliqué plus haut nous choisissons un scalaire passif. C’est à dire que lavitesse d’advection ~u ne dépend pas du champ de température ✓.Sur la figure 3 nous avons représenté le domaine sur lequel nous allons intégrer numériquement l’équa-tion d’advection, on peut pour continuer notre analogie avec le climat identifier les bords supérieur etinférieur aux pôles terrestre. Le transport d’énergie par l’océan et l’atmosphère sera représenté par lavitesse d’advection ~u.Dans notre étude le forçage est toujours de la forme : F (✓) = a0 + a1(x, y) + b0✓. Il est schématisé surla figure 4. Il représente l’énergie transmise à la Terre par radiation solaire, il est donc fonction de lalatitude, puisque les pôles reçoivent moins d’énergie que l’équateur. Nous avons choisi les constantesen nous référant à l’article de Lorenz [2], pour que les champs de température simulés aient des tempé-ratures proches du climat observé. Il est à noter que le forçage est le seul paramètre dans la méthodeMEP, contrairement à l’équation d’advection qui nécessite le choix du forçage, de la vitesse, et de ladiffusion. Nous savons que dans le cas du climat, le champ de température est actif, et les phénomènesimpliqués sont hautement non-linéaires, mais c’est par soucis de simplicité dans l’intégration numé-rique de l’équation d’advection que nous choisissons un scalaire passif. A la fin de notre étude nousessayerons de simuler un champ scalaire actif du "pauvre".Nous allons donc intégrer numériquement cette équation, à vitesse d’advection fixée, et à forçage fixé,puis comparer systématiquement le champ de température obtenu avec celui obtenu par la méthodeMEP.

Pôle Nord

Pôle Sud

0 Equateur

x

yDomaine

Figure 3 – Domaine d’intégration nu-mérique de l’équation d’advection

Pôle Nord

Pôle Sud

0 Equateur

x

yForçage radiatif

Figure 4 – Forçage radiatif choisi pour lessimulations

4

Page 7: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

Pseudo-Advection d’un scalaire passif et production d’entropie Jonathan BERTOLACCINI

2 MEP : Maximisation de la Production d’Entropie

On rappelle l’équation d’advection :

@✓

@t

+ ~u.r(✓) = ·�✓ + F (✓). (2.1)

On peut poser ⇣(✓) := ·�✓ � ~u.r(✓) = �rt

Cr✓. Nous expliciterons la matrice C plus loin, lorsquenous détaillerons l’équation d’advection.On peut réécrire l’équation sous cette forme :

@✓

@t

= ⇣ + F (✓), (2.2)

A l’état stationnaire ⇣ = �F (✓), et la production d’entropie associée est donnée par :

� = �Z

F (✓)

dv. (2.3)

Ainsi nous obtenons l’expression de la production d’entropie, qui n’est fonction que du forçage et duchamp de température, intégrés sur tout le domaine. Il faut maintenant maximiser cette fonctionnelledu champ. Pour cela on discrétise le problème, c’est dire l’intégrale, le forçage et surtout le champ detempérature ✓. Et maintenant on considère que la production d’entropie � est une fonction de plusieursvariables les ✓

ij

. A chaque ✓ij

est associé une valeur du forçage discrétisé : Fij

. Le nombre de variablesest bien sûr fonction de la discrétisation.

�[✓] = �Z

F (✓)

dv = �X

i,j

F

ij

(✓

ij

)

ij

. (2.4)

Or le théorème de Stokes, nous donne une contrainte : la somme des F

ij

doit être nulle.Z⇣dv = �

ZF (✓)dv = 0 ,

X

ij

F

ij

= 0. (2.5)

Il est à noter qu’il n’existe pas de géométrie associée au champ de température discrétisé. De plus,il n’existe pas de relation entre les cellules, elles sont "indépendantes" repérées par la valeur du forçageassocié, mais toutes ensembles sont soumises à la contrainte générale :

Pij

F

ij

= 0. On peut doncadopter n’importe quelle représentation du champ de température, du moment que l’on conserve lenombre de cellules, c’est à dire le nombre de variables, ainsi les problèmes de bords n’existent plus.

Finalement la méthode MEP se réduit à un problème d’optimisation sous contrainte :

max

0

@�

���X

ij

F

ij

= 0

1

A. (2.6)

On utilise sous MATLAB le solveur fmincon adapté à l’optimisation sous contrainte, basé sur lesméthodes du gradient. On cherchera donc le minimum de �� de manière équivalente à notre problème.Il faudra automatiquement, discrétiser le forçage et l’interpréter comme une matrice dont chaque élé-ment est un scalaire représentant l’intensité du forçage s’exerçant localement sur un élément du champde température.

5

Page 8: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

Pseudo-Advection d’un scalaire passif et production d’entropie Jonathan BERTOLACCINI

Champ de Température discrétisé

Forçage discrétisé

Variable

Pas de géométrie

Pour vérifier que notre programme d’optimisation est cohérent, on se place dans un cas simple, celuid’un champ de température constitué de deux blocs. D’un point de vue climat cela revient à séparerle globe en l’hémisphère nord et l’hémisphère sud.

En se référant à un article de Lorenz [2] qui détermine la température de l’atmosphère de certainesplanètes,via le principe MEP et un forçage linéaire. On a retrouvé les mêmes températures pour cesdeux blocs.(198K et 148K)

3 L’équation d’advection

Revenons à l’équation d’advection afin de définir les grandeurs utiles et caractériser le mélange :

@✓

@t

+ ~u.r(✓) = ·�✓ + F (✓). (3.1)

Il s’agit de l’équation du scalaire passif ✓. Ce qui signifie que la vitesse ~u n’est pas une fonction de✓, le champ advecté.

3.1 Définitions des grandeurs caractéristiques

Pour caractériser les différents régimes nous avons construit deux nombres sans dimensions, lenombre de Péclet et le nombre J. Ils caractérisent l’ensemble des configurations possibles. En faisantvarier l’intensité du forçage et de la diffusion, nous allons balayer tout cet espace. A chaque point, c’estdire à un couple (J,Pe) est associé un champ de température obtenus par intégration numérique del’équation d’advection.

Le nombre de Péclet est défini comme le rapport de l’advection par la diffusion :

Pe :=

||~u ·r(✓)|||| ·�✓|| =

|| ||L

· ||✓||L

· ||✓||L

2

=

|| ||

. (3.2)

Dans un premier nous avions pris une norme de type valeur absolue pour la fonction courant ,localement définie sur le domaine, cela impliquait qu’à chaque point du domaine on pouvait associerun Péclet, puis on moyennait sur tout le domaine. Au cours de notre étude, en changeant la forme dela fonction courant, le Péclet était de l’ordre de 10

�5, et le second nombre de 10

5. Nous avons doncdécidé de prendre une norme L

2 pour : || ||2 = 1S

R

2ds

A nombre de Péclet élevé, c’est l’advection qui domine la diffusion, et inversement à Péclet faible.

6

Page 9: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

Pseudo-Advection d’un scalaire passif et production d’entropie Jonathan BERTOLACCINI

Le nombre J, est défini comme le rapport du forçage et de l’advection.

J :=

||F (✓)

||~u ·r(✓)|| =||F (✓)|||| ||L

· ||✓||L

=

||F (✓)|| · L2

|| || · ||✓|| . (3.3)

Où L est la longueur caractéristique du domaine.

Le choix du champ de température dans la définition du nombre J est crucial. En effet dans unpremier temps nous avions choisi le champ au temps final. Mais l’évolution du champ de températureétant conditionnée par l’advection et la diffusion, ce dernier est donc une fonction implicite de ladonnée de ces deux paramètres. C’est la raison pour laquelle nous avons obtenu dans un premiertemps une relation de contrainte entre le nombre de Péclet et le nombre de J, ce qui explique la régioninaccessible sur la figure suivante, qui représente la répartition des états d’équilibre inertiel. Ce sont desétats stationnaires définis lorsque le forçage et la dissipation se compensent. Pour éviter ce problèmenous avons donc choisi le champ de température à l’instant initial, et d’un point de vue de la physiqueexpérimentale, il est facile de contrôler la température initiale.

Figure 5 – Mauvais choix de ✓ dans la définition du nombre J, qui implique une contrainte sur (J,Pe)

3.2 Introduction de la fonction de courant

Pour notre étude, il est plus commode de travailler numériquement avec la fonction courant (fonc-tion scalaire) que la vitesse d’advection. Si on se place à 2 dimensions spatiales, avec un écoulementincompressible, alors la vitesse d’advection peut s’exprimer à partir de la fonction courant .

Pour cela on peut remarquer que l’opérateur ~u.r(✓) � · �✓ peut être astucieusement remplacépar un produit du type (r)

t

Cr où C est une matrice 2⇥ 2.En effet, prenons

C =

✓c1 c2

c3 c4

◆(3.4)

alors

(r)

t

Cr =

�@

x

@

y

�·✓

c1.@x + c2.@y

c3.@x + c4.@y

◆= @

x

(c1.@x + c2.@y) + @

y

(c3.@x + c4.@y) (3.5)

7

Page 10: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

Pseudo-Advection d’un scalaire passif et production d’entropie Jonathan BERTOLACCINI

Pour rester le plus général possible, choisissons les coefficients c

i

= c

i

(x, y)

(r)

t

Cr = @

x

(c1) · @x+ c1 · @2xx

+ @

x

(c2) · @y + c2 · @2xy

+ @

y

(c3) · @x+ c3 · @2yx

+ @

y

(c4) · @x+ c4 · @2yy

(3.6)

En choisissant les coefficients c1 et c4 tels que c1 = c4 = �, la constante de diffusion que l’onchoisit indépendante de la position alors

(r)

t

Cr = � ·�@

2xx

+ @

2yy

�+ @

x

(c2) · @y + c2 · @2xy

+ @

y

(c3) · @x + c3 · @2yx

(3.7)

En choisissant les c2 = �c3 = �⌘ alors les termes croisés s’annulent, et au final

(r)

t

Cr = � ·�@

2xx

+ @

2yy

�� @⌘

@x

· @y

+

@⌘

@y

· @x

. (3.8)

On peut poser �@⌘

@

x

= u

y

et @⌘

@

y

= u

x

et ainsi identifier la fonction ⌘(x, y) à la fonction courant (x, y).

Le choix de la fonction courant est primordial, il détermine totalement l’advection, donc le mélange.Pour que la méthode MEP, qui consiste à maximiser la production d’entropie, donc "maximiser ledésordre", donne des résultats proches de l’intégration numérique de l’équation d’advection, il paraitintuitif de choisir des écoulements qui mélangent optimalement.

4 Démarche et Diagnostics

4.1 Démarche globale

Nous allons obtenir deux champs de température, par deux méthodes différentes. Pour un forçagedonné (qui représente le flux d’énergie transmis par le Soleil à la Terre), et une fonction courant donnée(qui caractérise l’advection), la première méthode consiste à intégrer numériquement une équation auxdérivées partielles, l’équation d’advection, et la seconde à utiliser MEP, un problème de maximisationsous contrainte. Cette dernière méthode, pour générer un champ de température, ne nécessite la don-née que d’un seul paramètre, et il s’agit du forçage, en revanche l’équation d’advection contient unterme dissipatif pondéré par un coefficient : . L’ensemble des configurations possibles pour intégrernumériquement cette équation peut être décrit à l’aide des deux paramètres sans dimensions présentésplus haut (J et Pe, voir []). En jouant sur l’intensité de la diffusion et du forçage, nous allons décriretout l’espace J/Pe, et à chaque point de cet espace est associé le champ de température solution del’équation d’advection.Nous générons le mélange directement à l’aide de la fonction courant, pour des raisons physiques :c’est l’objet générant les vitesses en deux dimensions spatiales pour un fluide incompressible, maisaussi pour des raisons numériques propres à MATLAB, qui utilise l’opérateur rt

Cr pour résoudrenumériquement une équation parabolique.Nous comparons ensuite les deux champs obtenus à l’aide d’un indice, Ind :=

1S

R (Tadv

�T

mep

)2

T

2adv

ds, quitranscrit la distance entre les deux champs, et nous représentons cet indice sur le diagramme J/Pe.Dans une seconde partie nous changerons la fonction courant, en conservant la même procédure, afind’évaluer son impact, et affiner notre compréhension.Dans la dernière partie nous simulerons le cas d’un champ scalaire (pseudo)actif.

8

Page 11: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

Pseudo-Advection d’un scalaire passif et production d’entropie Jonathan BERTOLACCINI

Advection-Diffusion MEP

T_eq_diff T_mep

Indice

kappa Psi Forcage

J/P

Figure 6 – Schéma de la démarche

4.2 Stationnarité temporelle

Le but final de notre démarche est de comparer le champ de température obtenu par intégrationdirecte de l’équation d’advection avec celui obtenu par MEP. Par cette dernière méthode le tempsn’intervient pas, MEP sélectionne un état stationnaire, il a donc fallu caractériser les solutions sta-tionnaires de l’équation d’advection, et trouver un critère de stationnarité. Dans un premier tempscelui ci portait sur la valeur moyenne du champ de température, nous avons décidé, suite à un groupede travail, de le faire porter directement sur la production d’entropie calculée à chaque pas de temps.Ce critère est simple, il consiste à évaluer la dérivée en chaque point de la production d’entropie enfonction du temps, et vérifier qu’elle est inférieure en valeur absolue à une certaine tolérance. Si c’est lecas, alors le programme commence la méthode MEP puis la comparaison, sinon on augmente le tempsfinal sur lequel on intègre numériquement l’équation d’advection.

4.3 Production d’entropie

Un deuxième diagnostic nous permet d’évaluer directement la production d’entropie sur le domaineà chaque pas de temps, pour ultérieurement la comparer à celle obtenue par MEP, et ainsi mesurerl’écart relatif mais aussi la façon de converger vers le maximum de production d’entropie, donné parMEP. En effet on parle de maximisation de production entropie, mais dans certains cas il peut s’agirde minimisation.

4.4 Etat d’équilibre inertiel

L’équilibre inertiel est atteint lorsque le forçage et la dissipation se compensent, l’équation d’ad-vection devient alors @✓

@t

+ ~u.r(✓) = 0. Pour ces équilibres il est facile de trouver l’état stationnaireen résolvant ~u.r(✓) = 0. On vérifie facilement que s’il existe une relation fonctionnelle entre le champde température ✓ et la fonction courant de la forme ✓ = G( ) (G étant une fonction quelconquede classe C

1) alors le terme ~u.r(✓) s’annule. Notre test permet donc de vérifier l’existence de cettefonction G et trouver sa forme.On trace pour cela un histogramme du champ de température sur la fonction courant, représentant lenombre de points contenus dans un petit élément de surface. Dans certains cas il ne se dégage pas unerelation entre ✓ et , alors que dans d’autres on peut obtenir une relation fonctionnelle par exemple :linéaire ou parabolique.

9

Page 12: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

Pseudo-Advection d’un scalaire passif et production d’entropie Jonathan BERTOLACCINI

5 Comparaison des deux champs de température

L’une des difficultés qu’il a fallu contourner est que les conditions limites périodiques ne peuvent êtreimplémentées dans le solver parabolic. Il était trop tard pour réécrire tout le programme et passer parune discrétisation de type Crank-Nilson pour résoudre l’équation différentielle de l’advection-diffusion.En effet seulement les conditions de type Dirichlet (valeur du champ au bord) ou von Newman (valeurde la dérivée du champ au bord) peuvent être choisies. Il a donc fallu procéder à un découpage duchamp obtenu par intégration numérique, ce découpage élimine les effets de bords, il est équivalent àun changement d’échelle. Ne restait plus qu’à le comparer au champ MEP avec lequel on peut choisirn’importe quelle représentation graphique, puisqu’il n’y a pas de géométrie.Pour notre étude systématique, il a fallu coordonner les différentes parties du programme, faire en sortequ’elles communiquent entre elles. Le but étant de contrôler le programme avec un nombre minimal deparamètres, et enregistrer sous forme numéraire ou graphique les résultats de toutes les simulations.Ce qui est le cas, on ne choisi uniquement que les coefficients des fonctions courants, la valeur de ,et le coefficient global devant le forçage. Ainsi on parcours tout le diagramme J/Péclet, à fonctioncourant fixée, et ceci automatiquement. Tous les résultats sont enregistrés dans un fichier texte, lesgraphiques sont eux aussi stockés avec pour dénomination la valeur de nos paramètres de contrôle (,et le coefficient global devant le forçage).

5.1 Domaine de validité du principe MEP

Pour évaluer le domaine de validité du principe MEP, un second programme trace par interpolationun diagramme J-Péclet pour lequel un code couleur nous renseigne sur l’écart relatif entre le champobtenus par intégration de l’équation différentielle et celui obtenu par MEP, c’est à dire la valeur denotre indice :

Ind =

1

S

Z(T

adv

� T

mep

)

2

T

2adv

ds (5.1)

Pour choisir qu’elle était la méthode d’interpolation la plus adaptée, nous avons effectués une sérieen "aller-retour", c’est à dire dans un premier temps interpoler les données brutes, puis les interpolerà nouveau pour revenir aux données brutes et mesurer l’écart entre cette méthode et l’identité pourles données.La discrétisation du champ pour MEP est représentée par une fonction de 100 variables. La résolutionn’est pas déterminante ici, puisque la forme du forçage est relativement régulière, ne variant que selonla latitude.

Les zones les plus sombres sur les deux diagrammes J-P ci dessous correspondent à des écartsrelatifs entre les deux champs inférieurs à 5% avec notre indice. Plus les zones s’éclaircissent moins leprincipe MEP est valable.

5.2 Influence de la fonction courant

Comment lire ces tableaux récapitulatifs :L’angle en haut à gauche est réservé à la fonction courant. Les graphiques de production d’entropie(évaluée sur le domaine à chaque pas de temps par intégration numérique de l’équation d’advection)et l’histogramme ✓ = G( 1) (équilibre inertiel) sont tirés d’une simulation à couple (J,Pe) fixé, c’est àdire qu’il faut les associer à un point du diagramme J/Pe, toujours présenté en bas à droite. Il indiquele domaine de validité du principe MEP pour la fonction courant donnée.

10

Page 13: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

Pseudo-Advection d’un scalaire passif et production d’entropie Jonathan BERTOLACCINI

5.2.1 Monopole

Dans un premier temps, nous avons utilisé une fonction courant de la forme 1(x, y) = A cos(x). cos(y),forme traditionnelle dont une représentation en deux dimensions nous permet de l’interpréter commeun monopole.

1 ✓ = G( 1)

Production d’entropie Diagramme J/Pe

Figure 7 – Tableau récapitulatif pour 1, cas J=0.036 et Pe=1959

Le digramme J/Pe (en bas à droite de la figure 8) représente le domaine de validité de la méthodeMEP, mesuré avec notre indice défini plus haut. Comme nous l’avons expliqué plus une zone est sombresur ce diagramme plus l’indice est proche de zéro, et donc plus les champs sont "proches".Il faut remarquer que dans le régime à nombre de Péclet très élevé et de J très faible, ce qui correspondphysiquement à la dominance de l’advection sur la diffusion, alors MEP est raisonnablement valide.Ceci est en accord avec l’intuition, maximiser la production d’entropie, c’est maximiser le mélange, etdonc l’advection. Plus étonnante est la seconde partie du diagramme, qui correspond au nombre dePéclet faible et de J élevé. Dans cette zone c’est la diffusion qui domine et le principe MEP est enaccord avec une intégration numérique de l’équation d’advection, pour un indice inférieur à 5%. Onconclut que la diffusion peut être aussi approchée par MEP.On peut donc passer continûment du domaine où l’advection domine à celui où la diffusion domineavec un indice toujours aussi bon, inférieur à 5%.

L’histogramme ✓ = G( 1) nous indique que pour les états inertiels il existe bien une fonction G, etque cette dernière est linéaire en 1

L’évaluation de la production d’entropie montre que l’on atteint rapidement l’équilibre, elle atteint53% de la production d’entropie calculée par MEP mais ne converge pas vers elle.

11

Page 14: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

Pseudo-Advection d’un scalaire passif et production d’entropie Jonathan BERTOLACCINI

1 ✓ = G( 1)

Production d’entropie Diagramme J/Pe

Figure 8 – Tableau récapitulatif pour 1, cas J=0.013 et Pe=2938

Ici nous avons choisi un autre point du diagramme J/Pe pour lequel les deux champs de températurediffèrent déjà plus que dans le cas précédent (Ind=20%). Il n’y a pas de différence notable aussi bienpour la production d’entropie (70% de la valeur MEP) que l’histogramme ✓ = G( 1). Cette remarqueest générale, pour tous les points du diagramme J/Pe : il existe une fonction G linéaire en 1 et laproduction d’entropie est style mais ne converge pas vers la valeur prédite par MEP.Nous avons constaté que pour que la production d’entropie calculée à chaque pas de temps atteigneune valeur proche (à 90%) de celle donnée par MEP, il faut être à très au nombre de Péclet, et la valeurde l’indice n’est pas pour autant la meilleure. Les deux tests sont indépendants.

5.2.2 Dipole

Nous avons utilisé une fonction courant de la forme diple

(x, y) = A(cos(x) � cos(y)),forme dontune représentation en deux dimensions nous permet de l’interpréter comme un dipôle.

12

Page 15: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

Pseudo-Advection d’un scalaire passif et production d’entropie Jonathan BERTOLACCINI

dipole

✓ = G(

dipole

)

Production d’entropie Diagramme J/Pe

Figure 9 – Tableau récapitulatif pour diple

, cas J=6.47 et Pe=26

En examinant le domaine de validité du principe MEP, le diagramme J/Pe, on retrouve ce passageentre le régime advectif et le régime diffusif. En revanche les zones dont la valeur de l’indice estinférieure à 10% est très réduite. On peut intuitivement comprendre pourquoi en examinant le champde température à l’état final, il est concentré sur la diagonale (y = 1, x = �1/y = �1, x = 1), ceci estimposé la fonction courant. Dans le cas précédent la fonction courant possédait une symétrie circulaire,donc le champ de température aussi, et c’est pour cette raison que le champ obtenu était proche decelui prédit par la méthode MEP.Il n’existe pas de fonction G associée à cette fonction courant, on pourrait y voir une parabole, maiselle ne se dégage pas clairementQuant à la production d’entropie évaluée à chaque pas de temps, elle est stable, mais en désaccordcomplet avec la prédiction MEP.

13

Page 16: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

Pseudo-Advection d’un scalaire passif et production d’entropie Jonathan BERTOLACCINI

dipole

✓ = G(

dipole

)

Production d’entropie Diagramme J/Pe

Figure 10 – Tableau récapitulatif pour diple

, cas J=40.5 et Pe=26

5.2.3 Weiss

Dans un second temps, nous avons utilisé une fonction courant issue de l’article de J.B.Weiss [8],qui consiste en un polynôme de la forme y.

3/3� y� cos(x) perturbé par une fonction du temps, de la

formeP

n

�(t� n.k). ⇤ cos(x).

14

Page 17: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

Pseudo-Advection d’un scalaire passif et production d’entropie Jonathan BERTOLACCINI

weiss

✓ = G(

weiss

)

Production d’entropie Diagramme J/Pe

Figure 11 – Tableau récapitulatif pour weiss

, cas J=4.85 et Pe=19

On retrouve ce passage entre le régime advectif et le régime diffusif, mais cette fois-ci la transitionentre la région dans laquelle l’indice est bon (inférieur à 10%) et la région dans laquelle il est plutôtmauvais (supérieur à 60%) est très rapide, il n’y a pas de zone de moyen accord. Il n’existe pas nonplus de fonction G associée à cette fonction courant.Quant à la production d’entropie évaluée à chaque pas de temps, elle est stable, on a bien un étatstationnaire, et atteint 30% de la prédiction MEP.

5.2.4 Scalaire pseudo-actif

Enfin, pour simuler le scalaire actif, et donc se rapprocher un peu plus de la réalité du champde température de l’atmosphère, on résout dans un premier temps l’équation de Navier Stokes, dansl’approximation géostrophique. C’est à dire que le terme d’advection (~u.

~r)~u est supposé nul et on seplace à l’état stationnaire : @~u

@t

= 0. Nous avons donc cherché le champ de vitesse, en résolvant ana-lytiquement 1

r(P ) = ⌫�~u. Avec la pression P telle que P / F (✓), F (✓) étant le forçage. Du champde vitesse nous avons intuité la fonction courant, et vérifié que la condition d’incompressibilité étaitsatisfaite. On aboutit à une fonction courant de la forme

actif

/ x. sin(y.

2 ).

15

Page 18: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

Pseudo-Advection d’un scalaire passif et production d’entropie Jonathan BERTOLACCINI

actif

✓ = G(

actif

)

Production d’entropie Diagramme J/Pe

Figure 12 – Tableau récapitulatif pour actif

, cas J=16.89 et Pe=5

L’une des premières constatations est que la production d’entropie déterminée par MEP est procheà 25% de celle calculée à chaque pas de temps sur le domaine.On devine une fonction G qui caractérise les états inertiels.Le résultat le plus important concerne le domaine de définition, évalué avec notre fonction courantqui simule le scalaire actif : il existe toujours une zone dans laquelle notre indice est faible (donc leschamps sont proches). Cette zone correspond au nombre de Péclet élevé et au nombre de J faible, c’estl’advection qui domine. En revanche dans le domaine diffusif (nombre de Péclet faible et au nombrede J élevé) cette zone dans laquelle notre indice est faible n’est pas bien définie, et le principe MEP nesemble plus être applicable.

16

Page 19: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

Pseudo-Advection d’un scalaire passif et production d’entropie Jonathan BERTOLACCINI

6 Conclusion

Nous avons évalué les domaines de validité du principe MEP avec notre indice pour différentsécoulements : monopôle, dipôle, issu d’un article de Weiss, et enfin de type scalaire pseudo-actif. Cesdomaines peuvent être découpés principalement en deux régions, une première où l’advection domine,c’est à dire le mélange (nombre de Péclet élevé et au nombre de J faible) une seconde où la diffusiondomine (nombre de Péclet faible et au nombre de J élevé). Pour les trois premières fonctions de courant,le principe MEP donne de bons résultats dans ces 2 régions. En revanche dans le cas du scalaire pseudo-actif le principe MEP semble ne plus s’appliquer dans la région où la diffusion domine. Il aurait étéintéressant de comparer précisément la surface sur le diagramme J/Pe pour laquelle l’indice est le plusfaible et noter l’influence de la fonction courant, mais nous n’avons pas eu assez de temps pour nousconsacrer à cette comparaison.Nous avons voulu nous rapprocher du champ de température de l’atmosphère en simulant l’advectiond’un scalaire pseudo-actif pour finalement constater que le domaine de validité du principe MEP s’entrouvait réduit seulement à un régime où l’advection domine, et non la diffusion comme on pouvait s’yattendre puisque l’on sait que l’atmosphère transporte l’énergie par diffusion turbulente.Encore plus étonnant, si l’on évalue la valeur de notre indice dans le cas de la figure 2 (carte de ladifférence de température de surface entre le modèle MEP et un modèle de circulation générale) il vaut3%. Dans nos simulations, il n’existait que très peu de couples J/Pe qui donnaient un indice inférieurà 5%. Il se trouve que pour le climat, "naturellement" le principe MEP donne de bons résultats. Nousavons simulé le scalaire pseudo-actif, en espérant donc obtenir un domaine de validité plus vaste qu’avecles autres fonctions de courant, mais il n’en fut pas ainsi. Il faudrait relancer cette étude pour le casactif "pure" et envisager la non linéarité du champ de température mais nous n’en avons pas eu letemps.

17

Page 20: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

Pseudo-Advection d’un scalaire passif et production d’entropie Jonathan BERTOLACCINI

Références

[1] G.Paltrige : Global dynamics and climate - a system of minimum entropy exchange,Quarterly Journal of the Royal Meteorological Society, 101 (1975) 475-484

[2] R.Lorenz : Titan, Mars and Earth : Entropy Production by Latitudinal Heat TransportGeophysical Research Letters 28 (2001) 415-418

[3] R.Dewar : Techniques and Applications of Path Integration,J. Phys. A : Math. Gen. 38 (2005) L371–L381

[4] C.Herbert : Present and Last Glacial Maximum climates as states of maximum entropy productionQuarterly Journal of the Royal Meteorological Society 137 :1059-1069, 2011

[5] R.Dewar : Information theory explanation of the fluctuation theorem, maximum entropy productionand self-organized criticality in non-equilibrium stationary states,J. Phys. A : Math. Gen. 36 (2003) 631–641

[6] S.Bruers : A discussion on maximum entropy production and information theory,J. Phys. A : Math. Theor. 40 (2007) 7441–7450

[7] G.Grinstein et R Linsker : Comments on a derivation and application of the ‘maximum entropyproduction’ principle,J. Phys. A : Math. Theor. 40 (2007) 9717–9720

[8] Jeffrey B. Weiss : Transport and mixing in traveling waves,Phys. Fluids A 3 (1991) 1379-1384.

7 ANNEXE

[je pense mettre ici tous les codes de mon programme.]

18

Page 21: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

comp_launch.m >> permet de lancer l’étude via une boucle sur le fichier comparaisonfun.m avec le critère de stationnarité de la production d'entropie.

- les coeff des fonctions psi, (ligne 8)- la diffusion, (ligne 26)- contient l'expression du forçage (ligne 35,36)- le temps d'intégration max (ligne 32)- nb de variables de la discrétisation (ligne 12,13)- affichage des graphiques et vidéos (ligne 20)(ils sont tous enregistrés automatiquement, s'ils sont affichés, dans le dossier matlab/graphs)

comparaisonfun.m>> lance tous les sous programmes nécessaires

- advectionfun.m- MEP.m- discrétisation_forcage.m- découpe.m- construction de l'indice (ligne 54)- enregistrement des données dans .txt. (ligne161)...

advectionfun.m >> résout l'eq d'advection, trace quasiment tous les graphiques où MEP n'intervient pas.

- condition initiale (ligne 33)- contient notamment les expressions des fonctions courants (ligne 46)(pour passer du mode dipôle au mode actif il faut faut mettre des commentaires sur l'une des deux expressions, je n'ai pas eu le temps de programmer 4 coefficients)- contient aussi le critère de stationnarité sur la production d'entropie (ligne 488 )

MEPconfun.m >> expression de la contrainte pour MEP

MEP.m>> lance l'optimisation sous contrainte

- options possibles

dataPJindice.m>> permet de tracer le domaine de validité de MEP, diagramme J/Pe avec la valeur de l'indice.

- Il va chercher les données inscrites par comparaisonfun.m dans un data_..._.txt- attention ligne 8 il faut bien entrer la longueur de la liste data_....txt , -1.- il faut jouer sur les valeurs de Jmin,Jmax,Pmin,Pmax pour choisir le bon cadrage du domaine.

Les autres fonctions (non présentées ici) servent à fermer les fenêtres et enregistrer les graphiques ou vidéos automatiquement.

Page 22: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

comp_launch.m%.. comparaison Advection et MEPclearcab; time_min=0; %Coeff de mélange des courants (1:Dipole ou actif (a changer dans advection), 2:Tradi, 3:weiss)c1='100';c2='0';c3='0'; %bon coeff c1(dipole)=130,c1(actif)=3, c2=300, c3=30,sigma_S_B=num2str(5.67*10^(-8).*288^3);mult='.*';plus='+';a00='100'; %100%Resolution Tmepnb_var_long=10; %sur ynb_var_larg=10; %Sur x %1:psi_grid,2:psi_pet,3:pechlet,4:anim,5:Teqdiff_final,6:test advection nulle,7:obligatoire,%8:histo test advection nulle,9:evolution temporelle de Teqdiff,10:Tmep HD,11:Tmep basique,%12:comparaison Teqdiff et Tmep,13:comparaison des productions d'entropie,%14:production entropie seulegraph=[0 0 0 0 0 0 7 1 0 0 0 0 1 0];%1=ok graph 0=no graph a0=420;a0str=num2str(a0);for kk=0:0 kappa=num2str(kk.*1.5+46); %ici on change kappa for jj=0:0 augm_time=1; compteurwhile=0; time_max=2;%temps max du premier essai facteur_global_F=jj.*30+49; %ici on change le coeff global devant le forcage Fconstant=char([num2str(facteur_global_F) mult '(' a00 plus a0str mult 'cos(pi.*y./2)' ')']); Fx=[num2str(facteur_global_F) mult '(' '-1' mult sigma_S_B ')']; facteur_global_F_str=num2str(facteur_global_F); while augm_time==1 compteurwhile=compteurwhile+1; if compteurwhile<4 %[Pechlet,J,resolution,indAdvec0,indStatioTemp,Teqdiff_decoup,prod_entrop_diff,xmin_decoup,xmax_decoup]=advectionfun(time_min,time_max,kappa,facteur_global_F_str,c1,c2,c3,Fconstant,Fx,graph); [compteuralpha,alphaaa,J,Jok,kkpsi,normpsi,augm_time,indice,indice_deluxe,statio_temp,xmax_decoup,Tmep,Teqdiff_decoup,prod_entrop_diff,sigma_mep,F_const_discret,F_constant_grid_decoup,F_x_grid_decoup,F_total_decoup,variation_sigma]=comparaisonfun(a0,time_min,time_max,kappa,facteur_global_F,c1,c2,c3,Fconstant,Fx,nb_var_larg,nb_var_long,graph); time_max=time_max+2*time_max*augm_time; cab else augm_time=0

Page 23: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

cab end cab end endend

comparaisonfun.m%.. comparaison Advection et MEP function [compteuralpha,alphaaa,J,Jok,kkpsi,normpsi,augm_time,indice,indEcartTemp,indStatioTemp,xmax_decoup,Tmep,Teqdiff_decoup,prod_entrop_diff,sigma_mep,F_const_discret,F_constant_grid_decoup,F_x_grid_decoup,F_total_decoup,variation_sigma]=comparaisonfun(a0,time_min,time_max,kappa,facteur_global_F,c1,c2,c3,Fconstant,Fx,nb_var_long,nb_var_larg,graph)Wgraph=450;Hgraph=350;facteur_global_F_str=num2str(facteur_global_F);%Resolution equation advection diffusion[compteuralpha,alphaaa,kkpsi,normpsi,Psi_decoup,Pechlet,J,resolution,indAdvec0,indStatioTemp,Teqdiff_decoup,Teqdiff_grid_decoup_t,prod_entrop_diff,xmin_decoup,xmax_decoup]=advectionfun(a0,time_min,time_max,kappa,facteur_global_F_str,c1,c2,c3,Fconstant,Fx,graph); switch indStatioTemp case 1 %si oui stationnaire tempo%Decoupe bande de Teqdiff pour comparaison[~,larg_decoup]=size(Teqdiff_decoup); %Discretisation du forcage[F_const_discret,F_x_discret,F_constant_grid,F_x_grid,mesh_x_mep,mesh_y_mep]=discretisation_forcage(nb_var_larg,nb_var_long,Fconstant,Fx); [F_constant_grid_decoup]=chang_grid(F_constant_grid,mesh_x_mep,mesh_y_mep,xmin_decoup,xmax_decoup,larg_decoup,resolution);[F_x_grid_decoup]=chang_grid(F_x_grid,mesh_x_mep,mesh_y_mep,xmin_decoup,xmax_decoup,larg_decoup,resolution);F_total_decoup=sum(sum(F_constant_grid_decoup + F_x_grid_decoup.*Teqdiff_decoup));%Normalisation du forcageF_total_decoup=F_total_decoup./(resolution.*larg_decoup); %%%%%calcul Jnormpsi_decoup=(1./(resolution^2)).*sum(sum(Psi_decoup.*Psi_decoup));Teqdiff_decoup_moy_space_time=mean(mean(mean(Teqdiff_grid_decoup_t)));Teqdiff_decoup_moy_s_t0=mean(mean(Teqdiff_grid_decoup_t(:,:,1)));F_constant_grid_decoup_moy=mean(mean(F_constant_grid_decoup));F_x_grid_decoup_moy=mean(mean(F_x_grid_decoup)); Jok=4.*(F_constant_grid_decoup_moy - F_x_grid_decoup_moy.*Teqdiff_decoup_moy_space_time)./(normpsi_decoup.*Teqdiff_decoup_moy_s_t0);Pechletok=normpsi_decoup/eval(kappa); %attention prod_entrop_diff est fonction du temps%on fait la somme des 2, car d/dt(T)=prod_entrop + F

Page 24: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

%indice_statio2=abs(mean(prod_entrop_diff)+ F_total_decoup)./(mean(prod_entrop_diff));%indice_statio2=abs(prod_entrop_diff(1,1,end)+ F_total_decoup)./abs(prod_entrop_diff(1,1,end)); %if indAdvec0==0% indice=0;% indEcartTemp=0;% Tmep=0;% variation_sigma=0;% sigma_mep=0;%end %switch indStatioTemp % case 0 %statio en temps%switch indAdvec0 % case 1 %1=stationnaire, advection nulle %Resolution MEP[Tmep,sigma_mep]=MEP(nb_var_larg,nb_var_long,resolution,F_const_discret,F_x_discret,graph,xmin_decoup,xmax_decoup,larg_decoup); %Comparaison des Teqdiff et Tmepindice=mean(mean((Teqdiff_decoup-Tmep).^2))./(mean(mean(Teqdiff_decoup.^2))); indice_alpha=zeros(resolution,larg_decoup);for kk=1:resolution for pp=1:larg_decoup if Teqdiff_decoup(kk,pp)~=0 indice_alpha(kk,pp)=((Teqdiff_decoup(kk,pp)-Tmep(kk,pp)).^2)./(Teqdiff_decoup(kk,pp).^2); end endendindEcartTemp=mean(mean(indice_alpha)); %Comparaison Teqdiff et Tmep switch graph(12) case 1[Xlistq,Ylistq] = meshgrid(linspace(xmin_decoup,xmax_decoup,larg_decoup),linspace(-1,1,resolution));figure(12);m=64;colormap([bone(m);jet(m)]);h(1)=surf(Xlistq,Ylistq,Tmep);hold on;h(2)=surf(Xlistq,Ylistq,Teqdiff_decoup);hold offCol1=min(m,round((m-1)*(Tmep-min(Tmep(:)))/(max(Tmep(:))-min(Tmep(:))))+1); Col2=Col1+m;set(h(1),'CData',Col1,'EdgeAlpha',0.5);set(h(2),'CData',Col2,'EdgeAlpha',0.5);legend(h,'Tmep','Teqdiff');title12=title({'Comparaison ';'de Teqdiff et de Tmep';});set(title12, 'FontSize', 13, 'FontWeight','bold','FontName', 'Courier');xlabel('x');ylabel('y');zlabel('T en K');

Page 25: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

xlab = get(gca, 'xlabel'); ylab = get(gca, 'ylabel'); zlab = get(gca, 'zlabel');set(xlab,'FontSize',16,'FontWeight','bold')set(ylab,'FontSize',16,'FontWeight','bold')set(zlab,'FontSize',16,'FontWeight','bold')set(gca,'FontSize',16,'FontWeight','bold') saveas(gcf, ['graphics/comp_TmepTeqdiff_L_' kappa '_' facteur_global_F_str '.png']); end %Comparaison des productions d'entropie switch graph(13) case 1 hmax_1=max(abs(prod_entrop_diff(1,1,30:end))); hmin=min(prod_entrop_diff(1,1,30:end));hmax_mep=abs(sigma_mep);if hmax_1<hmax_mep ymaxx=hmax_mep; ymin=hmin;else ymaxx=hmax_1; ymin=hmax_mep;end fig13=figure('Name','13','Position',[2*Wgraph 5 1.6.*Wgraph 1.6.*Hgraph]);plot13=plot(linspace(time_min,time_max,resolution),-1.*prod_entrop_diff(:,:),'-');hold on;plot14=plot(linspace(time_min,time_max,resolution),-1.*sigma_mep.*ones(1,resolution),'-');%-1.*Tmep car fmincontitle13=title({'Production d entropie'; ['J=' num2str(Jok) '-' 'P=' num2str(ceil(Pechletok)) '-' 'Ind=' num2str(roundn(indEcartTemp,-3))]});set(title13, 'FontSize', 13, 'FontWeight','bold','FontName', 'Courier');xlabel('temps');ylabel('Sigma');set(plot13,'Marker','o','MarkerEdgeColor','red','LineWidth',1);set(plot14,'Color','black','LineWidth',2);axis([time_min time_max ymin.*0.7 ymaxx.*1.1]) xlab = get(gca, 'xlabel'); ylab = get(gca, 'ylabel');set(xlab,'FontSize',16,'FontWeight','bold')set(ylab,'FontSize',16,'FontWeight','bold')set(gca,'FontSize',16,'FontWeight','bold')saveas(gcf, ['graphics/comp_sigma_L_' kappa '_' facteur_global_F_str '.png']); end %test croissance decroissance sigma (mauvais test)%il indique si l'une est au dessous/dessus de l'autre.%il aurait fallu faire la dérivée numérique%test dessus dessousup_down=zeros(1,resolution);up_down=(-1.*sigma_mep.*ones(1,resolution))-(-1.*prod_entrop_diff(:,:));%up_down<0 <=> sigma_diff>sigma_mepfor kk=1:resolution if up_down(1,kk)<0 up_down(1,kk)=-1;

Page 26: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

else up_down(1,kk)=+1;endendif sum(up_down)<0 variation_sigma=-1;%decroissance globale de sigma, au dessus de MEPelse variation_sigma=+1;%croissance globale de sigma, en dessous de MEPend %************************** SAUVEGARDE PARAMETRES **************************fid = fopen('data_psi_actif_comp_J_P_varsigma_indAdvec_indstatio_indTemp.txt', 'a');fprintf(fid, '%2.4f %3.3f %3.5f %4.1f %2.0f %1.0f %1.0f %2.8f \n'... ,eval(kappa),facteur_global_F,Jok,Pechletok,variation_sigma,indAdvec0,indStatioTemp,indEcartTemp);fclose(fid);%************************** ********************* **************************%end%endaugm_time=0; case 0 %indiceStatiotemp (non stationnaire) augm_time=1;indice=0;indEcartTemp=0;Tmep=0;variation_sigma=0;sigma_mep=0; F_const_discret=0;F_x_discret=0;F_constant_grid=0;F_x_grid=0;mesh_x_mep=0;mesh_y_mep=0;F_x_grid_decoup=0; xmax_decoup=0;Teqdiff_decoup=0;F_constant_grid_decoup=0;F_total_decoup=0; J=0;Jok=0;compteuralpha=0;end return end

advectionfun.mfunction [compteur,alphaaa,kkpsi,normpsi,Psi_decoup,Pechlet_moy,J,nb_images,statio_binaire,statio_temp,Teqdiff_grid_decoup_f,Teqdiff_grid_decoup,prod_entrop_diff_integrale,xmin_decoup,xmax_decoup]=advectionfun(a0,time_min,time_max,kappa,facteur_global_F_str,c1,c2,c3,F_const,F_lineaire_theta,graph) %************************** Paramètres **************************screensize = [1 1 1440 878];Wgraph=450;Hgraph=350;mult='.*'; %********** Echelles de tempsnb_images=65;%nb_images=resolution pour tous les autres programmes.tlist=linspace(time_min,time_max,nb_images);

Page 27: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

step_time=(time_max-time_min)./nb_images; %%********** Position initiale de la tachex_init=0.5;y_init=0.3; %************************** Geometrie **************************geo1='squareg';Tbord=100; %condition au BORDgeo2=[1 1 1 1 1 3 '0' '0' '1' num2str(Tbord)]';geo2 = repmat(geo2,1,4);geobound1=geo2; [p,e,t_mesh]=initmesh(geo1,'jiggle','off'); [p,e,t_mesh]=refinemesh(geo1,p,e,t_mesh); [p,e,t_mesh]=refinemesh(geo1,p,e,t_mesh);%Jigglep=jigglemesh(p,e,t_mesh,'opt','mean','iter',inf); %************************** Condition initiale **************************%CercleTinit=300;T0=zeros(size(p,2),1); ix=find(sqrt((p(1,:)-x_init).^2+(p(2,:)-y_init).^2)<0.4); T0(ix)=Tinit*ones(size(ix)); %T0=Tinit.*ones(size(p,2),1); %condition initiale inversée%T0=Tinit.*ones(size(p,2),1); %ix=find(sqrt((p(1,:)-x_init).^2+(p(2,:)-y_init).^2)<0.4); %T0(ix)=zeros(size(ix)); moins='-';plus='+';mult='.*';%************************** courant 0 : MONOPOLE **************************psi1_string='x.*sin(y.*pi/2)';psi1=p(1,:).*sin(p(2,:).*pi/2);%************************** courant 1 : DIPOLE **************************%psi1_string='(1.*cos(1.*x) -1.*cos(1.*y))';%psi1=1.*(cos(1.*p(1,:))-(1/1).*cos(1.*p(2,:))); %psi evaluée sur mesh p,e,t_mesh %************************** courant 2 : TRADITIONNEL ********************psi2_string='1.*cos(1.*x).*cos(1.*y)';psi2=cos(1.*p(1,:)).*cos(1.*p(2,:)); %psi evaluée sur mesh p,e,t_mesh %************************** courant 3 : WEISS ***************************psiW0=['cos(x).*(1 - 1.*sum(sum(KronD((' num2str(time_min) ':' num2str(step_time) ':' num2str(time_max) '),(-20:1:20).*1),1)))'];%psiW0='0';psiW1='(y.^3/3 -y -cos(x))';alpha='0.1';psi3_string=['(' psiW1 plus alpha mult psiW0 ')'];psi3=((1/3).*p(2,:).^3 -p(2,:) -2.*cos(p(1,:)) + str2num(alpha).*cos(p(1,:)).*(1 - 1.*sum(sum(KronD((time_min:step_time:time_max),(-20:1:20).*1),1)))); %psi evaluée sur mesh p,e,t_mesh %************************** fonction de courant TOTALE ******************%gestion des coefficients égaux à zéroif(eval(c1)==0) if(eval(c2)==0)&&(eval(c3)==0)

Page 28: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

psi_string='0'; end if (eval(c2)==0)&&(eval(c3)~=0) psi_string=[c3 mult psi3_string]; end if (eval(c2)~=0)&&(eval(c3)==0) psi_string=[c2 mult psi2_string]; end if (eval(c2)~=0)&&(eval(c3)~=0) psi_string=[c2 mult psi2_string plus c3 mult psi3_string]; endelse if (eval(c2)==0)&&(eval(c3)~=0) psi_string=[c1 mult psi1_string plus c3 mult psi3_string]; end if (eval(c2)==0)&&(eval(c3)==0) psi_string=[c1 mult psi1_string]; end if (eval(c2)~=0)&&(eval(c3)==0) psi_string=[c1 mult psi1_string plus c2 mult psi2_string]; end if (eval(c2)~=0)&&(eval(c3)~=0) psi_string=[c1 mult psi1_string plus c2 mult psi2_string plus c3 mult psi3_string]; end end psi_string=['(' psi_string ')'];psi=eval(c1).*psi1+eval(c2).*psi2+eval(c3).*psi3; %completement évaluée sur p,e,t_mesh %************************** Matrice de diffusion c *********************c=char(kappa,psi_string,[moins psi_string], kappa); %************************** Solution PDE ******************************* Teqdiff=parabolic(T0,tlist,geobound1,p,e,t_mesh,c,['+1' mult F_lineaire_theta],F_const,1); %************************** Interpolation Rectangular Grid ************* % ATTENTION : INTERP sur xx et yy !!!!!xx=linspace(-1,1,nb_images);yy=xx;[~,tn,a2,a3]=tri2grid(p,t_mesh,T0,xx,yy); %~ pour variable non utilisée %**************** PLOT Fonction Courantswitch graph(1) case 1%Plot psi sur maillage traditionnelfigure('Name','1','Position',[1 screensize(3)/2 Wgraph Hgraph]);%ici x et y sont linéairements espacées[x,y] = meshgrid(linspace(-1,1,nb_images));psi_string_eval = eval(psi_string);

Page 29: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

mesh(x,y,psi_string_eval,'EdgeColor','black')title1=title({'Fonction courant ';'sur mesh linéairement espacé '});set(title1, 'FontSize', 13, 'FontWeight','bold','FontName', 'Courier'); xlab = get(gca, 'xlabel'); ylab = get(gca, 'ylabel');set(xlab,'FontSize',16,'FontWeight','bold')set(ylab,'FontSize',16,'FontWeight','bold')set(gca,'FontSize',16,'FontWeight','bold') saveas(gcf, ['graphics/Psi_mesh_L_' kappa '_' facteur_global_F_str '.png']); end %Eval Psi sur Rect Gridpsi_rect_grid=tri2grid(p,t_mesh,psi',tn,a2,a3);pbpsi=find(isnan(psi_rect_grid));psi_rect_grid(pbpsi)=zeros(size(pbpsi)); switch graph(2) case 1%Plot psi_rect_gridfigure('Name','2','Position',[1*Wgraph screensize(3)/2 Wgraph Hgraph]);pcolor(xx,yy,psi_rect_grid);colorbar;title2=title({'Fonction courant';'de mesh p,e,t sur Rectangular Grid'});set(title2, 'FontSize', 13, 'FontWeight','bold','FontName', 'Courier');shading flat xlab = get(gca, 'xlabel'); ylab = get(gca, 'ylabel');set(xlab,'FontSize',16,'FontWeight','bold')set(ylab,'FontSize',16,'FontWeight','bold')set(gca,'FontSize',16,'FontWeight','bold') saveas(gcf, ['graphics/Psi_pcolor_L_' kappa '_' facteur_global_F_str '.png']); end %**************** PLOT Pechletoldnormpsi=sqrt(psi.*psi);normpsi=(1./(nb_images^2)).*sum(sum(psi.*psi));%Pechlet_pet=normpsi/eval(kappa);%Pechlet_rect_grid=tri2grid(p,t_mesh,Pechlet_pet',tn,a2,a3);%Pechlet_moy=ceil(mean(mean(Pechlet_rect_grid)));Pechlet_moy=normpsi/eval(kappa); switch graph(3) case 1figure('Name','Pechlet','Position',[2*Wgraph screensize(3)/2 Wgraph Hgraph])pcolor(xx,yy,Pechlet_rect_grid);colormap(Summer);colorbar;title6=title({['Pechlet moyen = ' num2str(Pechlet_moy)];'de mesh p,e,t sur Rectangular Grid'});set(title6, 'FontSize', 13, 'FontWeight','bold','FontName', 'Courier');shading flat xlab = get(gca, 'xlabel'); ylab = get(gca, 'ylabel');set(xlab,'FontSize',16,'FontWeight','bold')set(ylab,'FontSize',16,'FontWeight','bold')set(gca,'FontSize',16,'FontWeight','bold') saveas(gcf, ['graphics/Pechlet_L_' kappa '_' facteur_global_F_str '.png']);

Page 30: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

%export_fig graphics/Pechlet.png;end %************************** PLOT Solution PDE ************************** %************ ANIMATIONswitch graph(4) case 1PlaySol2(Teqdiff,tlist,p,e,t_mesh,0,Tinit,kappa,facteur_global_F_str,Wgraph,Hgraph)end %************ Instantanné (au temps end)switch graph(5) case 1fig4=figure('Name','4','Position',[5 5 Wgraph Hgraph]);pdeplot(p,e,t_mesh,'xydata',Teqdiff(:,end),'colormap','jet')title4=title({'Champ de Température ';['à l instant t=' num2str(tlist(end))]});set(title4, 'FontSize', 13, 'FontWeight','bold','FontName', 'Courier'); xlab = get(gca, 'xlabel'); ylab = get(gca, 'ylabel');set(xlab,'FontSize',16,'FontWeight','bold')set(ylab,'FontSize',16,'FontWeight','bold')set(gca,'FontSize',16,'FontWeight','bold') saveas(gcf, ['graphics/Teqdiff(end)_L_' kappa '_' facteur_global_F_str '.png']);%export_fig graphics/Teqdiff_end.png;end %************************** Test de stationarite T=F(psi)[nsp,dim_t]=size(Teqdiff); %************Sur mesh p,e,t_meshswitch graph(6) case 1fig5=figure('Name','6','Position',[2*Wgraph 5 Wgraph Hgraph]);plot(psi',Teqdiff(:,end),'b*')title(['time=',num2str(tlist(end))]) xlab = get(gca, 'xlabel'); ylab = get(gca, 'ylabel');set(xlab,'FontSize',16,'FontWeight','bold')set(ylab,'FontSize',16,'FontWeight','bold')set(gca,'FontSize',16,'FontWeight','bold') saveas(gcf, ['graphics/advection_nulle_L_' kappa '_' facteur_global_F_str '.png']);%export_fig graphics/advection_nulle.png;end [size_space_Teqdiff,~]=size(Teqdiff); %sur p,e,t_mesh%On retourne Teqdiff_grid à tous les temps !!!!!!!Teqdiff_grid=zeros(nb_images,nb_images,nb_images);for jj=1:nb_imagesTeqdiff_grid(:,:,jj)=tri2grid(p,t_mesh,Teqdiff(:,jj),tn,a2,a3);endpb=find(isnan(Teqdiff_grid(:,:,1)));Teqdiff_grid(pb)=zeros(size(pb));%pas encore découpé, mais existe à tous les temps. %On retourne Teqdiff au temps final !!!!!!!Teqdiff_rect_grid=tri2grid(p,t_mesh,Teqdiff(:,end),tn,a2,a3);j=find(isnan(Teqdiff_rect_grid));

Page 31: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

Teqdiff_rect_grid(j)=zeros(size(j));Teqdiff_rect_grid; fig7=figure('Name','7','Position',[2*Wgraph 5 Wgraph Hgraph]);plot(psi_rect_grid,Teqdiff_rect_grid,'b*');title7=title({'Test de Stationarité T=f(Psi) ';['time=',num2str(tlist(end))]});set(title7, 'FontSize', 13, 'FontWeight','bold','FontName', 'Courier');xlabel('Psi');ylabel('Teqddif') xlab = get(gca, 'xlabel'); ylab = get(gca, 'ylabel');set(xlab,'FontSize',16,'FontWeight','bold')set(ylab,'FontSize',16,'FontWeight','bold')set(gca,'FontSize',16,'FontWeight','bold') %obtenir données du graphiquehandle_graph6=findobj(gcf,'Marker','*');[mm,nn]=size(handle_graph6); %Initialisation tableauX_list_graph6=zeros(1,mm*mm);Y_list_graph6=zeros(1,mm*mm);X_list_graph6=get(handle_graph6(1,nn), 'XData');Y_list_graph6=get(handle_graph6(1,nn), 'YData'); %Extraction coordonnéesfor j=2:mm X_list_graph6 = [X_list_graph6 get(handle_graph6(j,nn), 'XData')]; Y_list_graph6 = [Y_list_graph6 get(handle_graph6(j,nn), 'YData')];endclose(gcf);%Creation histogrammeLongHist=30;HautHist=30;dat_6=[X_list_graph6' Y_list_graph6'];n_histo_graph6=hist3(dat_6,[LongHist HautHist]); x_lin = linspace(min(dat_6(:,1)),max(dat_6(:,1)),size(n_histo_graph6,1));y_lin = linspace(min(dat_6(:,2)),max(dat_6(:,2)),size(n_histo_graph6,1));n1_histo_graph6 = n_histo_graph6'; n1_histo_graph6( size(n_histo_graph6,1) + 1 ,size(n_histo_graph6,2) + 1 ) = 0; switch graph(8) case 1fig8=figure('Name','8','Position',[1*Wgraph Hgraph Wgraph Hgraph]);pcolor(x_lin,y_lin,n_histo_graph6')colormap(hot(256));title8=title({'Test de Stationarité T=f(Psi) ';['time=',num2str(tlist(end))]});set(title8, 'FontSize', 13, 'FontWeight','bold','FontName', 'Courier');xlabel('Psi');ylabel('Teqddif') xlab = get(gca, 'xlabel'); ylab = get(gca, 'ylabel');set(xlab,'FontSize',16,'FontWeight','bold')set(ylab,'FontSize',16,'FontWeight','bold')set(gca,'FontSize',16,'FontWeight','bold')hbar=colorbar;set(hbar,'fontsize',15,'FontWeight','bold');n1_histo_graph6 = n_histo_graph6'; n1_histo_graph6( size(n_histo_graph6,1) + 1 ,size(n_histo_graph6,2) + 1 ) = 0;

Page 32: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

saveas(gcf, ['graphics/histo_advection_nulle_L_' kappa '_' facteur_global_F_str '.png']);%export_fig graphics/histo_advection_nulle.png;end n1_histo_graph6 = n_histo_graph6'; n1_histo_graph6( size(n_histo_graph6,1) + 1 ,size(n_histo_graph6,2) + 1 ) = 0; %test stationnarité final avec compteur_espacementcompteur_espacement=0;%n1 pour transposer x,yfor i=1:LongHist for j=1:HautHist if (n1_histo_graph6(i,j)>0)&&(n1_histo_graph6(i,j)<6) compteur_espacement=compteur_espacement +1; end endend if compteur_espacement>18statio='non stationnaire';statio_binaire=0;else statio='oui stationnaire'; statio_binaire=1;end %**************** PLOT J %Psi_moy=mean(mean(psi_rect_grid));Teqdiff_moy_s_t0=mean(Teqdiff(:,1)); %On remplace les step-time (0 à 60), par échelle de temps [0 2]Teqdiff_moy_s=mean(Teqdiff);%[pas de temps space]%Teqdiff_moy_s(1:end,:)=linspace(time_min,time_max,nb_images); switch graph(9) case 1fig9=figure('Name','9','Position',[1*Wgraph 5 Wgraph/1.5 Hgraph/1.5]);plot9=plot(linspace(time_min,time_max,nb_images),Teqdiff_moy_s);title9=title({'Evolution temporelle'; 'de Teqdiff moy spatiale';});set(title9, 'FontSize', 13, 'FontWeight','bold','FontName', 'Courier');xlabel('temps');ylabel('Teqddif moy s'); xlab = get(gca, 'xlabel'); ylab = get(gca, 'ylabel');set(xlab,'FontSize',16,'FontWeight','bold')set(ylab,'FontSize',16,'FontWeight','bold')set(gca,'FontSize',16,'FontWeight','bold')set(plot9,'Marker','s','MarkerEdgeColor','red'); saveas(gcf, ['graphics/Evol_Teqdif_moy_space_L_' kappa '_' facteur_global_F_str '.png']);%export_fig graphics/Evol_Teqdif_moy_space.png;end %Test statio temporelle de Teqdiff%statio_ecart=zeros(1,nb_images-1);%compteur_statio_ecart=zeros(1,nb_images-1);%for kk=1:(nb_images-1)

Page 33: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

% statio_ecart(1,kk)=abs(Teqdiff_moy_s(1,kk)-Teqdiff_moy_s(1,kk+1));% if statio_ecart(1,kk)<1% compteur_statio_ecart=0;% else% compteur_statio_ecart=1;% end%end%alphaaa=0;%on somme sur les 10 dernieres valeurs%for kk=(nb_images-11):(nb_images-1)% alphaaa=alphaaa+compteur_statio_ecart;%end Teqdiff_moy_space_time=mean(Teqdiff_moy_s);%evaluer F sur p,e,t_mesh%F_rect_grid=tri2grid(p,t_mesh,F_pet,tn,a2,a3); %Remarque : définie avec un moins car F_lin_theta est définie coté advectif%de l'équation.%ATTENTION ici on écrase les valeurs de x,y obtenues par mesh ligne 125, pour%de nouvelles valeurs de type vecteurx=linspace(-1,1,nb_images);y=x; F_const_moy=mean(eval(F_const));Fx_moy=mean(eval(F_lineaire_theta)); %**************** DECOUPAGE Teqdiff pour COMPARAISONind_centre=round(nb_images./2); %indice dans le tableauind_demi_largeur=round(nb_images./4); % extension à gauche=à droite %indice dans le tableauind_depart=ind_centre-ind_demi_largeur;%indice dans le tableauind_fin=ind_centre+ind_demi_largeur;etendue=linspace(-1,1,nb_images); %on garde le meme espacement que dans advectionfun pour trouver xmax_decoup,xmin_decoupxmin_decoup=etendue(1,ind_depart);%valeurxmax_decoup=etendue(1,ind_depart+2.*ind_demi_largeur);Teqdiff_grid_decoup=zeros(nb_images,2.*ind_demi_largeur,nb_images);Psi_decoup=zeros(nb_images,2.*ind_demi_largeur);Teqdiff_grid_decoup_f=zeros(nb_images,2.*ind_demi_largeur); for qq=1:nb_images Teqdiff_grid_decoup_f(qq,1:2.*ind_demi_largeur)=Teqdiff_rect_grid(qq,(ind_depart):(ind_depart + 2.*ind_demi_largeur -1));end %découpe par ligne qqfor timet=1:nb_images %Psi n'est pas fonction du temps, mais timet est muet et represente les %lignes Psi_decoup(timet,1:2.*ind_demi_largeur)=psi_rect_grid(timet,(ind_depart):(ind_depart + 2.*ind_demi_largeur -1)); for qq=1:nb_images Teqdiff_grid_decoup(qq,1:2.*ind_demi_largeur,timet)=Teqdiff_grid(qq,(ind_depart):(ind_depart + 2.*ind_demi_largeur -1),timet); end

Page 34: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

end kkpsi=(1./(nb_images.*2.*ind_demi_largeur)).*sum(sum(Psi_decoup.*Psi_decoup));[~,largeur_decoup,~]=size(Teqdiff_grid_decoup); %%%%%%%%%% CALCUL De J%%%%%%%%%%%normpsi_decoup=(1./(nb_images^2)).*sum(sum(Psi_decoup.*Psi_decoup));Teqdiff_decoup_moy_space_time=mean(mean(mean(Teqdiff_grid_decoup)));Teqdiff_decoup_moy_s_t0=mean(mean(Teqdiff_grid_decoup(:,:,1))); J=(F_const_moy - Fx_moy.*Teqdiff_moy_space_time)./(normpsi.*Teqdiff_moy_s_t0); %%%%%%%%%%%EVALUATION de la Production d'entropiehx=abs(-1-1)./nb_images; %pas (sur tout le grid) de l'évaluation des gradients.hy=hx; %car le pas est le meme, apres découplaplacien=zeros(nb_images,largeur_decoup,nb_images);T_x=zeros(nb_images,largeur_decoup,nb_images);T_y=zeros(nb_images,largeur_decoup,nb_images);for time=1:nb_images laplacien(:,:,time)=4.*del2(Teqdiff_grid_decoup(:,:,time),hx,hy); [T_x(:,:,time),T_y(:,:,time)]=gradient(Teqdiff_grid_decoup(:,:,time),hx,hy);end%pas de boucle temps sur psi[psi_x,psi_y]=gradient(Psi_decoup,hx,hy);%calcul production entropie (temps)prod_entrop_diff=zeros(nb_images,largeur_decoup,nb_images); for time=1:nb_images for aa=1:nb_images for bb=1:largeur_decoup if Teqdiff_grid_decoup(aa,bb,time)~=0 prod_entrop_diff(aa,bb,time)=(eval(kappa).*laplacien(aa,bb,time) - psi_y(aa,bb).*T_x(aa,bb,time)+psi_x(aa,bb).*T_y(aa,bb,time))./Teqdiff_grid_decoup(aa,bb,time); end end endend prod_entrop_diff_integrale=sum(sum(prod_entrop_diff));%on la normaliseprod_entrop_diff_integrale=prod_entrop_diff_integrale./(nb_images.*largeur_decoup); time_vector=linspace(time_min,time_max,nb_images); switch graph(14) case 1hmax=max(abs(prod_entrop_diff_integrale(1,1,30:end)));%hmin=min(abs(prod_entrop_diff_integrale(1,1,30:end))).*1.5;fig14=figure('Name','14','Position',[2*Wgraph 5 1.6.*Wgraph 1.6.*Hgraph]);plot14=plot(time_vector,-1.*prod_entrop_diff_integrale(:,:),'-');title14=title({'Production d entropie'; 'en fonction du temps';});set(title14, 'FontSize', 13, 'FontWeight','bold','FontName', 'Courier');xlabel('temps');ylabel('Sigma');set(plot14,'Marker','o','MarkerEdgeColor','red','LineWidth',1);axis([time_min time_max hmax-0.1.*hmax hmax.*1.1]) xlab = get(gca, 'xlabel'); ylab = get(gca, 'ylabel');

Page 35: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

set(xlab,'FontSize',16,'FontWeight','bold')set(ylab,'FontSize',16,'FontWeight','bold')set(gca,'FontSize',16,'FontWeight','bold') saveas(gcf, ['graphics/sigma_temps_' kappa '_' facteur_global_F_str '.png']);end %TEST Statio sur Sigma%a modifier pour éviter les paliers comme dans le cas du dipole kappa=0.01%et f=1.9%epsilon_psi1=0.8%epsilon_dipole=0.05epsilon=0.07;compteur=0; [~,length]=size(time_vector); alphaaa=zeros(1,length-1); compteur=zeros(1,length-1); for kk=1:length-1 alphaaa(kk)=abs(prod_entrop_diff_integrale(:,:,kk+1)-prod_entrop_diff_integrale(:,:,kk))/((time_vector(kk+1)-time_vector(kk))); if alphaaa(kk)<epsilon compteur(kk)=1; else compteur(kk)=0; end endif sum(compteur)>20 % nombre de valeurs en dessous de la tolérance statio_temp=1;%oui statioelse statio_temp=0;%non statioend returnend

MEPconfun.m function [c, ceq] = MEPconfun(x,F_const_discret,F_x_discret) %Forcage en T4 linéariséF=F_const_discret + F_x_discret.*x; % Nonlinear inequality constraintsc = [];% Nonlinear equality constraintsceq = sum(F);

MEP.m % m.e.p avec grand nb variables et bon choix de forcagefunction [Tmep,sigma_mep]=MEP(nb_var_larg,nb_var_long,resolution,F_const_discret,F_x_discret,graph,xmin_decoup,xmax_decoup,larg_decoup) %n: nb totales de variables n=nb_var_larg.*nb_var_long;x0 = 100.*abs(randn(1,n)); borne_max=8000; %x0 = randn(1,nb_var_longueur.*nb_var_longueur);

Page 36: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

options = optimset('Algorithm','interior-point','LargeScale','off','MaxIter',10000,'MaxFunEvals',1e+7, 'TolCon',1.*10^(-15),'TolX',1.*10^(-20),'TolFun',1e-20);% 'Display', 'Iter' [xsol,sigma_mep,exitflag,output,lambda] = ... fmincon(@(x)MEPobjfun(x,F_const_discret,F_x_discret),x0,[],[],[],[],zeros(1,n),borne_max.*ones(1,n),@(x)MEPconfun(x,F_const_discret,F_x_discret),options); exitflag;output, T_reconst=zeros(nb_var_larg,nb_var_long);T_reconst(1,:)=xsol(1,1:nb_var_larg); %remplissage de T_reconst à aprtir de la solution xfor p=1:nb_var_long T_reconst(p,:)=xsol(1,((p-1).*nb_var_larg+1):(p.*nb_var_larg));end %pour representation graphique de T_MEP%switch graph% case 'yes'%figure(2);%xlist=linspace(-0.5,0.5,nb_var_larg);ylist=linspace(-1,1,nb_var_long);%[Xlist,Ylist]=meshgrid(xlist,ylist);%pcolor(Xlist,Ylist,T_reconst);colorbar;%colormap(jet(128))%shading flat%shading faceted%shading interp%title2=title({'T MEP';''});%set(title2, 'FontSize', 13, 'FontWeight','bold','FontName', 'Courier');%end %Interpolation de Grid [Xlist,Ylist]=meshgrid(linspace(xmin_decoup,xmax_decoup,nb_var_larg),linspace(-1,1,nb_var_long));%mettre ici (dans linspace) la resolution de Teqqdiff[Xlistq,Ylistq] = meshgrid(linspace(xmin_decoup,xmax_decoup,larg_decoup),linspace(-1,1,resolution));Tmep = interp2(Xlist,Ylist,T_reconst,Xlistq,Ylistq,'cubic');switch graph(10) case 1figure(10);surf(Xlistq,Ylistq,Tmep);end switch graph(11) case 1figure(11);surf(Xlist,Ylist,T_reconst);end return end

Page 37: Advection d’un scalaire passif production d’entropie · Master Science de la matière Stage ... La Terre reçoit de l’énergie sous forme d’un ... correction grossière pour

dataPJindice.mfunction [Ind_interp,J_interp,P_interp,J,P,Ind]=dataPJindice(graphPJindice)%graphPJindice='yes' pour appeler cette fonction screensize = get(0,'ScreenSize');Wgraph=450;Hgraph=350; %rappatrier donnéeslmax=1052; % c'est ici qu'on entre la longueur-1 de la liste à parcourirM = importdata('data_psi_actif_comp_J_P_varsigma_indAdvec_indstatio_indTemp.txt', ' ', 1);J=M.data(1:lmax, 3);P=M.data(1:lmax, 4);Ind=M.data(1:lmax, 8); [sizeP,~]=size(P);[sizeJ,~]=size(J); %interpolant F= TriScatteredInterp(J,P,Ind);minreelJ=min(J);Jmin=0.7;Jminstr=num2str(Jmin);%0.005Jmax=200;Jmaxstr=num2str(Jmax);%0.15Pmin=min(P);Pminstr=num2str(Pmin);%2Pmax=10;Pmaxstr=num2str(Pmax);%2000%[J_interp,P_interp]=meshgrid(linspace(min(J), max(J),50),linspace(min(P), max(P),140));[J_interp,P_interp]=meshgrid(linspace(Jmin, Jmax,100),linspace(Pmin,Pmax,100)); Ind_interp=F(J_interp,P_interp);switch graphPJindice case 'yes'figJP=figure('Name','Ecart température' ,'Position',[1*Wgraph 8 1.5*Wgraph 1.5*Hgraph]);hh=pcolor(J_interp,P_interp,Ind_interp);title2=title({'Ecart relatif';'entre Tmep et Teqdiff pour Psi Actif'});set(title2, 'FontSize', 16, 'FontWeight','bold','FontName', 'Arial');xlabel('J','fontsize', 13, 'fontweight','b');ylabel('Pe','fontsize', 13, 'fontweight','b');axis([Jmin Jmax Pmin Pmax]); xlab = get(gca, 'xlabel'); ylab = get(gca, 'ylabel');set(xlab,'FontSize',16,'FontWeight','bold')set(ylab,'FontSize',16,'FontWeight','bold')set(gca,'FontSize',16,'FontWeight','bold') colormap(Hot(20))hbar=colorbar('YTick',[0:0.1:0.9]);set(hbar,'fontsize',15,'FontWeight','bold'); shading interp;set(hh,'edgecolor','k','EdgeAlpha',0.3) saveas(figJP, ['graphics/domaine_validite_mep' Jminstr '_' Jmaxstr '_' Pminstr '_' Pmaxstr '.png']);end return