meteo-tm5-tno-hpc.rc 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439
  1. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  2. !
  3. ! Include this METEO rc file in your main rcfile:
  4. !
  5. ! #include /path/to/thisfile.rc
  6. !
  7. ! The following variables are used and should have been defined:
  8. !
  9. ! * in the main rcfile:
  10. !
  11. ! ! short names for regions:
  12. ! my.region1 : glb600x400
  13. ! my.region2 : eur300x200
  14. ! my.region3 : eur100x100
  15. !
  16. ! ! grid names for meteo input:
  17. ! my.region1m : ${my.region1}
  18. ! my.region2m : ${my.region2}
  19. ! my.region3m : eux100x100
  20. !
  21. ! ! Number of model levels:
  22. ! my.levs : all | tropo25 | tropo31 | tropo34
  23. !
  24. ! ! ECMWF meteo class ('ei' or 'od')
  25. ! my.meteo.class : ei
  26. !
  27. ! ! what kind of meteo archive ? One of the following two:
  28. ! my.meteo.resol : glb100x100 ! main archive with all ECMWF layers and 1.00x1.00 grid
  29. ! my.meteo.resol : coarsened ! coarsened to ${LEVS} and regions
  30. !
  31. ! ! file format: "tm5-nc" for netcdf, "tm5-hdf" for hdf
  32. ! my.meteo.format : tm5-nc
  33. !
  34. ! ! call meteo setup script (T|F) ?
  35. ! my.tmm.setup.apply : F
  36. !
  37. ! * in the machine rc file:
  38. !
  39. ! ! local directory with unpacked meteo files:
  40. ! my.meteo.dir : /scratch/shared/meteo
  41. !
  42. ! ! where to search of missing files ?
  43. ! my.meteo.search : ec:ecfs[nlh]:TM/meteo
  44. !
  45. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  46. !
  47. ! The keys that define meteo usage have the form:
  48. !
  49. ! <key(s)>.<name(s)>
  50. !
  51. ! or, if the property depends on the zoom region:
  52. !
  53. ! <key(s)>.<region_name>.<name(s)>
  54. !
  55. ! The region_name is either a '*' or names like 'glb300x200' etc.
  56. !
  57. ! Multipe names could apply to the same field; see the table below.
  58. ! A '*' applies to all fields.
  59. ! If more than name applies to a field, the last one defines the value.
  60. ! For example, the following 3 keys all apply to the 'oro' field,
  61. ! but the resulting temporal interpolation will be 'const' :
  62. !
  63. ! meteo.tinterp.* : interp3
  64. ! meteo.tinterp.sfc.an : interp6
  65. ! meteo.tinterp.oro : const
  66. !
  67. ! Summary of possible name(s) :
  68. !
  69. ! field name(s) that apply to this field
  70. ! -------- ------------------------------------------------------
  71. ! sp ml sp
  72. ! mfw ml mflux_w
  73. ! tsp ml mflux_w
  74. ! mfu ml mflux_uv
  75. ! mfv ml mflux_uv
  76. ! T ml temper
  77. ! Q ml humid
  78. ! CLWC ml cloud
  79. ! CIWC ml cloud
  80. ! CC ml cloud
  81. ! CCO ml cloud
  82. ! CCU ml cloud
  83. ! eu ml convec
  84. ! ed ml convec
  85. ! du ml convec
  86. ! dd ml convec
  87. ! oro sfc sfc.const sfc.an oro
  88. ! lsm sfc sfc.const sfc.an lsm
  89. ! ci sfc sfc.inst sfc.day sfc.fc ci
  90. ! sst sfc sfc.inst sfc.fc sst
  91. ! u10m sfc sfc.inst sfc.fc u10m
  92. ! v10m sfc sfc.inst sfc.fc u10m
  93. ! g10m sfc sfc.inst sfc.fc g10m
  94. ! src sfc sfc.inst sfc.fc src
  95. ! d2m sfc sfc.inst sfc.fc d2m
  96. ! t2m sfc sfc.inst sfc.fc t2m
  97. ! skt sfc sfc.inst sfc.fc blh
  98. ! blh sfc sfc.inst sfc.fc skt
  99. ! sshf sfc sfc.aver sfc.fc sshf
  100. ! slhf sfc sfc.aver sfc.fc slhf
  101. ! ewss sfc sfc.aver sfc.fc ewss
  102. ! nsss sfc sfc.aver sfc.fc nsss
  103. ! cp sfc sfc.aver sfc.fc cp
  104. ! lsp sfc sfc.aver sfc.fc lsp
  105. ! sf sfc sfc.aver sfc.fc sf
  106. ! ssr sfc sfc.aver sfc.fc ssr
  107. ! sd sfc sfc.inst sfc.day sfc.fc sd
  108. ! swvl1 sfc sfc.inst sfc.day sfc.fc swvl1
  109. ! tv sfc sfc.inst sfc.day sfc.an veg
  110. ! cvl sfc sfc.inst sfc.day sfc.an veg
  111. ! cvh sfc sfc.inst sfc.day sfc.an veg
  112. ! albedo sfc sfc.inst sfc.day sfc.an albedo
  113. ! sr sfc sfc.inst sfc.day sfc.an sr
  114. ! srols sfc sfc.inst sfc.day sfc.an srols
  115. !
  116. ! Background:
  117. ! o 'ml' and 'sfc' indicate model levels and surface level
  118. ! o surface fields could have a constant value (sfc.const),
  119. ! have instananeous values (sfc.inst),
  120. ! or averaged over an accumulation interval (sfc.aver).
  121. ! o when meteo was produced by TMPP, some fields were stored
  122. ! as daily averages (sfc.day)
  123. ! o surface fields could originate from an ecmwf forecast (sfc.fc)
  124. ! or from the analysis (sfc.an)
  125. ! o group names apply to fields that usually belong together,
  126. ! for example the vegation fields (veg)
  127. !
  128. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  129. !----------------------------------------------------------
  130. ! ** get number of meteo levels,
  131. ! set class variable for filenames, and which convective fluxes to use
  132. !----------------------------------------------------------
  133. !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  134. #if "${my.meteo.class}" == "od" :
  135. !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  136. ! ~ number of levels for od data increases in time ...
  137. ! On 25 June 2013, it went from 91 to 137
  138. #if int("${timerange.start}"[0:4]) <= 2005 :
  139. my.meteo.nlev : 60
  140. #elif (int("${timerange.start}"[0:4]) <= 2013) and (int("${timerange.start}"[5:7]) <= 6) and (int("${timerange.start}"[9:11])<25):
  141. my.meteo.nlev : 91
  142. #else
  143. my.meteo.nlev : 137
  144. #endif
  145. my.ecclass_ecl : ${my.meteo.class}_L${my.meteo.nlev}
  146. tiedtke:T
  147. !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  148. #elif "${my.meteo.class}" == "ei" :
  149. !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  150. ! ~ era interim
  151. my.meteo.nlev : 60
  152. my.ecclass_ecl : ${my.meteo.class}
  153. #if "${convective.fluxes.tiedtke}" == "T":
  154. tiedtke:T
  155. #else
  156. tiedtke:F
  157. #endif
  158. !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  159. #else :
  160. #error "unsupported meteo class : ${my.meteo.class}"
  161. #endif
  162. !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  163. !previously ECLEVS:
  164. my.eclevs : ml${my.meteo.nlev}
  165. !----------------------------------------------------------
  166. ! ** name for choice of number of model levels (previously LEVS)
  167. !----------------------------------------------------------
  168. #if "${my.levs}" in ["all",""] :
  169. my.mlevs : ml${my.meteo.nlev}
  170. #elif "${my.levs}" in ["tropo25","tropo31","tropo34","ml40"] :
  171. my.mlevs : ${my.levs}
  172. #else :
  173. #error "unsupported number of model levels : ${my.levs}"
  174. #endif
  175. !----------------------------------------------------------
  176. ! ** which files should be read ?
  177. !----------------------------------------------------------
  178. ! by default, load nothing;
  179. ! processes will set flags if meteo is needed:
  180. meteo.read.*.* : F
  181. !----------------------------------------------------------
  182. ! ** temporal interpolation
  183. !----------------------------------------------------------
  184. !
  185. ! Temporal interpolation is defined first by general key:
  186. !
  187. ! meteo.tinterp.* : const6
  188. !
  189. ! Optionally, different settings might be chosen for specific meteo:
  190. !
  191. ! sp mflux_uv mflux_w temper humid cloud convec surf.inst surf.aver surf.day albedo sr
  192. !
  193. ! Possible time interpolations:
  194. ! o month : constant in month
  195. ! o const : constant
  196. ! o const24 : constant in 24hr intervals [00:00,24:00]
  197. ! o const6 : constant in 6hr intervals [21:00,03:00] [03:00,09:00] ...
  198. ! o const3 : constant in 3hr intervals [22:30,01:30] [01:30,04:30] ...
  199. ! o interp6 : interpoloated between 00, 06, 12, 18
  200. ! o interp6_3 : interpoloated between 03, 09, 15, 21
  201. ! o interp3 : interpoloated between 00, 03, 06, 09, 12, 15, 18, 21
  202. ! o aver6 : time averages over intervals ]00,06], [06,12], ...
  203. ! o aver3 : time averages over intervals [00,03], [03,06], ...
  204. ! o aver24 : time averages over interval [00,24]
  205. ! o aver24_3 : time averages over interval [21,21]
  206. !
  207. !
  208. ! ~~~ od meteo processed by TM5
  209. !
  210. ! ~ fc fields are 3 hourly instantaneous,
  211. ! except for the accumulated fields which have been averaged over 3 hour:
  212. meteo.tinterp.* : interp3
  213. meteo.tinterp.sfc.aver : aver3
  214. ! ~ an fields 6 hourly instantaneous,
  215. ! except oro and lsm which are constant:
  216. meteo.tinterp.sfc.an : interp6
  217. ! ~ constant
  218. meteo.tinterp.oro : const
  219. meteo.tinterp.lsm : const
  220. ! ~ surface roughness Olsson/Ganzeveld is per month:
  221. meteo.tinterp.srols : month
  222. #if "${tiedtke}" == "F":
  223. ! convec files
  224. meteo.tinterp.convec : aver3
  225. #endif
  226. !----------------------------------------------------------
  227. ! ** source keys : how to form a file name ?
  228. !----------------------------------------------------------
  229. !
  230. ! TMM requires keys on how to form a meteo filename.
  231. ! A key should be defined for each region (names are in 'dims_grid.F90'):
  232. !
  233. ! tmm.sourcekey.glb600x400.* : tmpp:class=od;type=fc;levs=ml60;grid=glb3x2;tres=_21p06
  234. !
  235. ! Optionally, some specific fields might be read from a different set:
  236. !
  237. ! tmm.sourcekey.glb600x400.sp : ecmwf:form=3hr;class=od;type=fc;nlev=60;sh=159;tres=_fc012up2tr3
  238. !
  239. ! Possible specific fields:
  240. !
  241. ! sp mflux_uv mflux_w temper humid cloud convec
  242. ! surf oro lsm albedo sr
  243. !
  244. ! Examples of source keys:
  245. !
  246. ! * tmpp:class=od;type=fc;levs=ml60;grid=glb3x2;tres=_21p06
  247. !
  248. ! Identifies the regular TMPP hdf files:
  249. ! xxxx/od-fc-2000-01-ml60-glb3x2-uvsp_20000101_21p06.hdf
  250. ! etc
  251. !
  252. ! * tmpp:class=od;type=fc;levs=ml60;grid=glb3x2;tres=_21p06;pathsep=\;namesep=\
  253. !
  254. ! Idem, but then for full Windows path names:
  255. ! xxxx\od\fc\2000\01\ml60\glb3x2\uvsp_20000101_21p06.hdf
  256. ! etc
  257. !
  258. ! * tm5-hdf:mdir=ec-fc012up2-ml60-tropo25-glb600x400;tres=_00p06
  259. !
  260. ! TM5 produced meteo files, hdf format.
  261. !
  262. ! * tm5-nc:mdir=ec-fc012up2-ml60-tropo25-glb600x400-<yyyy>;tres=_00p06
  263. !
  264. ! TM5 produced meteo files, netcdf format.
  265. ! The '<yyyy>' key will be replaced by the year.
  266. !
  267. ! * msc-data:nlev=71;sh=47;mdir=cmam;type=iau;tres=_6hrly;sp_unit=hPa
  268. !
  269. ! * ncep-gfs:
  270. ! * ncep-cdc:
  271. !
  272. #if "${my.meteo.format}" == "tm5-nc" :
  273. my.mext : /<yyyy>
  274. #else :
  275. my.mext :
  276. #endif
  277. !
  278. ! ~~~ TM5 produced
  279. !
  280. #if "${my.meteo.resol}" == "glb100x100" :
  281. !
  282. ! From global 1.00x1.00 set on all layers:
  283. tmm.sourcekey.*.* : ${my.meteo.format}:mdir=ec/${my.ecclass_ecl}/fc012up2tr3/${my.eclevs}/glb100x100${my.mext};namesep=/;tres=_00p03
  284. tmm.sourcekey.*.sfc.fc : ${my.meteo.format}:mdir=ec/${my.ecclass_ecl}/fc012up2tr3/sfc/glb100x100${my.mext};namesep=/;tres=_00p03
  285. tmm.sourcekey.*.sfc.an : ${my.meteo.format}:mdir=ec/${my.ecclass_ecl}/an0tr6/sfc/glb100x100${my.mext};namesep=/;tres=_00p06
  286. tmm.sourcekey.*.convec : ${my.meteo.format}:mdir=ec/${my.ecclass_ecl}/fc012up2tr3/${my.eclevs}/glb100x100${my.mext};namesep=/;tres=_00p03
  287. !
  288. #elif "${my.meteo.resol}" == "coarsened" :
  289. !
  290. ! Coarsened to zoom regions and combined layers:
  291. tmm.sourcekey.${my.region1}.ml : ${my.meteo.format}:mdir=ec/${my.ecclass_ecl}/fc012up2tr3/${my.mlevs}/${my.region1m}${my.mext};namesep=/;tres=_00p03
  292. tmm.sourcekey.${my.region1}.convec : ${my.meteo.format}:mdir=ec/${my.ecclass_ecl}/fc012up2tr3/${my.mlevs}/${my.region1m}${my.mext};namesep=/;tres=_00p03
  293. tmm.sourcekey.*.sfc.fc : ${my.meteo.format}:mdir=ec/${my.ecclass_ecl}/fc012up2tr3/sfc/${region.glbsfc}${my.mext};namesep=/;tres=_00p03
  294. tmm.sourcekey.*.sfc.an : ${my.meteo.format}:mdir=ec/${my.ecclass_ecl}/an0tr6/sfc/${region.glbsfc}${my.mext};namesep=/;tres=_00p06
  295. !
  296. #else
  297. #error "unsupported value of my.meteo.resol : ${my.meteo.resol}"
  298. #endif
  299. !----------------------------------------------------------
  300. ! ** install meteo files
  301. !----------------------------------------------------------
  302. ! location of meteo files;
  303. ! either a permanent archive, or a temporary scratch:
  304. tmm.dir : ${my.meteo.dir}
  305. ! Clean up the temporary meteo ?
  306. ! o Set the clean flag (T|F) such that files that have not been accessed
  307. ! for a long time are removed if a maximum buffer usage is exceeded.
  308. ! o specify a maximum size: 500k, 1M, 2G
  309. !
  310. tmm.dir.clean : F
  311. tmm.dir.size : 4G
  312. !
  313. ! Meteo files could be setup before the actual program is started.
  314. ! First set the main switch to apply this or not.
  315. ! If to be applied, specify details for a number of sets;
  316. ! each set can be applied by a seperate flag.
  317. !
  318. tmm.setup.apply : ${my.tmm.setup.apply}
  319. ! display progress ?
  320. tmm.setup.verbose : T
  321. ! file permission mode for newly created files:
  322. ! o user archive : 644
  323. ! o archive shared by group : 664
  324. tmm.setup.mode : 664
  325. ! number of sets defined below:
  326. !tmm.setup.nset : 5
  327. ! ** TM5 produced hdf/nc files:
  328. !
  329. tmm.setup.001.apply : T
  330. tmm.setup.001.files : oro lsm albedo sr srols veg
  331. !tmm.setup.001.sources : ${my.meteo.format}:mdir=ec-${my.ecclass_ecl}-an0tr6-sfc-${region.glbsfc}${my.mext};tres=_00p06
  332. tmm.setup.001.sources : ${my.meteo.format}:mdir=ec-${my.ecclass_ecl}-an0tr6-sfc-glb100x100${my.mext};tres=_00p06
  333. tmm.setup.001.search : ${my.meteo.search}
  334. !
  335. tmm.setup.002.apply : T
  336. tmm.setup.002.files : ci cp d2m lsp sd skt blh slhf src sshf ssr sst ewss nsss swvl1 t2m u10m v10m
  337. !tmm.setup.002.sources : ${my.meteo.format}:mdir=ec-${my.ecclass_ecl}-fc012up2tr3-sfc-${region.glbsfc}${my.mext};tres=_00p03
  338. tmm.setup.002.sources : ${my.meteo.format}:mdir=ec-${my.ecclass_ecl}-fc012up2tr3-sfc-glb100x100${my.mext};tres=_00p03
  339. tmm.setup.002.search : ${my.meteo.search}
  340. !
  341. #if "${my.meteo.resol}" == "glb100x100" :
  342. !
  343. ! number of sets defined below:
  344. tmm.setup.nset : 3
  345. !
  346. tmm.setup.003.apply : T
  347. #if "${tiedtke}" == "T":
  348. tmm.setup.003.files : sp mfuv mfw t q cld sub
  349. #else
  350. tmm.setup.003.files : sp mfuv mfw t q cld convec
  351. #endif
  352. tmm.setup.003.sources : ${my.meteo.format}:mdir=ec-${my.ecclass_ecl}-fc012up2tr3-${my.eclevs}-glb100x100${my.mext};tres=_00p03
  353. tmm.setup.003.search : ${my.meteo.search}
  354. !
  355. #elif "${my.meteo.resol}" == "coarsened" :
  356. !
  357. ! number of sets defined below:
  358. tmm.setup.nset : 3
  359. !
  360. tmm.setup.003.apply : T
  361. #if "${tiedtke}" == "T":
  362. tmm.setup.003.files : sp mfuv mfw t q cld sub
  363. #else
  364. tmm.setup.003.files : sp mfuv mfw t q cld convec
  365. #endif
  366. tmm.setup.003.sources : ${my.meteo.format}:mdir=ec-${my.ecclass_ecl}-fc012up2tr3-${my.mlevs}-${my.region1m}${my.mext};tres=_00p03
  367. tmm.setup.003.search : ${my.meteo.search}
  368. !
  369. #else
  370. #error "unsupported value of my.meteo.resol : ${my.meteo.resol}"
  371. #endif
  372. !================================================
  373. ! ** output meteo
  374. !================================================
  375. ! Write output (T/F)?
  376. tmm.output : F
  377. ! Write all fields (T/F)?
  378. tmm.output.* : F
  379. ! Write all fields (T/F)?
  380. tmm.output.*.ml : F
  381. ! ~ surface fields on global surface region:
  382. tmm.output.${my.region1}.sfc : F
  383. tmm.destkey.${my.region1}.ml : ${my.meteo.format}:mdir=ec-${my.ecclass_ecl}-fc012up2tr3-${my.mlevs}-${my.region1}${my.mext};tres=_00p03
  384. tmm.destkey.${my.region1}.sfc : ${my.meteo.format}:mdir=ec-${my.ecclass_ecl}-fc012up2tr3-sfc-${my.region1}${my.mext};tres=_00p03
  385. tmm.destkey.${my.region1}.sfc.an : ${my.meteo.format}:mdir=ec-${my.ecclass_ecl}-an0tr6-sfc-${my.region1}${my.mext};tres=_00p06
  386. ! TM5 writes new meteo files to:
  387. tmm.output.dir : ${my.scratch}/tm5_meteo_in
  388. ! ensure creation via 'install' facilty:
  389. tmm.output.install.dir : ${tmm.output.dir}
  390. !----------------------------------------------------------
  391. ! ** CF conventions
  392. !----------------------------------------------------------
  393. ! file with standard name table:
  394. #if "${my.meteo.format}" == "tm5-nc"
  395. cf-standard-name-table : ${PWD}/tools/cf/data/cf-standard-name-table-v15.xml
  396. !cf-standard-name-table : /home/ms/nl/nm6/TM5MP/tools/cf/data/cf-standard-name-table-v15.xml
  397. #endif