pycasso-tm5-expert-no1x1.rc 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633
  1. ! ######################################################################
  2. ! ###
  3. ! ### Same as pycasso-tm5-expert.rc but without the global 1x1 grid, and
  4. ! ### it includes a hi-res (i.e. smaller than 1x1)
  5. ! ### grid definition thru inclusion of a region rc file.
  6. ! ###
  7. ! ###
  8. ! ### TM5 - Expert settings.
  9. ! ###
  10. ! ### The variables '${..}' in this file are expanded on reading.
  11. ! ### See the description in 'rc.py' .
  12. ! ### Special variables are (read 'S' as '$'):
  13. ! ### S{pid} : evalutates to the process id of the calling script
  14. ! ### S{script} : " " " name " " " "
  15. ! ###
  16. ! ######################################################################
  17. ! ------------------------------------------------
  18. ! logging
  19. ! ------------------------------------------------
  20. ! Default setting for print debug messages (True|False) ?
  21. ! NOTE: passing '--verbose' or '-v' options to setup_tm5 script will
  22. ! set this value to 'True'
  23. verbose : False
  24. ! set name of log file:
  25. logfile : ${script}.${pid}.log
  26. !logfile : ${script}.0000.log
  27. ! ------------------------------------------------
  28. ! run directory
  29. ! ------------------------------------------------
  30. ! submit script, executable, and settings are installed here:
  31. rundir : ${my.run.dir}
  32. ! ------------------------------------------------
  33. ! build source
  34. ! ------------------------------------------------
  35. !
  36. ! Building an executable could consist of 3 steps:
  37. ! copy : copy a source code into a build directory (on scratch)
  38. ! configure : generate source files if necessary, create Makefile
  39. ! make : compile and link executable
  40. !
  41. ! prefix for source and script files
  42. ! (base path for subdirectories src, py, etc)
  43. ! this should be an absolute path; use ${PWD} for the present dir if necessary:
  44. !build.prefix : ${rundir}/build
  45. build.prefix : ${my.project.dir}/build
  46. ! extend with flag groups ? e.g. build_optim-all_mpi
  47. ! a link with the original name will be created to this extended name
  48. build.prefix.extend : True
  49. ! actual source codes will end up in ...
  50. build.sourcedir : ${build.prefix}/src
  51. ! Number of jobs (commands) to run simultaneously.
  52. ! An empty value indicates unlimitted number, which might claim all resources;
  53. ! better is to specify a value which will be the default maximum.
  54. ! The value is overwritten by the '-j' or '--jobs' flag passed to the submit script
  55. ! The final number (specified here or from the flags) will be inserted in the maker command:
  56. ! maker : gmake -j ${build.jobs}
  57. !
  58. build.jobs : 8
  59. !
  60. ! cleanup old build
  61. !
  62. ! remove existing build directory for a complete new copy of codee and scripts ?
  63. ! NOTE: this flag is set to true by the '--new' option
  64. build.new : False
  65. !
  66. ! create a source
  67. !
  68. ! copy a source code to the build prefix directory (True|False) ?
  69. !build.copy : False
  70. build.copy : True
  71. ! list of source directories to be copied;
  72. ! files in latest directory overwrite previously copied versions:
  73. !build.copy.dirs : base/trunk proj/pycasso
  74. build.copy.dirs : ${my.source.dirs}
  75. ! sub directories to be included:
  76. build.copy.subdirs : src bin py
  77. ! remove project extenstions (True|False) ?
  78. build.copy.remove.__part : True
  79. ! skip some extensions (list of regex pattern) ?
  80. build.copy.skip.ext : \.pyc$ \..*~$
  81. ! skip some files ? include in this list:
  82. ! o files that are (re)written by the scripts, e.g. include files;
  83. ! if these are copied, the creation times are obscured,
  84. ! which leads to a re-make during every build
  85. ! o old stuff that should be removed in a new version;
  86. ! skip them now to test if these files are really not necessary anymore
  87. !
  88. ! remove the 'dims_grid.F90' file only if it should be written by the scripts ...
  89. #if len("${regions}") > 0 :
  90. my.skip.dims_grid : dims_grid.F90
  91. #else
  92. my.skip.dims_grid :
  93. #endif
  94. !
  95. build.copy.skip.file : configure config.compiler \
  96. Makefile.template Makefile.tm5 \
  97. parray_cwp.F90.in parray_iwp.F90.in parray_rwp.F90.in \
  98. file_hdf_iwp.F90.in file_hdf_rwp.F90.in \
  99. tmkit.F90 \
  100. advect.h \
  101. dims_grid.h_template ${my.skip.dims_grid} \
  102. mdf.h tmm.h tm5.h \
  103. mdf.inc tmm.inc tm5.inc \
  104. tmm_mf_hdf.F90 tmm_mf_grib.F90 tmm_mf_ecmwf_mars.F90 \
  105. rcfilename.h
  106. ! extend python path with '<build>/py' directory (True|False) ?
  107. build.copy.pypath : True
  108. !
  109. ! configure
  110. !
  111. ! configure source (True|False) ?
  112. build.configure : True
  113. ! * macro's
  114. ! defined macro's :
  115. build.configure.macro.define : ${my.df.define} \
  116. ${my.tmm.define} \
  117. ${my.tm5.define}
  118. ! Specify a list of macro groups:
  119. build.configure.macro.groups : go num grid mdf tmm tm5 user_output
  120. ! For each of the groups, specify:
  121. !
  122. ! o all supported macro's
  123. ! (sometimes necessary to identify which macros are NOT defined ...)
  124. !
  125. ! o optionally the name of header file; if provided,
  126. ! this file is filed with appropriate '#define' commands
  127. !
  128. ! In addition to the macro's defined here, others might be defined
  129. ! in 'pycasso_user_scripts/Build_Define' given the other settings.
  130. !
  131. ! ~ GO modules
  132. ! TO BE REMOVED:
  133. ! with_go # not necessary, go modules present by default
  134. ! PRINT_MINU # used for testing ?
  135. build.configure.macro.go.all : __INTEL_COMPILER \
  136. __GFORTRAN__ \
  137. __GNUC____GNUC_MINOR____GNUC_PATCHLEVEL__ \
  138. __IBMC__ \
  139. __ecmwf__ \
  140. with_go \
  141. PRINT_MINU
  142. build.configure.macro.go.hfile :
  143. !
  144. ! ~ num modules:
  145. build.configure.macro.num.all : with_lapack
  146. build.configure.macro.num.hfile :
  147. !
  148. ! ~ grid modules:
  149. build.configure.macro.grid.all : check_all
  150. build.configure.macro.grid.hfile :
  151. !
  152. ! ~ mdf interface to hdf/netcdf
  153. ! TO BE REMOVED:
  154. ! with_go # not necessary, go modules present by default
  155. ! with_hdf5_beta # testing ...
  156. build.configure.macro.mdf.all : with_hdf4 \
  157. with_hdf5 with_hdf5_par \
  158. with_netcdf with_netcdf4 with_netcdf4_par \
  159. with_go \
  160. with_hdf5_beta
  161. build.configure.macro.mdf.hfile : mdf.inc
  162. !
  163. ! ~ tmm meteo input
  164. build.configure.macro.tmm.all : with_tmm_tmpp \
  165. with_tmm_tm5 \
  166. with_tmm_ecmwf \
  167. with_tmm_ecearth \
  168. with_tmm_ncep \
  169. with_tmm_msc \
  170. with_prism \
  171. with_tmm_convec_raw with_tmm_convec_ec with_tmm_convec_ec_gg \
  172. with_grib with_w3 \
  173. with_udunits1 with_udunits2
  174. build.configure.macro.tmm.hfile : tmm.inc
  175. !
  176. ! ~ tm5 settings
  177. !
  178. ! Cpp used in coupled version of TM5:
  179. my.macro.tm5.coupling.all : with_prism \
  180. oasis3 \
  181. oasis4 \
  182. with_tendencies \
  183. with_ecearth_optics \
  184. with_feedback
  185. !
  186. ! List of all C-pre-processors flags used in the code. BUT:
  187. !
  188. ! * Do not include macro for meteo (tmm* and mdf* files)
  189. ! * Move macros used in coupled version to my.macro.tm5.coupling.all
  190. ! * Move obsolete macros (i.e. to be deleted) to my.macro.tm5.old.all
  191. !
  192. ! See tools/misc/find_cpp script to generate initial list of macro
  193. ! starting by with_ or without_
  194. !
  195. build.configure.macro.tm5.all : slopes \
  196. secmom \
  197. MPI \
  198. _OPENMP \
  199. with_budgets \
  200. with_cariolle \
  201. with_gems_emis \
  202. with_GFED_8day \
  203. with_lapack \
  204. with_m7 \
  205. with_aqchem \
  206. with_kpp \
  207. FULL_ALGEBRA \
  208. with_online_bvoc \
  209. with_online_nox \
  210. with_optics \
  211. without_advection \
  212. without_boundary \
  213. without_chemistry \
  214. without_convection \
  215. without_diffusion \
  216. without_dry_deposition \
  217. without_emission \
  218. without_lmax_conv \
  219. without_nmhc_gfed \
  220. without_o3_nudging \
  221. without_photolysis \
  222. without_sedimentation \
  223. without_wet_deposition \
  224. with_ch4_emis \
  225. with_pm \
  226. with_w3 \
  227. with_netcdf4_par \
  228. with_zoom \
  229. ${my.macro.tm5.coupling.all} \
  230. ${my.macro.tm5.old.all}
  231. ! Header file
  232. build.configure.macro.tm5.hfile : tm5.inc
  233. !
  234. ! cpp used in user output routines ()
  235. build.configure.macro.user_output.all : with_retro_output \
  236. with_cf_output
  237. ! Header file
  238. build.configure.macro.user_output.hfile :
  239. !
  240. ! SOON TO BE OBSOLETE and REMOVED:
  241. ! with_mpi # should be MPI ?
  242. ! with_openmp # should be _OPENMP
  243. ! with_barrier # used for testing ?
  244. ! with_budget # should be with_budgets
  245. ! with_okdebug # via logical flag
  246. ! without_wetdeposition # should be without_wet_deposition
  247. ! with_restart # not necessary anymore with new restart module
  248. ! with_pnetcdf # depricated library; use netcdf4 instead
  249. ! with_go # should use module GO instead
  250. ! with_hdf # still in some tmkit.F90 in some 4D
  251. ! branches - should update
  252. my.macro.tm5.old.all : with_barrier \
  253. with_budget \
  254. with_go \
  255. with_mpi \
  256. with_okdebug \
  257. with_openmp \
  258. without_wetdeposition \
  259. with_restart \
  260. with_hdf \
  261. with_pnetcdf
  262. ! Pass macro definitions to command lines, e.g. -Dwith_this_flag (True|False) ?
  263. ! The source code checking tests on '#include "tm5.inc"',
  264. ! so this flag could be set to False:
  265. build.configure.define.D : False
  266. ! * remove files
  267. ! remove some files ?
  268. build.configure.remove :
  269. ! remove if macro's are *not* defined ? Use list of files and/or pattern (i.e. *,?, and range of characters with [])
  270. build.configure.remove.ifndef.with_mpi : mpi_const.F90 mpi_comm.F90
  271. build.configure.remove.ifndef.with_hdf4 : file_hdf.F90
  272. build.configure.remove.ifndef.with_tmm_tmpp : tmm_mf_tmpp.F90
  273. build.configure.remove.ifndef.with_tmm_tm5 : tmm_mf_tm5_hdf.F90 tmm_mf_tm5_nc.F90
  274. build.configure.remove.ifndef.with_tmm_ecmwf : tmm_mf_ecmwf_tmpp.F90 tmm_mf_ecmwf_tm5.F90 file_grib.F90 grib_table.F90
  275. build.configure.remove.ifndef.with_tmm_ncep : tmm_mf_ncep_gfs.F90 tmm_mf_ncep_cdc.F90 file_ncb.F90 file_ncg.F90
  276. build.configure.remove.ifndef.with_tmm_msc : tmm_mf_msc.F90
  277. build.configure.remove.ifndef.with_prism : prism_putget.F90 tmm_mf_prism.F90 tm5_prism.F90 appl-tm5.F90
  278. build.configure.remove.ifndef.with_tendencies : tm5_tendency.F90 tm5_tendency_eval.F90
  279. build.configure.remove.ifndef.with_budgets : budget_global.F90
  280. build.configure.remove.ifndef.with_pnetcdf : pnetcdf.F90
  281. build.configure.remove.ifndef.with_udunits1 : udunits.F90 udunits_inc.F
  282. build.configure.remove.ifndef.with_udunits2 : f_udunits_2.f90 f_udunits_2.inc
  283. build.configure.remove.ifndef.with_m7 : mo_*.F90 m7_*.F90 m7.F90 emission_ss.F90 emission_pom.F90 emission_dust.F90 emission_bc.F90 PM.F90 optics.F90 calc_pm.F90 user_output_aerocom.F90
  284. build.configure.remove.ifndef.with_aqchem : aqchem.F90
  285. build.configure.remove.ifndef.with_kpp : kpp_aqchem.F90
  286. build.configure.remove.ifndef.with_cariolle : tm5_climat.F90 file_fortkeld.F90 file_cariolle.F90 chemistry_cariolle.F90 chemistry_0d__o3tracer.F90
  287. build.configure.remove.ifndef.with_ecearth_optics : ecearth_optics.F90
  288. ! - for proj/user_output/
  289. !PLS!build.configure.remove.ifndef.with_cf : user_output_cf.F90
  290. build.configure.remove.ifndef.with_cf_output : user_output_cf.F90
  291. ! - for M7 modules:
  292. build.configure.remove.ifndef.with_optics : optics.F90
  293. build.configure.remove.ifndef.with_pm : PM.F90
  294. ! remove if macro's are defined ? Use list of files and/or pattern (i.e. *,?, and range of characters with [])
  295. build.configure.remove.ifdef.without_advection : advectx.F90 advecty.F90 advectz.F90
  296. build.configure.remove.ifdef.without_diffusion : diffusion.F90
  297. build.configure.remove.ifdef.without_wet_deposition : wet_deposition.F90
  298. build.configure.remove.ifdef.without_dry_deposition : dry_deposition.F90
  299. build.configure.remove.ifdef.without_photolysis : photolysis.i photolysis.F90 photolysis_data.F90
  300. build.configure.remove.ifdef.without_emission : emission.F90
  301. build.configure.remove.ifdef.without_convection : convection.F90
  302. build.configure.remove.ifdef.without_boundary : boundary.F90
  303. build.configure.remove.ifdef.without_chemistry : chemistry.F90 ebischeme.F90
  304. build.configure.remove.ifdef.without_sedimentation : sedimentation.F90
  305. ! * compiler flags
  306. ! Specify space seperated list of compiler flag groups.
  307. ! See the implementation in 'pycasso_user_scripts/Build_FlagGroups' .
  308. ! Two groups are added by default, and eventually openmp is added if necessary:
  309. ! default real8 [openmp]
  310. ! For the actual compiler flags set by a group, see the compiler specific settings.
  311. !
  312. build.configure.flags : ${my.build.configure.flags}
  313. ! include file to be written for Makefile:
  314. build.configure.flags.includefile : Makefile_flags
  315. ! * libraries
  316. ! Libraries to be included are specified with a list of keywords, e.g.:
  317. ! netcdf hdf5 hdf4 z jpeg gribex
  318. ! For each library name, 2 lines should be present that specify
  319. ! the compile and link flags (probably in the host specific rcfile)
  320. !
  321. ! For TotalView with memory debugging, add the 'tv' library.
  322. ! list of all supported libraries; this defines the linking order !
  323. build.configure.libs.all : netcdf4_par netcdf4 netcdf hdf5_par hdf5 hdf4 sz jpeg z grib lapack udunits1 udunits2 mpi tv
  324. !
  325. ! ~ default librries:
  326. build.configure.libs :
  327. !
  328. ! ~ libraries to be included if a specific marcro is defined:
  329. build.configure.libs.ifdef.with_netcdf4_par : netcdf4_par
  330. build.configure.libs.ifdef.with_netcdf4 : netcdf4
  331. build.configure.libs.ifdef.with_netcdf : netcdf
  332. build.configure.libs.ifdef.with_hdf5_par : hdf5_par sz jpeg z
  333. build.configure.libs.ifdef.with_hdf5 : hdf5 sz jpeg z
  334. build.configure.libs.ifdef.with_hdf4 : hdf4 sz jpeg z
  335. build.configure.libs.ifdef.with_grib : grib
  336. build.configure.libs.ifdef.with_lapack : lapack
  337. build.configure.libs.ifdef.with_mpi : mpi
  338. build.configure.libs.ifdef.with_udunits1 : udunits1
  339. build.configure.libs.ifdef.with_udunits2 : udunits2
  340. ! * user configuration
  341. ! routine 'Build_Configure' in 'pycasso_user_scripts.py' is called now;
  342. ! use this routine to write special include files etc.
  343. ! Apply some source code checks ?
  344. ! Provide a space seperated list with keywords; for each keyword, provide below:
  345. ! o a short message to describe the test;
  346. ! o the filename pattern to select the files on which the test should be applied;
  347. ! o a filename pattern to exclude some files;
  348. ! o a python boolean expression applied to each line of the file;
  349. ! the line itself is stored in a string variable named 'line';
  350. ! o a help text to be displayed in case a warning is issued;
  351. ! include \n for newlines.
  352. ! If for one of the lines in a source file the test evaluates to 'True',
  353. ! a warning is issued.
  354. ! If the test expression starts with 'not', a warning is issued if none
  355. ! of the lines evaluates to 'True' for the test after the 'not'.
  356. ! If the 'error' flag is set to 'True' and any warnings are issued, then
  357. ! the scripting will exit with an error status.
  358. ! list with keywords for checks to be applied:
  359. build.configure.checks : tm5_inc tmm_inc advect_h
  360. ! all TM files should include "tm5.inc"; search files that do not do that:
  361. build.configure.check.tm5_inc.msg : Test on TM5 files that do no not include "tm5.inc" ...
  362. build.configure.check.tm5_inc.files : *.[Ff]*
  363. build.configure.check.tm5_inc.skip : binas* parray* file_hdf* go* num* grid* phys* tmm* mdf* *grib* \
  364. xmlf* *udunits* standard_name_table.f90 *.swp .*
  365. build.configure.check.tm5_inc.test : not line.startswith('#include "tm5.inc"')
  366. build.configure.check.tm5_inc.help : \n\
  367. All files TM5 files should include "tm5.inc" in the header.\n\
  368. This include file is filled by the scripting with '#define' pre-processing macros.\n\
  369. To compile a source code with TM5 files that do not include "tm5.inc",\n\
  370. ensure that marco definitions are passed to the compiler directly by setting:\n\
  371. . build.configure.define.D : True\n\
  372. in the expert.rc file.\n\
  373. .
  374. ! all TMM files should include "tmm.inc"; search files that do not do that:
  375. build.configure.check.tmm_inc.msg : Test on TMM files that do no not include "tmm.inc" ...
  376. build.configure.check.tmm_inc.files : tmm*.[Ff]*
  377. build.configure.check.tmm_inc.skip :
  378. build.configure.check.tmm_inc.test : not line.startswith('#include "tmm.inc"')
  379. build.configure.check.tmm_inc.help : \n\
  380. All files TMM files should include "tmm.inc" in the header.\n\
  381. This include file is filled by the scripting with '#define' pre-processing macros.\n\
  382. To compile a source code with TMM files that do not include "tmm.inc",\n\
  383. ensure that marco definitions are passed to the compiler directly by setting:\n\
  384. . build.configure.define.D : True\n\
  385. in the expert.rc file.\n\
  386. .
  387. ! none of the TM files should include "advect.h" anymore:
  388. build.configure.check.advect_h.msg : Test on TM5 files that include "advect.h" ...
  389. build.configure.check.advect_h.files : *.[Ff]*
  390. build.configure.check.advect_h.skip : binas* file_hdf* go* num* grid* phys* tmm*
  391. build.configure.check.advect_h.test : line.startswith('#include "advect.h"')
  392. build.configure.check.advect_h.help : \n\
  393. Including "advect.h" is depricated; include "tm5.inc" instead.\n\
  394. .
  395. ! special: check on unknown macros used in '#if[n]def' lines,
  396. ! but not listed in .all lists above ?
  397. build.configure.check.unknown_macro : True
  398. build.configure.check.unknown_macro.msg : Test for unsupported macros ...
  399. ! in case some strange things are found, leave with error message (True|False)?
  400. build.configure.checks.error : True
  401. ! * makedep
  402. ! create depencencies using the external 'makedep' program (True|False) ?
  403. build.configure.makedep : True
  404. ! include file to be written for Makefile:
  405. build.configure.makedep.includefile : Makefile_deps
  406. ! dependencies are created for files matching the pattern:
  407. build.configure.makedep.files : *.[Ff]*
  408. !
  409. ! make
  410. !
  411. ! make executable (True||False) ?
  412. !build.make : False
  413. build.make : True
  414. ! source directory:
  415. build.make.dir : ${build.prefix}/src
  416. ! remove object and module files before compiling (True|False) ?
  417. ! NOTE: this flag is set to 'True' automatically if
  418. ! the '--clean' or '-c' flag is provided to the setup script
  419. build.make.clean : False
  420. ! which executable to be build ?
  421. build.make.exec : tm5.x
  422. ! ------------------------------------------------
  423. ! install executable and scripts
  424. ! ------------------------------------------------
  425. ! Copy files into run directory.
  426. ! Specify a space seperated list with source files.
  427. ! If the copy should obtain another name, append it seperated with a ':', e.g.
  428. ! model.x:model-myproject.x
  429. ! Include the build directory if necessary, e.g. '${build.prefix}/src/model.x' .
  430. install.copy : ${build.prefix}/src/${build.make.exec}:${job.step.run.exe} \
  431. ${build.prefix}/bin/submit_tm5 \
  432. ${build.prefix}/bin/Makefile.rundir:Makefile
  433. ! name of processed rc file to be written (original this file);
  434. ! leave empty for not writing:
  435. install.rc : ${my.basename}.rc
  436. ! ------------------------------------------------
  437. ! Post-processing : archive sources
  438. ! ------------------------------------------------
  439. ! Add the name 'sources' to the 'store.tasks' list to enable this!
  440. ! specify how to store source files wiht output:
  441. ! o store from run dictory:
  442. sources.store.from : ..
  443. ! o target file name:
  444. sources.store.files : ${my.basename}__sources.tar
  445. ! o filter for files to be included:
  446. sources.store.tarfilter : build/bin/ \
  447. build/src/Makefile* \
  448. build/src/*.[Ff]* \
  449. build/src/*.inc \
  450. run/${install.rc}
  451. ! ------------------------------------------------
  452. ! job script
  453. ! ------------------------------------------------
  454. ! name of job in queue etc:
  455. job.name : ${my.basename}
  456. ! names used for job steps:
  457. job.steps : init run done
  458. ! executable used by the 'run' step:
  459. job.step.run.exe : ${my.basename}.x
  460. ! ------------------------------------------------
  461. ! submit script
  462. ! ------------------------------------------------
  463. ! name of submit script:
  464. submit.script : submit_tm5
  465. ! full submit command from rundirectory:
  466. submit.command : ./${submit.script} ${job.step.run.exe} ${install.rc}
  467. ! try to use relative paths if possible ?
  468. ! this will facilitate moving the complete build/run/output directory:
  469. submit.relpaths : True
  470. ! submit job to : foreground | background | queue
  471. ! might be replaced given the flags passed to the submit script
  472. submit.to : foreground
  473. ! options passed directly to a submission command (llsubmit, qsub, ...):
  474. submit.options :
  475. ! run in debugger (True|False*) ?
  476. submit.debugger : False
  477. ! ------------------------------------------------
  478. ! horizontal grids
  479. ! ------------------------------------------------
  480. !
  481. ! List with model regions (space seperated):
  482. !
  483. ! o if empty, the regions are defined via 'proj/grid' sources. See
  484. ! below, but this is obsolete and will be phased out;
  485. !
  486. ! o the routine 'dims_grid' is automatically re-written if the region list
  487. ! or the number of regions change [should be default];
  488. !
  489. ! o in contrast to the region list in the 'dims_grid.F90' files,
  490. ! do not include the 'globe' and 'glb100x100' regions in the region list
  491. ! but specify them seperately below;
  492. !
  493. ! o the parameter 'nregions' will be set to the number of regions in
  494. ! this list;
  495. !
  496. ! o the macro 'with_zoom' is now automatically defined, and only if
  497. ! more than one region is specified here;
  498. !
  499. ! see routine 'pycasso_user_scripts/Build_Define'
  500. !
  501. ! ~ list of region names for definition via rcfile
  502. regions : ${my.region1} ${my.region2} ${my.region3} ${my.region4} ${my.region5}
  503. ! special: single cell global region:
  504. region.globe : globe
  505. ! special: global surface fields (unless region 1 is on the same grid)
  506. #if "${my.region1}" == "glb100x100" :
  507. region.glbsfc :
  508. #else:
  509. !region.glbsfc : glb100x100 ! NOT USE in HI-RES runs without emissions
  510. region.glbsfc :
  511. #endif
  512. ! parent regions for zoom; Must use 'globe' for the global region:
  513. region.${my.region1}.parent : ${region.globe}
  514. ! 'parent' region for global surface field; used to match surface
  515. ! pressures if necessary:
  516. #if not("${my.region1}" == "glb100x100"):
  517. region.${region.glbsfc}.parent : ${my.region1}
  518. #endif
  519. ! region definitions:
  520. #include base/trunk/rc/pycasso-tm5-regions-${my.region1}.rc
  521. !-------------------------------
  522. ! OBSOLETE..... TO BE PHASED OUT
  523. !-------------------------------
  524. ! * Region definition via 'proj/grid' sources
  525. #if len("${regions}") == 0 :
  526. ! Actual number of regions, compiled as parameter in the code.
  527. ! Written by the scripting in the 'dims_grid.h' include file.
  528. ! Accepted values are : 1 2 .. nregions_max-1 nregions_max
  529. ! The value of 'nregions_max' is defined in 'dims_grid.F90'.
  530. !source.nregions : 1
  531. source.nregions : nregions_max
  532. #endif