--- trunk/libf/dyn3d/leapfrog.f90 2008/04/18 14:45:53 10 +++ trunk/libf/dyn3d/leapfrog.f90 2009/07/31 15:18:47 22 @@ -6,8 +6,7 @@ contains - SUBROUTINE leapfrog(ucov, vcov, teta, ps, masse, phis, nq, q, clesphy0, & - time_0) + SUBROUTINE leapfrog(ucov, vcov, teta, ps, masse, phis, nq, q, time_0) ! From dyn3d/leapfrog.F, version 1.6 2005/04/13 08:58:34 @@ -34,8 +33,7 @@ use comvert, only: ap, bp use conf_gcm_m, only: day_step, iconser, idissip, iphysiq, iperiod, nday, & offline, periodav - use logic, only: ok_guide, apdiss, apphys, conser, forward, iflag_phys, & - leapf, statcl + use logic, only: ok_guide, iflag_phys use comgeom use serre use temps, only: itaufin, day_ini, dt @@ -48,8 +46,7 @@ use pression_m, only: pression use pressure_var, only: p3d - integer nq - REAL clesphy0(:) + integer, intent(in):: nq ! Variables dynamiques: REAL vcov(ip1jm, llm), ucov(ip1jmp1, llm) ! vents covariants @@ -95,9 +92,10 @@ REAL tppn(iim), tpps(iim), tpn, tps - INTEGER itau, itaufinp1 + INTEGER itau ! index of the time step of the dynamics, starts at 0 + integer itaufinp1 INTEGER iday ! jour julien - REAL time ! Heure de la journee en fraction d'1 jour + REAL time ! time of day, as a fraction of day length REAL SSUM real finvmaold(ip1jmp1, llm) @@ -120,6 +118,7 @@ logical:: dissip_conservative = .true. LOGICAL:: prem = .true. + logical forward, leapf, apphys, conser, apdiss !--------------------------------------------------- @@ -167,7 +166,6 @@ ! gestion des appels de la physique et des dissipations: apphys = .FALSE. - statcl = .FALSE. conser = .FALSE. apdiss = .FALSE. @@ -196,7 +194,8 @@ ! integrations dynamique et traceurs: CALL integrd(2, vcovm1, ucovm1, tetam1, psm1, massem1, dv, du, & - dteta, dq, dp, vcov, ucov, teta, q, ps, masse, phis, finvmaold) + dteta, dq, dp, vcov, ucov, teta, q, ps, masse, phis, & + finvmaold, leapf) ! calcul des tendances physiques: @@ -220,7 +219,7 @@ CALL calfis(nq, lafin, rdayvrai, time, ucov, vcov, teta, q, & masse, ps, pk, phis, phi, du, dv, dteta, dq, w, & - clesphy0, dufi, dvfi, dtetafi, dqfi, dpfi) + dufi, dvfi, dtetafi, dqfi, dpfi) ! ajout des tendances physiques: CALL addfi(nqmx, dtphys, & @@ -337,7 +336,7 @@ dt = 2. * dtvr END IF ELSE - ! ...... pas leapfrog ..... + ! pas leapfrog leapf = .TRUE. dt = 2. * dtvr END IF