source: trunk/LMDZ.MARS/libf/dyn3d/LISEZMOI @ 277

Last change on this file since 277 was 38, checked in by emillour, 14 years ago

Ajout du modè Martien (mon LMDZ.MARS.BETA, du 28/01/2011) dans le rértoire mars, pour pouvoir suivre plus facilement les modifs.
EM

File size: 5.2 KB
Line 
1
2Version abbrégé spécial Mars
3
4 ..  Version  du 28/12/1998  , avec  nouveau fxyhyper appele par inigeom ...
5 **************************************************************************
6
7 1) Le gcm LMDZ.3.2  a des coordonnees  hybrides  verticalement ,c.a.d  des
8          ********
9   coordonnees equivalentes a sigma pres de la surface et a  P plus haut .     
10
11   Les pressions  p(ij,l) aux differents interfaces des  llm  couches verti-
12   cales sont donnees  par   :
13
14    p( ij,l ) = ap(l) + bp(l) * ps(ij)    ,    1 << l << llm + 1    .
15
16           
17   La fonction d'Exner  est calculee aux milieux des llm couches vertic.
18
19     pk(ij,l) = cp * ( p(ij,l)/preff ) ** kappa   ,  1 << l <<  llm
20
21   Les pressions  PLS(ij,l)  definies aux milieux des couches sont egales a :
22
23     pls(ij,l) = preff * ( pk(ij,l) /cp ) ** 1./kappa
24
25   
26
27 2) Une des variables prognostiques de LMDZ.3  est   teta  , temperature
28     potentielle  :   
29
30                 teta (ij,l) = temperature(ij,l) * cp/ pk(ij,l)
31 
32   
33 3) Dans  le programme principal gcm.F , il faut definir , au debut ,les para-
34    metres  IADV ,pour choisir le shema d'advection pour l'eau et les traceurs
35                    IADV = 3    , Van-Leer
36
37 4) Il y a 2 shemas de dissipation   ( diffusion laterale )  :
38
39 a) La dissipation star ( qui ne fait pas intervenir la geometrie de la     
40    grille et qui est utilisee quand il y a un zoom )
41
42    Par expl . la diffusion d'un scalaire  comme  teta est formulee ( en
43     appelant l'operateur  DIVGRAD2 )   comme :
44
45    d( ro * teta ) = (-1)**(it-1) *cdiv * Lap * ro**1/2 * Lap_gam** (it-2 ) *
46                           ro**1/2 * Lap * teta
47 avec  :
48 Lap     = 1/aire * Filt[ dx ( coefx*dx ) + dy( coefy*dy ) ] Filt
49       
50 Lap_gam = (1./aire)** -gam { dx[ coefx**(-gam) dx] + dy[ coefy**(-gam) dy ] }
51
52
53  Filt est l'operateur  filtre
54  ro   est la densite dp  de chaque couche
55  it   = nombre d'iterations de l'operateur de dissipation ( ici divgrad2 )
56  gam  = coefdis /( it -2 ) , coefdis = 0. si it = 2 , sinon = 1. habituellem.
57  dx   = operateur difference finie :
58    dx(A) = A( X +1/2 , Y, z ) - A( X -1/2, Y, z ) , dans le systeme de
59  travail  (X,Y) , avec l'increment DX = 1.
60
61  Idem pour dy .
62
63  coefx = beta(ij) / alpha(ij)  , coefy = alpha(ij)/beta(ij)
64     avec    u_covariant(ij) = alpha(ij)* u_nat(ij)
65             v_covariant(ij) = beta(ij) * v_nat(ij)
66
67 Cette dissipation star est choisie en mettant le parametre lstardis a .TRUE.
68  dans le fichier run.def  lu  par le gcm en entree .
69
70 b) La dissipation ' non star '  fait intervenir les operateurs elementaires
71   diverg,grad,rotat .   Elle est choisie  avec lstardis = .FALSE.
72
73N.B : Dans les 2 shemas de dissipation , le gcm est plus stable  quand on
74     n'itere pas l'operateur ' GRADIV ' ou ' GRADIV2 " .           
75     
76 5) Les constantes thermodynamiques Cp et kappa = R/Cp   utilisees dans la
77   partie dynamique ont ete mises , ce qui est normal, aux memes valeurs
78   qu'elles ont dans la partie ' physique ' , en changeant INICONST et en
79   les mettant dans l'entete de controle de start et startphy ,en changeant
80   etat0_lmd , par rapport  a LMDZ.2.2
81       
82 6) Pour finir , quelques commentaires sur les parametres qui figurent sur
83    le fichier  run.def qui commandent le gcm .
84
85
86 c) coefdis , coefficient qui intervient dans le calcul de gam  , utilise
87   dans les routines de dissipation star , vus plus haut .
88
89 d) iphysiq correspond ici a un appel de la physique toutes les 30 minutes.
90
91 e) alphax et alphay correspondent au grossissement pour le zoom dans la
92   direction X et Y .
93   En fait , les facteurs de grossissement sont egaux a  1./ ( 1.- alphax )
94     et 1./( 1.- alphay )  .
95
96 f) fxyhypb  est egal a .TRUE. si on choisit  pour la fonction f(x,y) qui
97   definit la grille du modele  une fonction a tangente hyperbolique , un peu
98   adaptee pour le zoom , que la fonction sinusoidale , definie par fxy_new.h
99   dans /..../gcm/libf/grid  et lu par  makegcm  lors de la compilation du
100   code .
101
102
103N.B: Pour l'instant , cette fonction hyperbolique n'est activee eventuellement
104****            que pour  un zoom  latitudinal .
105   Pour un zoom longitudinal , la fonction sinusoidale precisee dans fxy_new.h
106       est  choisie automatiquement .
107
108 g) psi0 et delta sont des parametres  pour cette fonction hyberbolique .
109   Ces valeurs de 0.3 et 0.5  ont ete adaptees pour 96x72  .
110 
111
112
113
114 ****************************************************************************
115
116 
117 AA) Choisir les options du run  , avec   le fichier  run.def   .
118
119     Il y a entre autres choses , le nombre de jours qu'on veut integrer lors
120       d'un run .
121     Il y a le nombre de pas a faire pour 1 jour , ce qui calcule donc le dt
122       temporel ( en secondes ) pour un pas dynamique .
123     Iperiod  est conseille  d'etre a 5 pas ( mais non obligatoiremnet = 5 ) .
124     Idissip  peut etre mis a n'importe quelle valeur . Il est maintenant
125
126     Les parametres( la plupart des cles ) pour la physique commencent avec
127      la var. logique         **  physic  **
128
129           entiere( en pas )  ** iphysiq  ** qui est calculee de telle facon a
130                              appeler la physique tous les  30 minutes .
131
132           ( en jours )       ** ecritphy ** qui indique la frequence en jours
133                                du stockage   sur  diagfi
134
135
136
Note: See TracBrowser for help on using the repository browser.