--- trunk/phylmd/physiq.f 2015/02/06 15:00:28 125 +++ trunk/Sources/phylmd/physiq.f 2015/04/29 15:47:56 134 @@ -4,7 +4,7 @@ contains - SUBROUTINE physiq(lafin, rdayvrai, time, dtphys, paprs, play, pphi, pphis, & + SUBROUTINE physiq(lafin, dayvrai, time, dtphys, paprs, play, pphi, pphis, & u, v, t, qx, omega, d_u, d_v, d_t, d_qx) ! From phylmd/physiq.F, version 1.22 2006/02/20 09:38:28 @@ -38,6 +38,7 @@ USE dimphy, ONLY: klon USE dimsoil, ONLY: nsoilmx use drag_noro_m, only: drag_noro + use dynetat0_m, only: day_ref, annee_ref USE fcttre, ONLY: foeew, qsatl, qsats, thermcep use fisrtilp_m, only: fisrtilp USE hgardfou_m, ONLY: hgardfou @@ -57,7 +58,7 @@ use readsulfate_preind_m, only: readsulfate_preind use sugwd_m, only: sugwd USE suphec_m, ONLY: ra, rcpd, retv, rg, rlvtt, romega, rsigma, rtt - USE temps, ONLY: annee_ref, day_ref, itau_phy + USE temps, ONLY: itau_phy use unit_nml_m, only: unit_nml USE ymds2ju_m, ONLY: ymds2ju USE yoethf_m, ONLY: r2es, rvtmp2 @@ -65,8 +66,8 @@ logical, intent(in):: lafin ! dernier passage - REAL, intent(in):: rdayvrai - ! (elapsed time since January 1st 0h of the starting year, in days) + integer, intent(in):: dayvrai + ! current day number, based at value 1 on January 1st of annee_ref REAL, intent(in):: time ! heure de la journ\'ee en fraction de jour REAL, intent(in):: dtphys ! pas d'integration pour la physique (seconde) @@ -680,7 +681,7 @@ ! Initialisation des sorties call ini_histins(dtphys, ok_instan, nid_ins) - CALL ymds2ju(annee_ref, 1, int(day_ref), 0., date0) + CALL ymds2ju(annee_ref, 1, day_ref, 0., date0) ! Positionner date0 pour initialisation de ORCHIDEE print *, 'physiq date0: ', date0 ENDIF test_firstcal @@ -740,7 +741,7 @@ ! Incrémenter le compteur de la physique itap = itap + 1 - julien = MOD(NINT(rdayvrai), 360) + julien = MOD(dayvrai, 360) if (julien == 0) julien = 360 forall (k = 1: llm) zmasse(:, k) = (paprs(:, k) - paprs(:, k + 1)) / rg @@ -1228,8 +1229,8 @@ ! Introduce the aerosol direct and first indirect radiative forcings: IF (ok_ade .OR. ok_aie) THEN ! Get sulfate aerosol distribution : - CALL readsulfate(rdayvrai, firstcal, sulfate) - CALL readsulfate_preind(rdayvrai, firstcal, sulfate_pi) + CALL readsulfate(dayvrai, time, firstcal, sulfate) + CALL readsulfate_preind(dayvrai, time, firstcal, sulfate_pi) CALL aeropt(play, paprs, t_seri, sulfate, rhcl, tau_ae, piz_ae, cg_ae, & aerindex)