Changeset 1707 for LMDZ5/branches/testing/libf/dyn3dmem/gcm.F
- Timestamp:
- Jan 11, 2013, 10:19:19 AM (12 years ago)
- Location:
- LMDZ5/branches/testing
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ5/branches/testing
- Property svn:mergeinfo changed
/LMDZ5/trunk merged: 1670-1692,1694-1703,1705-1706
- Property svn:mergeinfo changed
-
LMDZ5/branches/testing/libf/dyn3dmem/gcm.F
r1669 r1707 1 1 ! 2 ! $Id : gcm.F 1403 2010-07-01 09:02:53Z fairhead$2 ! $Id$ 3 3 ! 4 4 c … … 20 20 USE control_mod 21 21 22 ! Ehouarn: for now these only apply to Earth: 23 #ifdef CPP_EARTH 22 #ifdef CPP_PHYS 24 23 USE mod_grid_phy_lmdz 25 24 USE mod_phys_lmdz_para, ONLY : klon_mpi_para_nb … … 87 86 88 87 REAL zdtvr 89 c INTEGER nbetatmoy, nbetatdem,nbetat90 INTEGER nbetatmoy, nbetatdem91 88 92 89 c variables dynamiques … … 189 186 call ini_getparam("out.def") 190 187 call Read_Distrib 191 ! Ehouarn : temporarily (?) keep this only for Earth 192 if (planet_type.eq."earth") then 193 #ifdef CPP_EARTH 188 189 #ifdef CPP_PHYS 194 190 CALL Init_Phys_lmdz(iim,jjp1,llm,mpi_size,distrib_phys) 195 191 #endif 196 endif ! of if (planet_type.eq."earth")197 192 CALL set_bands 198 #ifdef CPP_EARTH 199 ! Ehouarn: For now only Earth physics is parallel 193 #ifdef CPP_PHYS 200 194 CALL Init_interface_dyn_phys 201 195 #endif … … 209 203 c$OMP END PARALLEL 210 204 211 ! Ehouarn : temporarily (?) keep this only for Earth 212 if (planet_type.eq."earth") then 213 #ifdef CPP_EARTH 205 #ifdef CPP_PHYS 214 206 c$OMP PARALLEL 215 207 call InitComgeomphy 216 208 c$OMP END PARALLEL 217 209 #endif 218 endif ! of if (planet_type.eq."earth")219 210 220 211 c----------------------------------------------------------------------- … … 240 231 #endif 241 232 242 IF ( config_inca /= 'none') THEN233 IF (type_trac == 'inca') THEN 243 234 #ifdef INCA 244 235 call init_const_lmdz( … … 282 273 endif 283 274 284 if (planet_type.eq."earth") then 285 #ifdef CPP_EARTH 275 ! if (planet_type.eq."earth") then 286 276 ! Load an Earth-format start file 287 277 CALL dynetat0_loc("start.nc",vcov,ucov, 288 278 & teta,q,masse,ps,phis, time_0) 289 #else 290 ! SW model also has Earth-format start files 291 ! (but can be used without the CPP_EARTH directive) 292 if (iflag_phys.eq.0) then 293 CALL dynetat0_loc("start.nc",vcov,ucov, 294 & teta,q,masse,ps,phis, time_0) 295 endif 296 #endif 297 endif ! of if (planet_type.eq."earth") 279 ! endif ! of if (planet_type.eq."earth") 280 298 281 c write(73,*) 'ucov',ucov 299 282 c write(74,*) 'vcov',vcov … … 337 320 C on remet le calendrier à zero si demande 338 321 c 322 IF (start_time /= starttime) then 323 WRITE(lunout,*)' GCM: Attention l''heure de depart lue dans le' 324 &,' fichier restart ne correspond pas à celle lue dans le run.def' 325 IF (raz_date == 1) then 326 WRITE(lunout,*)'Je prends l''heure lue dans run.def' 327 start_time = starttime 328 ELSE 329 WRITE(lunout,*)'Je m''arrete' 330 CALL abort 331 ENDIF 332 ENDIF 339 333 IF (raz_date == 1) THEN 340 334 annee_ref = anneeref … … 404 398 #endif 405 399 406 c nombre d'etats dans les fichiers demarrage et histoire407 nbetatdem = nday / iecri408 nbetatmoy = nday / periodav + 1409 400 410 401 c----------------------------------------------------------------------- 411 402 c Initialisation des constantes dynamiques : 412 403 c ------------------------------------------ 413 dtvr = zdtvr414 CALL iniconst404 dtvr = zdtvr 405 CALL iniconst 415 406 416 407 c----------------------------------------------------------------------- 417 408 c Initialisation de la geometrie : 418 409 c -------------------------------- 419 CALL inigeom410 CALL inigeom 420 411 421 412 c----------------------------------------------------------------------- 422 413 c Initialisation du filtre : 423 414 c -------------------------- 424 CALL inifilr415 CALL inifilr 425 416 c 426 417 c----------------------------------------------------------------------- … … 429 420 430 421 CALL inidissip( lstardis, nitergdiv, nitergrot, niterh , 431 * tetagdiv, tetagrot , tetatemp 422 * tetagdiv, tetagrot , tetatemp, vert_prof_dissip) 432 423 433 424 c----------------------------------------------------------------------- 434 425 c Initialisation de la physique : 435 426 c ------------------------------- 436 IF (call_iniphys.and. iflag_phys.eq.1) THEN427 IF (call_iniphys.and.(iflag_phys==1.or.iflag_phys>=100)) THEN 437 428 latfi(1)=rlatu(1) 438 429 lonfi(1)=0. … … 455 446 WRITE(lunout,*) 456 447 . 'GCM: WARNING!!! vitesse verticale nulle dans la physique' 457 ! Earth: 458 if (planet_type.eq."earth") then 459 #ifdef CPP_EARTH 460 CALL iniphysiq(ngridmx,llm,daysec,day_ini,dtphys/nsplit_phys , 461 , latfi,lonfi,airefi,zcufi,zcvfi,rad,g,r,cpp ) 462 #endif 463 endif ! of if (planet_type.eq."earth") 448 ! Physics: 449 #ifdef CPP_PHYS 450 CALL iniphysiq(ngridmx,llm,daysec,day_ini,dtphys/nsplit_phys, 451 & latfi,lonfi,airefi,zcufi,zcvfi,rad,g,r,cpp, 452 & iflag_phys) 453 #endif 464 454 call_iniphys=.false. 465 ENDIF ! of IF (call_iniphys.and.(iflag_phys .eq.1))455 ENDIF ! of IF (call_iniphys.and.(iflag_phys==1.or.iflag_phys>=100)) 466 456 467 457 … … 469 459 c Initialisation des dimensions d'INCA : 470 460 c -------------------------------------- 471 IF ( config_inca /= 'none') THEN461 IF (type_trac == 'inca') THEN 472 462 !$OMP PARALLEL 473 463 #ifdef INCA … … 496 486 #endif 497 487 498 if (planet_type.eq."earth") then 488 ! if (planet_type.eq."earth") then 489 ! Write an Earth-format restart file 499 490 CALL dynredem0_loc("restart.nc", day_end, phis) 500 endif491 ! endif 501 492 502 493 ecripar = .TRUE. … … 544 535 c write(78,*) 'q',q 545 536 546 c$OMP PARALLEL DEFAULT(SHARED) COPYIN(/temps/,/logic /)537 c$OMP PARALLEL DEFAULT(SHARED) COPYIN(/temps/,/logici/,/logicl/) 547 538 CALL leapfrog_loc(ucov,vcov,teta,ps,masse,phis,q,clesphy0, 548 539 . time_0)
Note: See TracChangeset
for help on using the changeset viewer.