Changeset 4727 for LMDZ6/branches/LMDZ_ECRad/libf/phylmd/dyn1d
- Timestamp:
- Oct 19, 2023, 4:02:57 PM (14 months ago)
- Location:
- LMDZ6/branches/LMDZ_ECRad
- Files:
-
- 14 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/branches/LMDZ_ECRad
- Property svn:mergeinfo changed
-
LMDZ6/branches/LMDZ_ECRad/libf/phylmd/dyn1d/1DUTILS.h
r4482 r4727 266 266 !Config Def = 0. 267 267 !Config Help = 268 t surf= 0.268 time_ini = 0. 269 269 CALL getin('time_ini',time_ini) 270 270 -
LMDZ6/branches/LMDZ_ECRad/libf/phylmd/dyn1d/1D_decl_cases.h
r4104 r4727 1 #include"netcdf.inc"1 INCLUDE "netcdf.inc" 2 2 3 3 ! Declarations specifiques au cas Toga -
LMDZ6/branches/LMDZ_ECRad/libf/phylmd/dyn1d/1D_read_forc_cases.h
r4482 r4727 73 73 74 74 ! initial and boundary conditions : 75 ! initial pressure 75 76 psurf = ps_prof_cas 76 if (tskin_prof_cas .NE. 0.) THEN 77 78 !initial surface temperature 79 if (tskin_prof_cas .NE. 0.) then 80 ! we take the first value of the prescribed ts 77 81 tsurf=tskin_prof_cas 82 else if (ts_prof_cas .NE. 0) then 83 ! if an initial ts value is present, we take it 84 tsurf=ts_prof_cas 78 85 endif 79 86 87 ! ts forcing during the run (if any) 80 88 tg = ts_prof_cas 81 89 if ((tg .eq. 0.) .and. (tskin_prof_cas .NE. 0.)) THEN -
LMDZ6/branches/LMDZ_ECRad/libf/phylmd/dyn1d/1Dconv.h
r2310 r4727 13 13 !cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc 14 14 15 #include"YOMCST.h"15 INCLUDE "YOMCST.h" 16 16 17 17 INTEGER klev … … 461 461 implicit none 462 462 463 #include"dimensions.h"464 !cccc #include"dimphy.h"463 INCLUDE "dimensions.h" 464 !cccc INCLUDE "dimphy.h" 465 465 466 466 integer k -
LMDZ6/branches/LMDZ_ECRad/libf/phylmd/dyn1d/mod_1D_amma_read.F90
r2373 r4727 59 59 implicit none 60 60 61 #include"netcdf.inc"61 INCLUDE "netcdf.inc" 62 62 63 63 INTEGER nid,rid,ierr … … 180 180 !program reading forcings of the AMMA case study 181 181 implicit none 182 #include"netcdf.inc"182 INCLUDE "netcdf.inc" 183 183 184 184 integer ntime,nlevel … … 407 407 !--------------------------------------------------------------------------------------- 408 408 409 #include"compar1d.h"409 INCLUDE "compar1d.h" 410 410 411 411 ! inputs: -
LMDZ6/branches/LMDZ_ECRad/libf/phylmd/dyn1d/mod_1D_cases_read.F90
r2373 r4727 90 90 implicit none 91 91 92 #include"netcdf.inc"92 INCLUDE "netcdf.inc" 93 93 94 94 INTEGER nid,rid,ierr … … 267 267 !program reading forcing of the case study 268 268 implicit none 269 #include"netcdf.inc"269 INCLUDE "netcdf.inc" 270 270 271 271 integer ntime,nlevel … … 994 994 !--------------------------------------------------------------------------------------- 995 995 996 #include"compar1d.h"997 #include"date_cas.h"996 INCLUDE "compar1d.h" 997 INCLUDE "date_cas.h" 998 998 999 999 ! inputs: -
LMDZ6/branches/LMDZ_ECRad/libf/phylmd/dyn1d/mod_1D_cases_read2.F90
r4482 r4727 81 81 implicit none 82 82 83 #include"netcdf.inc"83 INCLUDE "netcdf.inc" 84 84 85 85 INTEGER nid,rid,ierr … … 192 192 implicit none 193 193 194 #include"netcdf.inc"194 INCLUDE "netcdf.inc" 195 195 196 196 INTEGER nid,rid,ierr … … 240 240 allocate(plev_cas(nlev_cas,nt_cas),plevh_cas(nlev_cas+1)) 241 241 allocate(z_cas(nlev_cas,nt_cas),zh_cas(nlev_cas+1)) 242 allocate(ap_cas(nlev_cas+1),bp_cas(n t_cas+1))242 allocate(ap_cas(nlev_cas+1),bp_cas(nlev_cas+1)) 243 243 allocate(t_cas(nlev_cas,nt_cas),q_cas(nlev_cas,nt_cas),qv_cas(nlev_cas,nt_cas),ql_cas(nlev_cas,nt_cas), & 244 244 qi_cas(nlev_cas,nt_cas),rh_cas(nlev_cas,nt_cas)) … … 320 320 implicit none 321 321 322 #include"netcdf.inc"323 #include"date_cas.h"322 INCLUDE "netcdf.inc" 323 INCLUDE "date_cas.h" 324 324 325 325 INTEGER nid,rid,ierr … … 393 393 allocate(plev_cas(nlev_cas,nt_cas),plevh_cas(nlev_cas+1)) 394 394 allocate(z_cas(nlev_cas,nt_cas),zh_cas(nlev_cas+1)) 395 allocate(ap_cas(nlev_cas+1),bp_cas(n t_cas+1))395 allocate(ap_cas(nlev_cas+1),bp_cas(nlev_cas+1)) 396 396 allocate(t_cas(nlev_cas,nt_cas),q_cas(nlev_cas,nt_cas),qv_cas(nlev_cas,nt_cas),ql_cas(nlev_cas,nt_cas), & 397 397 qi_cas(nlev_cas,nt_cas),rh_cas(nlev_cas,nt_cas)) … … 543 543 use netcdf, only: nf90_get_var 544 544 implicit none 545 #include"netcdf.inc"545 INCLUDE "netcdf.inc" 546 546 547 547 integer ntime,nlevel … … 660 660 use netcdf, only: nf90_get_var 661 661 implicit none 662 #include"netcdf.inc"662 INCLUDE "netcdf.inc" 663 663 664 664 integer ntime,nlevel … … 831 831 use netcdf, only: nf90_get_var 832 832 implicit none 833 #include"netcdf.inc"833 INCLUDE "netcdf.inc" 834 834 835 835 integer ntime,nlevel,k,t … … 1061 1061 !--------------------------------------------------------------------------------------- 1062 1062 1063 #include"compar1d.h"1064 #include"date_cas.h"1063 INCLUDE "compar1d.h" 1064 INCLUDE "date_cas.h" 1065 1065 1066 1066 ! inputs: … … 1135 1135 ! endif 1136 1136 timeit=(day-day_ju_ini_cas)*86400 1137 print *,'day=',day1138 print *,'day_ju_ini_cas=',day_ju_ini_cas1139 print *,'pdt_cas=',pdt_cas1140 print *,'timeit=',timeit1141 print *,'nt_cas=',nt_cas1137 !print *,'day=',day 1138 !print *,'day_ju_ini_cas=',day_ju_ini_cas 1139 !print *,'pdt_cas=',pdt_cas 1140 !print *,'timeit=',timeit 1141 !print *,'nt_cas=',nt_cas 1142 1142 1143 1143 ! Determine the closest observation times: … … 1155 1155 time_cas1=(it_cas1-1)*pdt_cas 1156 1156 time_cas2=(it_cas2-1)*pdt_cas 1157 print *,'it_cas1,it_cas2,time_cas1,time_cas2=',it_cas1,it_cas2,time_cas1,time_cas21157 !print *,'it_cas1,it_cas2,time_cas1,time_cas2=',it_cas1,it_cas2,time_cas1,time_cas2 1158 1158 1159 1159 if (it_cas1 .gt. nt_cas) then … … 1270 1270 !--------------------------------------------------------------------------------------- 1271 1271 1272 #include"compar1d.h"1273 #include"date_cas.h"1272 INCLUDE "compar1d.h" 1273 INCLUDE "date_cas.h" 1274 1274 1275 1275 ! inputs: … … 1350 1350 ! endif 1351 1351 timeit=(day-day_ju_ini_cas)*86400 1352 print *,'day=',day1353 print *,'day_ju_ini_cas=',day_ju_ini_cas1354 print *,'pdt_cas=',pdt_cas1355 print *,'timeit=',timeit1356 print *,'nt_cas=',nt_cas1352 !print *,'day=',day 1353 !print *,'day_ju_ini_cas=',day_ju_ini_cas 1354 !print *,'pdt_cas=',pdt_cas 1355 !print *,'timeit=',timeit 1356 !print *,'nt_cas=',nt_cas 1357 1357 1358 1358 ! Determine the closest observation times: … … 1370 1370 time_cas1=(it_cas1-1)*pdt_cas 1371 1371 time_cas2=(it_cas2-1)*pdt_cas 1372 print *,'timeit,pdt_cas,nt_cas=',timeit,pdt_cas,nt_cas1373 print *,'it_cas1,it_cas2,time_cas1,time_cas2=',it_cas1,it_cas2,time_cas1,time_cas21372 !print *,'timeit,pdt_cas,nt_cas=',timeit,pdt_cas,nt_cas 1373 !print *,'it_cas1,it_cas2,time_cas1,time_cas2=',it_cas1,it_cas2,time_cas1,time_cas2 1374 1374 1375 1375 if (it_cas1 .gt. nt_cas) then … … 1403 1403 t_prof_cas(k) = t_cas(k,it_cas2) & 1404 1404 -frac*(t_cas(k,it_cas2)-t_cas(k,it_cas1)) 1405 print *,'k,frac,plev_cas1,plev_cas2=',k,frac,plev_cas(k,it_cas1),plev_cas(k,it_cas2)1405 !print *,'k,frac,plev_cas1,plev_cas2=',k,frac,plev_cas(k,it_cas1),plev_cas(k,it_cas2) 1406 1406 theta_prof_cas(k) = theta_cas(k,it_cas2) & 1407 1407 -frac*(theta_cas(k,it_cas2)-theta_cas(k,it_cas1)) -
LMDZ6/branches/LMDZ_ECRad/libf/phylmd/dyn1d/mod_1D_cases_read_std.F90
r4482 r4727 90 90 implicit none 91 91 92 #include"netcdf.inc"93 #include"date_cas.h"92 INCLUDE "netcdf.inc" 93 INCLUDE "date_cas.h" 94 94 95 95 INTEGER nid,rid,ierr … … 163 163 allocate(plev_cas(nlev_cas,nt_cas),plevh_cas(nlev_cas+1)) 164 164 allocate(z_cas(nlev_cas,nt_cas),zh_cas(nlev_cas+1)) 165 allocate(ap_cas(nlev_cas+1),bp_cas(n t_cas+1))165 allocate(ap_cas(nlev_cas+1),bp_cas(nlev_cas+1)) 166 166 allocate(t_cas(nlev_cas,nt_cas),q_cas(nlev_cas,nt_cas),qv_cas(nlev_cas,nt_cas),ql_cas(nlev_cas,nt_cas), & 167 167 qi_cas(nlev_cas,nt_cas),rh_cas(nlev_cas,nt_cas)) … … 331 331 use netcdf, only: nf90_get_var 332 332 implicit none 333 #include"netcdf.inc"334 #include"compar1d.h"333 INCLUDE "netcdf.inc" 334 INCLUDE "compar1d.h" 335 335 336 336 integer ntime,nlevel,k,t … … 671 671 !--------------------------------------------------------------------------------------- 672 672 673 #include"compar1d.h"674 #include"date_cas.h"673 INCLUDE "compar1d.h" 674 INCLUDE "date_cas.h" 675 675 676 676 ! inputs: … … 934 934 implicit none 935 935 936 #include"YOMCST.h"937 #include"dimensions.h"936 INCLUDE "YOMCST.h" 937 INCLUDE "dimensions.h" 938 938 939 939 !------------------------------------------------------------------------- -
LMDZ6/branches/LMDZ_ECRad/libf/phylmd/dyn1d/old_1DUTILS_read_interp.h
r4482 r4727 150 150 implicit none 151 151 152 #include"netcdf.inc"152 INCLUDE "netcdf.inc" 153 153 154 154 integer ntime,nlevel … … 495 495 496 496 implicit none 497 #include"netcdf.inc"497 INCLUDE "netcdf.inc" 498 498 integer nid,ttm,llm 499 499 real*8 time(ttm) … … 545 545 implicit none 546 546 547 #include"dimensions.h"547 INCLUDE "dimensions.h" 548 548 549 549 !------------------------------------------------------------------------- … … 659 659 implicit none 660 660 661 #include"dimensions.h"661 INCLUDE "dimensions.h" 662 662 663 663 !------------------------------------------------------------------------- … … 781 781 ! Read RICO forcing data 782 782 !------------------------------------------------------------------------- 783 #include"dimensions.h"783 INCLUDE "dimensions.h" 784 784 785 785 … … 1057 1057 implicit none 1058 1058 1059 #include"dimensions.h"1059 INCLUDE "dimensions.h" 1060 1060 1061 1061 !------------------------------------------------------------------------- … … 1179 1179 implicit none 1180 1180 1181 #include"dimensions.h"1181 INCLUDE "dimensions.h" 1182 1182 1183 1183 !------------------------------------------------------------------------- … … 1338 1338 implicit none 1339 1339 1340 #include"dimensions.h"1340 INCLUDE "dimensions.h" 1341 1341 1342 1342 !------------------------------------------------------------------------- … … 1561 1561 !--------------------------------------------------------------------------------------- 1562 1562 1563 #include"compar1d.h"1563 INCLUDE "compar1d.h" 1564 1564 1565 1565 ! inputs: … … 1703 1703 !--------------------------------------------------------------------------------------- 1704 1704 1705 #include"compar1d.h"1705 INCLUDE "compar1d.h" 1706 1706 1707 1707 ! inputs: … … 1816 1816 !--------------------------------------------------------------------------------------- 1817 1817 1818 #include"compar1d.h"1818 INCLUDE "compar1d.h" 1819 1819 1820 1820 ! inputs: … … 2173 2173 implicit none 2174 2174 2175 #include"netcdf.inc"2175 INCLUDE "netcdf.inc" 2176 2176 2177 2177 integer ntime,nlevel … … 2385 2385 implicit none 2386 2386 2387 #include"netcdf.inc"2388 #include"YOMCST.h"2387 INCLUDE "netcdf.inc" 2388 INCLUDE "YOMCST.h" 2389 2389 2390 2390 integer ntime,nlevel … … 2719 2719 implicit none 2720 2720 2721 #include"netcdf.inc"2721 INCLUDE "netcdf.inc" 2722 2722 2723 2723 integer ntime,nlevel,nsol … … 2960 2960 2961 2961 parameter (ncm_1=49180) 2962 #include"YOMCST.h"2962 INCLUDE "YOMCST.h" 2963 2963 2964 2964 real albsfc(ncm_1), albsfc_w(ncm_1) … … 3064 3064 SUBROUTINE read_rtmip(nlev_rtmip,play,plev,t,h2o,o3) 3065 3065 3066 #include"YOMCST.h"3066 INCLUDE "YOMCST.h" 3067 3067 3068 3068 real t(nlev_rtmip), pt(nlev_rtmip),pb(nlev_rtmip),h2o(nlev_rtmip), o3(nlev_rtmip) -
LMDZ6/branches/LMDZ_ECRad/libf/phylmd/dyn1d/old_1D_decl_cases.h
r3780 r4727 1 #include"netcdf.inc"1 INCLUDE "netcdf.inc" 2 2 3 3 ! Declarations specifiques au cas Toga -
LMDZ6/branches/LMDZ_ECRad/libf/phylmd/dyn1d/old_lmdz1d.F90
r4482 r4727 13 13 ftsol, beta_aridity, pbl_tke, pctsrf, radsol, rain_fall, snow_fall, ratqs, & 14 14 rnebcon, rugoro, sig1, w01, solaire_etat0, sollw, sollwdown, & 15 solsw, solswfdiff, t_ancien, q_ancien, u_ancien, v_ancien, &15 solsw, solswfdiff, t_ancien, q_ancien, u_ancien, v_ancien, rneb_ancien, & 16 16 wake_delta_pbl_TKE, delta_tsurf, wake_fip, wake_pe, & 17 17 wake_deltaq, wake_deltat, wake_s, wake_dens, & … … 47 47 48 48 implicit none 49 #include"dimensions.h"50 #include"YOMCST.h"51 !! #include"control.h"52 #include"clesphys.h"53 #include"dimsoil.h"54 ! #include"indicesol.h"55 56 #include"compar1d.h"57 #include"flux_arp.h"58 #include"date_cas.h"59 #include"tsoilnudge.h"60 #include"fcg_gcssold.h"61 !!! #include"fbforcing.h"62 #include"compbl.h"49 INCLUDE "dimensions.h" 50 INCLUDE "YOMCST.h" 51 !! INCLUDE "control.h" 52 INCLUDE "clesphys.h" 53 INCLUDE "dimsoil.h" 54 ! INCLUDE "indicesol.h" 55 56 INCLUDE "compar1d.h" 57 INCLUDE "flux_arp.h" 58 INCLUDE "date_cas.h" 59 INCLUDE "tsoilnudge.h" 60 INCLUDE "fcg_gcssold.h" 61 !!! INCLUDE "fbforcing.h" 62 INCLUDE "compbl.h" 63 63 64 64 !===================================================================== … … 163 163 !===================================================================== 164 164 ! 165 #include"old_1D_decl_cases.h"165 INCLUDE "old_1D_decl_cases.h" 166 166 ! 167 167 !--------------------------------------------------------------------- … … 721 721 !===================================================================== 722 722 723 #include"old_1D_read_forc_cases.h"723 INCLUDE "old_1D_read_forc_cases.h" 724 724 725 725 if (forcing_GCM2SCM) then … … 920 920 u_ancien(1,:)=u(:) 921 921 v_ancien(1,:)=v(:) 922 rneb_ancien(1,:)=0. 922 923 923 924 u10m=0. … … 945 946 !------------------------------------------------------------------------ 946 947 !Al1 =============== restart option ========================== 948 iflag_physiq=0 949 call getin('iflag_physiq',iflag_physiq) 950 947 951 if (.not.restart) then 948 952 iflag_pbl = 5 … … 1065 1069 !--------------------------------------------------------------------- 1066 1070 1067 #include"old_1D_interp_cases.h"1071 INCLUDE "old_1D_interp_cases.h" 1068 1072 1069 1073 if (forcing_GCM2SCM) then … … 1248 1252 !! Increment state variables 1249 1253 !!!!!!!!!!!!!!!!!!!!!!!!!!!!! 1250 print*,'OLDLMDZ1D AANT'1251 1254 IF (flag_inhib_forcing == 0) then ! if tendency of forcings should be added 1252 print*,'OLDLMDZ1D ARES' , forcing_sandu1253 1255 1254 1256 ! pour les cas sandu et astex, on reclacule u,v,q,temp et teta dans 1D_nudge_sandu_astex.h 1255 1257 ! au dessus de 700hpa, on relaxe vers les profils initiaux 1256 1258 if (forcing_sandu .OR. forcing_astex) then 1257 #include"1D_nudge_sandu_astex.h"1259 INCLUDE "1D_nudge_sandu_astex.h" 1258 1260 else 1259 1261 u(1:mxcalc)=u(1:mxcalc) + timestep*( & … … 1360 1362 END SUBROUTINE old_lmdz1d 1361 1363 1362 #include"old_1DUTILS_read_interp.h"1364 INCLUDE "old_1DUTILS_read_interp.h" -
LMDZ6/branches/LMDZ_ECRad/libf/phylmd/dyn1d/replay1d.F90
r4482 r4727 11 11 12 12 implicit none 13 #include"dimensions.h"13 INCLUDE "dimensions.h" 14 14 15 15 real :: airefi … … 75 75 ! Initialisation de la parametrisation 76 76 !--------------------------------------------------------------------- 77 call get_ini_module77 call call_ini_replay 78 78 79 79 !--------------------------------------------------------------------- -
LMDZ6/branches/LMDZ_ECRad/libf/phylmd/dyn1d/scm.F90
r4482 r4727 9 9 ftsol, beta_aridity, pbl_tke, pctsrf, radsol, rain_fall, snow_fall, ratqs, & 10 10 rnebcon, rugoro, sig1, w01, solaire_etat0, sollw, sollwdown, & 11 solsw, solswfdiff, t_ancien, q_ancien, u_ancien, v_ancien, &11 solsw, solswfdiff, t_ancien, q_ancien, u_ancien, v_ancien, rneb_ancien, & 12 12 wake_delta_pbl_TKE, delta_tsurf, wake_fip, wake_pe, & 13 13 wake_deltaq, wake_deltat, wake_s, wake_dens, & … … 43 43 44 44 implicit none 45 #include"dimensions.h"46 #include"YOMCST.h"47 !! #include"control.h"48 #include"clesphys.h"49 #include"dimsoil.h"50 ! #include"indicesol.h"51 52 #include"compar1d.h"53 #include"flux_arp.h"54 #include"date_cas.h"55 #include"tsoilnudge.h"56 #include"fcg_gcssold.h"57 #include"compbl.h"45 INCLUDE "dimensions.h" 46 INCLUDE "YOMCST.h" 47 !! INCLUDE "control.h" 48 INCLUDE "clesphys.h" 49 INCLUDE "dimsoil.h" 50 ! INCLUDE "indicesol.h" 51 52 INCLUDE "compar1d.h" 53 INCLUDE "flux_arp.h" 54 INCLUDE "date_cas.h" 55 INCLUDE "tsoilnudge.h" 56 INCLUDE "fcg_gcssold.h" 57 INCLUDE "compbl.h" 58 58 59 59 !===================================================================== … … 129 129 !===================================================================== 130 130 ! 131 #include"1D_decl_cases.h"131 INCLUDE "1D_decl_cases.h" 132 132 ! 133 133 !--------------------------------------------------------------------- … … 489 489 !===================================================================== 490 490 491 #include"1D_read_forc_cases.h"491 INCLUDE "1D_read_forc_cases.h" 492 492 print*,'A d_t_adv ',d_t_adv(1:20)*86400 493 493 … … 678 678 u_ancien(1,:)=u(:) 679 679 v_ancien(1,:)=v(:) 680 rneb_ancien(1,:)=0. 680 681 681 682 u10m=0. … … 703 704 !------------------------------------------------------------------------ 704 705 !Al1 =============== restart option ====================================== 706 iflag_physiq=0 707 call getin('iflag_physiq',iflag_physiq) 708 705 709 if (.not.restart) then 706 710 iflag_pbl = 5 … … 803 807 !--------------------------------------------------------------------- 804 808 805 #include"1D_interp_cases.h"809 INCLUDE "1D_interp_cases.h" 806 810 807 811 !---------------------------------------------------------------------
Note: See TracChangeset
for help on using the changeset viewer.