source: trunk/chantiers/commit_importants.log @ 23

Last change on this file since 23 was 23, checked in by aslmd, 14 years ago

spiga:mineur ajout sources tar.gz

File size: 10.8 KB
Line 
1**** commit_v5 ****
2
3** ADAPTATION GCM POUR CP(T)
4**--------------------------
5
6* Ajout d'un fichier cpdet.F contenant toutes les routines nécessaires à
7  l'utilisation de Cp(T)
8  -> routines ini_cpdet, t2tpot, tpot2t
9  -> fonction cpdet(t)
10
11* Du coup, suppression de tous les cpdet.* de phytitan et phyvenus
12
13* Modif de gcm.F : initialisation ini_cpdet ajoutée
14
15* Modif de comconst.h : ajout de nu_venus et t0_venus
16
17* Modif de caldyn0.F :
18    - dimensions de pk (ip1jmp1 à la place de iip1,jjp1)
19    - ajout de temp et tsurpk
20    - calcul de temp (tpot2t) et tsurpk
21    - passage de tsurpk à la place de teta dans sortvarc0
22   
23* Modif de caldyn.F :
24    - passage de tsurpk en argument
25    - dimensions de pk (ip1jmp1 à la place de iip1,jjp1)
26    - ajout de temp
27    - passage de tsurpk à la place de teta dans dudv2
28    - passage de tsurpk à la place de teta dans sortvarc
29
30* Modif de calfis.F :
31    - ajout de zteta et zpk
32    - calculs de zteta et zpk
33    - calcul de ztfi via tpot2t
34    - mise en commentaires de pcvgu/v/t/q car ne servent pas...
35    - (ajout commentaire sur traceurs intensifs)
36    - modification du calcul de pdhfi
37
38* Modif de diagedyn.F :
39  (même si c'est une routine pure Terre, pour l'instant)
40    - calcul de la temperature
41    - remplacement de RCPD par cpdet(T)
42
43* Modif de leapfrog.F :
44    - ajout de temp et tsurpk
45    - calcul de temp (tpot2t) et tsurpk (3 endroits)
46    - passage de tsurpk à la place de teta dans geopot (3 endroits)
47    - passage de tsurpk en argument de caldyn
48    - calcul de dtetaecdt
49
50* Modif de vlspltqs.F
51    - modif taille de tempe
52    - calcul de tempe (via tpot2t)
53
54
55** APPEL DE LA PHYSIQUE
56**----------------------
57
58* Modif de calfis.F :
59    - on appelle physiq comme pour Venus et Titan quand on n'a pas la
60      clé CPP_EARTH
61    - j'ai enlevé le mot clé planet_type, ça fait double emploi, non ?
62    - j'ai laissé nqtot dans les arguments d'appel à physiq... A reverifier.
63
64**** commit_v6 ****
65
66* Modif de defrun.F : commentaire indiquant qu'il ne sert plus donc pas a jour !
67
68* Modif de dynredem.F : correction faute orthographe dans commentaire
69
70** IOIPSL, real8 vs real4
71**-----------------------
72
73J'élimine ce truc bancal. Il faudra compiler IOIPSL en double précision.
74Du coup, pas de modifs spécifiques dans dyn3d. Par contre, il faudra éliminer
75ça dans les physiques !
76
77
78** Nombre de traceurs
79**-------------------
80
81* Modif de infotrac.F90 :
82    - definition de type_trac
83    - definition de nqtrue depend de planet_type
84    - lecture de traceur.def depend de planet_type
85
86* Modif de addfi.F :
87    - separation des traceurs 1 et 2 pour qtestt/qtestw valable seulement
88      pour planet_type=earth
89
90* Modif de caladvtrac.F :
91    - deplacement du test sur planet_type pour virer tout ce qui concerne
92      dq quand on n'est pas sur Terre
93
94* Modif de calfis.F :
95    - ajout d'une remarque concernant pdq...
96
97
98** Avec ou sans advection de traceurs
99**-----------------------------------
100
101Reglé grace à iadv lu dans traceur.def: si 0, pas advecté.
102Sans traceurs, on a donc un seul traceur dummy, non advecté, mais
103écrit dans start.nc et trimbalé partout...
104
105
106** Homogeneisation des .def
107**-------------------------
108
109* Modif des deftanks/[titan/venus]/[gcm/physiq/run].def :
110    - ajout planet_type
111    - passage des cles physiques vers physiq.def
112    - homogeneisation des parametres
113
114* Modif de conf_gcm.F :
115    - ok_strato mis à true par defaut
116
117* Modif de clesph0.h :
118    - ajout d'un commentaire: il faut virer ce fichier, ne sert plus a rien.
119
120
121** Homogeneisation de bilan_dyn
122**-----------------------------
123
124* Modif de leapfrog.def :
125    - premier appel: il y a first, deplacement de first=.false., elimination prem
126    - ajout d'initialisations
127    - ajout des tendances de la couche superieure (d*top)
128    - elimination itau_w (ne sert pas)
129    - couche superieure: ajout addfi séparé
130    - passage des d*dis en */s
131    - appel bilan_dyn
132
133* Modif de bilan_dyn.def :
134    - modification appel (pour sortie des tendances en moment cinetique)
135    - ajout tendances du* en m/s2
136    - ajout variables pour transport vertical
137    - ajout variables pour tendances en moment cinetique
138    - Champs advectés: base=6 (ovap est un traceur...),
139      en commentaire pour l'instant, les traceurs.
140    - introduction des calculs pour transport vertical
141    - introduction des calculs pour tendances moment cinétique
142    - présentation des déclarations
143    - facteur fact_geovenus=-1 pour Vénus
144    - petit ajustement possible pour ncum (problèmes de précision)
145    - élminination des sorties grads
146    - modif noms temp et ecin
147    - modif sur incrementation itau et time
148    - definitions et sorties:
149       limité pour l'instant à temp et ang, sans les psiQ
150       sans la somme en lat du transport vertical, à revoir (1D seulement?).
151    - modification calcul ang
152    - modification tpot2t
153    - correction sur fonction de courant psiQ
154
155
156** Choix de spécificités Terre dans gcm.F
157**---------------------------------------
158( certains appels ont été mis sous flag CPP_EARTH ou planet_type=earth alors )
159( qu'il sont aussi valables pour Venus et Titan...                           )
160( ils etaient sous flag IOIPSL avant...                                      )
161
162* Modif de gcm.F :
163    - appel de dynetat0 modulé selon planet_type (mars est un cas à part)
164    - appel de dynredem0 modulé selon planet_type (mars est un cas à part)
165    - appel de iniphysiq: a mettre sous cle CPP_PHYS pour cas sans physique
166
167* Modif de leapfrog.F :
168    - appel de dynredem1 modulé selon planet_type (mars est un cas à part)
169
170* Modif de calfis.F :
171    - appel de physiq: a mettre sous cle CPP_PHYS pour cas sans physique
172    - conservation de la possibilité de nsplit_phys
173    - ajout commentaire sur unité des tendances
174
175* Modif de conf_gcm.F :
176    - commentaires pour nsplit_phys
177
178
179**** commit_v7 ****
180
181* Mise à niveau (de la dynamique) par rapport à la version 1447 de LMDZ5
182* ----------------------------------------------------------------------
183
184* Pour l'instant, on n'a pas touché à dyn3dpar, donc pour l'instant on ne
185  fait que recopier les fichiers de la version 1447
186
187* Mise à jour de routines (dans dyn3d) qui n'ont changé que côté LMDZ5:
188- ener.h
189- grid_noro.F
190- iniacademic.F
191- integrd.F
192- limit_netcdf.F90
193
194* Mise à jour des routines qui ont changé des deux côtés:
195- addfi.F
196  * ajout d'un "USE control_mod, ONLY : planet_type"
197  * mise en forme du if (planet_type=="earth") à l'identique de la revision 1447 (pour être peinard vis-à-vis de futures diff).
198- caladvtrac.F
199  * ajout d'un "USE control_mod, ONLY : iapp_tracvl,planet_type"
200  * mise en conformité de la taille du tableau dq(ip1jmp1,llm,nqtot) et non pas dq(ip1jmp1,llm,2) (qui oblige à avoir au moins 2 traceurs...)
201  * mise entre if (planet_type=="earth") des calculs après advtrac (à nouveau, il faut avoir au moins 2 traceurs pour que ça ait un sens; et encore, ce morceau ne sert peut-être au final à rien).
202  * A nouveau ces modifs étaient déjà en partie déjà faites; j'ai juste remis en forme comme dans la révision 1447 pour rester homogène avec le code terrestre.
203- gcm.F
204  * Mise d'un #ifdef CPP_PHYS autoure de Init_Phys_lmdz et InitComgeomphy , au lieu du (bancal) #ifdef CPP_EARTH
205  * De même il faut bel et bien un #ifdef CPP_PHYS autour de iniphysiq & co.
206- infotrac.F90
207  * Ajout des modifs de forme et correction sur l'utilisation de trim() et taille des tableaux str1(23),str2(23)
208  * On garde un type_trac='plnt' pour les planètes (Attention, il faudra vérifier que ça ne casse rien par ailleurs et surtout n'est-ce finalement pas redoundant avec le planet_type?).
209- leapfrog.F
210  * Ajout des modifs/améliorations pour le cas académique sans physique
211   mais en utilisant dutop(),dvtop(), etc. pour le sponge layer
212   
213**** commit_v8 ****
214
215** ADAPTATION DYNAMIQUE PARALLELE AU CP(T)
216------------------------------------------
217
218Remarques:
219----------
220- Modifs non testées par une compilation/exécution du code; finalement s'organiser un mode de fonctionnement ou on peut compiler le code (au moins sans physique) est assez impératif.
221- On pourrait peut-être faire de cpdet.F90 un module...
222
223Retour sur leapfrog.F: (version séquentielle, dans dyn3d):
224----------------------
225- On revient en arrière sur l'utilisation de dutop(),dvtop(),dtetatop() au lieu des dufi(),dvfi() et dtetafi() pour les appels à top_bound. Dans la version terrestre, différente du sponge Martien (et Vénusien), ces tendances sont liées.
226=> A 'hamoniser' plus tard.
227
228Modifications (dans dyn3dpar):
229------------------------------
230
231* infotrac.F90 : recopié à l'identique depuis dyn3d
232
233* comconst.h : recopié à l'identique depuis dyn3d
234
235* caldyn0.F : recopié à l'identique depuis dyn3d
236
237* cpdet.F :
238  - création des routines t2tpot_p et tpot2t_p , versions // de t2tpot et tpot2t
239
240* gcm.F :
241  - on encadre les appels à Init_Phys_lmdz et Init_interface_dyn_phys par des #ifdef CPP_PHYS (et non plus ifdef CPP_EARTH).
242  - ajout de l'appel à ini_cpdet pour Cp(T)
243  - appel de dynetat0 modulé selon planet_type (Mars est le cas pathologique)
244  - appel à iniphysiq encadré par un #ifdef CPP_PHYS
245  - appel de dynredem0_p modulé selon planet_type (Mars est le cas pathologique)
246 
247* leapfrog_p.F :
248  - ajout variables temp et tsurpk
249  - ajout des calculs des hallos pour temp() et tsurkp() (NOTE POUR PLUS TARD: vérifier que c'est bien nécessaire...)
250  - utilisation tpot2t_p et calcul de tsurkp() avant appel à geopot_p (sans oublier de modifier argument de geopot_p, teta => tsurpk). (3 fois)
251  - ajout argument tsurpk dans l'appel à caldyn_p.
252  - ajout des passages en (m/s)/s des dudis , dvdis et dtetadis.
253  - calcul de dtetaecdt en passant par la température.
254  - changement des arguments de l'appel à bilan_dyn_p.
255  - appel de dynredem1_p modulé selon planet_type (Mars est le cas pathologique).
256
257* calfis_p.F :
258  - utilisation de la clef CPP_PHYS (et non plus CPP_EARTH).
259  - ajout des variables locales zteta et zpk.
260  - ajout calcul de zteta et zpk.
261  - calcul de ztfi via tpot2t_p (NOTE POUR PLUS TARD: vérifier que la taille "physique" du champ ne pose pas pb par rapport au découpage //).
262  - appel de la routine physiq selon planet_type.
263  - modification calcul de pdhfi.
264 
265* caldyn_p.F :
266  - ajout de tsurpk dans les arguments.
267  - passage de tsurkp à la place de teta dans dudv2_p.
268  - passage de tsurkp à la place de teta dans sortvarc.
269 
270* vlspltqs_p.F :
271  - modification de la taille de tempe (tempe(ip1jmp1,llm) au lieu de tempe(ip1jmp1).
272  - calcul de tempe via tpot2t_p (NOTE POUR PLUS TARD: probablement à revoir! Etrangement vlspltqs_p ne contient aucune instruction OpenMP !?! Il y a là un truc qui m'échappe...)
273
274* bilan_dyn_p.F : A FAIRE... (mis de côté pour l'instant car pas sûr que l'ancien bilan_dyn_p fonctionne en mode mixte mpi/omp, à vérifier d'abord, avant de tenter des modifs...)
275
276**** commit_v11 ****
277
27824/01/2011 ajout du modele meso-echelle martien, ancienne physique -- A. Spiga
279
280**** commit_v17 ****
281
28224/01/2011 ajout du module LES, ancienne physique -- A. Spiga
Note: See TracBrowser for help on using the repository browser.