Changeset 1654 for LMDZ5/trunk/libf/dyn3dpar
- Timestamp:
- Sep 24, 2012, 5:07:18 PM (13 years ago)
- Location:
- LMDZ5/trunk/libf/dyn3dpar
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ5/trunk/libf/dyn3dpar/calfis_p.F
r1617 r1654 242 242 integer :: k,kstart,kend 243 243 INTEGER :: offset 244 245 LOGICAL tracerdyn 244 246 c 245 247 c----------------------------------------------------------------------- … … 636 638 zdqfic_omp(:,:,:)=0. 637 639 638 if (planet_type=="earth") then639 640 #ifdef CPP_PHYS 640 641 do isplit=1,nsplit_phys … … 644 645 lafin_split=lafin.and.isplit==nsplit_phys 645 646 647 if (planet_type=="earth") then 646 648 647 649 CALL physiq (klon, … … 674 676 . PVteta) 675 677 678 else if ( planet_type=="generic" ) then 679 680 CALL physiq (klon, !! ngrid 681 . llm, !! nlayer 682 . nqtot, !! nq 683 . tname, !! tracer names from dynamical core (given in infotrac) 684 . debut_split, !! firstcall 685 . lafin_split, !! lastcall 686 . float(day_ini), !! pday <-- day_ini (dans temps.h) 687 . jH_cur_split, !! ptime "fraction of day" 688 . zdt_split, !! ptimestep 689 . zplev_omp, !! pplev 690 . zplay_omp, !! pplay 691 . zphi_omp, !! pphi 692 . zufi_omp, !! pu 693 . zvfi_omp, !! pv 694 . ztfi_omp, !! pt 695 . zqfi_omp, !! pq 696 . flxwfi_omp, !! pw !! or 0. anyway this is for diagnostic. not used in physiq. 697 . zdufi_omp, !! pdu 698 . zdvfi_omp, !! pdv 699 . zdtfi_omp, !! pdt 700 . zdqfi_omp, !! pdq 701 . zdpsrf_omp, !! pdpsrf 702 . tracerdyn) !! tracerdyn <-- utilite ??? 703 704 endif ! of if (planet_type=="earth") 705 706 676 707 zufi_omp(:,:)=zufi_omp(:,:)+zdufi_omp(:,:)*zdt_split 677 708 zvfi_omp(:,:)=zvfi_omp(:,:)+zdvfi_omp(:,:)*zdt_split … … 688 719 #endif 689 720 ! of #ifdef CPP_PHYS 690 endif !of if (planet_type=="earth")691 721 692 722 zdufi_omp(:,:)=zdufic_omp(:,:)/nsplit_phys -
LMDZ5/trunk/libf/dyn3dpar/comvert.h
r1625 r1654 7 7 COMMON/comvertr/ap(llm+1),bp(llm+1),presnivs(llm),dpres(llm), & 8 8 & pa,preff,nivsigs(llm),nivsig(llm+1), & 9 & aps(llm),bps(llm),scaleheight 9 & aps(llm),bps(llm),scaleheight,pseudoalt(llm) 10 10 11 11 common/comverti/disvert_type, pressure_exner … … 23 23 real bps ! hybrid sigma contribution at mid-layers 24 24 real scaleheight ! atmospheric (reference) scale height (km) 25 real pseudoalt ! for planets 25 26 26 27 integer disvert_type ! type of vertical discretization: -
LMDZ5/trunk/libf/dyn3dpar/disvert_noterre.F
r1520 r1654 46 46 real tt,rr,gg, prevz 47 47 real s(llm),dsig(llm) 48 real pseudoalt(llm)49 48 50 49 integer iz -
LMDZ5/trunk/libf/dyn3dpar/dynetat0.F
r1635 r1654 7 7 USE infotrac 8 8 use netcdf, only: nf90_get_var 9 10 use control_mod, only : planet_type 11 9 12 IMPLICIT NONE 10 13 … … 54 57 INTEGER ierr, nid, nvarid 55 58 59 INTEGER idecal 60 56 61 c----------------------------------------------------------------------- 57 62 … … 77 82 ENDIF 78 83 84 !!! AS: idecal is a hack to be able to read planeto starts... 85 !!! .... while keeping everything OK for LMDZ EARTH 86 if (planet_type.eq."generic") then 87 print*,'NOTE NOTE NOTE : Planeto-like start files' 88 idecal = 4 89 annee_ref = 2000 90 else 91 print*,'NOTE NOTE NOTE : Earth-like start files' 92 idecal = 5 93 annee_ref = tab_cntrl(5) 94 endif 95 96 79 97 im = tab_cntrl(1) 80 98 jm = tab_cntrl(2) 81 99 lllm = tab_cntrl(3) 82 100 day_ref = tab_cntrl(4) 83 annee_ref = tab_cntrl(5) 84 rad = tab_cntrl(6) 85 omeg = tab_cntrl(7) 86 g = tab_cntrl(8) 87 cpp = tab_cntrl(9) 88 kappa = tab_cntrl(10) 89 daysec = tab_cntrl(11) 90 dtvr = tab_cntrl(12) 91 etot0 = tab_cntrl(13) 92 ptot0 = tab_cntrl(14) 93 ztot0 = tab_cntrl(15) 94 stot0 = tab_cntrl(16) 95 ang0 = tab_cntrl(17) 96 pa = tab_cntrl(18) 97 preff = tab_cntrl(19) 98 c 99 clon = tab_cntrl(20) 100 clat = tab_cntrl(21) 101 grossismx = tab_cntrl(22) 102 grossismy = tab_cntrl(23) 103 c 104 IF ( tab_cntrl(24).EQ.1. ) THEN 101 rad = tab_cntrl(idecal+1) 102 omeg = tab_cntrl(idecal+2) 103 g = tab_cntrl(idecal+3) 104 cpp = tab_cntrl(idecal+4) 105 kappa = tab_cntrl(idecal+5) 106 daysec = tab_cntrl(idecal+6) 107 dtvr = tab_cntrl(idecal+7) 108 etot0 = tab_cntrl(idecal+8) 109 ptot0 = tab_cntrl(idecal+9) 110 ztot0 = tab_cntrl(idecal+10) 111 stot0 = tab_cntrl(idecal+11) 112 ang0 = tab_cntrl(idecal+12) 113 pa = tab_cntrl(idecal+13) 114 preff = tab_cntrl(idecal+14) 115 c 116 clon = tab_cntrl(idecal+15) 117 clat = tab_cntrl(idecal+16) 118 grossismx = tab_cntrl(idecal+17) 119 grossismy = tab_cntrl(idecal+18) 120 c 121 IF ( tab_cntrl(idecal+19).EQ.1. ) THEN 105 122 fxyhypb = . TRUE . 106 123 c dzoomx = tab_cntrl(25) … … 111 128 fxyhypb = . FALSE . 112 129 ysinus = . FALSE . 113 IF( tab_cntrl( 27).EQ.1. ) ysinus = . TRUE.130 IF( tab_cntrl(idecal+22).EQ.1. ) ysinus = . TRUE. 114 131 ENDIF 115 132 … … 225 242 IF (ierr .NE. NF_NOERR) THEN 226 243 write(lunout,*)"dynetat0: Le champ <temps> est absent" 227 CALL abort 244 write(lunout,*)"dynetat0: J essaie <Time>" 245 ierr = NF_INQ_VARID (nid, "Time", nvarid) 246 IF (ierr .NE. NF_NOERR) THEN 247 write(lunout,*)"dynetat0: Le champ <Time> est absent" 248 CALL abort 249 ENDIF 228 250 ENDIF 229 251 ierr = nf90_get_var(nid, nvarid, time)
Note: See TracChangeset
for help on using the changeset viewer.