pycasso-meteo-tmpp-maunaloa.rc 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359
  1. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  2. !
  3. ! Include this file in the 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. ! ! meteo class (and level key?) for ecmwf data:
  22. ! my.ecclass_ecl : od_${ECL}
  23. ! !my.ecclass_ecl : ei
  24. !
  25. ! ! call meteo setup script (T|F) ?
  26. ! my.tmm.setup.apply : F
  27. !
  28. ! * in the machine rc file:
  29. !
  30. ! ! local directory with unpacked meteo files:
  31. ! my.meteo.dir : /scratch/shared/meteo
  32. !
  33. ! ! where to search of missing files ?
  34. ! my.meteo.search : ec:ecfs[nlh]:TM/meteo
  35. !
  36. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  37. !
  38. ! The keys that define meteo usage have the form:
  39. !
  40. ! <key(s)>.<name(s)>
  41. !
  42. ! or, if the property depends on the zoom region:
  43. !
  44. ! <key(s)>.<region_name>.<name(s)>
  45. !
  46. ! The region_name is either a '*' or names like 'glb300x200' etc.
  47. !
  48. ! Multipe names could apply to the same field; see the table below.
  49. ! A '*' applies to all fields.
  50. ! If more than name applies to a field, the last one defines the value.
  51. ! For example, the following 3 keys all apply to the 'oro' field,
  52. ! but the resulting temporal interpolation will be 'const' :
  53. !
  54. ! meteo.tinterp.* : interp3
  55. ! meteo.tinterp.sfc.an : interp6
  56. ! meteo.tinterp.oro : const
  57. !
  58. ! Summary of possible name(s) :
  59. !
  60. ! field name(s) that apply to this field
  61. ! -------- ------------------------------------------------------
  62. ! sp ml sp
  63. ! mfw ml mflux_w
  64. ! tsp ml mflux_w
  65. ! mfu ml mflux_uv
  66. ! mfv ml mflux_uv
  67. ! T ml temper
  68. ! Q ml humid
  69. ! CLWC ml cloud
  70. ! CIWC ml cloud
  71. ! CC ml cloud
  72. ! CCO ml cloud
  73. ! CCU ml cloud
  74. ! eu ml convec
  75. ! ed ml convec
  76. ! du ml convec
  77. ! dd ml convec
  78. ! oro sfc sfc.const sfc.an oro
  79. ! lsm sfc sfc.const sfc.an lsm
  80. ! ci sfc sfc.inst sfc.day sfc.fc ci
  81. ! sst sfc sfc.inst sfc.fc sst
  82. ! u10m sfc sfc.inst sfc.fc u10m
  83. ! v10m sfc sfc.inst sfc.fc u10m
  84. ! g10m sfc sfc.inst sfc.fc g10m
  85. ! src sfc sfc.inst sfc.fc src
  86. ! d2m sfc sfc.inst sfc.fc d2m
  87. ! t2m sfc sfc.inst sfc.fc t2m
  88. ! skt sfc sfc.inst sfc.fc blh
  89. ! blh sfc sfc.inst sfc.fc skt
  90. ! sshf sfc sfc.aver sfc.fc sshf
  91. ! slhf sfc sfc.aver sfc.fc slhf
  92. ! ewss sfc sfc.aver sfc.fc ewss
  93. ! nsss sfc sfc.aver sfc.fc nsss
  94. ! cp sfc sfc.aver sfc.fc cp
  95. ! lsp sfc sfc.aver sfc.fc lsp
  96. ! sf sfc sfc.aver sfc.fc sf
  97. ! ssr sfc sfc.aver sfc.fc ssr
  98. ! sd sfc sfc.inst sfc.day sfc.fc sd
  99. ! swvl1 sfc sfc.inst sfc.day sfc.fc swvl1
  100. ! tv sfc sfc.inst sfc.day sfc.an veg
  101. ! cvl sfc sfc.inst sfc.day sfc.an veg
  102. ! cvh sfc sfc.inst sfc.day sfc.an veg
  103. ! albedo sfc sfc.inst sfc.day sfc.an albedo
  104. ! sr sfc sfc.inst sfc.day sfc.an sr
  105. ! srols sfc sfc.inst sfc.day sfc.an srols
  106. !
  107. ! Background:
  108. ! o 'ml' and 'sfc' indicate model levels and surface level
  109. ! o surface fields could have a constant value (sfc.const),
  110. ! have instananeous values (sfc.inst),
  111. ! or averaged over an accumulation interval (sfc.aver).
  112. ! o when meteo was produced by TMPP, some fields were stored
  113. ! as daily averages (sfc.day)
  114. ! o surface fields could originate from an ecmwf forecast (sfc.fc)
  115. ! or from the analysis (sfc.an)
  116. ! o group names apply to fields that usually belong together,
  117. ! for example the vegation fields (veg)
  118. !
  119. !----------------------------------------------------------
  120. ! ** get number of meteo levels,
  121. ! and set class variable for filenames
  122. !----------------------------------------------------------
  123. !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  124. #if "${my.meteo.class}" == "od" :
  125. !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  126. ! ~ number of levels for od data increases in time ...
  127. #if int("${timerange.start}"[0:4]) <= 2005 :
  128. my.meteo.nlev : 60
  129. #else
  130. my.meteo.nlev : 91
  131. #endif
  132. my.ecclass_ecl : ${my.meteo.class}_L${my.meteo.nlev}
  133. !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  134. #else :
  135. #error "unsupported meteo class for TMPP produced files : ${my.meteo.class}"
  136. #endif
  137. !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  138. !previously ECLEVS:
  139. my.eclevs : ml${my.meteo.nlev}
  140. !----------------------------------------------------------
  141. ! ** name for choice of number of model levels (previously LEVS)
  142. !----------------------------------------------------------
  143. #if "${my.levs}" in ["all",""] :
  144. my.mlevs : ml${my.meteo.nlev}
  145. #elif "${my.levs}" in ["tropo25","tropo34","ml40"] :
  146. my.mlevs : ${my.levs}
  147. #else :
  148. #error "unsupported number of model levels : ${my.levs}"
  149. #endif
  150. !----------------------------------------------------------
  151. ! ** which files should be read ?
  152. !----------------------------------------------------------
  153. ! by default, load nothing;
  154. ! processes will set flags if meteo is needed:
  155. !meteo.read.*.* : F
  156. !diffusion.write : T
  157. !diffusion.dir : ${BASEDIR}/METEO/od/fc
  158. meteo.read.* : T
  159. meteo.read.sps : F
  160. meteo.read.sst : F
  161. meteo.read.cloud : F
  162. meteo.read.albedo : F
  163. meteo.read.ocean : F
  164. meteo.read.gph : T
  165. meteo.read.convec : F
  166. !
  167. ! ** temporal interpolation
  168. !
  169. !
  170. ! Temporal interpolation is defined first by general key:
  171. !
  172. ! meteo.tinterp.* : const6
  173. !
  174. ! Optionally, different settings might be chosen for specific meteo:
  175. !
  176. ! sp mflux_uv mflux_w temper humid cloud convec surf.inst surf.aver surf.day albedo sr
  177. !
  178. ! Possible time interpolations:
  179. ! o month : constant in month
  180. ! o const : constant
  181. ! o const24 : constant in 24hr intervals [00:00,24:00]
  182. ! o const6 : constant in 6hr intervals [21:00,03:00] [03:00,09:00] ...
  183. ! o const3 : constant in 3hr intervals [22:30,01:30] [01:30,04:30] ...
  184. ! o interp6 : interpoloated between 00, 06, 12, 18
  185. ! o interp6_3 : interpoloated between 03, 09, 15, 21
  186. ! o interp3 : interpoloated between 00, 03, 06, 09, 12, 15, 18, 21
  187. ! o aver6 : time averages over intervals ]00,06], [06,12], ...
  188. ! o aver3 : time averages over intervals [00,03], [03,06], ...
  189. ! o aver24 : time averages over interval [00,24]
  190. ! o aver24_3 : time averages over interval [21,21]
  191. !
  192. !
  193. !!
  194. !! ~~~ tmpp produced meteo
  195. !!
  196. ! default setting, might consider a means to change this
  197. tmpp.meteo.tinterp : T
  198. !! ~ model level fields: 6 hourly, interpolate
  199. #if "${tmpp.meteo.tinterp}" == "T"
  200. meteo.tinterp.* : interp6
  201. meteo.tinterp.sfc : interp3
  202. meteo.tinterp.sfc.aver : aver3
  203. meteo.tinterp.sfc.day : aver24_3
  204. meteo.tinterp.sfc.const : const
  205. meteo.tinterp.srols : aver24_3
  206. #else
  207. ! settings similar to cy2/TMPP at NOAA:
  208. meteo.tinterp.* : const6
  209. meteo.tinterp.sp : interp6_3
  210. meteo.tinterp.sfc : const3
  211. meteo.tinterp.sfc.aver : aver3
  212. meteo.tinterp.sfc.day : aver24_3
  213. meteo.tinterp.sfc.const : const
  214. meteo.tinterp.srols : aver24_3
  215. #endif
  216. !meteo.tinterp.* : const6
  217. !meteo.tinterp.sp : interp6_3
  218. !meteo.tinterp.sfc.inst : const3
  219. !meteo.tinterp.sfc.aver : aver3
  220. !meteo.tinterp.sfc.day : aver24_3
  221. !meteo.tinterp.sfc.const : const
  222. !
  223. ! ** source keys : how to form a file name ?
  224. !
  225. !
  226. ! TMM requires keys on how to form a meteo filename.
  227. ! A key should be defined for each region (names are in 'dims_grid.F90'):
  228. !
  229. ! tmm.sourcekey.glb600x400.* : tmpp:class=od;type=fc;levs=ml60;grid=glb3x2;tres=_21p06
  230. !
  231. ! Optionally, some specific fields might be read from a different set:
  232. !
  233. ! tmm.sourcekey.glb600x400.sp : ecmwf:form=3hr;class=od;type=fc;nlev=60;sh=159;tres=_fc012up2tr3
  234. !
  235. ! Possible specific fields:
  236. !
  237. ! sp mflux_uv mflux_w temper humid cloud convec
  238. ! surf oro lsm albedo sr
  239. !
  240. ! Examples of source keys:
  241. !
  242. ! * tmpp:class=od;type=fc;levs=ml60;grid=glb3x2;tres=_21p06
  243. !
  244. ! Identifies the regular TMPP hdf files:
  245. ! xxxx/od-fc-2000-01-ml60-glb3x2-uvsp_20000101_21p06.hdf
  246. ! etc
  247. !
  248. ! * tmpp:class=od;type=fc;levs=ml60;grid=glb3x2;tres=_21p06;pathsep=\;namesep=\
  249. !
  250. ! Idem, but then for full Windows path names:
  251. ! xxxx\od\fc\2000\01\ml60\glb3x2\uvsp_20000101_21p06.hdf
  252. ! etc
  253. !
  254. ! * tm5:mdir=ec-fc012up2-ml60_tropo25-glb6x4;tres=_00p06
  255. !
  256. ! * msc-data:nlev=71;sh=47;mdir=cmam;type=iau;tres=_6hrly;sp_unit=hPa
  257. !
  258. ! * ncep-gfs:
  259. ! * ncep-cdc:
  260. !
  261. !
  262. ! ~~~ TMPP produced
  263. !
  264. ! o shared archive with tar files unpacked in directories:
  265. !tmm.sourcekey.*.* : tmpp:class=od;type=fc;levs=${my.mlevs};grid=glb3x2;tres=_21p06;namesep=/
  266. !tmm.sourcekey.*.sfc : tmpp:class=od;type=fc;levs=sfc;grid=glb1x1;tres=_21p03;sstr=T;namesep=/
  267. !
  268. ! o temporary archive with tar files unpacked into long named files:
  269. !tmm.sourcekey.*.* : tmpp:class=od;type=fc;levs=${my.mlevs};grid=glb3x2;tres=_21p06;namesep=-
  270. !tmm.sourcekey.*.sfc : tmpp:class=od;type=fc;levs=sfc;grid=glb1x1;tres=_21p03;sstr=T;namesep=-
  271. #if "${my.eclevs}" == "ml60"
  272. ! pre 2005-12:
  273. tmm.sourcekey.*.* : tmpp:class=od;type=fc;levs=ml60;grid=glb3x2;tres=_21p06;sstr=T;namesep=/
  274. tmm.sourcekey.nam100x100.* : tmpp:class=od;type=fc;levs=ml25;grid=nam1x1;tres=_21p06;sstr=T;namesep=/
  275. tmm.sourcekey.*.sfc : tmpp:class=od;type=fc;levs=sfc;grid=glb1x1;tres=_21p03;sstr=T;namesep=/
  276. #endif
  277. #if "${my.eclevs}" == "ml91"
  278. ! post 2005-12:
  279. tmm.sourcekey.*.* : tmpp:class=od;type=fc;levs=ml91;grid=glb3x2;tres=_21p06;sstr=T;namesep=/
  280. !tmm.sourcekey.nam300x200.* : tmpp:class=od;type=fc;levs=tropo34;grid=nam3x2;tres=_21p06;sstr=T;namesep=/
  281. tmm.sourcekey.nam100x100.* : tmpp:class=od;type=fc;levs=tropo34;grid=nam1x1;tres=_21p06;sstr=T;namesep=/
  282. tmm.sourcekey.*.sfc : tmpp:class=od;type=fc;levs=sfc;grid=glb1x1;tres=_21p03;sstr=T;namesep=/
  283. #endif
  284. !
  285. ! ** install meteo files
  286. !
  287. ! location of meteo files;
  288. ! either a permanent archive, or a temporary scratch:
  289. tmm.dir : ${my.meteo.dir}
  290. ! Clean up the temporary meteo ?
  291. ! o Set the clean flag (T|F) such that files that have not been accessed
  292. ! for a long time are removed if a maximum buffer usage is exceeded.
  293. ! o specify a maximum size: 500k, 1M, 2G
  294. !
  295. tmm.dir.clean : F
  296. tmm.dir.size : 4G
  297. !
  298. ! Meteo files could be setup before the actual program is started.
  299. ! First set the main switch to apply this or not.
  300. ! If to be applied, specify details for a number of sets;
  301. ! each set can be applied by a seperate flag.
  302. !
  303. tmm.setup.apply : ${my.tmm.setup.apply}
  304. ! display progress ?
  305. tmm.setup.verbose : T
  306. ! file permission mode for newly created files:
  307. ! o user archive : 644
  308. ! o archive shared by group : 664
  309. tmm.setup.mode : 664
  310. ! number of sets defined below:
  311. tmm.setup.nset : 1
  312. ! ** TM5 produced hdf files:
  313. !
  314. tmm.setup.001.apply : T
  315. tmm.setup.001.files : uvsp w spm t q cld sub surf
  316. tmm.setup.001.sources : tmpp:class=od;type=fc;levs=${my.mlevs};grid=glb3x2;tres=_21p06;namesep=/
  317. tmm.setup.001.search : ${my.meteo.search}
  318. ! adhoc: added because older versions of the model want to read it ...
  319. tmm.output.dir : tm5_meteo_out