/[lmdze]/trunk/dyn3d/etat0.f
ViewVC logotype

Diff of /trunk/dyn3d/etat0.f

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 27 by guez, Thu Mar 25 14:29:07 2010 UTC revision 36 by guez, Thu Dec 2 17:11:04 2010 UTC
# Line 37  contains Line 37  contains
37      use iniadvtrac_m, only: iniadvtrac      use iniadvtrac_m, only: iniadvtrac
38      use inidissip_m, only: inidissip      use inidissip_m, only: inidissip
39      use inigeom_m, only: inigeom      use inigeom_m, only: inigeom
40      USE ioipsl, only: flinget, flinclo, flinopen_nozoom, flininfo, histclo      USE flincom, only: flinclo, flinopen_nozoom, flininfo
41        use flinget_m, only: flinget
42        use histcom, only: histclo
43      use paramet_m, only: ip1jm, ip1jmp1      use paramet_m, only: ip1jm, ip1jmp1
44      use phyredem_m, only: phyredem      use phyredem_m, only: phyredem
45      use pressure_var, only: pls, p3d      use pressure_var, only: pls, p3d
# Line 48  contains Line 50  contains
50      USE start_init_orog_m, only: start_init_orog, mask, phis      USE start_init_orog_m, only: start_init_orog, mask, phis
51      use start_init_phys_m, only: qsol_2d      use start_init_phys_m, only: qsol_2d
52      use startdyn, only: start_inter_3d, start_init_dyn      use startdyn, only: start_inter_3d, start_init_dyn
53      use temps, only: itau_phy, annee_ref, day_ref, dt      use temps, only: itau_phy, annee_ref, day_ref
54    
55      ! Variables local to the procedure:      ! Variables local to the procedure:
56    
# Line 106  contains Line 108  contains
108      REAL pbaru(ip1jmp1, llm), pbarv(ip1jm, llm)      REAL pbaru(ip1jmp1, llm), pbarv(ip1jm, llm)
109      REAL w(ip1jmp1, llm)      REAL w(ip1jmp1, llm)
110      REAL phystep      REAL phystep
111        real trash
112    
113      !---------------------------------      !---------------------------------
114    
115      print *, "Call sequence information: etat0"      print *, "Call sequence information: etat0"
116    
     ! Construct a grid:  
   
117      dtvr = daysec / real(day_step)      dtvr = daysec / real(day_step)
118      print *, 'dtvr = ', dtvr      print *, 'dtvr = ', dtvr
119    
120        ! Construct a grid:
121    
122      pa = 5e4      pa = 5e4
123      CALL iniconst      CALL iniconst
124      CALL inigeom      CALL inigeom
# Line 144  contains Line 147  contains
147      CALL exner_hyb(psol, p3d, pks, pk)      CALL exner_hyb(psol, p3d, pks, pk)
148      IF (MINVAL(pk) == MAXVAL(pk)) stop '"pk" should not be constant'      IF (MINVAL(pk) == MAXVAL(pk)) stop '"pk" should not be constant'
149    
150      pls(:, :, :) = preff * (pk(:, :, :) / cpp)**(1. / kappa)      pls = preff * (pk / cpp)**(1. / kappa)
151      PRINT *, "minval(pls(:, :, :)) = ", minval(pls(:, :, :))      PRINT *, "minval(pls) = ", minval(pls)
152      print *, "maxval(pls(:, :, :)) = ", maxval(pls(:, :, :))      print *, "maxval(pls) = ", maxval(pls)
153    
154      call start_inter_3d('U', rlonv, rlatv, pls, uvent)      call start_inter_3d('U', rlonv, rlatv, pls, uvent)
155      forall (l = 1: llm) uvent(:iim, :, l) = uvent(:iim, :, l) * cu_2d(:iim, :)      forall (l = 1: llm) uvent(:iim, :, l) = uvent(:iim, :, l) * cu_2d(:iim, :)
# Line 157  contains Line 160  contains
160      vvent(iim + 1, :, :) = vvent(1, :, :)      vvent(iim + 1, :, :) = vvent(1, :, :)
161    
162      call start_inter_3d('TEMP', rlonu, rlatv, pls, t3d)      call start_inter_3d('TEMP', rlonu, rlatv, pls, t3d)
163      PRINT *,  'minval(t3d(:, :, :)) = ', minval(t3d(:, :, :))      PRINT *,  'minval(t3d) = ', minval(t3d)
164      print *, "maxval(t3d(:, :, :)) = ", maxval(t3d(:, :, :))      print *, "maxval(t3d) = ", maxval(t3d)
165    
166      tpot(:iim, :, :) = t3d(:iim, :, :) * cpp / pk(:iim, :, :)      tpot(:iim, :, :) = t3d(:iim, :, :) * cpp / pk(:iim, :, :)
167      tpot(iim + 1, :, :) = tpot(1, :, :)      tpot(iim + 1, :, :) = tpot(1, :, :)
# Line 169  contains Line 172  contains
172      ENDDO      ENDDO
173    
174      ! Calcul de l'humidité ŕ saturation :      ! Calcul de l'humidité ŕ saturation :
175      qsat(:, :, :) = q_sat(t3d, pls)      qsat = q_sat(t3d, pls)
176      PRINT *, "minval(qsat(:, :, :)) = ", minval(qsat(:, :, :))      PRINT *, "minval(qsat) = ", minval(qsat)
177      print *, "maxval(qsat(:, :, :)) = ", maxval(qsat(:, :, :))      print *, "maxval(qsat) = ", maxval(qsat)
178      IF (MINVAL(qsat) == MAXVAL(qsat)) stop '"qsat" should not be constant'      IF (MINVAL(qsat) == MAXVAL(qsat)) stop '"qsat" should not be constant'
179    
180      ! Water vapor:      ! Water vapor:
# Line 219  contains Line 222  contains
222      ALLOCATE(dlon_lic(iml_lic))      ALLOCATE(dlon_lic(iml_lic))
223      ALLOCATE(dlat_lic(jml_lic))      ALLOCATE(dlat_lic(jml_lic))
224      ALLOCATE(fraclic(iml_lic, jml_lic))      ALLOCATE(fraclic(iml_lic, jml_lic))
225      CALL flinopen_nozoom("landiceref.nc", iml_lic, jml_lic, &      CALL flinopen_nozoom(iml_lic, jml_lic, &
226           llm_tmp, lon_lic, lat_lic, lev, ttm_tmp, itaul, date, dt,  &           llm_tmp, lon_lic, lat_lic, lev, ttm_tmp, itaul, date, trash,  &
227           fid)           fid)
228      CALL flinget(fid, 'landice', iml_lic, jml_lic, llm_tmp, ttm_tmp &      CALL flinget(fid, 'landice', iml_lic, jml_lic, llm_tmp, ttm_tmp &
229           , 1, 1, fraclic)           , 1, 1, fraclic)

Legend:
Removed from v.27  
changed lines
  Added in v.36

  ViewVC Help
Powered by ViewVC 1.1.21