source: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/write_paramLMDZ_dyn.h @ 1358

Last change on this file since 1358 was 1299, checked in by Laurent Fairhead, 15 years ago

Nettoyage general pour se rapprocher des normes et éviter des erreurs a la
compilation:

  • tous les FLOAT() sont remplacés par des REAL()
  • tous les STOP dans phylmd sont remplacés par des appels à abort_gcm
  • le common control défini dans le fichier control.h est remplacé par le module control_mod pour éviter des messages sur l'alignement des variables dans les déclarations
  • des $Header$ remplacés par des $Id$ pour svn

Quelques remplacements à faire ont pu m'échapper


General cleanup of the code to try and adhere to norms and to prevent some
compilation errors:

  • all FLOAT() instructions have been replaced by REAL() instructions
  • all STOP instructions in phylmd have been replaced by calls to abort_gcm
  • the common block control defined in the control.h file has been replaced by the control_mod to prevent compilation warnings on the alignement of declared variables
  • $Header$ replaced by $Id$ for svn

Some changes which should have been made might have escaped me

  • Property svn:eol-style set to native
  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
File size: 8.0 KB
RevLine 
[956]1! FH 2008/05/09 On elimine toutes les clefs physiques dans la dynamique
2! Attention : il n'y a aucune raison pour ecrire ces constantes
3! comme des champs 2D. A corriger un jour ...
4
[692]5c
[696]6      ndex2d = 0
[825]7      itau_w=itau_dyn+itau
[692]8c
[1299]9      zx_tmp_2d(1:iip1,1:jjp1)=REAL(prt_level) 
[825]10      CALL histwrite(nid_ctesGCM, "prt_level", itau_w,
[696]11     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]12c
[1299]13      zx_tmp_2d(1:iip1,1:jjp1)=REAL(dayref)
[825]14      CALL histwrite(nid_ctesGCM, "dayref", itau_w,
[696]15     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]16c
[1299]17      zx_tmp_2d(1:iip1,1:jjp1)=REAL(anneeref)
[825]18      CALL histwrite(nid_ctesGCM, "anneeref", itau_w,
[696]19     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]20c
[1299]21      zx_tmp_2d(1:iip1,1:jjp1)=REAL(raz_date)
[825]22      CALL histwrite(nid_ctesGCM, "raz_date", itau_w,
[696]23     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]24c
[1299]25      zx_tmp_2d(1:iip1,1:jjp1)=REAL(nday)
[825]26      CALL histwrite(nid_ctesGCM, "nday", itau_w,
[696]27     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]28c
[1299]29      zx_tmp_2d(1:iip1,1:jjp1)=REAL(day_step)
[825]30      CALL histwrite(nid_ctesGCM, "day_step", itau_w,
[696]31     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]32c
[1299]33      zx_tmp_2d(1:iip1,1:jjp1)=REAL(iperiod)
[825]34      CALL histwrite(nid_ctesGCM, "iperiod", itau_w,
[696]35     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]36c
[1299]37      zx_tmp_2d(1:iip1,1:jjp1)=REAL(iapp_tracvl)
[825]38      CALL histwrite(nid_ctesGCM, "iapp_tracvl", itau_w,
[696]39     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]40c
[1299]41      zx_tmp_2d(1:iip1,1:jjp1)=REAL(iconser)
[825]42      CALL histwrite(nid_ctesGCM, "iconser", itau_w,
[696]43     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]44c
[1299]45      zx_tmp_2d(1:iip1,1:jjp1)=REAL(iecri)
[825]46      CALL histwrite(nid_ctesGCM, "iecri", itau_w,
[696]47     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]48c
[696]49      zx_tmp_2d(1:iip1,1:jjp1)=periodav
[825]50      CALL histwrite(nid_ctesGCM, "periodav", itau_w,
[696]51     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]52c
[1299]53      zx_tmp_2d(1:iip1,1:jjp1)=REAL(idissip)
[825]54      CALL histwrite(nid_ctesGCM, "idissip", itau_w,
[696]55     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]56c
[696]57      IF(lstardis) THEN
58       zx_tmp_2d(1:iip1,1:jjp1)=1.
59      ELSE
60       zx_tmp_2d(1:iip1,1:jjp1)=0.
61      ENDIF
[825]62      CALL histwrite(nid_ctesGCM, "lstardis", itau_w,
[696]63     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]64c
[1299]65      zx_tmp_2d(1:iip1,1:jjp1)=REAL(nitergdiv)
[825]66      CALL histwrite(nid_ctesGCM, "nitergdiv", itau_w,
[696]67     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]68c
[1299]69      zx_tmp_2d(1:iip1,1:jjp1)=REAL(nitergrot)
[825]70      CALL histwrite(nid_ctesGCM, "nitergrot", itau_w,
[696]71     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]72c
[1299]73      zx_tmp_2d(1:iip1,1:jjp1)=REAL(niterh) 
[825]74      CALL histwrite(nid_ctesGCM, "niterh", itau_w,
[696]75     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]76c
[696]77      zx_tmp_2d(1:iip1,1:jjp1)=tetagdiv
[825]78      CALL histwrite(nid_ctesGCM, "tetagdiv", itau_w,
[696]79     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]80c
[696]81      zx_tmp_2d(1:iip1,1:jjp1)=tetagrot
[825]82      CALL histwrite(nid_ctesGCM, "tetagrot", itau_w,
[696]83     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]84c
[696]85      zx_tmp_2d(1:iip1,1:jjp1)=tetatemp
[825]86      CALL histwrite(nid_ctesGCM, "tetatemp", itau_w,
[696]87     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]88c
[696]89      zx_tmp_2d(1:iip1,1:jjp1)=coefdis
[825]90      CALL histwrite(nid_ctesGCM, "coefdis", itau_w,
[696]91     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]92c
[696]93      IF(purmats) THEN
94       zx_tmp_2d(1:iip1,1:jjp1)=1.
95      ELSE
96       zx_tmp_2d(1:iip1,1:jjp1)=0.
97      ENDIF
[825]98      CALL histwrite(nid_ctesGCM, "purmats", itau_w,
[696]99     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]100c
[696]101      IF(ok_guide) THEN
102       zx_tmp_2d(1:iip1,1:jjp1)=1.
103      ELSE
104       zx_tmp_2d(1:iip1,1:jjp1)=0.
105      ENDIF
[825]106      CALL histwrite(nid_ctesGCM, "ok_guide", itau_w,
[696]107     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]108c
[1279]109      if (calend == 'earth_360d') then
110        zx_tmp_2d(1:iip1,1:jjp1)=1.
111      else if (calend == 'earth_365d') then
112        zx_tmp_2d(1:iip1,1:jjp1)=2.
113      else if (calend == 'earth_366d') then
114        zx_tmp_2d(1:iip1,1:jjp1)=3.
115      endif
116
[825]117      CALL histwrite(nid_ctesGCM, "true_calendar", itau_w,
[696]118     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]119c
[1299]120      zx_tmp_2d(1:iip1,1:jjp1)=REAL(iflag_phys)
[825]121      CALL histwrite(nid_ctesGCM, "iflag_phys", itau_w,
[696]122     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]123c
[1299]124      zx_tmp_2d(1:iip1,1:jjp1)=REAL(iphysiq)
[825]125      CALL histwrite(nid_ctesGCM, "iphysiq", itau_w,
[696]126     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]127c
[956]128!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
129! FH 2008/05/02
130! La variable cycle_diurne n'est pas vue par la dynamique
131!     IF(cycle_diurne) THEN
132!      zx_tmp_2d(1:iip1,1:jjp1)=1.
133!     ELSE
134!      zx_tmp_2d(1:iip1,1:jjp1)=0.
135!     ENDIF
136!     CALL histwrite(nid_ctesGCM, "cycle_diurne", itau_w,
137!    .               zx_tmp_2d,iip1*jjp1,ndex2d)
138!
139!     IF(soil_model) THEN
140!      zx_tmp_2d(1:iip1,1:jjp1)=1.
141!     ELSE
142!      zx_tmp_2d(1:iip1,1:jjp1)=0.
143!     ENDIF
144!     CALL histwrite(nid_ctesGCM, "soil_model", itau_w,
145!    .               zx_tmp_2d,iip1*jjp1,ndex2d)
146!
147!     IF(new_oliq) THEN
148!      zx_tmp_2d(1:iip1,1:jjp1)=1.
149!     ELSE
150!      zx_tmp_2d(1:iip1,1:jjp1)=0.
151!     ENDIF
152!     CALL histwrite(nid_ctesGCM, "new_oliq", itau_w,
153!    .               zx_tmp_2d,iip1*jjp1,ndex2d)
154!
155!     IF(ok_orodr) THEN
156!      zx_tmp_2d(1:iip1,1:jjp1)=1.
157!     ELSE
158!      zx_tmp_2d(1:iip1,1:jjp1)=0.
159!     ENDIF
160!     CALL histwrite(nid_ctesGCM, "ok_orodr", itau_w,
161!    .               zx_tmp_2d,iip1*jjp1,ndex2d)
162!
163!     IF(ok_orolf) THEN
164!      zx_tmp_2d(1:iip1,1:jjp1)=1.
165!     ELSE
166!      zx_tmp_2d(1:iip1,1:jjp1)=0.
167!     ENDIF
168!     CALL histwrite(nid_ctesGCM, "ok_orolf", itau_w,
169!    .               zx_tmp_2d,iip1*jjp1,ndex2d)
170!
171!     IF(ok_limitvrai) THEN
172!      zx_tmp_2d(1:iip1,1:jjp1)=1.
173!     ELSE
174!      zx_tmp_2d(1:iip1,1:jjp1)=0.
175!     ENDIF
176!     CALL histwrite(nid_ctesGCM, "ok_limitvrai", itau_w,
177!    .               zx_tmp_2d,iip1*jjp1,ndex2d)
178!
179!     zx_tmp_2d(1:iip1,1:jjp1)=nbapp_rad
180!     CALL histwrite(nid_ctesGCM, "nbapp_rad", itau_w,
181!    .               zx_tmp_2d,iip1*jjp1,ndex2d)
182!
183!     zx_tmp_2d(1:iip1,1:jjp1)=iflag_con
184!     CALL histwrite(nid_ctesGCM, "iflag_con", itau_w,
185!    .               zx_tmp_2d,iip1*jjp1,ndex2d)
186!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
[692]187c
[696]188      zx_tmp_2d(1:iip1,1:jjp1)=clon
[825]189      CALL histwrite(nid_ctesGCM, "clon", itau_w,
[696]190     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]191c
[696]192      zx_tmp_2d(1:iip1,1:jjp1)=clat
[825]193      CALL histwrite(nid_ctesGCM, "clat", itau_w,
[696]194     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]195c
[696]196      zx_tmp_2d(1:iip1,1:jjp1)=grossismx
[825]197      CALL histwrite(nid_ctesGCM, "grossismx", itau_w,
[696]198     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]199c
[696]200      zx_tmp_2d(1:iip1,1:jjp1)=grossismy
[825]201      CALL histwrite(nid_ctesGCM, "grossismy", itau_w,
[696]202     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]203c
[696]204      IF(fxyhypb) THEN
205       zx_tmp_2d(1:iip1,1:jjp1)=1.
206      ELSE
207       zx_tmp_2d(1:iip1,1:jjp1)=0.
208      ENDIF
[825]209      CALL histwrite(nid_ctesGCM, "fxyhypb", itau_w,
[696]210     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]211c
[696]212      zx_tmp_2d(1:iip1,1:jjp1)=dzoomx
[825]213      CALL histwrite(nid_ctesGCM, "dzoomx", itau_w,
[696]214     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]215c
[696]216      zx_tmp_2d(1:iip1,1:jjp1)=dzoomy
[825]217      CALL histwrite(nid_ctesGCM, "dzoomy", itau_w,
[696]218     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]219c
[696]220      zx_tmp_2d(1:iip1,1:jjp1)=taux
[825]221      CALL histwrite(nid_ctesGCM, "taux", itau_w,
[696]222     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]223c
[696]224      zx_tmp_2d(1:iip1,1:jjp1)=tauy
[825]225      CALL histwrite(nid_ctesGCM, "tauy", itau_w,
[696]226     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]227c
[696]228      IF(ysinus) THEN
229       zx_tmp_2d(1:iip1,1:jjp1)=1.
230      ELSE
231       zx_tmp_2d(1:iip1,1:jjp1)=0.
232      ENDIF
[825]233      CALL histwrite(nid_ctesGCM, "ysinus", itau_w,
[696]234     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]235c
[784]236      zx_tmp_2d(1:iip1,1:jjp1)=ip_ebil_dyn
[825]237      CALL histwrite(nid_ctesGCM, "ip_ebil_dyn", itau_w,
[696]238     .               zx_tmp_2d,iip1*jjp1,ndex2d)
[692]239c
240c=================================================================
241c
[696]242      if (ok_sync) then
243        call histsync(nid_ctesGCM)
244      endif
[692]245c
246c=================================================================
Note: See TracBrowser for help on using the repository browser.