makeFirstAnaHTMLDatasetPages.py
Go to the documentation of this file.
1 #!/bin/env python
2 print "run : --- Make First Ana HTML Dataset pages"
3 ########################### Imports
4 import FirstAnaPageMakers as PM
5 from collections import OrderedDict
6 import ProductionTestTools as tools
7 import SamTimer
8 import datetime
9 from Definition import Definition
10 import os
11 ########################### Check that production validation is setup
12 assert "NOVAPRODVALID_DIR" in os.environ.keys(),"NOVAPRODVALID_DIR not set, try running setup_prod_valid.sh."
13 ########################### Option parser
14 from optparse import OptionParser
15 parser = OptionParser()
16 parser.add_option("-w", "--work_dir", help="The working directory", action="store", type=str, dest="path", default="./")
17 parser.add_option("-o", "--output_dir", help="The output directory", action="store", type=str, dest="output", default="/nusoft/app/web/htdoc/nova/production/first_analysis/")
18 parser.add_option("-c", "--configs", help="run config dumper", action="store_true", dest="config", default=False)
19 parser.add_option("-t", "--type", help="only process some types of file",action="store", type=str, dest="types", default=False)
20 parser.add_option("-f", "--no_cache", help="Don't use cached SAM defs", action="store_true", dest="no_cache", default=False)
21 parser.add_option("-e", "--explorer", help="Make a dataset explorer page", action="store_true", dest="explorer", default=True)
22 parser.add_option("-v", "--verbose", help="turn on verbose mode", action="store_true", dest="verbose", default=False)
23 (options, args) = parser.parse_args()
24 if options.verbose:
25  print "run : --- Options"
26  print "run : work dir: ",options.path
27  print "run : output dir: ",options.output
28  print "run : config dump: ",options.config
29  print "run : types: ",options.types
30  print "run : no caching: ",options.no_cache
31  print "run : explorer: ",options.explorer
32  print "run : verbose mode: ",options.verbose
33 all_types = ["FD_numi_data","FD_cosmic_data",
34  "FD_genie",
35  "FD_cry","FD_cry_14db",
36  "ND_numi_data", "ND_cosmic_data",
37  "ND_genie","ND_cry",
38  "supporting","rocks"]
39 if options.types:
40  types = options.types.split(",")
41  for t in types:
42  if t not in all_types:
43  print "Specified option: %s not in available types"%t
44  print "Configured types are:"
45  for t in all_types:
46  print "\t%s"%t
47  exit(1)
48 else:
49  types = all_types
50 ########################### Run page makers
51 sam_timer = SamTimer.SamTimer("%s/SamQueryLog.pkl"%os.environ["NOVAPRODVALID_DIR"])
52 totals = [0,0,0,0,0]
53 all_defs = []
54 ################## FD
55 ############## Data
56 if "FD_numi_data" in types:
57  if options.verbose: print "run : --- Making FD NuMI data"
58  description = \
59  """
60  The first analysis (epoch A) datasets are defined by a list of good runs provided by the
61  data quality group:
62  </p>
63 
64  <pre>/nova/app/users/rbpatter/runlists/fd_numi_subrunlist_20150320_30secadded.vec</pre>
65 
66  <p>
67  This dataset starts at run 12942 and ends on run 19096.
68  A SAM definition is provided for these runs: FD_data_epoch_A_runs.
69  </p>
70  <p>
71  An extension of the dataset to run to May 15th (is being processed under the name "top-up").
72  Until the discussion concerning naming conventions has concluded temporary definition names
73  will be used.
74  """
75  defs = OrderedDict()
76  defs["NuMI"] = OrderedDict()
77  defs["NuMI"]["artdaq"] = Definition("prod_artdaq_S15-03-11_fd_numi")
78  defs["NuMI"]["reco"] = Definition("prod_reco_S15-05-04_fd_numi")
79  defs["NuMI"]["pidpart"] = Definition("prod_pidpart_S15-05-04a_fd_numi")
80  defs["NuMI"]["lemsum"] = Definition("prod_lemsum_S15-05-04_fd_numi")
81  defs["NuMI"]["lempart"] = Definition("prod_lempart_S15-05-07b_fd_numi")
82  defs["NuMI"]["pid"] = Definition("prod_pid_S15-05-22_fd_numi")
83  defs["NuMI"]["caf"] = Definition("prod_caf_S15-05-22_fd_numi")
84  #defs["NuMI"]["nue decaf"] = Definition("prod_decaf_S15-05-22a_fd_numi_nue_contain")
85  #defs["NuMI"]["numu decaf"] = Definition("prod_decaf_S15-05-22a_fd_numi_numu_contain")
86  defs["NuMI"]["caf GRL"] = Definition("prod_caf_S15-05-22_fd_numi_goodruns")
87  defs["NuMI"]["nue decaf GRL"] = Definition("prod_decaf_S15-05-22a_fd_numi_nue_contain_goodruns")
88  defs["NuMI"]["numu decaf GRL"] = Definition("prod_decaf_S15-05-22a_fd_numi_numu_contain_goodruns")
89 
90  defs["top up"] = OrderedDict()
91  defs["top up"]["artdaq"] = Definition("lozierj_artdaq_S15-03-11_fd_numi_epochB2")
92  defs["top up"]["reco"] = Definition("lozierj_reco_S15-05-04_fd_numi_epochB2")
93  defs["top up"]["lemsum"] = Definition("lozierj_lemsum_S15-05-04_fd_numi_epochB2")
94  defs["top up"]["pidpart"] = Definition("bzamoran_pidpart_S15-05-04a_fd_numi_epochB2")
95  defs["top up"]["lempart"] = Definition("bzamoran_lempart_S15-05-07b_fd_numi_epochB2")
96  defs["top up"]["pid"] = Definition("prod_pid_S15-05-22_fd_numi_epochB2")
97  defs["top up"]["caf"] = Definition("prod_caf_S15-05-22_fd_numi_epochB2")
98  defs["top up"]["nue decaf"] = Definition("prod_decaf_S15-05-22_fd_numi_epochB2_nue_contain")
99  defs["top up"]["numu decaf"] = Definition("prod_decaf_S15-05-22_fd_numi_epochB2_numu_contain")
100  defs["top up"]["caf GRL"] = Definition("prod_caf_S15-05-22_fd_numi_epochB2_goodruns")
101 
102  defs["Full"] = OrderedDict()
103  defs["Full"]["caf GRL"] = Definition("prod_caf_S15-05-22_fd_numi_full_goodruns")
104  defs["Full"]["nue decaf GRL"] = Definition("prod_decaf_S15-05-22a_fd_numi_nue_contain_full_goodruns")
105  defs["Full"]["numu decaf GRL"] = Definition("prod_decaf_S15-05-22a_fd_numi_numu_contain_full_goodruns")
106 
107  this_totals = PM.makeDatasetPage(options, "FD_NuMI_data.html", defs, text=description, config=options.config, sam_timer=sam_timer)
108  for i in range(len(this_totals)): totals[i] += this_totals[i]
109  tools.addDefs(all_defs, defs)
110 if "FD_cosmic_data" in types:
111  if options.verbose: print "run : --- Making FD cosmic data"
112  description = \
113  """
114  The FD cosmic data used to produce calibration files for the first analysis
115  is provided in two datasets. The first, used to compute the v7 calibrations,
116  contains all runs from the end of the October 2014 shutdown until just before
117  the close of the first analysis dataset (referred to as Epochs A2 and A3).
118  The second, used to study calibration drift, corresponds to the period proceeding
119  the October 2014 shutdown (Epoch A1). At this stage only subruns 0 to 10 have been
120  processed for this, second, dataset.
121  </p>
122  In addition to this dataset an eighth of all cosmic files will be processed through
123  to CAF for background studies.
124  """
125  defs = OrderedDict()
126  defs["Cosmic epochs A2 A3"] = OrderedDict()
127  defs["Cosmic epochs A2 A3"]["pclist"] = Definition("prod_pclist_S15-02-09_fd_cosmic")
128  defs["Cosmic epochs A2 A3"]["pcliststop"] = Definition("prod_pcliststop_S15-02-09_fd_cosmic")
129  defs["Cosmic epochs A2 A3"]["timecal"] = Definition("prod_timecal_S15-02-09_fd_cosmic")
130 
131  defs["Cosmic epoch A1"] = OrderedDict()
132  defs["Cosmic epoch A1"]["pclist"] = Definition("prod_pclist_S15-02-09_fd_cosmic_s00-s10")
133  defs["Cosmic epoch A1"]["pcliststop"] = Definition("prod_pcliststop_S15-02-09_fd_cosmic_s00-s10")
134  defs["Cosmic epoch A1"]["timecal"] = Definition("prod_timecal_S15-02-09_fd_cosmic_s00-s10")
135 
136  defs["Cosmic"] = OrderedDict()
137  defs["Cosmic"]["artdaq"] = Definition("prod_artdaq_S15-03-11_fd_cosmic_eighth")
138  defs["Cosmic"]["reco"] = Definition("prod_reco_S15-05-04b_fd_cosmic_eighth")
139  # defs["Cosmic"]["pidpart"] = Definition("prod_pidpart_S15-05-04b_fd_cosmic_eighth")
140  # defs["Cosmic"]["lemsum"] = Definition("prod_lemsum_S15-05-04b_fd_cosmic_eighth")
141  # defs["Cosmic"]["lempart"] = Definition("prod_lempart_S15-05-07b_fd_cosmic_eighth")
142  defs["Cosmic"]["pid"] = Definition("prod_pid_S15-05-22_fd_cosmic_eighth")
143  defs["Cosmic"]["caf"] = Definition("prod_caf_S15-05-22_fd_cosmic_eighth")
144  defs["Cosmic"]["caf good runs"] = Definition("prod_caf_S15-05-22_fd_cosmic_eighth_goodruns")
145  defs["Cosmic"]["numu decaf good runs"] = Definition("prod_decaf_S15-05-22a_fd_cosmic_eighth_goodruns_numu_contain")
146  defs["Cosmic"]["nue decaf good runs"] = Definition("prod_decaf_S15-05-22a_fd_cosmic_eighth_goodruns_nue_contain")
147 
148  this_totals = PM.makeDatasetPage(options, "FD_cosmic_data.html", defs, text=description, config=options.config, sam_timer=sam_timer)
149  for i in range(len(this_totals)): totals[i] += this_totals[i]
150  tools.addDefs(all_defs, defs)
151 ############## MC
152 if "FD_genie" in types:
153  if options.verbose: print "run : --- Making FD genie"
154  description = \
155  """
156  The FD genie sample. This was generated with real run like run/sub-run numbers and detector configurations.
157  It was generated using the list provided here:
158  </p>
159  <pre>/nova/app/users/rbpatter/runlists/fd_numi_subrunlist_20150320_30secadded.vec</pre>
160  <p>. Tbe basline (but not topup) MC pidpart, pid and caf files have been reprocessed to remove the lempresel bug.
161  """
162  defs = OrderedDict()
163  defs["FHC nonswap"] = OrderedDict()
164  defs["FHC nonswap"]["fcl"] = Definition("prod_fcl_FA14-10-03x.a_fd_genie_fhc_nonswap")
165  defs["FHC nonswap"]["daq"] = Definition("prod_daq_FA14-10-03x.a_fd_genie_fhc_nonswap")
166  defs["FHC nonswap"]["reco"] = Definition("prod_reco_S15-05-04_fd_genie_fhc_nonswap")
167  defs["FHC nonswap"]["pidpart"] = Definition("prod_pidpart_S15-05-04c_fd_genie_fhc_nonswap")
168  defs["FHC nonswap"]["lemsum"] = Definition("prod_lemsum_S15-05-04_fd_genie_fhc_nonswap")
169  defs["FHC nonswap"]["lempart"] = Definition("prod_lempart_S15-05-07b_fd_genie_fhc_nonswap")
170  defs["FHC nonswap"]["pid"] = Definition("prod_pid_S15-05-22a_fd_genie_fhc_nonswap")
171  defs["FHC nonswap"]["caf"] = Definition("prod_caf_S15-05-22a_fd_genie_fhc_nonswap")
172  defs["FHC nonswap"]["nue decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_nonswap_nue_contain")
173  defs["FHC nonswap"]["numu decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_nonswap_numu_contain")
174  defs["FHC nonswap"]["pid MRL"] = Definition("prod_pid_S15-05-22_fd_genie_fhc_nonswap_matchedruns")
175  defs["FHC nonswap"]["caf MRL"] = Definition("prod_caf_S15-05-22_fd_genie_fhc_nonswap_matchedruns")
176  defs["FHC nonswap"]["nue decaf MRL"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_nonswap_nue_contain_matchedruns")
177  defs["FHC nonswap"]["numu decaf MRL"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_nonswap_numu_contain_matchedruns")
178 
179  defs["FHC fluxswap"] = OrderedDict()
180  defs["FHC fluxswap"]["fcl"] = Definition("prod_fcl_FA14-10-03x.a_fd_genie_fhc_fluxswap")
181  defs["FHC fluxswap"]["daq"] = Definition("prod_daq_FA14-10-03x.a_fd_genie_fhc_fluxswap")
182  defs["FHC fluxswap"]["reco"] = Definition("prod_reco_S15-05-04_fd_genie_fhc_fluxswap")
183  defs["FHC fluxswap"]["pidpart"] = Definition("prod_pidpart_S15-05-04c_fd_genie_fhc_fluxswap")
184  defs["FHC fluxswap"]["lemsum"] = Definition("prod_lemsum_S15-05-04_fd_genie_fhc_fluxswap")
185  defs["FHC fluxswap"]["lempart"] = Definition("prod_lempart_S15-05-07b_fd_genie_fhc_fluxswap")
186  defs["FHC fluxswap"]["pid"] = Definition("prod_pid_S15-05-22a_fd_genie_fhc_fluxswap")
187  defs["FHC fluxswap"]["caf"] = Definition("prod_caf_S15-05-22a_fd_genie_fhc_fluxswap")
188  defs["FHC fluxswap"]["nue decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_fluxswap_nue_contain")
189  defs["FHC fluxswap"]["numu decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_fluxswap_numu_contain")
190  defs["FHC fluxswap"]["pid MRL"] = Definition("prod_pid_S15-05-22_fd_genie_fhc_fluxswap_matchedruns")
191  defs["FHC fluxswap"]["caf MRL"] = Definition("prod_caf_S15-05-22_fd_genie_fhc_fluxswap_matchedruns")
192  defs["FHC fluxswap"]["nue decaf MRL"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_fluxswap_nue_contain_matchedruns")
193  defs["FHC fluxswap"]["numu decaf MRL"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_fluxswap_numu_contain_matchedruns")
194 
195  defs["FHC tau"] = OrderedDict()
196  defs["FHC tau"]["fcl"] = Definition("prod_fcl_FA14-10-03x.a_fd_genie_fhc_tau")
197  defs["FHC tau"]["daq"] = Definition("prod_daq_FA14-10-03x.a_fd_genie_fhc_tau")
198  defs["FHC tau"]["reco"] = Definition("prod_reco_S15-05-04_fd_genie_fhc_tau")
199  defs["FHC tau"]["pidpart"] = Definition("prod_pidpart_S15-05-04c_fd_genie_fhc_tau")
200  defs["FHC tau"]["lemsum"] = Definition("prod_lemsum_S15-05-04_fd_genie_fhc_tau")
201  defs["FHC tau"]["lempart"] = Definition("prod_lempart_S15-05-07b_fd_genie_fhc_tau")
202  defs["FHC tau"]["pid"] = Definition("prod_pid_S15-05-22a_fd_genie_fhc_tau")
203  defs["FHC tau"]["caf"] = Definition("prod_caf_S15-05-22a_fd_genie_fhc_tau")
204  defs["FHC tau"]["nue decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_tau_nue_contain")
205  defs["FHC tau"]["numu decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_tau_numu_contain")
206  defs["FHC tau"]["pid MRL"] = Definition("prod_pid_S15-05-22_fd_genie_fhc_tau_matchedruns")
207  defs["FHC tau"]["caf MRL"] = Definition("prod_caf_S15-05-22_fd_genie_fhc_tau_matchedruns")
208  defs["FHC tau"]["nue decaf MRL"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_tau_nue_contain_matchedruns")
209  defs["FHC tau"]["numu decaf MRL"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_tau_numu_contain_matchedruns")
210 
211  defs["FHC Epochs A to B1"]=OrderedDict()
212  defs["FHC Epochs A to B1"]["nonswap pid"] = Definition("prod_pid_S15-05-22_fd_genie_fhc_nonswap_EpochAtoB1")
213  defs["FHC Epochs A to B1"]["nonswap caf"] = Definition("prod_caf_S15-05-22_fd_genie_fhc_nonswap_EpochAtoB1")
214  defs["FHC Epochs A to B1"]["nonswap nue decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_nonswap_nue_contain_EpochAtoB1")
215  defs["FHC Epochs A to B1"]["nonswap numu decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_nonswap_numu_contain_EpochAtoB1")
216 
217  defs["FHC Epochs A to B1"]["fluxswap pid"] = Definition("prod_pid_S15-05-22_fd_genie_fhc_fluxswap_EpochAtoB1")
218  defs["FHC Epochs A to B1"]["fluxswap caf"] = Definition("prod_caf_S15-05-22_fd_genie_fhc_fluxswap_EpochAtoB1")
219  defs["FHC Epochs A to B1"]["fluxswap nue decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_fluxswap_nue_contain_EpochAtoB1")
220  defs["FHC Epochs A to B1"]["fluxswap numu decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_fluxswap_numu_contain_EpochAtoB1")
221 
222  defs["FHC Epochs A to B1"]["tau pid"] = Definition("prod_pid_S15-05-22_fd_genie_fhc_tau_EpochAtoB1")
223  defs["FHC Epochs A to B1"]["tau caf"] = Definition("prod_caf_S15-05-22_fd_genie_fhc_tau_EpochAtoB1")
224  defs["FHC Epochs A to B1"]["tau nue decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_tau_nue_contain_EpochAtoB1")
225  defs["FHC Epochs A to B1"]["tau numu decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_tau_numu_contain_EpochAtoB1")
226 
227  defs["FHC Epoch B2"]=OrderedDict()
228  defs["FHC Epoch B2"]["nonswap pid"] = Definition("prod_pid_S15-05-22_fd_genie_fhc_nonswap_EpochB2")
229  defs["FHC Epoch B2"]["nonswap caf"] = Definition("prod_caf_S15-05-22_fd_genie_fhc_nonswap_EpochB2")
230  defs["FHC Epoch B2"]["nonswap nue decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_nonswap_nue_contain_EpochB2")
231  defs["FHC Epoch B2"]["nonswap numu decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_nonswap_numu_contain_EpochB2")
232 
233  defs["FHC Epoch B2"]["fluxswap pid"] = Definition("prod_pid_S15-05-22_fd_genie_fhc_fluxswap_EpochB2")
234  defs["FHC Epoch B2"]["fluxswap caf"] = Definition("prod_caf_S15-05-22_fd_genie_fhc_fluxswap_EpochB2")
235  defs["FHC Epoch B2"]["fluxswap nue decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_fluxswap_nue_contain_EpochB2")
236  defs["FHC Epoch B2"]["fluxswap numu decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_fluxswap_numu_contain_EpochB2")
237 
238  defs["FHC Epoch B2"]["tau pid"] = Definition("prod_caf_S15-05-22_fd_genie_fhc_tau_EpochB2")
239  defs["FHC Epoch B2"]["tau caf"] = Definition("prod_caf_S15-05-22_fd_genie_fhc_tau_EpochB2")
240  defs["FHC Epoch B2"]["tau nue decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_tau_nue_contain_EpochB2")
241  defs["FHC Epoch B2"]["tau numu decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_tau_numu_contain_EpochB2")
242 
243 
244  this_totals = PM.makeDatasetPage(options, "FD_genie.html", defs, text=description, config=options.config, sam_timer=sam_timer)
245  for i in range(len(this_totals)): totals[i] += this_totals[i]
246  tools.addDefs(all_defs, defs)
247 if "FD_cry" in types:
248  if options.verbose: print "run : --- Making FD cosmic MC"
249  description = \
250  """
251  The FD cosmic MC sample. This sample was generated using real data run numbers. This enables
252  the default reconstruction to apply masks which exclude diblocks which were not included in
253  the corresponding real run and hence reproduce the conditions of the real run.
254  </p>
255  <p>
256  This dataset corresponds to the pre-October 2014 shutdown dataset.
257  """
258  defs = OrderedDict()
259  defs["cosmic"] = OrderedDict()
260  defs["cosmic"]["artdaq"] = Definition("prod_daq_FA14-10-03_fd_cry_all")
261  defs["cosmic"]["pclist"] = Definition("prod_pclist_S15-02-09_fd_cry_all")
262  defs["cosmic"]["pcliststop"] = Definition("prod_pcliststop_S15-02-09_fd_cry_all")
263  defs["cosmic"]["timecal"] = Definition("prod_timecal_S15-02-09_fd_cry_all")
264 
265  this_totals = PM.makeDatasetPage(options, "FD_MC_cosmics.html", defs, text=description, config=options.config, sam_timer=sam_timer)
266  for i in range(len(this_totals)): totals[i] += this_totals[i]
267  tools.addDefs(all_defs, defs)
268 if "FD_cry_14db" in types:
269  if options.verbose: print "run : --- Making FD cosmic MC 14DB"
270  description = \
271  """
272  The FD cosmic MC sample made with the full 14DB detector. This sample is intended for
273  future sensitivity studies and as such does not need to reflect the running conditions
274  used to collect the first-analysis dataset. As a result this sample uses the old style
275  1,000,000+ run number scheme.
276  </p>
277  <p>
278  This sample was processed through the calibration path in the release <strong>S15-02-09</strong>.
279  """
280  defs = OrderedDict()
281  defs["cosmic"] = OrderedDict()
282  # defs["cosmic"]["artdaq"] = Definition("prod_daq_FA14-10-03_fd_cry_all_14db")
283  defs["cosmic"]["artdaq"] = Definition("prod_artdaq_FA14-10-03_fd_cry_14db")
284  defs["cosmic"]["pclist"] = Definition("prod_pclist_S15-02-09_fd_cry_14db")
285  defs["cosmic"]["pcliststop"] = Definition("prod_pcliststop_S15-02-09_fd_cry_14db")
286  defs["cosmic"]["timecal"] = Definition("prod_timecal_S15-02-09_fd_cry_14db")
287  this_totals = PM.makeDatasetPage(options, "FD_MC_cosmics_14db.html", defs, text=description, config=options.config, sam_timer=sam_timer)
288  for i in range(len(this_totals)): totals[i] += this_totals[i]
289  tools.addDefs(all_defs, defs)
290 ################## ND
291 ############## Data
292 if "ND_numi_data" in types:
293  if options.verbose: print "run : --- Making ND numi data"
294  description = \
295  """
296  The first analysis (epoch A) datasets are defined by a list of good runs provided by the
297  data quality group:
298  </p>
299 
300  <pre>/nova/app/users/rbpatter/runlists/nd_numi_subrunlist_20150318_30secadded.vec</pre>
301 
302  <p>
303  This dataset starts at run 10377 and ends on run 10824.
304  A SAM definition is provided for these runs: ND_data_epoch_A_runs.
305  """
306  defs = OrderedDict()
307  defs["NuMI"] = OrderedDict()
308  defs["NuMI"]["artdaq"] = Definition("prod_artdaq_S15-03-11_nd_numi")
309  defs["NuMI"]["reco"] = Definition("prod_reco_S15-05-04a_nd_numi")
310  # defs["NuMI"]["pidpart"] = Definition("prod_pidpart_S15-05-04a_nd_numi")
311  # defs["NuMI"]["lemsum"] = Definition("prod_lemsum_S15-05-04a_nd_numi")
312  # defs["NuMI"]["lempart"] = Definition("prod_lempart_S15-05-07b_nd_numi")
313  defs["NuMI"]["pid"] = Definition("prod_pid_S15-05-22_nd_numi")
314  defs["NuMI"]["caf"] = Definition("prod_caf_S15-05-22a_nd_numi")
315  defs["NuMI"]["nue decaf"] = Definition("prod_decaf_S15-05-22a_nd_numi_nue_contain")
316  defs["NuMI"]["numu decaf"] = Definition("prod_decaf_S15-05-22a_nd_numi_numu_contain")
317  defs["NuMI"]["caf GRL"] = Definition("prod_caf_S15-05-22a_nd_numi_goodruns")
318  defs["NuMI"]["nue decaf GRL"] = Definition("prod_decaf_S15-05-22a_nd_numi_nue_contain_goodruns")
319  defs["NuMI"]["numu decaf GRL"] = Definition("prod_decaf_S15-05-22a_nd_numi_numu_contain_goodruns")
320 
321 
322  defs["Top-up"] = OrderedDict()
323  defs["Top-up"]["artdaq"] = Definition("prod_artdaq_FA14-10-03_nd_numi_1426895999-to-2c")
324  defs["Top-up"]["reco"] = Definition("prod_reco_S15-05-04a_nd_numi_1426895999-to-2c")
325  # defs["Top-up"]["pidpart"] = Definition("prod_pidpart_S15-05-04a_nd_numi_1426895999-to-2c")
326  # defs["Top-up"]["lemsum"] = Definition("prod_lemsum_S15-05-04a_nd_numi_1426895999-to-2c")
327  # defs["Top-up"]["lempart"] = Definition("prod_lempart_S15-05-07b_nd_numi_1426895999-to-2c")
328  defs["Top-up"]["pid"] = Definition("prod_pid_S15-05-22_nd_numi_1426895999-to-2c")
329  defs["Top-up"]["caf"] = Definition("prod_caf_S15-05-22a_nd_numi_1426895999-to-2c")
330  defs["Top-up"]["nue decaf"] = Definition("prod_decaf_S15-05-22a_nd_numi_nue_contain_1426895999-to-2c")
331  defs["Top-up"]["numu decaf"] = Definition("prod_decaf_S15-05-22a_nd_numi_numu_contain_1426895999-to-2c")
332  defs["Top-up"]["caf GRL"] = Definition("prod_caf_S15-05-22a_nd_numi_1426895999-to-2c_goodruns")
333  defs["Top-up"]["nue decaf GRL"] = Definition("prod_decaf_S15-05-22a_nd_numi_nue_contain_1426895999-to-2c_goodruns")
334  defs["Top-up"]["numu decaf GRL"] = Definition("prod_decaf_S15-05-22a_nd_numi_numu_contain_1426895999-to-2c_goodruns")
335 
336  defs["Full"] = OrderedDict()
337  defs["Full"]["caf"] = Definition("prod_caf_S15-05-22a_nd_numi_full")
338  #defs["Full"]["nue decaf"] = Definition("")
339  #defs["Full"]["numu decaf"] = Definition("")
340  defs["Full"]["caf GRL"] = Definition("prod_caf_S15-05-22a_nd_numi_full_goodruns")
341  #defs["Full"]["nue decaf GRL"] = Definition("")
342  #defs["Full"]["numu decaf GRL"] = Definition("")
343 
344  this_totals = PM.makeDatasetPage(options, "ND_NuMI_data.html", defs, text=description, config=options.config, sam_timer=sam_timer)
345  for i in range(len(this_totals)): totals[i] += this_totals[i]
346  tools.addDefs(all_defs, defs)
347 if "ND_cosmic_data" in types:
348  if options.verbose: print "run : --- Making ND cosmic data"
349  description = \
350  """
351  The ND cosmic data used to produce calibration files for the first analysis
352  correspond roughly to the end of the October 2014 shutdown until just before
353  the close of the first analysis dataset.
354  """
355  defs = OrderedDict()
356  defs["cosmic"] = OrderedDict()
357  defs["cosmic"]["pclist"] = Definition("prod_pclist_S15-03-20_nd_cosmic")
358  defs["cosmic"]["pcliststop"] = Definition("prod_pcliststop_S15-03-20_nd_cosmic")
359  defs["cosmic"]["timecal"] = Definition("prod_timecal_S15-03-20_nd_cosmic")
360  defs["DD activity"] = OrderedDict()
361  defs["DD activity"]["pclist"] = Definition("prod_pclist_S15-03-20_nd_DDActivity1")
362  defs["DD activity"]["pcliststop"] = Definition("prod_pcliststop_S15-03-20_nd_DDActivity1")
363  defs["DD activity"]["timecal"] = Definition("prod_timecal_S15-03-20_nd_DDActivity1")
364  defs["DD CalMu"] = OrderedDict()
365  defs["DD CalMu"]["pclist"] = Definition("prod_pclist_S15-03-20_nd_DDCalMu")
366  defs["DD CalMu"]["pcliststop"] = Definition("prod_pcliststop_S15-03-20_nd_DDCalMu")
367  defs["DD CalMu"]["timecal"] = Definition("prod_timecal_S15-03-20_nd_DDCalMu")
368 
369  this_totals = PM.makeDatasetPage(options, "ND_cosmic_data.html", defs, text=description, config=options.config, sam_timer=sam_timer)
370  for i in range(len(this_totals)): totals[i] += this_totals[i]
371  tools.addDefs(all_defs, defs)
372 ############## MC
373 if "ND_genie" in types:
374  if options.verbose: print "run : --- Making ND genie"
375  description = \
376  """
377  The ND genie sample. This was generated with real run like run/sub-run numbers and detector configurations.
378  It was generated using the list provided here:
379  </p>
380  <pre>/nova/app/users/rbpatter/runlists/nd_numi_subrunlist_20150318_30secadded.vec</pre>
381  <p>
382  This sample contains a substantial number of files without the genie reweighting tables, and so may
383  not be used for genie systematic uncertainty studies. The subset of CAFs with the appropriate tables
384  is <code>prod_caf_S15-05-22_nd_genie_fhc_nonswap_none</code>. Note that the pid and caf files in "Extra FHC nonswap" datasets
385  contain birksmodB in their filenames, but are nonetheless nominal files.
386  """
387  defs = OrderedDict()
388  defs["FHC nonswap"] = OrderedDict()
389  defs["FHC nonswap"]["fcl"] = Definition("prod_fcl_FA14-10-03x.a_nd_genie_fhc_nonswap")
390  defs["FHC nonswap"]["daq"] = Definition("prod_daq_FA14-10-03x.a_nd_genie_fhc_nonswap")
391  defs["FHC nonswap"]["reco"] = Definition("prod_reco_S15-05-04_nd_genie_fhc_nonswap")
392  # defs["FHC nonswap"]["pidpart"] = Definition("prod_pidpart_S15-05-04a_nd_genie_fhc_nonswap")
393  # defs["FHC nonswap"]["lemsum"] = Definition("prod_lemsum_S15-05-04_nd_genie_fhc_nonswap")
394  # defs["FHC nonswap"]["lempart"] = Definition("prod_lempart_S15-05-07b_nd_genie_fhc_nonswap")
395  defs["FHC nonswap"]["pid"] = Definition("prod_pid_S15-05-22_nd_genie_fhc_nonswap")
396  defs["FHC nonswap"]["caf"] = Definition("prod_caf_S15-05-22_nd_genie_fhc_nonswap")
397  defs["FHC nonswap"]["nue decaf"] = Definition("prod_decaf_S15-05-22a_nd_genie_fhc_nonswap_nue_contain")
398  defs["FHC nonswap"]["numue decaf"] = Definition("prod_decaf_S15-05-22a_nd_genie_fhc_nonswap_numu_contain")
399  # defs["FHC nonswap"]["caf w/o genie r/w"] = Definition("prod_caf_S15-05-07a_nd_genie_fhc_nonswap_nogenierw")
400  # defs["FHC nonswap"]["caf with genie r/w"] = Definition("prod_caf_S15-05-07a_nd_genie_fhc_nonswap_none")
401 
402  defs["Extra FHC nonswap"] = OrderedDict()
403  defs["Extra FHC nonswap"]["fcl"] = Definition("prod_fcl_FA14-10-03x.a_nd_genie_fhc_nonswap_v2")
404  defs["Extra FHC nonswap"]["daq"] = Definition("prod_daq_FA14-10-03x.a_nd_genie_fhc_nonswap_v2")
405  defs["Extra FHC nonswap"]["reco"] = Definition("prod_reco_S15-05-04_nd_genie_fhc_nonswap_v2")
406  defs["Extra FHC nonswap"]["pidpart"] = Definition("prod_pidpart_S15-05-04a_nd_genie_fhc_nonswap_v2")
407  defs["Extra FHC nonswap"]["lemsum"] = Definition("prod_lemsum_S15-05-04_nd_genie_fhc_nonswap_v2")
408  defs["Extra FHC nonswap"]["lempart"] = Definition("prod_lempart_S15-05-07b_nd_genie_fhc_nonswap_v2")
409  defs["Extra FHC nonswap"]["pid"] = Definition("prod_pid_S15-05-22a_nd_genie_fhc_nonswap_v2")
410  defs["Extra FHC nonswap"]["caf"] = Definition("prod_caf_S15-05-22a_nd_genie_fhc_nonswap_v2")
411  defs["Extra FHC nonswap"]["nue decaf"] = Definition("prod_decaf_S15-05-22a_nd_genie_fhc_nonswap_nue_contain_v2")
412  defs["Extra FHC nonswap"]["numue decaf"] = Definition("prod_decaf_S15-05-22a_nd_genie_fhc_nonswap_numu_contain_v2")
413 
414  defs["FHC Top-up nonswap"] = OrderedDict()
415  defs["FHC Top-up nonswap"]["fcl"] = Definition("prod_fcl_FA14-10-03x.a_nd_genie_fhc_nonswap_topup")
416  defs["FHC Top-up nonswap"]["daq"] = Definition("prod_daq_FA14-10-03x.a_nd_genie_fhc_nonswap_topup")
417  defs["FHC Top-up nonswap"]["reco"] = Definition("prod_reco_S15-05-04c_nd_genie_fhc_nonswap_topup")
418  # defs["FHC Top-up nonswap"]["pidpart"] = Definition("prod_pidpart_S15-05-04c_nd_genie_fhc_nonswap_topup")
419  # defs["FHC Top-up nonswap"]["lemsum"] = Definition("prod_lemsum_S15-05-04c_nd_genie_fhc_nonswap_topup")
420  # defs["FHC Top-up nonswap"]["lempart"] = Definition("prod_lempart_S15-05-07b_nd_genie_fhc_nonswap_topup")
421  defs["FHC Top-up nonswap"]["pid"] = Definition("prod_pid_S15-05-22a_nd_genie_fhc_nonswap_topup")
422  defs["FHC Top-up nonswap"]["caf"] = Definition("prod_caf_S15-05-22a_nd_genie_fhc_nonswap_topup")
423  #defs["FHC Top-up nonswap"]["nue decaf"] = Definition("prod_decaf_S15-05-22a_nd_genie_fhc_nonswap_nue_contain_topup")
424  #defs["FHC Top-up nonswap"]["numue decaf"] = Definition("prod_decaf_S15-05-22a_nd_genie_fhc_nonswap_numu_contain_topup")
425 
426  this_totals = PM.makeDatasetPage(options, "ND_genie.html", defs, text=description, config=options.config, sam_timer=sam_timer)
427  for i in range(len(this_totals)): totals[i] += this_totals[i]
428  tools.addDefs(all_defs, defs)
429 if "ND_cry" in types:
430  if options.verbose: print "run : --- Making ND cosmic MC"
431  description = \
432  """
433  The ND cosmic MC sample.
434  """
435  defs = OrderedDict()
436  defs["cosmic"] = OrderedDict()
437  defs["cosmic"]["artdaq"] = Definition("prod_daq_FA14-10-03_nd_cry_all")
438  defs["cosmic"]["pclist"] = Definition("prod_pclist_S15-03-20_nd_cry_all")
439  defs["cosmic"]["pcliststop"] = Definition("prod_pcliststop_S15-03-20_nd_cry_all")
440  defs["cosmic"]["timecal"] = Definition("prod_timecal_S15-03-20_nd_cry_all")
441  this_totals = PM.makeDatasetPage(options, "ND_MC_cosmics.html", defs, text=description, config=options.config, sam_timer=sam_timer)
442  for i in range(len(this_totals)): totals[i] += this_totals[i]
443  tools.addDefs(all_defs, defs)
444 ############## Systematic samples
445 if "supporting" in types:
446 
447  ################
448  ##FD ideal conditions
449  if options.verbose: print "run : --- Making FD genie MC 14DB"
450  description = \
451  """
452  The FD genie MC sample. Made with the full 14DB detector. This sample is intended for
453  future sensitivity studies and as such does not need to reflect the running conditions
454  used to collect the first-analysis dataset. As a result this sample uses the old style
455  1,000,000+ run number scheme.
456  """
457  defs = OrderedDict()
458  defs["FHC 14DB nonswap"] = OrderedDict()
459  defs["FHC 14DB fluxswap"] = OrderedDict()
460  defs["FHC 14DB tau"] = OrderedDict()
461  defs["RHC 14DB nonswap"] = OrderedDict()
462  defs["RHC 14DB fluxswap"] = OrderedDict()
463  defs["RHC 14DB tau"] = OrderedDict()
464 
465  # defs["FHC 14DB nonswap"]["fcl"] = Definition("prod_fcl_FA14-10-03x.a_fd_genie_fhc_nonswap_ideal")
466  # defs["FHC 14DB fluxswap"]["fcl"] = Definition("prod_fcl_FA14-10-03x.a_fd_genie_fhc_fluxswap_ideal")
467  # defs["FHC 14DB tau"]["fcl"] = Definition("prod_fcl_FA14-10-03x.a_fd_genie_fhc_tau_ideal")
468  defs["FHC 14DB nonswap"]["daq"] = Definition("prod_artdaq_FA14-10-03x.a_fd_genie_fhc_nonswap_ideal")
469  defs["FHC 14DB fluxswap"]["daq"] = Definition("prod_artdaq_FA14-10-03x.a_fd_genie_fhc_fluxswap_ideal")
470  defs["FHC 14DB tau"]["daq"] = Definition("prod_artdaq_FA14-10-03x.a_fd_genie_fhc_tau_ideal")
471  defs["FHC 14DB nonswap"]["reco"] = Definition("prod_reco_S15-05-04a_fd_genie_fhc_nonswap_ideal")
472  defs["FHC 14DB fluxswap"]["reco"] = Definition("prod_reco_S15-05-04a_fd_genie_fhc_fluxswap_ideal")
473  defs["FHC 14DB tau"]["reco"] = Definition("prod_reco_S15-05-04a_fd_genie_fhc_tau_ideal")
474  # defs["FHC 14DB nonswap"]["pidpart"] = Definition("prod_pidpart_S15-05-04a_fd_genie_fhc_nonswap_ideal")
475  # defs["FHC 14DB fluxswap"]["pidpart"] = Definition("prod_pidpart_S15-05-04a_fd_genie_fhc_fluxswap_ideal")
476  # defs["FHC 14DB tau"]["pidpart"] = Definition("prod_pidpart_S15-05-04a_fd_genie_fhc_tau_ideal")
477  # defs["FHC 14DB nonswap"]["lemsum"] = Definition("prod_lemsum_S15-05-04a_fd_genie_fhc_nonswap_ideal")
478  # defs["FHC 14DB fluxswap"]["lemsum"] = Definition("prod_lemsum_S15-05-04a_fd_genie_fhc_fluxswap_ideal")
479  # defs["FHC 14DB tau"]["lemsum"] = Definition("prod_lemsum_S15-05-04a_fd_genie_fhc_tau_ideal")
480  # defs["FHC 14DB nonswap"]["lempart"] = Definition("prod_lempart_S15-05-07b_fd_genie_fhc_nonswap_ideal")
481  # defs["FHC 14DB fluxswap"]["lempart"] = Definition("prod_lempart_S15-05-07b_fd_genie_fhc_fluxswap_ideal")
482  # defs["FHC 14DB tau"]["lempart"] = Definition("prod_lempart_S15-05-07b_fd_genie_fhc_tau_ideal")
483  defs["FHC 14DB nonswap"]["pid"] = Definition("prod_pid_S15-05-22_fd_genie_fhc_nonswap_ideal")
484  defs["FHC 14DB fluxswap"]["pid"] = Definition("prod_pid_S15-05-22_fd_genie_fhc_fluxswap_ideal")
485  defs["FHC 14DB tau"]["pid"] = Definition("prod_pid_S15-05-22_fd_genie_fhc_tau_ideal")
486 
487  defs["FHC 14DB nonswap"]["caf"] = Definition("prod_caf_S15-05-22_fd_genie_fhc_nonswap_ideal")
488  defs["FHC 14DB fluxswap"]["caf"] = Definition("prod_caf_S15-05-22_fd_genie_fhc_fluxswap_ideal")
489  defs["FHC 14DB tau"]["caf"] = Definition("prod_caf_S15-05-22_fd_genie_fhc_tau_ideal")
490 
491  defs["FHC 14DB nonswap"]["nue decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_nonswap_ideal_nue_contain")
492  defs["FHC 14DB fluxswap"]["nue decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_fluxswap_ideal_nue_contain")
493  defs["FHC 14DB tau"]["nue decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_tau_ideal_nue_contain")
494 
495  defs["FHC 14DB nonswap"]["numu decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_nonswap_ideal_numu_contain")
496  defs["FHC 14DB fluxswap"]["numu decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_fluxswap_ideal_numu_contain")
497  defs["FHC 14DB tau"]["numu decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_tau_ideal_numu_contain")
498 
499  defs["RHC 14DB nonswap"]["fcl"] = Definition("prod_fcl_FA14-10-03x.a_fd_genie_rhc_nonswap_ideal")
500  defs["RHC 14DB fluxswap"]["fcl"] = Definition("prod_fcl_FA14-10-03x.a_fd_genie_rhc_fluxswap_ideal")
501  defs["RHC 14DB tau"]["fcl"] = Definition("prod_fcl_FA14-10-03x.a_fd_genie_rhc_tau_ideal")
502 
503  defs["RHC 14DB nonswap"]["daq"] = Definition("prod_daq_FA14-10-03x.a_fd_genie_rhc_nonswap_ideal")
504  defs["RHC 14DB fluxswap"]["daq"] = Definition("prod_daq_FA14-10-03x.a_fd_genie_rhc_fluxswap_ideal")
505  defs["RHC 14DB tau"]["daq"] = Definition("prod_daq_FA14-10-03x.a_fd_genie_rhc_tau_ideal")
506 
507  defs["RHC 14DB nonswap"]["reco"] = Definition("prod_reco_S15-05-04a_fd_genie_rhc_nonswap_ideal")
508  defs["RHC 14DB fluxswap"]["reco"] = Definition("prod_reco_S15-05-04a_fd_genie_rhc_fluxswap_ideal")
509  defs["RHC 14DB tau"]["reco"] = Definition("prod_reco_S15-05-04a_fd_genie_rhc_tau_ideal")
510 
511  defs["RHC 14DB nonswap"]["pidpart"] = Definition("prod_pidpart_S15-05-04a_fd_genie_rhc_nonswap_ideal")
512  defs["RHC 14DB fluxswap"]["pidpart"] = Definition("prod_pidpart_S15-05-04a_fd_genie_rhc_fluxswap_ideal")
513  defs["RHC 14DB tau"]["pidpart"] = Definition("prod_pidpart_S15-05-04a_fd_genie_rhc_tau_ideal")
514 
515  defs["RHC 14DB nonswap"]["lemsum"] = Definition("prod_lemsum_S15-05-04a_fd_genie_rhc_nonswap_ideal")
516  defs["RHC 14DB fluxswap"]["lemsum"] = Definition("prod_lemsum_S15-05-04a_fd_genie_rhc_fluxswap_ideal")
517  defs["RHC 14DB tau"]["lemsum"] = Definition("prod_lemsum_S15-05-04a_fd_genie_rhc_tau_ideal")
518 
519  defs["RHC 14DB nonswap"]["lempart"] = Definition("prod_lempart_S15-05-07b_fd_genie_rhc_nonswap_ideal")
520  defs["RHC 14DB fluxswap"]["lempart"] = Definition("prod_lempart_S15-05-07b_fd_genie_rhc_fluxswap_ideal")
521  defs["RHC 14DB tau"]["lempart"] = Definition("prod_lempart_S15-05-07b_fd_genie_rhc_tau_ideal")
522 
523  defs["RHC 14DB nonswap"]["pid"] = Definition("prod_pid_S15-05-22_fd_genie_rhc_nonswap_ideal")
524  defs["RHC 14DB fluxswap"]["pid"] = Definition("prod_pid_S15-05-22_fd_genie_rhc_fluxswap_ideal")
525  defs["RHC 14DB tau"]["pid"] = Definition("prod_pid_S15-05-22_fd_genie_rhc_tau_ideal")
526 
527  defs["RHC 14DB nonswap"]["caf"] = Definition("prod_caf_S15-05-22_fd_genie_rhc_nonswap_ideal")
528  defs["RHC 14DB fluxswap"]["caf"] = Definition("prod_caf_S15-05-22_fd_genie_rhc_fluxswap_ideal")
529  defs["RHC 14DB tau"]["caf"] = Definition("prod_caf_S15-05-22_fd_genie_rhc_tau_ideal")
530 
531  this_totals = PM.makeDatasetPage(options, "FD_MC_genie_14db.html", defs, text=description, config=options.config, sam_timer=sam_timer)
532  for i in range(len(this_totals)): totals[i] += this_totals[i]
533  tools.addDefs(all_defs, defs)
534 
535 
536  ################
537  ##FD ideal conditions
538  if options.verbose: print "run : --- Making ND genie ideal conditions MC"
539  description = \
540  """
541  The ND genie MC sample, generated assuming ideal conditions. As a result this sample uses the old style
542  1,000,000+ run number scheme. This is principally intended for run-plan studies
543  """
544  defs = OrderedDict()
545  defs["RHC nonswap ideal"] = OrderedDict()
546  defs["RHC nonswap ideal"]["daq"] = Definition("prod_artdaq_FA14-10-03x.e_nd_genie_rhc_nonswap_ideal")
547  defs["RHC nonswap ideal"]["reco"] = Definition("prod_reco_S15-05-04c_nd_genie_rhc_nonswap_ideal")
548  defs["RHC nonswap ideal"]["lemsum"] = Definition("prod_lemsum_S15-05-04c_nd_genie_rhc_nonswap_ideal")
549  defs["RHC nonswap ideal"]["pidpart"] = Definition("prod_pidpart_S15-05-04c_nd_genie_rhc_nonswap_ideal")
550  defs["RHC nonswap ideal"]["lempart"] = Definition("prod_lempart_S15-05-07b_nd_genie_rhc_nonswap_ideal")
551  defs["RHC nonswap ideal"]["pid"] = Definition("prod_pid_S15-05-22a_nd_genie_rhc_nonswap_ideal")
552  defs["RHC nonswap ideal"]["caf"] = Definition("prod_caf_S15-05-22a_nd_genie_rhc_nonswap_ideal")
553 
554 
555  this_totals = PM.makeDatasetPage(options, "ND_MC_genie_ideal.html", defs, text=description, config=options.config, sam_timer=sam_timer)
556  for i in range(len(this_totals)): totals[i] += this_totals[i]
557  tools.addDefs(all_defs, defs)
558 
559 
560  ################
561  ##ND Alt Geo
562  if options.verbose: print "run : --- Making ND alternate geometry"
563  description = \
564  """
565  This sample consists of the same data as the core ND NuMI data sample.
566  However this sample has been reconstructed with a more modern geometry file which
567  is based off of the most recent survey data.
568  """
569  defs = OrderedDict()
570  defs["NuMI"] = OrderedDict()
571  defs["NuMI"]["artdaq"] = Definition("prod_artdaq_S15-03-11_nd_numi_stagger")
572  defs["NuMI"]["reco"] = Definition("prod_reco_S15-05-04a_nd_numi_stagger")
573  # defs["NuMI"]["pidpart"] = Definition("prod_pidpart_S15-05-04a_nd_numi_stagger")
574  # defs["NuMI"]["lemsum"] = Definition("prod_lemsum_S15-05-04a_nd_numi_stagger")
575  # defs["NuMI"]["lempart"] = Definition("prod_lempart_S15-05-07b_nd_numi_stagger")
576  defs["NuMI"]["pid"] = Definition("prod_pid_S15-05-22_nd_numi_stagger")
577  defs["NuMI"]["caf"] = Definition("prod_caf_S15-05-22a_nd_numi_stagger")
578  defs["NuMI"]["nue decaf"] = Definition("prod_decaf_S15-05-22a_nd_numi_stagger_nue_contain")
579  defs["NuMI"]["numu decaf"] = Definition("prod_decaf_S15-05-22a_nd_numi_stagger_numu_contain")
580  defs["NuMI"]["caf GRL"] = Definition("prod_caf_S15-05-22a_nd_numi_stagger_goodruns")
581  defs["NuMI"]["nue decaf GRL"] = Definition("prod_decaf_S15-05-22a_nd_numi_stagger_nue_contain_goodruns")
582  defs["NuMI"]["numu decaf GRL"] = Definition("prod_decaf_S15-05-22a_nd_numi_stagger_numu_contain_goodruns")
583 
584  this_totals = PM.makeDatasetPage(options, "ND_NuMI_data_with_alternative_geometry.html", defs, text=description, config=options.config, sam_timer=sam_timer)
585  for i in range(len(this_totals)): totals[i] += this_totals[i]
586  tools.addDefs(all_defs, defs)
587 
588  ################
589  ##ND Alt CRY
590  if options.verbose: print "run : --- Making ND alternative cry"
591  description = \
592  """
593  This ND cosmic sample has been simulated in the same release as the core
594  analysis files provided for first analysis <b>FA14-10-03x.a</b>. This is unlike the
595  ND cosmic files used for the computation of calibration constants described
596  in the
597  <a href="http://nusoft.fnal.gov/nova/production/first_analysis/ND_MC_cosmics.html">
598  ND cosmics page
599  </a>,
600  which were
601  simulated in FA14-10-03 as were all the calibration samples. The difference
602  between these releases is described in full on the
603  <a href="https://cdcvs.fnal.gov/redmine/projects/novaart/wiki/History_of_Tagged_Releases">
604  history of tagged releases page
605  </a>. In brief it includes the fixing of the Birk's suppression bug,
606  the addition of APD sag, a truth bug fix, and an update to the noise model.
607  """
608  defs = OrderedDict()
609  defs["cosmics"] = OrderedDict()
610  defs["cosmics"]["fcl"] = Definition("prod_fcl_FA14-10-03x.a_nd_cry_all_v3")
611  defs["cosmics"]["daq"] = Definition("prod_daq_FA14-10-03x.a_nd_cry_all_v3")
612  defs["cosmics"]["pclist"] = Definition("prod_pclist_S15-03-20_nd_cry_all_from_daq_FA14-10-03x.a")
613  defs["cosmics"]["pcliststop"] = Definition("prod_pcliststop_S15-03-20_nd_cry_all_from_daq_FA14-10-03x.a")
614  defs["cosmics"]["timecal"] = Definition("prod_timecal_S15-03-20_nd_cry_all_from_daq_FA14-10-03x.a")
615 
616  this_totals = PM.makeDatasetPage(options, "ND_cry_with_modern_simulation.html", defs, text=description, config=options.config, sam_timer=sam_timer)
617  for i in range(len(this_totals)): totals[i] += this_totals[i]
618  tools.addDefs(all_defs, defs)
619 
620  ################
621  ##FD Alt CRY
622  if options.verbose: print "run : --- Making FD alternative cry"
623  description = \
624  """
625  This FD cosmic sample has been simulated in the same release as the core
626  analysis files provided for first analysis <b>FA14-10-03x.a</b>. This is unlike the
627  FD cosmic files used for the computation of calibration constants described
628  in the
629  <a href="http://nusoft.fnal.gov/nova/production/first_analysis/FD_MC_cosmics.html">
630  FD cosmics page
631  </a>,
632  which were
633  simulated in FA14-10-03 as were all the calibration samples. The difference
634  between these releases is described in full on the
635  <a href="https://cdcvs.fnal.gov/redmine/projects/novaart/wiki/History_of_Tagged_Releases">
636  history of tagged releases page
637  </a>. In brief it includes the fixing of the Birk's suppression bug,
638  the addition of APD sag, a truth bug fix, and an update to the noise model.
639  """
640  defs = OrderedDict()
641  defs["cosmics"] = OrderedDict()
642  defs["cosmics"]["fcl"] = Definition("prod_fcl_FA14-10-03x.a_fd_cry_all")
643  defs["cosmics"]["daq"] = Definition("prod_daq_FA14-10-03x.a_fd_cry_all")
644  defs["cosmics"]["pclist"] = Definition("prod_pclist_S15-02-09_fd_cry_all_from_daq_FA14-10-03x.a")
645  defs["cosmics"]["pcliststop"] = Definition("prod_pcliststop_S15-02-09_fd_cry_all_from_daq_FA14-10-03x.a")
646  defs["cosmics"]["timecal"] = Definition("prod_timecal_S15-02-09_fd_cry_all_from_daq_FA14-10-03x.a")
647 
648  this_totals = PM.makeDatasetPage(options, "FD_cry_with_modern_simulation.html", defs, text=description, config=options.config, sam_timer=sam_timer)
649  for i in range(len(this_totals)): totals[i] += this_totals[i]
650  tools.addDefs(all_defs, defs)
651 
652  ################
653  ##FD Calibration Shifted
654  if options.verbose: print "run : --- Making FD Calibration Shifted"
655  description = \
656  """
657  These samples are the same as the real conditions FHC Monte Carlo files, but have been reconstructed with alternative calibration constants
658  to assess the impact of the systematic uncertainty on the calibration
659  """
660  defs = OrderedDict()
661  defs[ "Nonswap flat shift 0.95"] = OrderedDict()
662  defs[ "Nonswap flat shift 0.95"][ "daq"] = Definition("prod_artdaq_FA14-10-03x.a_fd_genie_fhc_nonswap_calib_shift_flat_095")
663  defs[ "Nonswap flat shift 0.95"][ "reco"] = Definition("prod_reco_S15-05-04b_fd_genie_fhc_nonswap_calib_shift_flat_095")
664  #defs[ "Nonswap flat shift 0.95"]["pidpart"] = Definition("prod_pidpart_S15-05-04b_fd_genie_fhc_nonswap_calib_shift_flat_095")
665  #defs[ "Nonswap flat shift 0.95"][ "lemsum"] = Definition("prod_lemsum_S15-05-04b_fd_genie_fhc_nonswap_calib_shift_flat_095")
666  #defs[ "Nonswap flat shift 0.95"]["lempart"] = Definition("prod_lempart_S15-05-07b_fd_genie_fhc_nonswap_calib_shift_flat_095")
667  defs[ "Nonswap flat shift 0.95"][ "pid"] = Definition("prod_pid_S15-05-22a_fd_genie_fhc_nonswap_calib_shift_flat_095")
668  defs[ "Nonswap flat shift 0.95"][ "caf"] = Definition("prod_caf_S15-05-22a_fd_genie_fhc_nonswap_calib_shift_flat_095")
669  defs[ "Nonswap flat shift 0.95"][ "nue decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_nonswap_calib_shift_flat_095_nue_contain")
670  defs[ "Nonswap flat shift 0.95"][ "numu decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_nonswap_calib_shift_flat_095_numu_contain")
671 
672  defs[ "Nonswap flat shift 1.05"] = OrderedDict()
673  defs[ "Nonswap flat shift 1.05"][ "daq"] = Definition("prod_artdaq_FA14-10-03x.a_fd_genie_fhc_nonswap_calib_shift_flat_105")
674  defs[ "Nonswap flat shift 1.05"][ "reco"] = Definition("prod_reco_S15-05-04b_fd_genie_fhc_nonswap_calib_shift_flat_105")
675  #defs[ "Nonswap flat shift 1.05"]["pidpart"] = Definition("prod_pidpart_S15-05-04b_fd_genie_fhc_nonswap_calib_shift_flat_105")
676  #defs[ "Nonswap flat shift 1.05"][ "lemsum"] = Definition("prod_lemsum_S15-05-04b_fd_genie_fhc_nonswap_calib_shift_flat_105")
677  #defs[ "Nonswap flat shift 1.05"]["lempart"] = Definition("prod_lempart_S15-05-07b_fd_genie_fhc_nonswap_calib_shift_flat_105")
678  defs[ "Nonswap flat shift 1.05"][ "pid"] = Definition("prod_pid_S15-05-22a_fd_genie_fhc_nonswap_calib_shift_flat_105")
679  defs[ "Nonswap flat shift 1.05"][ "caf"] = Definition("prod_caf_S15-05-22a_fd_genie_fhc_nonswap_calib_shift_flat_105")
680  defs[ "Nonswap flat shift 1.05"][ "nue decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_nonswap_calib_shift_flat_105_nue_contain")
681  defs[ "Nonswap flat shift 1.05"][ "numu decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_nonswap_calib_shift_flat_105_numu_contain")
682 
683  defs["Nonswap 0.008 random shift"] = OrderedDict()
684  defs[ "Nonswap 0.008 random shift"][ "daq"] = Definition("prod_artdaq_FA14-10-03x.a_fd_genie_fhc_nonswap_calib_shift_random_008")
685  defs[ "Nonswap 0.008 random shift"][ "reco"] = Definition("prod_reco_S15-05-04b_fd_genie_fhc_nonswap_calib_shift_random_008")
686  #defs[ "Nonswap 0.008 random shift"]["pidpart"] = Definition("prod_pidpart_S15-05-04b_fd_genie_fhc_nonswap_calib_shift_random_008")
687  #defs[ "Nonswap 0.008 random shift"][ "lemsum"] = Definition("prod_lemsum_S15-05-04b_fd_genie_fhc_nonswap_calib_shift_random_008")
688  #defs[ "Nonswap 0.008 random shift"]["lempart"] = Definition("prod_lempart_S15-05-07b_fd_genie_fhc_nonswap_calib_shift_random_008")
689  defs[ "Nonswap 0.008 random shift"][ "pid"] = Definition("prod_pid_S15-05-22a_fd_genie_fhc_nonswap_calib_shift_random_008")
690  defs[ "Nonswap 0.008 random shift"][ "caf"] = Definition("prod_caf_S15-05-22a_fd_genie_fhc_nonswap_calib_shift_random_008")
691  defs[ "Nonswap 0.008 random shift"][ "nue decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_nonswap_calib_shift_random_008_nue_contain")
692  defs[ "Nonswap 0.008 random shift"][ "numu decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_nonswap_calib_shift_random_008_numu_contain")
693 
694  defs[ "Nonswap shift with slope"] = OrderedDict()
695  defs[ "Nonswap shift with slope"][ "daq"] = Definition("prod_artdaq_FA14-10-03x.a_fd_genie_fhc_nonswap_calib_shift_fd_x_y_slope")
696  defs[ "Nonswap shift with slope"][ "reco"] = Definition("prod_reco_S15-05-04b_fd_genie_fhc_nonswap_calib_shift_fd_x_y_slope")
697  #defs[ "Nonswap shift with slope"]["pidpart"] = Definition("prod_pidpart_S15-05-04b_fd_genie_fhc_nonswap_calib_shift_fd_x_y_slope")
698  #defs[ "Nonswap shift with slope"][ "lemsum"] = Definition("prod_lemsum_S15-05-04b_fd_genie_fhc_nonswap_calib_shift_fd_x_y_slope")
699  #defs[ "Nonswap shift with slope"]["lempart"] = Definition("prod_lempart_S15-05-07b_fd_genie_fhc_nonswap_calib_shift_fd_x_y_slope")
700  defs[ "Nonswap shift with slope"][ "pid"] = Definition("prod_pid_S15-05-22a_fd_genie_fhc_nonswap_calib_shift_fd_x_y_slope")
701  defs[ "Nonswap shift with slope"][ "caf"] = Definition("prod_caf_S15-05-22a_fd_genie_fhc_nonswap_calib_shift_fd_x_y_slope")
702  defs[ "Nonswap shift with slope"][ "nue decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_nonswap_calib_shift_fd_x_y_slope_nue_contain")
703  defs[ "Nonswap shift with slope"][ "numu decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_nonswap_calib_shift_fd_x_y_slope_numu_contain")
704 
705  ##------------------------------
706  defs[ "Fluxswap flat shift 0.95"] = OrderedDict()
707  defs[ "Fluxswap flat shift 0.95"][ "daq"] = Definition("prod_artdaq_FA14-10-03x.a_fd_genie_fhc_fluxswap_calib_shift_flat_095")
708  defs[ "Fluxswap flat shift 0.95"][ "reco"] = Definition("prod_reco_S15-05-04b_fd_genie_fhc_fluxswap_calib_shift_flat_095")
709  #defs[ "Fluxswap flat shift 0.95"]["pidpart"] = Definition("prod_pidpart_S15-05-04b_fd_genie_fhc_fluxswap_calib_shift_flat_095")
710  #defs[ "Fluxswap flat shift 0.95"][ "lemsum"] = Definition("prod_lemsum_S15-05-04b_fd_genie_fhc_fluxswap_calib_shift_flat_095")
711  #defs[ "Fluxswap flat shift 0.95"]["lempart"] = Definition("prod_lempart_S15-05-07b_fd_genie_fhc_fluxswap_calib_shift_flat_095")
712  defs[ "Fluxswap flat shift 0.95"][ "pid"] = Definition("prod_pid_S15-05-22a_fd_genie_fhc_fluxswap_calib_shift_flat_095")
713  defs[ "Fluxswap flat shift 0.95"][ "caf"] = Definition("prod_caf_S15-05-22a_fd_genie_fhc_fluxswap_calib_shift_flat_095")
714 
715  defs[ "Fluxswap flat shift 1.05"] = OrderedDict()
716  defs[ "Fluxswap flat shift 1.05"][ "daq"] = Definition("prod_artdaq_FA14-10-03x.a_fd_genie_fhc_fluxswap_calib_shift_flat_105")
717  defs[ "Fluxswap flat shift 1.05"][ "reco"] = Definition("prod_reco_S15-05-04b_fd_genie_fhc_fluxswap_calib_shift_flat_105")
718  #defs[ "Fluxswap flat shift 1.05"]["pidpart"] = Definition("prod_pidpart_S15-05-04b_fd_genie_fhc_fluxswap_calib_shift_flat_105")
719  #defs[ "Fluxswap flat shift 1.05"][ "lemsum"] = Definition("prod_lemsum_S15-05-04b_fd_genie_fhc_fluxswap_calib_shift_flat_105")
720  #defs[ "Fluxswap flat shift 1.05"]["lempart"] = Definition("prod_lempart_S15-05-07b_fd_genie_fhc_fluxswap_calib_shift_flat_105")
721  defs[ "Fluxswap flat shift 1.05"][ "pid"] = Definition("prod_pid_S15-05-22a_fd_genie_fhc_fluxswap_calib_shift_flat_105")
722  defs[ "Fluxswap flat shift 1.05"][ "caf"] = Definition("prod_caf_S15-05-22a_fd_genie_fhc_fluxswap_calib_shift_flat_105")
723 
724  defs["Fluxswap 0.008 random shift"] = OrderedDict()
725  defs[ "Fluxswap 0.008 random shift"][ "daq"] = Definition("prod_artdaq_FA14-10-03x.a_fd_genie_fhc_fluxswap_calib_shift_random_008")
726  defs[ "Fluxswap 0.008 random shift"][ "reco"] = Definition("prod_reco_S15-05-04b_fd_genie_fhc_fluxswap_calib_shift_random_008")
727  #defs[ "Fluxswap 0.008 random shift"]["pidpart"] = Definition("prod_pidpart_S15-05-04b_fd_genie_fhc_fluxswap_calib_shift_random_008")
728  #defs[ "Fluxswap 0.008 random shift"][ "lemsum"] = Definition("prod_lemsum_S15-05-04b_fd_genie_fhc_fluxswap_calib_shift_random_008")
729  #defs[ "Fluxswap 0.008 random shift"]["lempart"] = Definition("prod_lempart_S15-05-07b_fd_genie_fhc_fluxswap_calib_shift_random_008")
730  defs[ "Fluxswap 0.008 random shift"][ "pid"] = Definition("prod_pid_S15-05-22a_fd_genie_fhc_fluxswap_calib_shift_random_008")
731  defs[ "Fluxswap 0.008 random shift"][ "caf"] = Definition("prod_caf_S15-05-22a_fd_genie_fhc_fluxswap_calib_shift_random_008")
732 
733  defs[ "Fluxswap shift with slope"] = OrderedDict()
734  defs[ "Fluxswap shift with slope"][ "daq"] = Definition("prod_artdaq_FA14-10-03x.a_fd_genie_fhc_fluxswap_calib_shift_fd_x_y_slope")
735  defs[ "Fluxswap shift with slope"][ "reco"] = Definition("prod_reco_S15-05-04b_fd_genie_fhc_fluxswap_calib_shift_fd_x_y_slope")
736  #defs[ "Fluxswap shift with slope"]["pidpart"] = Definition("prod_pidpart_S15-05-04b_fd_genie_fhc_fluxswap_calib_shift_fd_x_y_slope")
737  #defs[ "Fluxswap shift with slope"][ "lemsum"] = Definition("prod_lemsum_S15-05-04b_fd_genie_fhc_fluxswap_calib_shift_fd_x_y_slope")
738  #defs[ "Fluxswap shift with slope"]["lempart"] = Definition("prod_lempart_S15-05-07b_fd_genie_fhc_fluxswap_calib_shift_fd_x_y_slope")
739  defs[ "Fluxswap shift with slope"][ "pid"] = Definition("prod_pid_S15-05-22a_fd_genie_fhc_fluxswap_calib_shift_fd_x_y_slope")
740  defs[ "Fluxswap shift with slope"][ "caf"] = Definition("prod_caf_S15-05-22a_fd_genie_fhc_fluxswap_calib_shift_fd_x_y_slope")
741 
742  this_totals = PM.makeDatasetPage(options, "FD_calib_shifted.html", defs, text=description, config=options.config, sam_timer=sam_timer)
743  for i in range(len(this_totals)): totals[i] += this_totals[i]
744  tools.addDefs(all_defs, defs)
745 
746 
747  ##ND Calibration Shifted
748  if options.verbose: print "run : --- Making ND Calibration Shifted"
749  description = \
750  """
751  These samples are the same as the real conditions FHC Monte Carlo files, but have been reconstructed with alternative calibration constants
752  to assess the impact of the systematic uncertainty on the calibration
753  """
754  defs = OrderedDict()
755  defs[ "Nonswap flat shift 0.95"] = OrderedDict()
756  defs[ "Nonswap flat shift 0.95"][ "daq"] = Definition("prod_artdaq_FA14-10-03x.a_nd_genie_fhc_nonswap_calib_shift_flat_095")
757  defs[ "Nonswap flat shift 0.95"][ "reco"] = Definition("prod_reco_S15-05-04b_nd_genie_fhc_nonswap_calib_shift_flat_095")
758  #defs[ "Nonswap flat shift 0.95"][ "pidpart"] = Definition("prod_pidpart_S15-05-04b_nd_genie_fhc_nonswap_calib_shift_flat_095")
759  #defs[ "Nonswap flat shift 0.95"][ "lemsum"] = Definition("prod_lemsum_S15-05-04b_nd_genie_fhc_nonswap_calib_shift_flat_095")
760  #defs[ "Nonswap flat shift 0.95"][ "lempart"] = Definition("prod_lempart_S15-05-07b_nd_genie_fhc_nonswap_calib_shift_flat_095")
761  defs[ "Nonswap flat shift 0.95"][ "pid"] = Definition("prod_pid_S15-05-22a_nd_genie_fhc_nonswap_calib_shift_flat_095")
762  defs[ "Nonswap flat shift 0.95"][ "caf"] = Definition("prod_caf_S15-05-22a_nd_genie_fhc_nonswap_calib_shift_flat_095")
763  defs[ "Nonswap flat shift 0.95"][ "nue decaf"] = Definition("prod_decaf_S15-05-22a_nd_genie_fhc_nonswap_calib_shift_flat_095_nue_contain")
764  defs[ "Nonswap flat shift 0.95"][ "numu decaf"] = Definition("prod_decaf_S15-05-22a_nd_genie_fhc_nonswap_calib_shift_flat_095_numu_contain")
765 
766  defs[ "Nonswap flat shift 1.05"] = OrderedDict()
767  defs[ "Nonswap flat shift 1.05"][ "daq"] = Definition("prod_artdaq_FA14-10-03x.a_nd_genie_fhc_nonswap_calib_shift_flat_105")
768  defs[ "Nonswap flat shift 1.05"][ "reco"] = Definition("prod_reco_S15-05-04b_nd_genie_fhc_nonswap_calib_shift_flat_105")
769  #defs[ "Nonswap flat shift 1.05"][ "pidpart"] = Definition("prod_pidpart_S15-05-04b_nd_genie_fhc_nonswap_calib_shift_flat_105")
770  #defs[ "Nonswap flat shift 1.05"][ "lemsum"] = Definition("prod_lemsum_S15-05-04b_nd_genie_fhc_nonswap_calib_shift_flat_105")
771  #defs[ "Nonswap flat shift 1.05"][ "lempart"] = Definition("prod_lempart_S15-05-07b_nd_genie_fhc_nonswap_calib_shift_flat_105")
772  defs[ "Nonswap flat shift 1.05"][ "pid"] = Definition("prod_pid_S15-05-22a_nd_genie_fhc_nonswap_calib_shift_flat_105")
773  defs[ "Nonswap flat shift 1.05"][ "caf"] = Definition("prod_caf_S15-05-22a_nd_genie_fhc_nonswap_calib_shift_flat_105")
774  defs[ "Nonswap flat shift 1.05"][ "nue decaf"] = Definition("prod_decaf_S15-05-22a_nd_genie_fhc_nonswap_calib_shift_flat_105_nue_contain")
775  defs[ "Nonswap flat shift 1.05"][ "numu decaf"] = Definition("prod_decaf_S15-05-22a_nd_genie_fhc_nonswap_calib_shift_flat_105_numu_contain")
776 
777  defs["Nonswap 0.008 random shift"] = OrderedDict()
778  defs[ "Nonswap 0.008 random shift"][ "daq"] = Definition("prod_artdaq_FA14-10-03x.a_nd_genie_fhc_nonswap_calib_shift_random_008")
779  defs[ "Nonswap 0.008 random shift"][ "reco"] = Definition("prod_reco_S15-05-04b_nd_genie_fhc_nonswap_calib_shift_random_008")
780  #defs[ "Nonswap 0.008 random shift"][ "pidpart"] = Definition("prod_pidpart_S15-05-04b_nd_genie_fhc_nonswap_calib_shift_random_008")
781  #defs[ "Nonswap 0.008 random shift"][ "lemsum"] = Definition("prod_lemsum_S15-05-04b_nd_genie_fhc_nonswap_calib_shift_random_008")
782  #defs[ "Nonswap 0.008 random shift"][ "lempart"] = Definition("prod_lempart_S15-05-07b_nd_genie_fhc_nonswap_calib_shift_random_008")
783  defs[ "Nonswap 0.008 random shift"][ "pid"] = Definition("prod_pid_S15-05-22a_nd_genie_fhc_nonswap_calib_shift_random_008")
784  defs[ "Nonswap 0.008 random shift"][ "caf"] = Definition("prod_caf_S15-05-22a_nd_genie_fhc_nonswap_calib_shift_random_008")
785  defs[ "Nonswap 0.008 random shift"][ "nue decaf"] = Definition("prod_decaf_S15-05-22a_nd_genie_fhc_nonswap_calib_shift_random_008_nue_contain")
786  defs[ "Nonswap 0.008 random shift"][ "numu decaf"] = Definition("prod_decaf_S15-05-22a_nd_genie_fhc_nonswap_calib_shift_random_008_numu_contain")
787 
788  defs[ "Nonswap shift with slope"] = OrderedDict()
789  defs[ "Nonswap shift with slope"][ "daq"] = Definition("prod_artdaq_FA14-10-03x.a_nd_genie_fhc_nonswap_calib_shift_nd_x_y_slope")
790  defs[ "Nonswap shift with slope"][ "reco"] = Definition("prod_reco_S15-05-04b_nd_genie_fhc_nonswap_calib_shift_nd_x_y_slope")
791  #defs[ "Nonswap shift with slope"][ "pidpart"] = Definition("prod_pidpart_S15-05-04b_nd_genie_fhc_nonswap_calib_shift_nd_x_y_slope")
792  #defs[ "Nonswap shift with slope"][ "lemsum"] = Definition("prod_lemsum_S15-05-04b_nd_genie_fhc_nonswap_calib_shift_nd_x_y_slope")
793  #defs[ "Nonswap shift with slope"][ "lempart"] = Definition("prod_lempart_S15-05-07b_nd_genie_fhc_nonswap_calib_shift_nd_x_y_slope")
794  defs[ "Nonswap shift with slope"][ "pid"] = Definition("prod_pid_S15-05-22a_nd_genie_fhc_nonswap_calib_shift_nd_x_y_slope")
795  defs[ "Nonswap shift with slope"][ "caf"] = Definition("prod_caf_S15-05-22a_nd_genie_fhc_nonswap_calib_shift_nd_x_y_slope")
796  defs[ "Nonswap shift with slope"][ "nue decaf"] = Definition("prod_decaf_S15-05-22a_nd_genie_fhc_nonswap_calib_shift_nd_x_y_slope_nue_contain")
797  defs[ "Nonswap shift with slope"][ "numu decaf"] = Definition("prod_decaf_S15-05-22a_nd_genie_fhc_nonswap_calib_shift_nd_x_y_slope_numu_contain")
798 
799  this_totals = PM.makeDatasetPage(options, "ND_calib_shifted.html", defs, text=description, config=options.config, sam_timer=sam_timer)
800  for i in range(len(this_totals)): totals[i] += this_totals[i]
801  tools.addDefs(all_defs, defs)
802 
803  ################
804  ##FD Calibration Shifted
805  if options.verbose: print "run : --- Making FD Birks Shifted"
806  description = \
807  """
808  These samples are the same as the real conditions FHC Monte Carlo files, but have been simulated with variations
809  on the first-order (birksB) and second-order (birksC) Birks-Chou parameters.
810  """
811  defs = OrderedDict()
812  defs[ "Nonswap BirksB"] = OrderedDict()
813  defs[ "Nonswap BirksB"][ "daq"] = Definition("prod_artdaq_FA14-10-03x.c_fd_genie_fhc_nonswap_birksB_v2")
814  defs[ "Nonswap BirksB"][ "reco"] = Definition("prod_reco_S15-05-04b_fd_genie_fhc_nonswap_birksB_v2")
815  #defs[ "Nonswap BirksB"][ "pidpart"] = Definition("prod_pidpart_S15-05-04b_fd_genie_fhc_nonswap_birksB_v2")
816  #defs[ "Nonswap BirksB"][ "lemsum"] = Definition("prod_lemsum_S15-05-04b_fd_genie_fhc_nonswap_birksB_v2")
817  #defs[ "Nonswap BirksB"][ "lempart"] = Definition("prod_lempart_S15-05-07b_fd_genie_fhc_nonswap_birksB_v2")
818  defs[ "Nonswap BirksB"][ "pid"] = Definition("prod_pid_S15-05-22a_fd_genie_fhc_nonswap_birksB_v2")
819  defs[ "Nonswap BirksB"][ "caf"] = Definition("prod_caf_S15-05-22a_fd_genie_fhc_nonswap_birksB_v2")
820  defs[ "Nonswap BirksB"][ "nue decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_nonswap_birksB_v2_nue_contain")
821  defs[ "Nonswap BirksB"][ "numu decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_nonswap_birksB_v2_numu_contain")
822  defs[ "Nonswap BirksB"][ "caf MRL"] = Definition("prod_caf_S15-05-22a_fd_genie_fhc_nonswap_birksB_v2_matchedruns")
823  defs[ "Nonswap BirksB"][ "nue decaf MRL"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_nonswap_birksB_v2_nue_contain_matchedruns")
824  defs[ "Nonswap BirksB"][ "numu decaf MRL"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_nonswap_birksB_v2_numu_contain_matchedruns")
825 
826  defs[ "Nonswap BirksC"] = OrderedDict()
827  defs[ "Nonswap BirksC"][ "daq"] = Definition("prod_artdaq_FA14-10-03x.c_fd_genie_fhc_nonswap_birksC_v2")
828  defs[ "Nonswap BirksC"][ "reco"] = Definition("prod_reco_S15-05-04b_fd_genie_fhc_nonswap_birksC_v2")
829  #defs[ "Nonswap BirksC"]["pidpart"] = Definition("prod_pidpart_S15-05-04b_fd_genie_fhc_nonswap_birksC_v2")
830  #defs[ "Nonswap BirksC"][ "lemsum"] = Definition("prod_lemsum_S15-05-04b_fd_genie_fhc_nonswap_birksC_v2")
831  #defs[ "Nonswap BirksC"]["lempart"] = Definition("prod_lempart_S15-05-07b_fd_genie_fhc_nonswap_birksC_v2")
832  defs[ "Nonswap BirksC"][ "pid"] = Definition("prod_pid_S15-05-22a_fd_genie_fhc_nonswap_birksC_v2")
833  defs[ "Nonswap BirksC"][ "caf"] = Definition("prod_caf_S15-05-22a_fd_genie_fhc_nonswap_birksC_v2")
834  defs[ "Nonswap BirksC"][ "nue decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_nonswap_birksC_v2_nue_contain")
835  defs[ "Nonswap BirksC"][ "numu decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_nonswap_birksC_v2_numu_contain")
836  defs[ "Nonswap BirksC"][ "caf MRL"] = Definition("prod_caf_S15-05-22a_fd_genie_fhc_nonswap_birksC_v2_matchedruns")
837  defs[ "Nonswap BirksC"][ "nue decaf MRL"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_nonswap_birksC_v2_nue_contain_matchedruns")
838  defs[ "Nonswap BirksC"][ "numu decaf MRL"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_nonswap_birksC_v2_numu_contain_matchedruns")
839 
840  defs[ "Fluxswap BirksB"] = OrderedDict()
841  defs[ "Fluxswap BirksB"][ "daq"] = Definition("prod_artdaq_FA14-10-03x.c_fd_genie_fhc_fluxswap_birksB_v2")
842  defs[ "Fluxswap BirksB"][ "reco"] = Definition("prod_reco_S15-05-04b_fd_genie_fhc_fluxswap_birksB_v2")
843  #defs[ "Fluxswap BirksB"]["pidpart"] = Definition("prod_pidpart_S15-05-04b_fd_genie_fhc_fluxswap_birksB_v2")
844  #defs[ "Fluxswap BirksB"][ "lemsum"] = Definition("prod_lemsum_S15-05-04b_fd_genie_fhc_fluxswap_birksB_v2")
845  #defs[ "Fluxswap BirksB"]["lempart"] = Definition("prod_lempart_S15-05-07b_fd_genie_fhc_fluxswap_birksB_v2")
846  defs[ "Fluxswap BirksB"][ "pid"] = Definition("prod_pid_S15-05-22a_fd_genie_fhc_fluxswap_birksB_v2")
847  defs[ "Fluxswap BirksB"][ "caf"] = Definition("prod_caf_S15-05-22a_fd_genie_fhc_fluxswap_birksB_v2")
848  defs[ "Fluxswap BirksB"][ "nue decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_fluxswap_birksB_v2_nue_contain")
849  defs[ "Fluxswap BirksB"][ "numu decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_fluxswap_birksB_v2_numu_contain")
850  defs[ "Fluxswap BirksB"][ "caf MRL"] = Definition("prod_caf_S15-05-22a_fd_genie_fhc_fluxswap_birksB_v2_matchedruns")
851  defs[ "Fluxswap BirksB"][ "nue decaf MRL"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_fluxswap_birksB_v2_nue_contain_matchedruns")
852  defs[ "Fluxswap BirksB"][ "numu decaf MRL"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_fluxswap_birksB_v2_numu_contain_matchedruns")
853 
854  defs[ "Fluxswap BirksC"] = OrderedDict()
855  defs[ "Fluxswap BirksC"][ "daq"] = Definition("prod_artdaq_FA14-10-03x.c_fd_genie_fhc_fluxswap_birksC_v2")
856  defs[ "Fluxswap BirksC"][ "reco"] = Definition("prod_reco_S15-05-04b_fd_genie_fhc_fluxswap_birksC_v2")
857  #defs[ "Fluxswap BirksC"]["pidpart"] = Definition("prod_pidpart_S15-05-04b_fd_genie_fhc_fluxswap_birksC_v2")
858  #defs[ "Fluxswap BirksC"][ "lemsum"] = Definition("prod_lemsum_S15-05-04b_fd_genie_fhc_fluxswap_birksC_v2")
859  #defs[ "Fluxswap BirksC"]["lempart"] = Definition("prod_lempart_S15-05-07b_fd_genie_fhc_fluxswap_birksC_v2")
860  defs[ "Fluxswap BirksC"][ "pid"] = Definition("prod_pid_S15-05-22a_fd_genie_fhc_fluxswap_birksC_v2")
861  defs[ "Fluxswap BirksC"][ "caf"] = Definition("prod_caf_S15-05-22a_fd_genie_fhc_fluxswap_birksC_v2")
862  defs[ "Fluxswap BirksC"][ "nue decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_fluxswap_birksC_v2_nue_contain")
863  defs[ "Fluxswap BirksC"][ "numu decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_fluxswap_birksC_v2_numu_contain")
864  defs[ "Fluxswap BirksC"][ "caf MRL"] = Definition("prod_caf_S15-05-22a_fd_genie_fhc_fluxswap_birksC_v2_matchedruns")
865  defs[ "Fluxswap BirksC"][ "nue decaf MRL"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_fluxswap_birksC_v2_nue_contain_matchedruns")
866  defs[ "Fluxswap BirksC"][ "numu decaf MRL"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_fluxswap_birksC_v2_numu_contain_matchedruns")
867 
868  this_totals = PM.makeDatasetPage(options, "FD_Birks_Shifted.html", defs, text=description, config=options.config, sam_timer=sam_timer)
869  for i in range(len(this_totals)): totals[i] += this_totals[i]
870  tools.addDefs(all_defs, defs)
871 
872  ################
873  ##ND Calibration Shifted
874  if options.verbose: print "run : --- Making ND Birks Shifted"
875  description = \
876  """
877  These samples are the same as the real conditions FHC Monte Carlo files, but have been simulated with variations
878  on the first-order (birksB) and second-order (birksC) Birks-Chou parameters.
879  """
880  defs = OrderedDict()
881  defs[ "Nonswap BirksB"] = OrderedDict()
882  defs[ "Nonswap BirksB"][ "daq"] = Definition("prod_artdaq_FA14-10-03x.c_nd_genie_fhc_nonswap_birksB_v3")
883  defs[ "Nonswap BirksB"][ "reco"] = Definition("prod_reco_S15-05-04b_nd_genie_fhc_nonswap_birksB_v3")
884  #defs[ "Nonswap BirksB"]["pidpart"] = Definition("prod_pidpart_S15-05-04b_nd_genie_fhc_nonswap_birksB_v3")
885  #defs[ "Nonswap BirksB"][ "lemsum"] = Definition("prod_lemsum_S15-05-04b_nd_genie_fhc_nonswap_birksB_v3")
886  #defs[ "Nonswap BirksB"]["lempart"] = Definition("prod_lempart_S15-05-07b_nd_genie_fhc_nonswap_birksB_v3")
887  defs[ "Nonswap BirksB"][ "pid"] = Definition("prod_pid_S15-05-22a_nd_genie_fhc_nonswap_birksB_v3")
888  defs[ "Nonswap BirksB"][ "caf"] = Definition("prod_caf_S15-05-22a_nd_genie_fhc_nonswap_birksB_v3")
889  defs[ "Nonswap BirksB"][ "nue decaf"] = Definition("prod_decaf_S15-05-22a_nd_genie_fhc_nonswap_birksB_v3_nue_contain")
890  defs[ "Nonswap BirksB"]["numu decaf"] = Definition("prod_decaf_S15-05-22a_nd_genie_fhc_nonswap_birksB_v3_numu_contain")
891 
892  defs[ "Nonswap BirksC"] = OrderedDict()
893  defs[ "Nonswap BirksC"][ "daq"] = Definition("prod_artdaq_FA14-10-03x.c_nd_genie_fhc_nonswap_birksC_v3")
894  defs[ "Nonswap BirksC"][ "reco"] = Definition("prod_reco_S15-05-04b_nd_genie_fhc_nonswap_birksC_v3")
895  #defs[ "Nonswap BirksC"]["pidpart"] = Definition("prod_pidpart_S15-05-04b_nd_genie_fhc_nonswap_birksC_v3")
896  #defs[ "Nonswap BirksC"][ "lemsum"] = Definition("prod_lemsum_S15-05-04b_nd_genie_fhc_nonswap_birksC_v3")
897  #defs[ "Nonswap BirksC"]["lempart"] = Definition("prod_lempart_S15-05-07b_nd_genie_fhc_nonswap_birksC_v3")
898  defs[ "Nonswap BirksC"][ "pid"] = Definition("prod_pid_S15-05-22a_nd_genie_fhc_nonswap_birksC_v3")
899  defs[ "Nonswap BirksC"][ "caf"] = Definition("prod_caf_S15-05-22a_nd_genie_fhc_nonswap_birksC_v3")
900  defs[ "Nonswap BirksC"][ "nue decaf"] = Definition("prod_decaf_S15-05-22a_nd_genie_fhc_nonswap_birksC_v3_nue_contain")
901  defs[ "Nonswap BirksC"]["numu decaf"] = Definition("prod_decaf_S15-05-22a_nd_genie_fhc_nonswap_birksC_v3_numu_contain")
902 
903  this_totals = PM.makeDatasetPage(options, "ND_Birks_Shifted.html", defs, text=description, config=options.config, sam_timer=sam_timer)
904  for i in range(len(this_totals)): totals[i] += this_totals[i]
905  tools.addDefs(all_defs, defs)
906 
907  ################
908  ##Alt Intensity
909  if options.verbose: print "run : --- Making ND Alternate Intensity"
910  description = \
911  """
912  These samples are the same as the real conditions FHC Monte Carlo files, but have been simulated alternate NuMI
913  beam intensities.
914  """
915  defs = OrderedDict()
916  defs[ "Nonswap High Intensity"] = OrderedDict()
917  defs[ "Nonswap High Intensity"][ "daq"] = Definition("prod_artdaq_FA14-10-03x.c_nd_genie_fhc_nonswap_highint_v2")
918  defs[ "Nonswap High Intensity"][ "reco"] = Definition("prod_reco_S15-05-04b_nd_genie_fhc_nonswap_highint_v2")
919  #defs[ "Nonswap High Intensity"]["pidpart"] = Definition("prod_pidpart_S15-05-04b_nd_genie_fhc_nonswap_highint_v2")
920  #defs[ "Nonswap High Intensity"][ "lemsum"] = Definition("prod_lemsum_S15-05-04b_nd_genie_fhc_nonswap_highint_v2")
921  #defs[ "Nonswap High Intensity"]["lempart"] = Definition("prod_lempart_S15-05-07b_nd_genie_fhc_nonswap_highint_v2")
922  defs[ "Nonswap High Intensity"][ "pid"] = Definition("prod_pid_S15-05-22a_nd_genie_fhc_nonswap_highint_v2")
923  defs[ "Nonswap High Intensity"][ "caf"] = Definition("prod_caf_S15-05-22a_nd_genie_fhc_nonswap_highint_v2")
924  #defs[ "Nonswap High Intensity"][ "nue decaf"] = Definition("prod_decaf_S15-05-22a_nd_genie_fhc_nonswap_highint_v2_nue_contain")
925  #defs[ "Nonswap High Intensity"]["numu decaf"] = Definition("prod_decaf_S15-05-22a_nd_genie_fhc_nonswap_highint_v2_numu_contain")
926 
927  defs[ "Nonswap Low Intensity"] = OrderedDict()
928  defs[ "Nonswap Low Intensity"][ "daq"] = Definition("prod_artdaq_FA14-10-03x.c_nd_genie_fhc_nonswap_lowint_v2")
929  defs[ "Nonswap Low Intensity"][ "reco"] = Definition("prod_reco_S15-05-04b_nd_genie_fhc_nonswap_lowint_v2")
930  #defs[ "Nonswap Low Intensity"]["pidpart"] = Definition("prod_pidpart_S15-05-04b_nd_genie_fhc_nonswap_lowint_v2")
931  #defs[ "Nonswap Low Intensity"][ "lemsum"] = Definition("prod_lemsum_S15-05-04b_nd_genie_fhc_nonswap_lowint_v2")
932  #defs[ "Nonswap Low Intensity"]["lempart"] = Definition("prod_lempart_S15-05-07b_nd_genie_fhc_nonswap_lowint_v2")
933  defs[ "Nonswap Low Intensity"][ "pid"] = Definition("prod_pid_S15-05-22a_nd_genie_fhc_nonswap_lowint_v2")
934  defs[ "Nonswap Low Intensity"][ "caf"] = Definition("prod_caf_S15-05-22a_nd_genie_fhc_nonswap_lowint_v2")
935  #defs[ "Nonswap Low Intensity"][ "nue decaf"] = Definition("prod_decaf_S15-05-22a_nd_genie_fhc_nonswap_lowint_v2_nue_contain")
936  #defs[ "Nonswap Low Intensity"]["numu decaf"] = Definition("prod_decaf_S15-05-22a_nd_genie_fhc_nonswap_lowint_v2_numu_contain")
937 
938  this_totals = PM.makeDatasetPage(options, "ND_alt_intensity.html", defs, text=description, config=options.config, sam_timer=sam_timer)
939  for i in range(len(this_totals)): totals[i] += this_totals[i]
940  tools.addDefs(all_defs, defs)
941 
942 
943  ################
944  ##New Position
945  if options.verbose: print "run : --- Making ND Newpos"
946  description = \
947  """
948  These samples are the same as the real conditions FHC Monte Carlo files, but have been simulated with the revised
949  near detector positions.
950  """
951  defs = OrderedDict()
952  defs[ "Nonswap New Position"] = OrderedDict()
953  defs[ "Nonswap New Position"][ "daq"] = Definition("prod_artdaq_FA14-10-03x.d_nd_genie_fhc_nonswap_ndnewpos")
954  defs[ "Nonswap New Position"][ "reco"] = Definition("prod_reco_S15-05-04c_nd_genie_fhc_nonswap_ndnewpos")
955  defs[ "Nonswap New Position"]["pidpart"] = Definition("prod_pidpart_S15-05-04c_nd_genie_fhc_nonswap_ndnewpos")
956  defs[ "Nonswap New Position"][ "lemsum"] = Definition("prod_lemsum_S15-05-04c_nd_genie_fhc_nonswap_ndnewpos")
957  defs[ "Nonswap New Position"]["lempart"] = Definition("prod_lempart_S15-05-07b_nd_genie_fhc_nonswap_ndnewpos")
958  defs[ "Nonswap New Position"][ "pid"] = Definition("prod_pid_S15-05-22a_nd_genie_fhc_nonswap_ndnewpos")
959  defs[ "Nonswap New Position"][ "caf"] = Definition("prod_caf_S15-05-22a_nd_genie_fhc_nonswap_ndnewpos")
960  defs[ "Nonswap New Position"][ "nue decaf"] = Definition("prod_decaf_S15-05-22a_nd_genie_fhc_nonswap_ndnewpos_nue_contain")
961  defs[ "Nonswap New Position"]["numu decaf"] = Definition("prod_decaf_S15-05-22a_nd_genie_fhc_nonswap_ndnewpos_numu_contain")
962  defs[ "Nonswap New Position"]["nue/numu decaf"] = Definition("prod_decaf_S15-05-22a_nd_genie_fhc_nonswap_ndnewpos_nue_or_numu_contain")
963 
964  #defs[ "Nonswap New Position, first 2k"] = OrderedDict()
965  #defs[ "Nonswap New Position, first 2k"][ "reco"] = Definition("prod_reco_S15-05-04c_fd_genie_fhc_nonswap_ndnewpos_v1")
966  #defs[ "Nonswap New Position, first 2k"]["pidpart"] = Definition("prod_pidpart_S15-05-04c_fd_genie_fhc_nonswap_ndnewpos_v1")
967  #defs[ "Nonswap New Position, first 2k"][ "lemsum"] = Definition("prod_lemsum_S15-05-04c_fd_genie_fhc_nonswap_ndnewpos_v1")
968  #defs[ "Nonswap New Position, first 2k"][ "pid"] = Definition("prod_pid_S15-05-22a_fd_genie_fhc_nonswap_ndnewpos_v1")
969  #defs[ "Nonswap New Position, first 2k"][ "caf"] = Definition("prod_caf_S15-05-22a_fd_genie_fhc_nonswap_ndnewpos_v1")
970  #defs[ "Nonswap New Position, first 2k"][ "nue decaf"] = Definition("")
971  #defs[ "Nonswap New Position, first 2k"]["numu decaf"] = Definition("")
972 
973  #defs[ "Nonswap New Position, add'l 18k"] = OrderedDict()
974  #defs[ "Nonswap New Position, add'l 18k"][ "reco"] = Definition("prod_reco_S15-05-04c_fd_genie_fhc_nonswap_ndnewpos_v2")
975  #defs[ "Nonswap New Position, add'l 18k"]["pidpart"] = Definition("prod_pidpart_S15-05-04c_fd_genie_fhc_nonswap_ndnewpos_v2")
976  #defs[ "Nonswap New Position, add'l 18k"][ "lemsum"] = Definition("prod_lemsum_S15-05-04c_fd_genie_fhc_nonswap_ndnewpos_v2")
977  #defs[ "Nonswap New Position, add'l 18k"][ "pid"] = Definition("prod_pid_S15-05-22a_fd_genie_fhc_nonswap_ndnewpos_v2")
978  #defs[ "Nonswap New Position, add'l 18k"][ "caf"] = Definition("prod_caf_S15-05-22a_fd_genie_fhc_nonswap_ndnewpos_v2")
979  #defs[ "Nonswap New Position, add'l 18k"][ "nue decaf"] = Definition("")
980  #defs[ "Nonswap New Position, add'l 18k"]["numu decaf"] = Definition("")
981 
982  this_totals = PM.makeDatasetPage(options, "ND_genie_newpos.html", defs, text=description, config=options.config, sam_timer=sam_timer)
983  for i in range(len(this_totals)): totals[i] += this_totals[i]
984  tools.addDefs(all_defs, defs)
985 
986  if options.verbose: print "run : --- Making FD Newpos"
987  description = \
988  """
989  These samples are the same as the real conditions FHC Monte Carlo files, but have been simulated with the revised
990  near detector positions.
991  """
992  defs = OrderedDict()
993  defs[ "Nonswap New Position"] = OrderedDict()
994  defs[ "Nonswap New Position"][ "daq"] = Definition("prod_artdaq_FA14-10-03x.e_fd_genie_fhc_nonswap_fdfluxv08")
995  defs[ "Nonswap New Position"][ "reco"] = Definition("prod_reco_S15-05-04c_fd_genie_fhc_nonswap_fdfluxv08")
996  defs[ "Nonswap New Position"][ "pidpart"] = Definition("prod_pidpart_S15-05-04c_fd_genie_fhc_nonswap_fdfluxv08")
997  defs[ "Nonswap New Position"][ "lemsum"] = Definition("prod_lemsum_S15-05-04c_fd_genie_fhc_nonswap_fdfluxv08")
998  defs[ "Nonswap New Position"][ "lempart"] = Definition("prod_lempart_S15-05-07b_fd_genie_fhc_nonswap_fdfluxv08")
999  defs[ "Nonswap New Position"][ "pid"] = Definition("prod_pid_S15-05-22a_fd_genie_fhc_nonswap_fdfluxv08")
1000  defs[ "Nonswap New Position"][ "caf"] = Definition("prod_caf_S15-05-22a_fd_genie_fhc_nonswap_fdfluxv08")
1001  defs[ "Nonswap New Position"][ "nue decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_nonswap_fdfluxv08_nue_contain")
1002  defs[ "Nonswap New Position"]["numu decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_nonswap_fdfluxv08_numu_contain")
1003 
1004  defs[ "Fluxswap New Position"] = OrderedDict()
1005  defs[ "Fluxswap New Position"][ "daq"] = Definition("prod_artdaq_FA14-10-03x.e_fd_genie_fhc_fluxswap_fdfluxv08")
1006  defs[ "Fluxswap New Position"][ "reco"] = Definition("prod_reco_S15-05-04c_fd_genie_fhc_fluxswap_fdfluxv08")
1007  defs[ "Fluxswap New Position"][ "pidpart"] = Definition("prod_pidpart_S15-05-04c_fd_genie_fhc_fluxswap_fdfluxv08")
1008  defs[ "Fluxswap New Position"][ "lemsum"] = Definition("prod_lemsum_S15-05-04c_fd_genie_fhc_fluxswap_fdfluxv08")
1009  defs[ "Fluxswap New Position"][ "lempart"] = Definition("prod_lempart_S15-05-07b_fd_genie_fhc_fluxswap_fdfluxv08")
1010  defs[ "Fluxswap New Position"][ "pid"] = Definition("prod_pid_S15-05-22a_fd_genie_fhc_fluxswap_fdfluxv08")
1011  defs[ "Fluxswap New Position"][ "caf"] = Definition("prod_caf_S15-05-22a_fd_genie_fhc_fluxswap_fdfluxv08")
1012  defs[ "Fluxswap New Position"][ "nue decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_fluxswap_fdfluxv08_nue_contain")
1013  defs[ "Fluxswap New Position"]["numu decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_fluxswap_fdfluxv08_numu_contain")
1014 
1015  defs[ "Tau New Position"] = OrderedDict()
1016  defs[ "Tau New Position"][ "daq"] = Definition("prod_artdaq_FA14-10-03x.e_fd_genie_fhc_tau_fdfluxv08")
1017  defs[ "Tau New Position"][ "reco"] = Definition("prod_reco_S15-05-04c_fd_genie_fhc_tau_fdfluxv08")
1018  defs[ "Tau New Position"]["pidpart"] = Definition("prod_pidpart_S15-05-04c_fd_genie_fhc_tau_fdfluxv08")
1019  defs[ "Tau New Position"][ "lemsum"] = Definition("prod_lemsum_S15-05-04c_fd_genie_fhc_tau_fdfluxv08")
1020  defs[ "Tau New Position"]["lempart"] = Definition("prod_lempart_S15-05-07b_fd_genie_fhc_tau_fdfluxv08")
1021  defs[ "Tau New Position"][ "pid"] = Definition("prod_pid_S15-05-22a_fd_genie_fhc_tau_fdfluxv08")
1022  defs[ "Tau New Position"][ "caf"] = Definition("prod_caf_S15-05-22a_fd_genie_fhc_tau_fdfluxv08")
1023  defs[ "Tau New Position"][ "nue decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_tau_fdfluxv08_nue_contain")
1024  defs[ "Tau New Position"]["numu decaf"] = Definition("prod_decaf_S15-05-22a_fd_genie_fhc_tau_fdfluxv08_numu_contain")
1025 
1026  this_totals = PM.makeDatasetPage(options, "FD_genie_newpos.html", defs, text=description, config=options.config, sam_timer=sam_timer)
1027  for i in range(len(this_totals)): totals[i] += this_totals[i]
1028  tools.addDefs(all_defs, defs)
1029 
1030  ################
1031  ##Horn off
1032  if options.verbose: print "run : --- Making ND Horn-off"
1033 
1034  description = \
1035  """
1036  These samples are the same as the real conditions Monte Carlo files, generated with the horn-off flux files.
1037  """
1038  defs = OrderedDict()
1039  defs[ "Nonswap Horn Off"] = OrderedDict()
1040  defs[ "Nonswap Horn Off"][ "daq"] = Definition("prod_artdaq_FA14-10-03x.e_nd_genie_0hc_nonswap")
1041  defs[ "Nonswap Horn Off"][ "reco"] = Definition("prod_reco_S15-05-04c_nd_genie_0hc_nonswap_v2")
1042  defs[ "Nonswap Horn Off"]["pidpart"] = Definition("prod_pidpart_S15-05-04c_nd_genie_0hc_nonswap_v2")
1043  defs[ "Nonswap Horn Off"][ "lemsum"] = Definition("prod_lemsum_S15-05-04c_nd_genie_0hc_nonswap_v2")
1044  defs[ "Nonswap Horn Off"]["lempart"] = Definition("prod_lempart_S15-05-07b_nd_genie_0hc_nonswap_v2")
1045  defs[ "Nonswap Horn Off"][ "pid"] = Definition("prod_pid_S15-05-22a_nd_genie_0hc_nonswap_v2")
1046  defs[ "Nonswap Horn Off"][ "caf"] = Definition("prod_caf_S15-05-22a_nd_genie_0hc_nonswap_v2")
1047  defs[ "Nonswap Horn Off"][ "nue decaf"] = Definition("prod_decaf_S15-05-22a_nd_genie_0hc_nonswap_v2_nue_contain")
1048  defs[ "Nonswap Horn Off"]["numu decaf"] = Definition("prod_decaf_S15-05-22a_nd_genie_0hc_nonswap_v2_numu_contain")
1049 
1050  this_totals = PM.makeDatasetPage(options, "ND_genie_hornoff.html", defs, text=description, config=options.config, sam_timer=sam_timer)
1051  for i in range(len(this_totals)): totals[i] += this_totals[i]
1052  tools.addDefs(all_defs, defs)
1053 
1054  description = \
1055  """
1056  These samples are the same as the real conditions Monte Carlo files, generated with the horn-off flux files.
1057  """
1058  defs = OrderedDict()
1059  #defs[ "Horn Off"] = OrderedDict()
1060  #defs[ "Horn Off"][ "daq"] = Definition("prod_artdaq_FA14-10-03_nd_numi_0hc_fr10995_lr11018")
1061  #defs[ "Horn Off"][ "reco"] = Definition("prod_reco_S15-05-04c_nd_numi_0hc_fr10995_lr11018")
1062  #defs[ "Horn Off"]["pidpart"] = Definition("prod_pidpart_S15-05-04c_nd_numi_0hc_fr10995_lr11018")
1063  #defs[ "Horn Off"][ "lemsum"] = Definition("prod_lemsum_S15-05-04c_nd_numi_0hc_fr10995_lr11018")
1064  #defs[ "Horn Off"]["lempart"] = Definition("prod_lempart_S15-05-07b_nd_numi_0hc_fr10995_lr11018")
1065  #defs[ "Horn Off"][ "pid"] = Definition("prod_pid_S15-05-22a_nd_numi_0hc_fr10995_lr11018")
1066  #defs[ "Horn Off"][ "caf"] = Definition("prod_caf_S15-05-22a_nd_numi_0hc_fr10995_lr11018")
1067  #defs[ "Horn Off"][ "nue decaf"] = Definition("")
1068  #defs[ "Horn Off"]["numu decaf"] = Definition("")
1069 
1070  defs[ "Horn Off NuMI"] = OrderedDict()
1071  defs[ "Horn Off NuMI"][ "daq"] = Definition("prod_artdaq_FA14-10-03_nd_numi_0hc_fr10995_lr11018")
1072  defs[ "Horn Off NuMI"][ "reco"] = Definition("prod_reco_S15-05-04c_nd_numi_0hc_fr10995_lr11018")
1073  defs[ "Horn Off NuMI"]["pidpart"] = Definition("prod_pidpart_S15-05-04c_nd_numi_0hc_fr10995_lr11018")
1074  defs[ "Horn Off NuMI"][ "lemsum"] = Definition("prod_lemsum_S15-05-04c_nd_numi_0hc_fr10995_lr11018")
1075  defs[ "Horn Off NuMI"]["lempart"] = Definition("prod_lempart_S15-05-07b_nd_numi_0hc_fr10995_lr11018")
1076  defs[ "Horn Off NuMI"][ "pid"] = Definition("prod_pid_S15-05-22a_nd_numi_0hc_fr10995_lr11018")
1077  defs[ "Horn Off NuMI"][ "caf"] = Definition("prod_caf_S15-05-22a_nd_numi_0hc_fr10995_lr11018")
1078 
1079  defs[ "Horn Off Cosmics"] = OrderedDict()
1080  defs[ "Horn Off Cosmics"][ "daq"] = Definition("prod_artdaq_FA14-10-03_nd_cosmic_0hc_fr10995_lr11018")
1081  defs[ "Horn Off Cosmics"][ "reco"] = Definition("prod_reco_S15-05-04c_nd_cosmic_0hc_fr10995_lr11018")
1082  defs[ "Horn Off Cosmics"]["pidpart"] = Definition("prod_pidpart_S15-05-04c_nd_cosmic_0hc_fr10995_lr11018")
1083  defs[ "Horn Off Cosmics"][ "lemsum"] = Definition("prod_lemsum_S15-05-04c_nd_cosmic_0hc_fr10995_lr11018")
1084  defs[ "Horn Off Cosmics"]["lempart"] = Definition("prod_lempart_S15-05-07b_nd_cosmic_0hc_fr10995_lr11018")
1085  defs[ "Horn Off Cosmics"][ "pid"] = Definition("prod_pid_S15-05-22a_nd_cosmic_0hc_fr10995_lr11018")
1086  defs[ "Horn Off Cosmics"][ "caf"] = Definition("prod_caf_S15-05-22a_nd_cosmic_0hc_fr10995_lr11018")
1087 
1088  this_totals = PM.makeDatasetPage(options, "ND_data_hornoff.html", defs, text=description, config=options.config, sam_timer=sam_timer)
1089  for i in range(len(this_totals)): totals[i] += this_totals[i]
1090  tools.addDefs(all_defs, defs)
1091 
1092 
1093 if "rocks" in types:
1094  if options.verbose: print "run : --- Making Rock neutrino MC"
1095  description = \
1096  """
1097  Rock neutrino events simulated with the FA14-10-03x.a. These samples were not used for FA results, but
1098  were generated with the same files.
1099  </p>
1100 
1101  """
1102  defs = OrderedDict()
1103  defs["ND Rocks"] = OrderedDict()
1104  defs["ND Rocks"]["artdaq"] = Definition("prod_daq_nd_genie_rock_FA14-10-03x.a_v2")
1105 
1106 
1107 
1108  this_totals = PM.makeDatasetPage(options, "rocks.html", defs, text=description, config=options.config, sam_timer=sam_timer)
1109  for i in range(len(this_totals)): totals[i] += this_totals[i]
1110  tools.addDefs(all_defs, defs)
1111 
1112 ########################### Explorer
1113 if options.explorer:
1114  print "run : --- Making a dataset explorer page"
1115  PM.makeExplorerPage(options, "explorer.html", all_defs)
1116 ########################### Done
1117 print "run : --- Totals"
1118 print "run : files: {:,}".format(totals[0])
1119 print "run : events: {:,}".format(totals[1])
1120 print "run : size: %s"%tools.convertSize(totals[2])
1121 print "run : queries: %i"%totals[4]
1122 print "run : sum time: %.2f"%totals[3]
1123 if totals[4]:
1124  print "run : av time: %.2f"%(totals[3]/totals[4])
1125  sam_timer.record_time("summary", datetime.datetime.now(), (totals[3]/totals[4]))
1126  sam_timer.write_logs()
1127 print "run : --- Done\n"
1128 
1129 # LocalWords: OrderedDict
std::string format(const int32_t &value, const int &ndigits=8)
Definition: HexUtils.cpp:14
exit(0)