--- trunk/Sources/phylmd/phytrac.f 2015/07/21 15:29:52 159 +++ trunk/Sources/phylmd/phytrac.f 2016/03/15 17:51:30 181 @@ -10,7 +10,7 @@ SUBROUTINE phytrac(itap, lmt_pas, julien, gmtime, firstcal, lafin, pdtphys, & t_seri, paprs, pplay, pmfu, pmfd, pde_u, pen_d, coefh, fm_therm, & entr_therm, yu1, yv1, ftsol, pctsrf, frac_impa, frac_nucl, da, phi, & - mp, upwd, dnwd, tr_seri, zmasse, ncid_startphy, nid_ins) + mp, upwd, dnwd, tr_seri, zmasse, ncid_startphy, nid_ins, itau_phy) ! From phylmd/phytrac.F, version 1.15 2006/02/21 08:08:30 (SVN revision 679) @@ -38,6 +38,7 @@ use indicesol, only: nbsrf use initrrnpb_m, only: initrrnpb use minmaxqfi_m, only: minmaxqfi + use netcdf, only: NF90_FILL_float use netcdf95, only: nf95_inq_varid, nf95_get_var, nf95_put_var use nflxtr_m, only: nflxtr use nr_util, only: assert @@ -101,7 +102,7 @@ real, intent(in):: zmasse(:, :) ! (klon, llm) ! (column-density of mass of air in a cell, in kg m-2) - integer, intent(in):: ncid_startphy, nid_ins + integer, intent(in):: ncid_startphy, nid_ins, itau_phy ! Local: @@ -194,6 +195,8 @@ call nf95_inq_varid(ncid_startphy, "trs", varid) call nf95_get_var(ncid_startphy, varid, trs(:, 1)) + if (any(trs(:, 1) == NF90_FILL_float)) call abort_gcm("phytrac", & + "some missing values in trs(:, 1)") ! Initialisation de la fraction d'aerosols lessivee @@ -231,7 +234,8 @@ ! Tiedke CALL nflxtr(pdtphys, pmfu, pmfd, pde_u, pen_d, paprs, & tr_seri(:, :, it), d_tr_cv(:, :, it)) - else if (iflag_con == 3) then + else + ! iflag_con >= 3 ! Emanuel call cvltr(pdtphys, da, phi, mp, paprs, tr_seri(:, :, it), upwd, & dnwd, d_tr_cv(:, :, it)) @@ -339,7 +343,7 @@ ! Ozone as a tracer: if (mod(itap - 1, lmt_pas) == 0) then ! Once per day, update the coefficients for ozone chemistry: - call regr_pr_comb_coefoz(julien) + call regr_pr_comb_coefoz(julien, paprs, pplay) end if call o3_chem(julien, gmtime, t_seri, zmasse, pdtphys, tr_seri(:, :, 3)) end if @@ -407,13 +411,8 @@ ! From phylmd/write_histrac.h, version 1.9 2006/02/21 08:08:30 - use dimens_m, only: iim, jjm, llm - use histsync_m, only: histsync use histwrite_m, only: histwrite - use temps, only: itau_phy use iniadvtrac_m, only: tname - use dimphy, only: klon - use grid_change, only: gr_phy_write_2d use gr_phy_write_3d_m, only: gr_phy_write_3d logical, intent(in):: lessivage