116 & ,year_h,mon__h,day__h,hour_h,minu_h,sec__h &
117 & ,ixq1 ,i0x0 ,mxqq &
118 & ,jyq1 ,j0y0 ,myqq &
124 & ,ioi0sv,ioj0sv,n0pt)
170 logical :: FlagSV_Veg
171 logical :: FlagSV_SNo
172 logical :: FlagSV_BSn
173 logical :: FlagSV_KzT
174 logical :: FlagSV_SWD
175 logical :: FlagSV_SBC
176 logical :: FlagSV_UBC
178 character(len=1) :: TypeAT
179 logical :: FlagAT_TKE
181 logical :: FlagCM_UpD
184 logical :: FlagS0_SLO
185 logical :: FlagS0_MtM
198 real,
dimension(mzqq) :: s_HOST
199 real ,
dimension(kcolq) :: sh___HOST
200 real(kind=real8),
dimension(kcolq) :: sh_a_HOST
201 real(kind=real8),
dimension(kcolq) :: slopxHOST
202 real(kind=real8),
dimension(kcolq) :: slopyHOST
203 real(kind=real8),
dimension(kcolq) :: slopeHOST
204 real(kind=real8),
dimension(kcolq,m_azim) :: MMaskHOST
205 real,
dimension(kcolq) :: lonh_HOST
206 real,
dimension(kcolq) :: latr_HOST
209 real,
dimension(kcolq,mzqq) :: pkta_HOST
210 real,
dimension(kcolq) :: psa__HOST
211 real,
dimension(kcolq,mzqq) :: gZa__HOST
212 real,
dimension(kcolq,mzqq) :: gZam_HOST
213 real,
dimension(kcolq,mzq) :: Ua___HOST
214 real,
dimension(kcolq,mzq) :: Va___HOST
215 real,
dimension(kcolq,mzq) ,
INTENT(IN) :: Wa___HOST
216 real,
dimension(kcolq,mzqq) :: qv___HOST
217 real,
dimension(kcolq,mzq) :: qw___HOST
218 real,
dimension(kcolq,mzq) :: CCN__HOST
219 real,
dimension(kcolq,mzq) :: qi___HOST
220 real,
dimension(kcolq,mzq) :: CIN__HOST
221 real,
dimension(kcolq,mzq) :: CF___HOST
222 real,
dimension(kcolq,mzq) :: qs___HOST
223 real,
dimension(kcolq,mzq) :: qr___HOST
224 real,
dimension(kcolq,mzq) :: TKE__HOST
225 real,
dimension(kcolq,mzq) :: eps__HOST
227 real,
dimension(kcolq,mzq) :: dpkt___dt
228 real,
dimension(kcolq,mzq) :: dua____dt
229 real,
dimension(kcolq,mzq) :: dva____dt
230 real,
dimension(kcolq,mzq) :: dqv____dt
231 real,
dimension(kcolq,mzq) :: dqw____dt
233 real,
dimension(kcolq,mzq) :: dqi____dt
234 real,
dimension(kcolq,mzq) :: dCi____dt
235 real,
dimension(kcolq,mzq) :: dCF____dt
236 real,
dimension(kcolq,mzq) :: dqs____dt
237 real,
dimension(kcolq,mzq) :: dqr____dt
239 real,
dimension(kcolq,mzq) :: dpktSV_dt
240 real,
dimension(kcolq,mzq) :: dpktAT_dt
241 real,
dimension(kcolq,mzq) :: dqv_AT_dt
242 real,
dimension(kcolq,mzq) :: dqw_AT_dt
244 real,
dimension(kcolq,mzq) :: dqi_AT_dt
245 real,
dimension(kcolq,mzq) :: dCi_AT_dt
246 real,
dimension(kcolq,mzq) :: dqs_AT_dt
247 real,
dimension(kcolq,mzq) :: dqr_AT_dt
248 real,
dimension(kcolq,mzq) :: dpktCM_dt
249 real,
dimension(kcolq,mzq) :: dqv_CM_dt
250 real,
dimension(kcolq,mzq) :: dqw_CM_dt
252 real,
dimension(kcolq,mzq) :: dqi_CM_dt
253 real,
dimension(kcolq,mzq) :: dCi_CM_dt
254 real,
dimension(kcolq,mzq) :: dCF_CM_dt
255 real,
dimension(kcolq,mzq) :: dqs_CM_dt
256 real,
dimension(kcolq,mzq) :: dqr_CM_dt
257 real,
dimension(kcolq,mzq) :: dpktCP_dt
258 real,
dimension(kcolq,mzq) :: dqv_CP_dt
259 real,
dimension(kcolq,mzq) :: dqw_CP_dt
260 real,
dimension(kcolq,mzq) :: dqi_CP_dt
261 real,
dimension(kcolq,mzq) :: dpktRT_dt
271 integer :: ixq1,i0x0,mxqq
272 integer :: jyq1,j0y0,myqq
279 integer,
dimension(n0pt) :: IOi0SV
280 integer,
dimension(n0pt) :: IOj0SV
283 real,
dimension(kcolq) :: sst__HOST
302 real(kind=real8),
dimension(kcolq,mzq) :: Wind_HOST
303 real(kind=real8) :: dTdz = 0.0065
304 real(kind=real8) :: dTimAT
306 integer :: i ,j ,ikl ,ikp
308 integer :: n ,ipt ,iwr ,kk
328 wind_host(ikl,k) = sqrt(ua___host(ikl,k)*ua___host(ikl,k)+va___host(ikl,k)*va___host(ikl,k))
338 print*,
'Dans PHY_MAR:'
349 jt__sv = max(1,int(dt0_sv /dt0dyn))
352 61
format (
'dt__SV =',f9.3,
' differs from dt0_SV =',f9.3)
358 jt__at = max(1,int(dt0_at /dt0dyn))
361 62
format (
'dt__AT =',f9.3,
' differs from dt0_AT =',f9.3)
367 jt__cm = max(1,int(dt0_cm /dt0dyn))
370 63
format (
'dt__CM =',f9.3,
' differs from dt0_CM =',f9.3)
376 jt__cp = max(1,int(dt0_cp /dt0dyn))
379 64
format (
'dt__CP =',f9.3,
' differs from dt0_CP =',f9.3)
385 jt__rt = max(1,int(dt0_rt /dt0dyn))
388 65
format (
'dt__RT =',f9.3,
' differs from dt0_RT =',f9.3)
420 hsigma(k) =-(288./.0065)*(
sigma(k) ** (287.*.0065/9.81)-1.)
424 501
format(/,
' sigma: ',10f8.5 &
428 502
format(/,
' hsigma: ',10f8.1 &
440 sh__ap(ikl) = sh___host(ikl)
441 sha_ap(ikl) = sh_a_host(ikl)
445 sloxap(ikl) = slopxhost(ikl)
446 sloyap(ikl) = slopyhost(ikl)
447 slopap(ikl) = slopehost(ikl)
461 IF ((lonh_host(ikl) ) .LT. 0)
THEN
462 lon__r(ikl) = 360 + (lonh_host(ikl) * 2.0 *
pinmbr / 24.0)
466 lon__h(ikl) = lonh_host(ikl)
467 lat__r(ikl) = latr_host(ikl)
507 psa_dy(ikl ) = psa__host(ikl)
523 winddy(ikl,k) = wind_host(ikl,k)
524 ua__dy(ikl,k) = ua___host(ikl,k)
525 va__dy(ikl,k) = va___host(ikl,k)
526 wa__dy(ikl,k) = wa___host(ikl,k)
547 IF (flags0_slo .AND. flags0_mtm)
THEN
550 cszks0(ikl,k) = mmaskhost(ikl,k)
579 windsv(ikp,mn,k) = wind_host(ikp,k)
580 pkt0sv(ikp,mn,kk)= pkta_host(ikp,k)
599 IF (ioi0sv(ipt).EQ.0)
THEN
604 IF (ioj0sv(ipt).EQ.0)
THEN
609 write(6,*)
'ipt , IOi_SV, IOj_SV = ' &
613 IF (iwr.LE.
nbwri)
THEN
618 write(6,*)
'n , i___SV, j___SV, n___SV, iwr = ' &
698 timetu = (float(351)+(float(
yeartu) -float(1902)) *float(365)&
699 & +(float(
yeartu) -float(1901)) /float( 4)&
703 & + float(
day_tu)-float(1) ) *float( 24)&
723 print*,
'CONTROL PHY_MAR temps'
724 print*,
' Year_H =', year_h
725 print*,
' Mon__H =', mon__h
726 print*,
' Day__H =', day__h
727 print*,
' Hour_H =', hour_h
728 print*,
' minu_H =', minu_h
729 print*,
' sec__H =', sec__h
733 print*,
'dTimAT=',dtimat
746 pkt_dy(ikl,k) = pkta_host(ikl,k)
751 qv__dy(ikl,k) = qv___host(ikl,k)
755 pkt_dy(ikl,k) = pkta_host(ikl,k)
763 qv__dy(ikl,k) = qv___host(ikl,k)
773 tke_at(ikl,k) = tke__host(ikl,k)
774 eps_at(ikl,k) = eps__host(ikl,k)
792 qw__cm(ikl,k) = qw___host(ikl,k)
801 qi__cm(ikl,k) = qi___host(ikl,k)
802 ccnicm(ikl,k) = cin__host(ikl,k)
815 qs__cm(ikl,k) = qs___host(ikl,k)
816 qr__cm(ikl,k) = qr___host(ikl,k)
827 sst_sb(ikl) = sst__host(ikl)
842 psa_dy(ikl) = psa__host(ikl)
844 winddy(ikl,k) = wind_host(ikl,k)
845 ua__dy(ikl,k) = ua___host(ikl,k)
846 va__dy(ikl,k) = va___host(ikl,k)
925 windsv(ikp,mn,k) = wind_host(ikp,k)
926 pkt0sv(ikp,mn,kk)= pkta_host(ikp,k)
927 qv__sv(ikp,mn,kk)= qv___host(ikp,k)
928 zza_sv(ikp,mn,kk)= (gza__host(ikp,k) &
1035 dpkt___dt(ikl,k) = 0.0
1036 dua____dt(ikl,k) = 0.0
1037 dva____dt(ikl,k) = 0.0
1038 dqv____dt(ikl,k) = 0.0
1039 dqw____dt(ikl,k) = 0.0
1040 dcf____dt(ikl,k) = 0.0
1041 dqi____dt(ikl,k) = 0.0
1042 dci____dt(ikl,k) = 0.0
1043 dqs____dt(ikl,k) = 0.0
1044 dqr____dt(ikl,k) = 0.0
1059 dpkt___dt(ikl,k) = dpkt___dt(ikl,k) +
dpktsv_gpt(ikl,k)
1069 dua____dt(ikl,k) =
dua_at(ikl,k)
1070 dva____dt(ikl,k) =
dva_at(ikl,k)
1071 dpktat_dt(ikl,k) =
dpktat(ikl,k)
1072 dqv_at_dt(ikl,k) =
dqv_at(ikl,k)
1073 dqw_at_dt(ikl,k) =
dqw_at(ikl,k)
1074 dqi_at_dt(ikl,k) =
dqi_at(ikl,k)
1075 dqs_at_dt(ikl,k) =
dqs_at(ikl,k)
1076 dqr_at_dt(ikl,k) =
dqr_at(ikl,k)
1078 dci_at_dt(ikl,k) =
dci_at(ikl,k)
1082 tke__host(ikl,k) =
tke_at(ikl,k)
1083 eps__host(ikl,k) =
eps_at(ikl,k)
1093 dpkt___dt(ikl,k) = dpkt___dt(ikl,k) +
dpktat(ikl,k)
1094 dqv____dt(ikl,k) = dqv____dt(ikl,k) +
dqv_at(ikl,k)
1095 dqw____dt(ikl,k) = dqw____dt(ikl,k) +
dqw_at(ikl,k)
1096 dqi____dt(ikl,k) = dqi____dt(ikl,k) +
dqi_at(ikl,k)
1097 dqs____dt(ikl,k) = dqs____dt(ikl,k) +
dqs_at(ikl,k)
1098 dqr____dt(ikl,k) = dqr____dt(ikl,k) +
dqr_at(ikl,k)
1100 dci____dt(ikl,k) = dci____dt(ikl,k) +
dci_at(ikl,k)
1111 dpktcm_dt(ikl,k) =
dpktcm(ikl,k)
1112 dqv_cm_dt(ikl,k) =
dqv_cm(ikl,k)
1113 dqw_cm_dt(ikl,k) =
dqw_cm(ikl,k)
1114 dcf_cm_dt(ikl,k) =
dcf_cm(ikl,k)
1115 dqi_cm_dt(ikl,k) =
dqi_cm(ikl,k)
1116 dqs_cm_dt(ikl,k) =
dqs_cm(ikl,k)
1117 dqr_cm_dt(ikl,k) =
dqr_cm(ikl,k)
1119 dci_cm_dt(ikl,k) =
dci_cm(ikl,k)
1125 dpkt___dt(ikl,k) = dpkt___dt(ikl,k) +
dpktcm(ikl,k)
1126 dqv____dt(ikl,k) = dqv____dt(ikl,k) +
dqv_cm(ikl,k)
1127 dqw____dt(ikl,k) = dqw____dt(ikl,k) +
dqw_cm(ikl,k)
1128 dcf____dt(ikl,k) = dcf____dt(ikl,k) +
dcf_cm(ikl,k)
1129 dqi____dt(ikl,k) = dqi____dt(ikl,k) +
dqi_cm(ikl,k)
1130 dqs____dt(ikl,k) = dqs____dt(ikl,k) +
dqs_cm(ikl,k)
1131 dqr____dt(ikl,k) = dqr____dt(ikl,k) +
dqr_cm(ikl,k)
1133 dci____dt(ikl,k) = dci____dt(ikl,k) +
dci_cm(ikl,k)
1143 dpktcp_dt(ikl,k) =
dpktcp(ikl,k)
1144 dqv_cp_dt(ikl,k) =
dqv_cp(ikl,k)
1145 dqw_cp_dt(ikl,k) =
dqw_cp(ikl,k)
1146 dqi_cp_dt(ikl,k) =
dqi_cp(ikl,k)
1152 dpkt___dt(ikl,k) = dpkt___dt(ikl,k) +
dpktcp(ikl,k)
1153 dqv____dt(ikl,k) = dqv____dt(ikl,k) +
dqv_cp(ikl,k)
1154 dqw____dt(ikl,k) = dqw____dt(ikl,k) +
dqw_cp(ikl,k)
1155 dqi____dt(ikl,k) = dqi____dt(ikl,k) +
dqi_cp(ikl,k)
1165 dpktrt_dt(ikl,k) =
dpktrt(ikl,k)
1171 dpkt___dt(ikl,k) = dpkt___dt(ikl,k) +
dpktrt(ikl,k)
1195 pkta_host(ikl,k) =
pkt_dy(ikl,k)
1196 qv___host(ikl,k) =
qv__dy(ikl,k)
1207 qw___host(ikl,k) =
qw__cm(ikl,k)
1209 cf___host(ikl,k) =
cfracm(ikl,k)
1210 qi___host(ikl,k) =
qi__cm(ikl,k)
1211 cin__host(ikl,k) =
ccnicm(ikl,k)
1212 qs___host(ikl,k) =
qs__cm(ikl,k)
1213 qr___host(ikl,k) =
qr__cm(ikl,k)
1242 & (flag_o .AND. ((
minutu.EQ.0 .AND.
sec_tu.EQ.0) .OR. &
1251 400
format(//,
' pkt TENDENCIES',/,
' **************'/,1
x)
1253 403
format(3
x,2(i2,
'-'),i4,4
x,3(i2,
'-'),
' Simulation Iteration No ',i6,/,1
x)
1256 401
format(
' | SISVAT | Atm_AT | CMiPhy | CVAmnh | radCEP |')
1258 402
format(
' | [K/d] | [K/d] | [K/d] | [K/d] | [K/d] |')
1260 404
format(4(
'-'),
'+',5(13(
'-'),
'+'))
1268 405
format(i3,
' |',5(f12.6,
' |'))
1270 IF (mod(k,20).EQ.0)
THEN
1282 410
format(//,
' Qv TENDENCIES',/,
' **************'/,1
x)
1287 411
format(
' | SISVAT | Atm_AT | CMiPhy | CVAmnh | TOTAL |')
1289 412
format(
' | [g/kg/min] | [g/kg/min] | [g/kg/min] | [g/kg/min] | [g/kg/min] |')
1294 & ,
dqv_at(ikl,k)*60000. &
1295 & ,
dqv_cm(ikl,k)*60000. &
1296 & ,
dqv_cp(ikl,k)*60000. &
1297 & , dqv____dt(ikl,k)*60000.
1298 415
format(i3,
' |',12
x,
' |',4(f12.6,
' |'))
1300 IF (mod(k,20).EQ.0)
THEN
1310 IF (flag_o .AND. ((
minutu.EQ.0 .AND.
sec_tu.EQ.0) .OR. &
subroutine phy_atm_cm_ini
real(kind=real8), dimension(:,:), allocatable, save dqi_cp
real(kind=real8), save dzamin
integer, dimension(0:12), save njyear
real(kind=real8), save timetu
real(kind=real8), dimension(:,:), allocatable, save dqs_at
real(kind=real8), dimension(:,:,:), allocatable, save zza_sv
real(kind=real8), dimension(:), allocatable, save dsigma
real(kind=real8), dimension(:,:), allocatable, save dqw_at
integer, dimension(:), allocatable, save ii__ap
real(kind=real8), save un_1
real(kind=real8), dimension(:,:), allocatable, save ua__dy
subroutine phy_atm_dy_ini
real(kind=real8), dimension(:,:), allocatable, save dqv_cm
real(kind=real8), dimension(:), allocatable, save coslat
real(kind=real8), dimension(:,:), allocatable, save qv__dy
integer, dimension(:), allocatable, save k1m
real(kind=real8), dimension(:), allocatable, save sha_ap
real(kind=real8), dimension(:), allocatable, save sh__ap
subroutine phy_atm_rt_run(rklonr, iklOUT)
real(kind=real8), dimension(:), allocatable, save lon__r
real(kind=real8), dimension(:), allocatable, save sloxap
real(kind=real8), dimension(:,:), allocatable, save exnrdy
real(kind=real8), dimension(:,:), allocatable, save dpktcp
real(kind=real8), dimension(:,:), allocatable, save qw__cm
real(kind=real8), dimension(:,:), allocatable, save dua_at
integer, dimension(0:12), save njleap
subroutine phy_atm_at_run(FlagSV_KzT, FlagCM)
real(kind=real8), dimension(:,:), allocatable, save dva_at
real(kind=real8), dimension(:,:), allocatable, save dqi_cm
real(kind=real8), save dt__sv
real(kind=real8), dimension(:,:), allocatable, save dqi_at
real(kind=real8), dimension(:,:), allocatable, save trt_at
real(kind=real8), dimension(:,:), allocatable, save va__dy
real(kind=real8), dimension(:,:), allocatable, save qr__cm
integer, dimension(:), allocatable, save no__sv
real(kind=real8), dimension(:,:), allocatable, save ua__sv
real(kind=real8), save pinmbr
real(kind=real8), dimension(:,:), allocatable, save cfracm
real(kind=real8), dimension(:,:,:), allocatable, save qv__sv
real(kind=real8), dimension(:,:,:), allocatable, save roa_sv
real(kind=real8), dimension(:,:), allocatable, save dci_cm
real(kind=real8), save dt__rt
real(kind=real8), dimension(:,:), allocatable, save dqv_cp
real(kind=real8), dimension(:), allocatable, save dsigmi
real(kind=real8), save grav_i
real(kind=real8), dimension(:,:), allocatable, save cszks0
real(kind=real8), dimension(:,:), allocatable, save dqr_cm
integer, dimension(:), allocatable, save k2m
subroutine phy_atm_s0_ini
real(kind=real8), dimension(:), allocatable, save lat__r
subroutine phy_atm_s0_run
real(kind=real8), save dt__cp
subroutine phy_sisvat_ini
real(kind=real8), dimension(:,:), allocatable, save zmiddy
real(kind=real8), dimension(:,:), allocatable, save eps_at
real(kind=real8), dimension(:,:), allocatable, save wa__dy
integer, dimension(:), allocatable, save i___sv
real(kind=real8), save r_dair
real(kind=real8), save dt__at
real(kind=real8), dimension(:,:), allocatable, save ccnicm
real(kind=real8), dimension(:), allocatable, save lon__h
subroutine phy_atm_cm_qsat
real(kind=real8), save grav_f
subroutine phy_atm_dy_run
real(kind=real8), dimension(:,:), allocatable, save winddy
real(kind=real8), dimension(:,:), allocatable, save dcf_cm
integer, dimension(:), allocatable, save k1p
real(kind=real8), dimension(:,:), allocatable, save dpktrt
subroutine phy_sisvat_run(
subroutine phy_atm_rt_ini
real(kind=real8), dimension(:,:), allocatable, save dpktsv_gpt
real(kind=real8), dimension(:,:), allocatable, save z___dy
real(kind=real8), dimension(:), allocatable, save hsigma
real(kind=real8), dimension(:,:), allocatable, save ta__dy
!$Header!c c INCLUDE fxyprim h c c c Fonctions in line c c REAL fyprim REAL rj c c il faut la calculer avant d appeler ces fonctions c c c Fonctions a changer selon x(x) et y(y) choisis.c-----------------------------------------------------------------c c.....ici
integer, dimension(:), allocatable, save ioi_sv
real(kind=real8), dimension(:), allocatable, save slopap
real(kind=real8), dimension(:,:,:), allocatable, save windsv
real(kind=real8), dimension(:,:), allocatable, save roa_dy
real(kind=real8), dimension(:,:), allocatable, save dqw_cp
real(kind=real8), dimension(:,:), allocatable, save dqw_cm
real(kind=real8), dimension(:,:), allocatable, save dqs_cm
real(kind=real8), dimension(:), allocatable, save psa_dy
real(kind=real8), dimension(:,:,:), allocatable, save pkt0sv
real(kind=real8), dimension(:), allocatable, save sinlat
real(kind=real8), dimension(:,:), allocatable, save tke_at
real(kind=real8), dimension(:), allocatable, save sst_sb
real(kind=real8), save rcp
real(kind=real8), save pt__dy
real(kind=real8), save timeat
real(kind=real8), dimension(:,:), allocatable, save va__sv
real(kind=real8), dimension(:,:), allocatable, save dci_at
real(kind=real8), dimension(:), allocatable, save sloyap
real(kind=real8), dimension(:), allocatable, save sigma
real(kind=real8), dimension(:,:), allocatable, save qi__cm
real(kind=real8), dimension(:,:), allocatable, save exnrsv
subroutine phy_atm_cm_run
subroutine phy________out(MOTIVATION)
real(kind=real8), save eps6
subroutine phy_atm_at_ini(FlagAT_TKE, TypeAT)
integer, dimension(:), allocatable, save n___sv
real(kind=real8), dimension(:), allocatable, save sigmi
real(kind=real8), save zer0
real(kind=real8), dimension(:,:), allocatable, save qs__cm
real(kind=real8), dimension(:,:), allocatable, save pkt_dy
integer, dimension(:), allocatable, save ioj_sv
real(kind=real8), dimension(:,:), allocatable, save tat_sv
real(kind=real8), dimension(:,:), allocatable, save dpktcm
real(kind=real8), dimension(:,:), allocatable, save pkpasv
real(kind=real8), dimension(:,:), allocatable, save dqv_at
real(kind=real8), dimension(:,:), allocatable, save roamdy
real(kind=real8), save sh_max
subroutine phy_atm_cp_ini(mzc, kcolc)
real(kind=real8), dimension(:,:), allocatable, save dqr_at
integer, dimension(:), allocatable, save j___sv
real(kind=real8), dimension(:,:), allocatable, save dpktat
integer, dimension(:), allocatable, save jj__ap
real(kind=real8), save dt__cm
subroutine phy_atm_cp_run(mzc, kcolc)