template.rc 6.76 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
! CarbonTracker Data Assimilation Shell (CTDAS) Copyright (C) 2017 Wouter Peters. 
! Users are recommended to contact the developers (wouter.peters@wur.nl) to receive
! updates of the code. See also: http://www.carbontracker.eu. 
!
! This program is free software: you can redistribute it and/or modify it under the
! terms of the GNU General Public License as published by the Free Software Foundation, 
! version 3. This program is distributed in the hope that it will be useful, but 
! WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS 
! FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. 
!
! You should have received a copy of the GNU General Public License along with this 
! program. If not, see <http://www.gnu.org/licenses/>. 

Peters, Wouter's avatar
Peters, Wouter committed
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
! author: Wouter Peters 
!
! This is a blueprint for an rc-file used in CTDAS. Feel free to modify it, and please go to the main webpage for further documentation.
!
! Note that rc-files have the convention that commented lines start with an exclamation mark (!), while special lines start with a hashtag (#).
!
! When running the script start_ctdas.sh, this /.rc file will be copied to your run directory, and some items will be replaced for you.
! The result will be a nearly ready-to-go rc-file for your assimilation job. The entries and their meaning are explained by the comments below.
!
!
! HISTORY:
!
! Created on August 20th, 2013 by Wouter Peters
!
!
! The time for which to start and end the data assimilation experiment in format YYYY-MM-DD HH:MM:SS
30

brunner's avatar
brunner committed
31
! the following 3 lines are for initial start
brunner's avatar
brunner committed
32
33
34
!time.start          : 2013-04-01 00:00:00
!time.finish         : 2013-04-07 23:00:00
!time.end            : 2013-04-07 23:00:00
brunner's avatar
brunner committed
35

brunner's avatar
brunner committed
36
37
38
time.start          : 2013-04-08 00:00:00
time.finish         : 2013-04-14 23:00:00
time.end            : 2013-04-14 23:00:00
Peters, Wouter's avatar
Peters, Wouter committed
39

brunner's avatar
brunner committed
40
41
abs.time.start          : 2013-04-01 00:00:00

Peters, Wouter's avatar
Peters, Wouter committed
42
43
! Whether to restart the CTDAS system from a previous cycle, or to start the sequence fresh. Valid entries are T/F/True/False/TRUE/FALSE

brunner's avatar
brunner committed
44
time.restart        : T
brunner's avatar
brunner committed
45
da.restart.tstamp   : 2013-04-01 00:00:00
Peters, Wouter's avatar
Peters, Wouter committed
46
47
48

! The length of a cycle is given in days, such that the integer 7 denotes the typically used weekly cycle. Valid entries are integers > 1

brunner's avatar
brunner committed
49
time.cycle          : 7
Peters, Wouter's avatar
Peters, Wouter committed
50
51
52

! The number of cycles of lag to use for a smoother version of CTDAS. CarbonTracker CO2 typically uses 5 weeks of lag. Valid entries are integers > 0

brunner's avatar
brunner committed
53
time.nlag           : 2
Peters, Wouter's avatar
Peters, Wouter committed
54
55
56
57

! The directory under which the code, input, and output will be stored. This is the base directory for a run. The word
! '/' will be replaced through the start_ctdas.sh script by a user-specified folder name. DO NOT REPLACE

brunner's avatar
brunner committed
58
dir.da_run          : /scratch/snx3000/parsenov/projname
brunner's avatar
brunner committed
59
restartmap.dir      : /scratch/snx3000/parsenov/projname/restart
60

Peters, Wouter's avatar
Peters, Wouter committed
61
62
63
64
! The resources used to complete the data assimilation experiment. This depends on your computing platform.
! The number of cycles per job denotes how many cycles should be completed before starting a new process or job, this
! allows you to complete many cycles before resubmitting a job to the queue and having to wait again for resources.
! Valid entries are integers > 0
65

brunner's avatar
brunner committed
66
da.resources.ncycles_per_job : 1
Peters, Wouter's avatar
Peters, Wouter committed
67
68
69
70
71

! The ntasks specifies the number of threads to use for the MPI part of the code, if relevant. Note that the CTDAS code
! itself is not parallelized and the python code underlying CTDAS does not use multiple processors. The chosen observation
! operator though might use many processors, like TM5. Valid entries are integers > 0

brunner's avatar
brunner committed
72
da.resources.ntasks : 1
73

Peters, Wouter's avatar
Peters, Wouter committed
74
75
76
! This specifies the amount of wall-clock time to request for each job. Its value depends on your computing platform and might take
! any form appropriate for your system. Typically, HPC queueing systems allow you a certain number of hours of usage before 
! your job is killed, and you are expected to finalize and submit a next job before that time. Valid entries are strings.
77

Peters, Wouter's avatar
Peters, Wouter committed
78
79
80
81
82
83
84
da.resources.ntime  : 04:00:00

! The resource settings above will cause the creation of a job file in which 2 cycles will be run, and 30 threads 
! are asked for a duration of 4 hours
!
! Info on the DA system used, this depends on your application of CTDAS and might refer to for instance CO2, or CH4 optimizations.
!
85
86

da.system           : CarbonTracker
Peters, Wouter's avatar
Peters, Wouter committed
87
88
89

! The specific settings for your system are read from a separate rc-file, which points to the data directories, observations, etc

brunner's avatar
brunner committed
90
da.system.rc        : da/rc/carbontracker_cosmo.rc
Peters, Wouter's avatar
Peters, Wouter committed
91
92
93

! This flag should probably be moved to the da.system.rc file. It denotes which type of filtering to use in the optimizer

brunner's avatar
brunner committed
94
da.system.localization : None
95

Peters, Wouter's avatar
Peters, Wouter committed
96
! Info on the observation operator to be used, these keys help to identify the settings for the transport model in this case
97

brunner's avatar
brunner committed
98
da.obsoperator         : cosmo
Peters, Wouter's avatar
Peters, Wouter committed
99
100
101
102
103
104

!
! The TM5 transport model is controlled by an rc-file as well. The value below refers to the configuration of the TM5 model to 
! be used as observation operator in this experiment.
!

brunner's avatar
brunner committed
105
da.obsoperator.home    : /store/empa/em05/parsenov/cosmo_processing_chain
brunner's avatar
brunner committed
106
da.bio.input           : /store/empa/em05/parsenov/cosmo_input/vprm/processed
brunner's avatar
brunner committed
107
da.bg.input           : /store/empa/em05/parsenov/cosmo_input/icbc/processed
Peters, Wouter's avatar
Peters, Wouter committed
108
109
da.obsoperator.rc      : ${da.obsoperator.home}/tm5-ctdas-ei-zoom.rc

brunner's avatar
brunner committed
110
!forward.savestate.exceptsam : TRUE
brunner's avatar
brunner committed
111

Peters, Wouter's avatar
Peters, Wouter committed
112
113
114
115
!
! The number of ensemble members used in the experiment. Valid entries are integers > 2
!

brunner's avatar
brunner committed
116
da.optimizer.nmembers  : 4
117

Peters, Wouter's avatar
Peters, Wouter committed
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
! Finally, info on the archive task, if any. Archive tasks are run after each cycle to ensure that the results of each cycle are
! preserved, even if you run on scratch space or a temporary disk. Since an experiment can take multiple weeks to complete, moving
! your results out of the way, or backing them up, is usually a good idea. Note that the tasks are commented and need to be uncommented
! to use this feature.

! The following key identifies that two archive tasks will be executed, one called 'alldata' and the other 'resultsonly'. 

!task.rsync : alldata onlyresults

! The specifics for the first task. 
! 1> Which source directories to back up. Valid entry is a list of folders separated by spaces
! 2> Which destination directory to use. Valid entries are a folder name, or server and folder name in rsync format as below
! 3> Which flags to add to the rsync command
! The settings below will result in an rsync command that looks like:
!
!       rsync -auv -e ssh ${dir.da_run} you@yourserver.com:/yourfolder/
!

!task.rsync.alldata.sourcedirs : ${dir.da_run}
!task.rsync.alldata.destinationdir : you@yourserver.com:/yourfolder/
brunner's avatar
brunner committed
138
!task.rsync.alldata.flags g -auv -e ssh
139

Peters, Wouter's avatar
Peters, Wouter committed
140
! Repeated for rsync task 2, note that we only back up the analysis and output dirs here
141

Peters, Wouter's avatar
Peters, Wouter committed
142
143
144
!task.rsync.onlyresults.sourcedirs : ${dir.da_run}/analysis ${dir.da_run}/output
!task.rsync.onlyresults.destinationdir : you@yourserver.com:/yourfolder/
!task.rsync.onlyresults.flags : -auv -e ssh
145