Functions | Variables
runNovaSAM Namespace Reference

Functions

def unCamelCase (s)
 
def createMetadata (inFile)
 
def getOutDir (pathname, hashDirs=False)
 
def checkAndMoveFiles (inFile, declareFiles)
 
def declareFile (fileWPath)
 
def copyOutFiles (hashDirs=False)
 
def getOutputFileName (detector, runNum, subNum, streamEntry, release, subversion, dataFlag, tier, nevt)
 
def resolveFclPath (fcl)
 
def make_temp_fcl (fclFile, inFileBase)
 
def setVMemLimit ()
 
def makeDirSafely (dir)
 
def makeDirIfNeeded (dir)
 
def getOutDir (pathname, dest, hashDirs=False, runDirs=False, runNum=0)
 
def checkAndMoveFiles (inFile, outputs, noCleanup=False, copyOnly=False)
 
def declareLogFile (logName, logFile, rootName)
 
def fileExists (outPath, dh)
 
def listFiles (outPath, dh)
 
def makeMetadataJSONs ()
 
def MakeTransposeJson (TransposeList)
 
def copyOutFiles (dest, hashDirs=False, runDirs=False, runNum=0, noCleanup=False, declareLocation=False, declareLogs=False)
 
def makeDeCAF (script, fname, special)
 

Variables

 gErrorIgnoreLevel
 
 detectors = dict()
 
 _lineregex = re.compile(r'\d+: ([^ \t]+)[ \t]+(.+)')
 
 _skip_pattern = re.compile(r"^.*(hist|RootOutput).*\.root", re.IGNORECASE)
 
 parser = argparse.ArgumentParser(description='Run the nova command using SAM metadata')
 
 help
 
 type
 
 str
 
 action
 
 args = parser.parse_args()
 
 inFile = args.inFile
 
 samweb = samweb_client.SAMWebClient(experiment='nova')
 
 inFileBase = os.path.basename(inFile)
 
 metadata = samweb.getMetadata(inFileBase)
 
 runNum = int(metadata["runs"][0][0])
 
 subNum = int(metadata["runs"][0][1])
 
 run_pattern = re.compile(r"^.*?_r([0-9]+)_s([0-9]+).+")
 
 run_match = run_pattern.match(inFileBase)
 
 stream = int(metadata["data_stream"])
 
string streamEntry = 't{0:02d}'
 
 stream_pattern = re.compile(r"^.*?_(dd.*?)[_,.].+", re.IGNORECASE)
 
 stream_match = stream_pattern.match(inFileBase)
 
 detector = metadata["online.detector"].lower()
 
 detId = metadata["nova.detectorid"].lower()
 
 release = os.environ["SRT_BASE_RELEASE"]
 
 file_type = metadata["file_type"]
 
string dataFlag = "data"
 
 subversion = os.environ["NPASS"]
 
 nevt = None
 
 fclFile = args.config
 
 fclPath = resolveFclPath(fclFile)
 
 tmpFclName = os.path.basename(fclPath).replace(".fcl", "_" + os.path.splitext(inFileBase)[0] + ".fcl")
 
 fclFileObj = open(tmpFclName, 'a')
 
list cmdList = ['nova']
 
 outTier
 
 cafTier
 
list outList = []
 
 output = outTier.split(":")[0]
 
 tier = outTier.split(":")[1]
 
 outName = getOutputFileName(detector, runNum, subNum, streamEntry, release, subversion, dataFlag, tier, nevt)
 
 cafLabel = cafTier.split(":")[0]
 
 cafName = getOutputFileName(detector, runNum, subNum, streamEntry, release, subversion, dataFlag, tier, nevt)
 
string cmd = ' '
 
 retCode = subprocess.call(cmdList)
 
 dirList = os.listdir(".")
 
 skip_match = _skip_pattern.match(file)
 
 dh = ifdh.ifdh("http://samweb.fnal.gov:8480/sam/nova/api")
 
 argvCopy
 Do a little bit of trickery with sys.argv to stop ROOT from gobbling it up and killing –help. More...
 
 argv
 
 description
 
 default
 
 False
 
 experiment
 
 fileMetaDataMgr
 
 PassFile
 
 doMeta
 
 flatTier
 
 h5Tier
 
 precopyscript
 
 outputs
 
 outP
 
 outC
 
 outXp
 
 outXc
 
 outYp
 
 outYc
 
 NewOMod
 
 outX
 
 outY
 
 outNameTemp
 
 FirstRun
 
 LastRun
 
 Index
 
 NewOName
 
 flatLabel
 
 flatName
 
 h5Label
 
 h5Name
 
 histName
 
 olddir
 Are we streaming the files via xrootd? txtcmd="cat %s | xargs -n1 samweb2xrootd > xrootd_inFile.txt"inFile os.system(txtcmd) with open("xrootd_inFile.txt") as f: for line in f: print line.strip() cmdList.append( line.strip() ) print "" Are we going to copy the files? More...
 
 allFiles
 
 failFiles
 
 copyfile
 
 ifdhcmd
 
 ret
 
 gdbArgs
 
 stdout
 
 logfile
 
 stderr
 
 dest
 If using a txtfiledef make sure to clean up the InputFile List.... More...
 
 noCleanup
 
 True
 
 copyOnly
 
 lastdir
 
 tmpdir
 
 tmpSecondFclName
 
 inPID
 
 _first
 
 _second
 
 _outputs
 
 _bad
 
 _good
 
 decafdir
 

Function Documentation

def runNovaSAM.checkAndMoveFiles (   inFile,
  declareFiles 
)
Checks all root files in the current directories for zombie or recovered status. Bad files are deleted while good files are moved to the results subdirectory for copy out ease

Definition at line 105 of file runNovaSAM.py.

References declareFile().

Referenced by checkAndMoveFiles().

105 def checkAndMoveFiles(inFile, declareFiles):
106  """Checks all root files in the current directories for zombie or recovered status. Bad files are deleted while good files are moved to the results subdirectory for copy out ease"""
107  inFileBase = os.path.basename(inFile)
108  baseDir = "."
109  for root, dirs, filenames in os.walk(baseDir):
110  if root == baseDir:
111  for file in filenames:
112  if file.endswith (".root") and file != inFileBase:
113  fileWPath = os.path.join(root, file)
114  rootFile = ROOT.TFile(fileWPath)
115  if rootFile.IsZombie() or rootFile.TestBit(ROOT.TFile.kRecovered):
116  #do not copy over, just delete
117  print "File", fileWPath, "is Zombie - remove it"
118  os.remove(fileWPath)
119  else:
120  if declareFiles == True:
121  declareFile(fileWPath)
122  newFilePath = os.path.join(root, "results", file)
123  os.renames(fileWPath, newFilePath)
124  rootFile.Close()
125  return
126 
def checkAndMoveFiles(inFile, declareFiles)
Definition: runNovaSAM.py:105
def declareFile(fileWPath)
Definition: runNovaSAM.py:127
def runNovaSAM.checkAndMoveFiles (   inFile,
  outputs,
  noCleanup = False,
  copyOnly = False 
)

Definition at line 126 of file runNovaSAM.py.

References append(), checkAndMoveFiles(), MetadataUtils.createMetadata(), declareFile(), hadd_reco_validation.group, and makeDirIfNeeded().

126 def checkAndMoveFiles(inFile, outputs, noCleanup=False, copyOnly=False):
127  makeDirIfNeeded('./results')
128  """Checks all root files in the current directories for zombie or recovered status. Bad files are deleted while good files are moved to the results subdirectory for copy out ease"""
129  inFileBase = os.path.basename(inFile)
130  baseDir = "."
131 
132  print 'Looking for requested outputs: '
133  for o in outputs: print o
134 
135  # If declaring files have to do non-decafs first, since they're the parents
136  # of the decafs. If not, it doesn't hurt to do it in that order anyway.
137  for secondPass in [False, True]:
138  for root, dirs, filenames in os.walk(baseDir):
139  if root == baseDir:
140  for file in filenames:
141  if file.endswith('decaf.root') != secondPass: continue
142  # If file not in outputs, then delete.
143  if (file.endswith (".root") or file.endswith(".h5")) and file != inFileBase:
144  fileWPath = os.path.join(root, file)
145  # If the file isn't in my outputs then delete it.
146  if file not in outputs:
147  if not noCleanup:
148  # Do not copy over, just delete
149  print "File", fileWPath, " is not among requested outputs, removing"
150  os.remove(fileWPath)
151  continue
152  # Now that I know that this file is in my output list, lets check it is valid...
153  # First, if it is a root file.
154  if file.endswith (".root"):
155  print "In checkAndMoveFiles, fileWPath is %s" %fileWPath
156  rootFile = ROOT.TFile(fileWPath)
157  if rootFile.IsZombie() or rootFile.TestBit(ROOT.TFile.kRecovered):
158  #do not copy over, just delete
159  print "File", fileWPath, "is Zombie - remove it"
160  os.remove(fileWPath)
161  else:
162  newFilePath = os.path.join(root, "results", file)
163  print "New file name is %s" %newFilePath
164  if copyOnly:
165  shutil.copyfile(fileWPath, newFilePath)
166  else:
167  os.renames(fileWPath, newFilePath)
168  rootFile.Close()
169  # Next, if it is a h5 file.
170  elif file.endswith(".h5"):
171  # Only import h5py if have h5 files.
172  import h5py
173  print "In checkAndMoveFiles, fileWPath is %s" %fileWPath
174  # If a valid HDF5 files.
175  if h5py.is_hdf5(fileWPath):
176  newFilePath = os.path.join(root, "results", file)
177  print "New file name is %s" %newFilePath
178  if copyOnly:
179  shutil.copyfile(fileWPath, newFilePath)
180  else:
181  os.renames(fileWPath, newFilePath)
182 
183  # If not a valid HDF5 file.
184  else:
185  print "File", fileWPath, "is Zombie - remove it"
186  os.remove(fileWPath)
187  return
188 
189 #def h5MetaHack(inFile):
190 # print "Doing a hack to get HDF5 metadata...Will take CAF metadata and change subtly."
191 # ### Make my client and get my CAF metadata
192 # samweb = samweb_client.SAMWebClient(experiment='nova')
193 # md = MetadataUtils.createMetadata( inFile.replace('.h5caf.h5', '.caf.root') )
194 # ### Change some parameters.
195 # md['file_name'] = inFile
196 # md['data_tier'] = unicode('h5')
197 # md['file_size'] = os.path.getsize( inFile )
198 # return md
199 
def checkAndMoveFiles(inFile, declareFiles)
Definition: runNovaSAM.py:105
def makeDirIfNeeded(dir)
Definition: runNovaSAM.py:99
def runNovaSAM.copyOutFiles (   hashDirs = False)
Builtin facility to copy out art files (automatically excludes hist files). This adds in a subdirectories with a single hex digit each corresponding to the first three digits in the hash of the output file name. This splits up files into 4096 separate subdirectories, preventing overfull directories. Copy out does not happen if the file already exists in the output

Definition at line 149 of file runNovaSAM.py.

References getOutDir().

Referenced by copyOutFiles().

149 def copyOutFiles(hashDirs=False):
150  """Builtin facility to copy out art files (automatically excludes hist files). This adds in a subdirectories with a single hex digit each corresponding to the first three digits in the hash of the output file name. This splits up files into 4096 separate subdirectories, preventing overfull directories. Copy out does not happen if the file already exists in the output"""
151  print "Copying out files"
152  dh = ifdh.ifdh("http://samweb.fnal.gov:8480/sam/nova/api")
153  baseDir = "./results"
154  for root, dirs, filenames in os.walk(baseDir):
155  if root == baseDir:
156  for file in filenames:
157  if file.endswith (".root") and file != inFileBase:
158  fileWPath = os.path.join(root, file)
159  dest = getOutDir(file, hashDirs)
160  skip_match = _skip_pattern.match(file)
161  if skip_match == None:
162  try:
163  print "Checking if", dest + "/" + file, "exists"
164  dh.ls(dest + "/" + file, 1, "")
165  except RuntimeError:
166  print "It doesn't - copy", fileWPath, "to", dest
167  dh.cp(["-D", fileWPath, dest])
168  print "Removing", fileWPath
169  os.remove(fileWPath)
170  dh.cleanup()
171  return
172 
def copyOutFiles(hashDirs=False)
Definition: runNovaSAM.py:149
def getOutDir(pathname, hashDirs=False)
Definition: runNovaSAM.py:92
def runNovaSAM.copyOutFiles (   dest,
  hashDirs = False,
  runDirs = False,
  runNum = 0,
  noCleanup = False,
  declareLocation = False,
  declareLogs = False 
)
Builtin facility to copy out art files. This adds in a subdirectories with a single hex digit each corresponding to the first three digits in the hash of the output file name. This splits up files into 4096 separate subdirectories, preventing overfull directories. Copy out does not happen if the file already exists in the output

Definition at line 419 of file runNovaSAM.py.

References copyOutFiles(), declareFile(), declareLogFile(), fileExists(), getOutDir(), and print.

419 def copyOutFiles(dest, hashDirs=False, runDirs=False, runNum=0, noCleanup=False, declareLocation=False, declareLogs=False):
420  """Builtin facility to copy out art files. This adds in a subdirectories with a single hex digit each corresponding to the first three digits in the hash of the output file name. This splits up files into 4096 separate subdirectories, preventing overfull directories. Copy out does not happen if the file already exists in the output"""
421  dh = ifdh.ifdh("http://samweb.fnal.gov:8480/sam/nova/api")
422  baseDir = "./results"
423  declareFiles = declareLogs
424  for root, dirs, filenames in os.walk(baseDir):
425  if root == baseDir:
426 
427  # copy out root files before h5 files
428  ordered_files = [s for s in filenames if ".root" in s]
429  for s in filenames:
430  if ".h5" in s:
431  ordered_files.append(s)
432 
433  for file in ordered_files:
434  if (file.endswith (".root") or file.endswith(".h5") ) and file != inFileBase:
435  fileWPath = os.path.join(root, file)
436  outDir = getOutDir(file, dest, hashDirs, runDirs, runNum)
437 
438  skip_match = _skip_pattern.match(file)
439  if skip_match == None:
440  outPath = os.path.join(outDir, file)
441 
442  if fileExists(outPath, dh):
443  print 'copyOutFiles: ', outPath, 'already moved. Skipping'
444  else:
445  # note: this will fail if the file already exists
446  returnValue = dh.cp(["-D", fileWPath, outDir])
447  if returnValue != 0:
448  print >> sys.stderr, "Copy out failed for file:", fileWPath
449  print >> sys.stderr, "Skipping it."
450  else:
451  if declareFiles:
452  declareFile(fileWPath)
453  ###################
454  # Declare the file's location to SAM if we have the declareLocation option on
455  if declareLocation==True :
456  loc = string.replace(outDir, 's3://','s3:/')
457  print "Declaring location %s for file %s\n" % (loc,file)
458  sam = samweb_client.SAMWebClient('nova')
459  ret=sam.addFileLocation(file, loc)
460  if ret.status_code != 200 :
461  print " SAMWEB Unable to declare file location (%s, %s) status code %s" %(file, loc, ret.status_code)
462  if fileWPath.endswith (".root"):
463  jsonPath = fileWPath.replace('.root', '.json')
464  elif fileWPath.endswith (".h5"):
465  jsonPath = fileWPath[:-3] + '.json'
466  if os.path.isfile(jsonPath):
467  if fileExists(os.path.join(outDir, os.path.basename(jsonPath)), dh):
468  print 'copyOutFiles: ', os.path.join(outDir, os.path.basename(jsonPath)), 'already moved. Skipping'
469  else:
470  returnValue = dh.cp(['-D', jsonPath, outDir])
471  if returnValue != 0:
472  print >> sys.stderr, "Copy out failed for file: " + jsonPath
473  print >> sys.stderr, "Skipping it."
474  else:
475  print('JSON not found %s' % jsonPath)
476 
477  for ext in ['.bz2', '']:
478  if os.path.isfile('log.txt'+ext):
479  if file.endswith (".root"):
480  logName = file.replace('.root', '.log'+ext)
481  elif file.endswith (".h5"):
482  logName = file + '.log'+ext
483  if fileExists(os.path.join(outDir,logName), dh):
484  print 'copyOutFiles: ', os.path.join(outDir, logName), 'already moved. Skipping'
485  else:
486  returnValue = dh.cp(['log.txt'+ext, os.path.join(outDir, logName)])
487 
488  if returnValue != 0:
489  print >> sys.stderr, "Copy out failed for file: " + logName
490  print >> sys.stderr, "Skipping it."
491 
492  if declareLogs:
493  declareLogFile(logName, 'log.txt'+ext, file)
494 
495  # Remove the copied-out log so it's not in
496  # the way for new log creation.
497  os.remove('log.txt'+ext)
498 
499  break
500 
501  else:
502  print "It does exist, not copying."
503  if not noCleanup:
504  print "Removing", fileWPath
505  os.remove(fileWPath)
506 
507  if fileWPath.endswith(".root"):
508  jsonPath = fileWPath.replace('.root', '.json')
509  elif fileWPath.endswith(".h5"):
510  jsonPath = fileWPath + ".json"
511  if os.path.isfile(jsonPath):
512  print 'Removing', jsonPath
513  os.remove(jsonPath)
514  return
515 
def copyOutFiles(hashDirs=False)
Definition: runNovaSAM.py:149
def getOutDir(pathname, hashDirs=False)
Definition: runNovaSAM.py:92
bool print
def fileExists(outPath, dh)
Definition: runNovaSAM.py:283
def declareFile(fileWPath)
Definition: runNovaSAM.py:127
def declareLogFile(logName, logFile, rootName)
Definition: runNovaSAM.py:264
def runNovaSAM.createMetadata (   inFile)

Definition at line 36 of file runNovaSAM.py.

References samweb_client.utility.fileEnstoreChecksum(), site_stats_from_log.get, str, and unCamelCase().

Referenced by declareFile().

36 def createMetadata(inFile):
37  filename = os.path.basename(inFile)
38  filesize = os.path.getsize(inFile)
39 
40  try:
41  data = subprocess.check_output(["sam_metadata_dumper", str(inFile)])
42  except subprocess.CalledProcessError:
43  print "sam_metadata_dumper failed!"
44  return None
45 
46  md = {'file_name': filename, 'group': 'nova', 'file_size': filesize, 'file_format': 'root'}
47 
48  # An ad-hoc parser for the output
49  mode = 'new'
50  for line in data.split('\n'):
51  m = _lineregex.match(line)
52  if mode == 'json':
53  if not m and not line.startswith('-'):
54  data += line
55  else:
56  md[key] = json.loads(data)
57  mode = 'new'
58 
59  if mode == 'new':
60  if m:
61  key = m.group(1)
62  value = m.group(2)
63 
64  if '.' not in key:
65  key = unCamelCase(key)
66 
67  # ART does not appear to set the application name
68  # but does provide a process name
69  if key == 'process_name' and md.get('application',[]).get('name') is None:
70  key = 'application_name'
71  elif key == 'stream_name':
72  key = 'data_stream'
73 
74  if key in ('start_date','end_date'):
75  value = long(value)
76 
77  if key == 'runs' or key == 'parents':
78  mode = 'json'
79  data = value
80  elif key.startswith('application_'):
81  # special handling for applications
82  if 'application' not in md:
83  md['application'] = {}
84  md['application'][key[12:]] = value
85  else:
86  md[key] = value
87 
88  md['crc'] = fileEnstoreChecksum(inFile)
89 
90  return md
91 
def unCamelCase(s)
Definition: runNovaSAM.py:29
def fileEnstoreChecksum(path)
Definition: utility.py:50
def createMetadata(inFile)
Definition: runNovaSAM.py:36
def runNovaSAM.declareFile (   fileWPath)
Checks file for a TKey of RootFileDB.  If it exists, run sam_metadata_dumper and construct appropriate metadata for the file. Use that metadata to declare the file to SAM

Definition at line 127 of file runNovaSAM.py.

References createMetadata().

Referenced by checkAndMoveFiles(), and copyOutFiles().

127 def declareFile(fileWPath):
128  """Checks file for a TKey of RootFileDB. If it exists, run sam_metadata_dumper and construct appropriate metadata for the file. Use that metadata to declare the file to SAM"""
129  samweb = samweb_client.SAMWebClient(experiment='nova')
130  rootFile = ROOT.TFile(fileWPath)
131  if rootFile.FindKey("RootFileDB"):
132  print "Found key (RootFileDB): constructing metadata for", fileWPath
133  md = createMetadata(fileWPath)
134  if (md == None):
135  print "No metadata found!"
136  else:
137  pprint.pprint(md)
138  print ''
139  print "Declaring", fileWPath, "to SAM"
140  try:
141  samweb.declareFile(md)
142  except:
143  print fileWPath, "already exists in SAM"
144  else:
145  print fileWPath, "does not contain RootFileDB, do not try to declare"
146  rootFile.Close()
147  return
148 
def createMetadata(inFile)
Definition: runNovaSAM.py:36
def declareFile(fileWPath)
Definition: runNovaSAM.py:127
def runNovaSAM.declareLogFile (   logName,
  logFile,
  rootName 
)

Definition at line 264 of file runNovaSAM.py.

Referenced by copyOutFiles().

264 def declareLogFile(logName, logFile, rootName):
265  # This is what NovaFTS/plugins/nova_log_metadata.py does
266  md = {
267  'file_name': os.path.basename(logName),
268  'file_size': os.path.getsize(logFile),
269  'data_tier': 'log',
270  'file_format': 'log',
271  'file_type': 'unknown', # maybe 'nonPhysicsGeneric'?
272  'parents': [{'file_name': os.path.basename(rootName)}]
273  }
274  print "16) declareLogFile(logName, logFile, rootName):"
275  print "Declaring", logName, "to SAM"
276  try:
277  samweb = samweb_client.SAMWebClient(experiment='nova')
278  samweb.declareFile(md)
279  except Exception as inst:
280  print inst
281 
282 
def declareLogFile(logName, logFile, rootName)
Definition: runNovaSAM.py:264
def runNovaSAM.fileExists (   outPath,
  dh 
)

Definition at line 283 of file runNovaSAM.py.

Referenced by copyOutFiles().

283 def fileExists(outPath, dh):
284  try:
285  # Check to see if you can ls the file.
286  # This works in ifdh 1_7_0 and newer
287  # If it exists, dh.ls() returns a tuple with one entry, converts to True
288  # If it doesn't, dh.ls() returns an empty tuple, converts to False
289  return bool(dh.ls(outPath, 1, ""))
290  except (RuntimeError, IOError) as e:
291  # Some versions of ifdh throw an exception when the file was not found
292  # But that means it is not there.
293  return False
294 
def fileExists(outPath, dh)
Definition: runNovaSAM.py:283
def runNovaSAM.getOutDir (   pathname,
  hashDirs = False 
)

Definition at line 92 of file runNovaSAM.py.

References exit(), and parse_dependency_file_t.list.

Referenced by copyOutFiles(), and getOutDir().

92 def getOutDir(pathname, hashDirs=False):
93  if "DEST" in os.environ:
94  dest = os.environ["DEST"]
95  else:
96  print "No destination set!"
97  exit(1)
98  dirs = [dest]
99  if hashDirs:
100  head, tail = os.path.split(pathname)
101  hash = md5.new(tail)
102  dirs += list(hash.hexdigest()[:3])
103  return os.path.join(*dirs)
104 
def getOutDir(pathname, hashDirs=False)
Definition: runNovaSAM.py:92
exit(0)
def runNovaSAM.getOutDir (   pathname,
  dest,
  hashDirs = False,
  runDirs = False,
  runNum = 0 
)

Definition at line 111 of file runNovaSAM.py.

References getOutDir(), parse_dependency_file_t.list, makeDirSafely(), and str.

111 def getOutDir(pathname, dest, hashDirs=False, runDirs=False, runNum=0):
112  dirs = [dest]
113  if hashDirs:
114  head, tail = os.path.split(pathname)
115  hash = md5.new(tail)
116  dirs += list(hash.hexdigest()[:3])
117  if runDirs:
118  head, tail = os.path.split(pathname)
119  runStr = str(runNum)
120  multiRunDir = runStr[:3].zfill(6)
121  makeDirSafely(os.path.join(dest, multiRunDir))
122  makeDirSafely(os.path.join(dest, multiRunDir, runStr))
123  dirs += [multiRunDir, runStr]
124  return os.path.join(*dirs)
125 
def makeDirSafely(dir)
Definition: runNovaSAM.py:79
def getOutDir(pathname, hashDirs=False)
Definition: runNovaSAM.py:92
def runNovaSAM.getOutputFileName (   detector,
  runNum,
  subNum,
  streamEntry,
  release,
  subversion,
  dataFlag,
  tier,
  nevt 
)

Definition at line 173 of file runNovaSAM.py.

References exit(), and novadaq::HexUtils.format().

173 def getOutputFileName(detector, runNum, subNum, streamEntry, release, subversion, dataFlag, tier, nevt):
174  if dataFlag == "sim":
175  pattern = re.compile(r"^.*?_(.*?)_\d+.*_v\d+_(.*?)(\.|\_)sim\..+")
176  match = pattern.match(inFileBase)
177  if match != None:
178  simLabel = match.groups()[0]
179  uniq = match.groups()[1]
180  outName = '{0}_{1}_{2}_r{3:08d}_s{4:02d}_{5}_v{6}_{7}_{8}.{9}.root'.format(detector, simLabel, nevt, runNum, subNum, release, subversion, uniq, dataFlag, tier)
181  else:
182  print "regex couldn't find the sim label and the uniqueifier"
183  exit(1)
184  else:
185  outName = '{0}_r{1:08d}_s{2:02d}_{3}_{4}_v{5}_{6}.{7}.root'.format(detector, runNum, subNum, streamEntry, release, subversion, dataFlag, tier)
186  return outName
187 
def getOutputFileName(detector, runNum, subNum, streamEntry, release, subversion, dataFlag, tier, nevt)
Definition: runNovaSAM.py:173
std::string format(const int32_t &value, const int &ndigits=8)
Definition: HexUtils.cpp:14
exit(0)
def runNovaSAM.listFiles (   outPath,
  dh 
)

Definition at line 295 of file runNovaSAM.py.

295 def listFiles(outPath, dh):
296  try:
297  return dh.ls(outPath, 1, "")
298  except:
299  return "Exception while trying to ls, OutPath =",outPath
300 
301 
def listFiles(outPath, dh)
Definition: runNovaSAM.py:295
def runNovaSAM.make_temp_fcl (   fclFile,
  inFileBase 
)

Definition at line 33 of file runNovaSAM.py.

References MetadataUtils.addMetadataToFCL(), open(), and resolveFclPath().

33 def make_temp_fcl(fclFile, inFileBase):
34  # make a temporary copy of the fcl file
35  fclPath = resolveFclPath(fclFile)
36  print "Found fcl file here: ", fclPath
37  tmpFclName = os.path.basename(fclPath).replace(".fcl", "_" + os.path.splitext(inFileBase)[0] + ".fcl")
38  print "Creating local copy : ", tmpFclName
39  shutil.copy(fclPath, tmpFclName)
40 
41  # determine if we're using the metadata module
42  # add parameters that describe this job
43  # NOTE:
44  # fhicl-expand (and other FCL tools) don't allow you
45  # to give the absolute path to a FCL. Instead FCLs have to
46  # live in $FHICL_FILE_PATH. $FHICL_FILE_PATH always begins
47  # with './:', i.e., search current dir first.
48  # so just make sure you don't cd() away from this dir
49  # between when the FCL is copied to this dir above and the check below.
50  isRunningMetadataModule=True
51  try:
52  subprocess.check_call("fhicl-expand %s | grep -q ^physics.analyzers.metadata.params." % tmpFclName, shell=True)
53  except subprocess.CalledProcessError:
54  isRunningMetadataModule=False
55 
56  if isRunningMetadataModule:
57  with open(tmpFclName, 'a') as fclFileObj:
58  if not fileMetaDataMgr.isSam4Users():
59  if args.npass != None:
60  MetadataUtils.addMetadataToFCL(fclFileObj, "NOVA.subversion", '"' + fileMetaDataMgr.subversion + '"')
61 
62  if fileMetaDataMgr.dataFlag == "sim" and fileMetaDataMgr.generator in MetadataUtils.neutrinoGenerators:
63  MetadataUtils.addMetadataToFCL(fclFileObj, "NOVA.flux_version", '"' + fileMetaDataMgr.fluxVersion + '"')
64 
65  MetadataUtils.addMetadataToFCL(fclFileObj, "NOVA.skim", '"' + fileMetaDataMgr.skim + '"')
66  MetadataUtils.addMetadataToFCL(fclFileObj, "NOVA.systematic", '"' + fileMetaDataMgr.systematic + '"')
67  MetadataUtils.addMetadataToFCL(fclFileObj, "NOVA.Special", '"' + fileMetaDataMgr.special + '"')
68 
69  return tmpFclName
70 
def resolveFclPath(fcl)
Definition: runNovaSAM.py:188
procfile open("FD_BRL_v0.txt")
def addMetadataToFCL(fclFile, parName, parValue)
def make_temp_fcl(fclFile, inFileBase)
Definition: runNovaSAM.py:33
def runNovaSAM.makeDeCAF (   script,
  fname,
  special 
)

Definition at line 516 of file runNovaSAM.py.

References novadaq::HexUtils.format(), if(), and resolveFclPath().

516 def makeDeCAF(script, fname, special):
517  trimname = fname[:-5] # cut off .root from end
518  trimidx = trimname.rindex('.')+1 # find last period before .root
519  decaf_tier = trimname[trimidx:-3]+'de'+trimname[-3:] # properly insert 'de'
520  oname = '{0}_{1}.{2}.root'.format(trimname, special, decaf_tier)
521  novaSource = os.getenv("SRT_PUBLIC_CONTEXT", "undefined")
522  if(novaSource == "undefined"):
523  novaSource = os.getenv("NOVASOFT_DIR", "undefined")
524  if(novaSource == "undefined"):
525  NGU.fail("Unable to locate NOvA source code")
526  else:
527  novaSource = os.getenv("NOVASOFT_DIR") + "/source"
528 
529  os.system('cafe -bq '+novaSource+'/CAFAna/'+script+' '+fname+' '+oname+' 2>&1')
530  return oname
531 
if(dump)
std::string format(const int32_t &value, const int &ndigits=8)
Definition: HexUtils.cpp:14
def makeDeCAF(script, fname, special)
Definition: runNovaSAM.py:516
def runNovaSAM.makeDirIfNeeded (   dir)

Definition at line 99 of file runNovaSAM.py.

Referenced by checkAndMoveFiles(), and makeDirSafely().

99 def makeDirIfNeeded(dir):
100  os.umask(002) # (rw-rw-r--) for files and (rwxrwxr-x) for directories.
101  if not os.path.isdir(dir):
102  print "runNovaSAM is making a directory: ", dir
103  try:
104  os.mkdir(dir)
105  except:
106  print "Couldn't make the directory... some other job perhaps did, or permissions did not allow "
107  if not os.path.isdir(dir):
108  raise Exception("Failed to make directory + " + dir )
109 
110 
cet::coded_exception< errors::ErrorCodes, ExceptionDetail::translate > Exception
Definition: Exception.h:66
def makeDirIfNeeded(dir)
Definition: runNovaSAM.py:99
def runNovaSAM.makeDirSafely (   dir)

Definition at line 79 of file runNovaSAM.py.

References makeDirIfNeeded().

Referenced by getOutDir().

79 def makeDirSafely(dir):
80  if "/pnfs" != dir[0:5]:
81  makeDirIfNeeded(dir)
82  return
83 
84  print "runNovaSAM is making a directory with IFDH"
85  dh = ifdh.ifdh("http://samweb.fnal.gov:8480/sam/nova/api")
86  try:
87  print "Checking if directory ", dir, "exists"
88  dh.ls(dir, 1, "")
89  dh.chmod(774,dir,"")
90 
91  except (RuntimeError, IOError) as e:
92  try:
93  print "It doesn't - make directory", dir
94  dh.mkdir(dir)
95  except:
96  print "Tried to make directory and couldn't. Perhaps it already exists?"
97 
98 
def makeDirSafely(dir)
Definition: runNovaSAM.py:79
def makeDirIfNeeded(dir)
Definition: runNovaSAM.py:99
def runNovaSAM.makeMetadataJSONs ( )
For every ROOT file, try to extract its metadata into a matching .json
file in the same directory

Definition at line 302 of file runNovaSAM.py.

References if(), MakeTransposeJson(), open(), and PandAna.Demos.demo1.range.

303  """For every ROOT file, try to extract its metadata into a matching .json
304  file in the same directory"""
305  baseDir = "./results"
306  # If using --txtfiledef, want to pass multiple files at a time to sam_meta_dumper.
307  # This is because it simply takes too long to call it for each indiv file
308  # when there are 800+ outputs. 5 s each -> ~1 hour!
309  TransposeList = ""
310  # Declare the samweb client within this function
311  samweb = samweb_client.SAMWebClient(experiment='nova')
312  # Loop through directories to search for files to make json files for.
313  for root, dirs, filenames in os.walk(baseDir):
314  if root == baseDir:
315  # Push the h5 files to the front of the list so that the CAF files remain
316  # available to hack in the metadata.
317  for ifile in range(len(filenames)):
318  if("h5" in filenames[ifile]):
319  filenames = [filenames[ifile]] + filenames[:ifile] + filenames[ifile+1:]
320  for file in filenames:
321  if (file.endswith (".root") or file.endswith(".h5") ) and file != inFileBase:
322  skip_match = _skip_pattern.match(file)
323  if skip_match == None:
324  # Set some quick and useful variables.
325  olddir = os.getcwd()
326  fileWPath = os.path.join(root, file)
327  # If a transpose file want to make the json subtly differently.
328  if args.txtfiledef and "outplane" in file:
329  # This works for the cellmode of the transposer as well, due to the filename including outplane and cell.
330  print "Adding %s to TransposeList" %file
331  TransposeList += "%s " %file
332  continue
333  # Which extractor am I using?
334  extractor = 'sam_metadata_dumper'
335  if file.endswith('caf.root'):
336  extractor = 'extractCAFMetadata'
337  elif file.endswith('.h5'):
338  extractor = 'extractHDF5Metadata'
339  try:
340  # sam_metadata_dumper doesn't apply basename() to filename. https://cdcvs.fnal.gov/redmine/issues/8987
341  os.chdir(os.path.dirname(fileWPath))
342  meta = subprocess.check_output([extractor, os.path.basename(fileWPath)])
343  if file.endswith (".root"):
344 
345  jsonf = open(file.replace('.root', '.json'), 'w')
346  jsonf.write(meta)
347  jsonf.close()
348  print "Made metadata for %s" %file
349  elif file.endswith(".h5"):
350  print "\nNow to make my json file for my h5...\n"
351  jsonf = open(file.replace('.h5caf.h5', '.h5caf.json'), 'w')
352  jsonf.write(meta)
353  jsonf.close()
354  print "Made metadata for %s" %file
355  else:
356  print "I'm not sure what file extension you have..."
357  except:
358  print "Error extracting metadata from file."
359  finally:
360  os.chdir(olddir)
361  # Make the Transpose json files.
362  # Again same argument, outplane is already in the filenames for cell mode
363  if args.txtfiledef and "outplane" in file:
364  olddir = os.getcwd()
365  os.chdir(baseDir)
366  MakeTransposeJson( TransposeList )
367  os.chdir(olddir)
368 
def makeMetadataJSONs()
Definition: runNovaSAM.py:302
if(dump)
def MakeTransposeJson(TransposeList)
Definition: runNovaSAM.py:369
procfile open("FD_BRL_v0.txt")
def runNovaSAM.MakeTransposeJson (   TransposeList)
Transpose files need some extra tweaking when making .json files, largely because there are so many of them.
This takes in a list of files, and makes appropriate .json files in the same directory

Definition at line 369 of file runNovaSAM.py.

References append(), hadd_reco_validation.group, open(), PandAna.Demos.demo1.range, and split().

Referenced by makeMetadataJSONs().

369 def MakeTransposeJson( TransposeList ):
370  """Transpose files need some extra tweaking when making .json files, largely because there are so many of them.
371  This takes in a list of files, and makes appropriate .json files in the same directory"""
372  # If using --txtfiledef, I can now pass my file list to sam_meta_dumper.
373  print "Is MakeTransposeJson called without a txt def, if you see this then yes."
374  MetaListFile="AllMetaJson.txt"
375  meta_cmd="sam_metadata_dumper -s " + TransposeList + " > " + MetaListFile
376  os.system(meta_cmd)
377  # Now want to open the file and split by "}," character.
378  MetaFile = open( MetaListFile )
379  MetaLines = MetaFile.read().split(" },")
380  # Loop through lines, and appropriately separate out json files.
381  for i in range(0,len( MetaLines ) ):
382  meta=MetaLines[i]
383  # Figure out file name...this is assuming that file name is always the first entry...
384  StName=re.search('"(.+?).root"', meta ).group(1)
385  filename=StName+".json" # Effecitvely replacing .root with .json
386  # If transpose file add PlaneNumber and CellNumber if run in cell mode
387  if "cell" in filename:
388  try:
389  plane = re.search('^.*outplane(\d*).', filename).group(1)
390  cell = re.search('^.*cell(\d*).', filename).group(1)
391  print "Plane number:", plane, "Cell number:", cell, ". Is a transpose file"
392  meta = meta.replace('"calibration.base_release"', '"calibration.PlaneNumber": "%s",\n "calibration.CellNumber": "%s",\n "calibration.base_release"')%(plane, cell)
393  except:
394  print "No cell number found - could be a plane mode transpose file"
395 
396  elif "outplane" in filename:
397  try:
398  plane = re.search('^.*outplane(\d*).', filename).group(1)
399  print "Plane number:", plane, ". Is a transpose file"
400  meta = meta.replace('"calibration.base_release"', '"calibration.PlaneNumber": "%s",\n "calibration.base_release"') %plane
401  except:
402  print "Error extracting plane number from transpose file."
403 
404  ### Make sure that the txtfile is in the parent list.
405  meta['parents'].append({u'file_name':unicode(inFile)})
406 
407  # Now open the json file
408  fout=open(filename,'w')
409  # Want to make sure that the json starts with '{'
410  if meta[0] not in "{":
411  meta = meta[:0] + '{\n' + meta[1:]
412  # Want to make sure that the json ends with a double '}'
413  if i < len(MetaLines)-1:
414  meta += "}\n}\n"
415  # Write and close the json file
416  fout.write(meta)
417  fout.close()
418 
void split(double tt, double *fr)
void append()
Definition: append.C:24
def MakeTransposeJson(TransposeList)
Definition: runNovaSAM.py:369
procfile open("FD_BRL_v0.txt")
def runNovaSAM.resolveFclPath (   fcl)

Definition at line 188 of file runNovaSAM.py.

Referenced by make_temp_fcl(), and makeDeCAF().

188 def resolveFclPath(fcl):
189  # Check if we have an absolute path name, return it if so
190  if fcl[0] == "/":
191  return fcl
192 
193  # Otherwise, we need to do some searching
194  fclPaths = os.environ["FHICL_FILE_PATH"].split(":")
195  for path in fclPaths:
196  if os.path.isfile(path + fcl):
197  return path + fcl
198 
199  # If we haven't found it, we have a problem.
200  raise IOError(sys.argv[0] + ": config file "+ fcl+" not found in FHICL_FILE_PATH")
201 
202 
void split(double tt, double *fr)
def resolveFclPath(fcl)
Definition: runNovaSAM.py:188
def runNovaSAM.setVMemLimit ( )

Definition at line 71 of file runNovaSAM.py.

72  #memLimit = 3.9*1024**3
73  memLimit = 3.9*1000**3
74  print "Old virtual memory limit:", resource.getrlimit(resource.RLIMIT_AS)
75  print "Limiting the virtual memory of the nova job to 3.9 GB"
76  resource.setrlimit(resource.RLIMIT_AS, (memLimit, memLimit))
77  print "New virtual memory limit:", resource.getrlimit(resource.RLIMIT_AS)
78 
def setVMemLimit()
Definition: runNovaSAM.py:71
def runNovaSAM.unCamelCase (   s)
Convert CamelCase to camel_case 

Definition at line 29 of file runNovaSAM.py.

Referenced by createMetadata().

29 def unCamelCase(s):
30  """ Convert CamelCase to camel_case """
31  # \B matches an empty string which is NOT at the beginning of a word
32  # so requiring this means no _ will be inserted at the start
33  return re.sub( r'\B([A-Z])', r'_\1', s).lower()
34 
35 
def unCamelCase(s)
Definition: runNovaSAM.py:29

Variable Documentation

runNovaSAM._bad
private

Definition at line 994 of file runNovaSAM.py.

runNovaSAM._first
private

Definition at line 991 of file runNovaSAM.py.

runNovaSAM._good
private

Definition at line 995 of file runNovaSAM.py.

runNovaSAM._lineregex = re.compile(r'\d+: ([^ \t]+)[ \t]+(.+)')
private

Definition at line 24 of file runNovaSAM.py.

runNovaSAM._outputs
private

Definition at line 993 of file runNovaSAM.py.

runNovaSAM._second
private

Definition at line 992 of file runNovaSAM.py.

runNovaSAM._skip_pattern = re.compile(r"^.*(hist|RootOutput).*\.root", re.IGNORECASE)
private

Definition at line 27 of file runNovaSAM.py.

runNovaSAM.action

Definition at line 207 of file runNovaSAM.py.

runNovaSAM.allFiles

Definition at line 856 of file runNovaSAM.py.

runNovaSAM.args = parser.parse_args()

Definition at line 215 of file runNovaSAM.py.

runNovaSAM.argv

Definition at line 24 of file runNovaSAM.py.

runNovaSAM.argvCopy

Do a little bit of trickery with sys.argv to stop ROOT from gobbling it up and killing –help.

Definition at line 23 of file runNovaSAM.py.

runNovaSAM.cafLabel = cafTier.split(":")[0]

Definition at line 362 of file runNovaSAM.py.

Definition at line 366 of file runNovaSAM.py.

runNovaSAM.cafTier

Definition at line 342 of file runNovaSAM.py.

string runNovaSAM.cmd = ' '

Definition at line 383 of file runNovaSAM.py.

list runNovaSAM.cmdList = ['nova']

Definition at line 330 of file runNovaSAM.py.

runNovaSAM.copyfile

Definition at line 862 of file runNovaSAM.py.

runNovaSAM.copyOnly

Definition at line 926 of file runNovaSAM.py.

string runNovaSAM.dataFlag = "data"

Definition at line 297 of file runNovaSAM.py.

runNovaSAM.decafdir

Definition at line 1022 of file runNovaSAM.py.

runNovaSAM.default

Definition at line 600 of file runNovaSAM.py.

runNovaSAM.description

Definition at line 551 of file runNovaSAM.py.

runNovaSAM.dest

If using a txtfiledef make sure to clean up the InputFile List....

Definition at line 910 of file runNovaSAM.py.

runNovaSAM.detector = metadata["online.detector"].lower()

Definition at line 272 of file runNovaSAM.py.

Referenced by ApplyOscillations(), daq2raw::DAQHit2Raw.beginRun(), BestFit(), BuildMetricsTree(), cmf::DataVarVals.DataVars(), DCSPlotMaker(), cmf::MetaData.DetectorString(), novaddt::utils::DetectorUtils.DetectorUtils(), daqchannelmap::NearDetDAQChannelMap.encodeDChan(), daqchannelmap::FarDetDAQChannelMap.encodeDChan(), daqchannelmap::TestBeamDAQChannelMap.encodeDChan(), daqchannelmap::DAQChannelMapOLD.encodeDChan(), daqchannelmap::NearDetDAQChannelMap.encodeLChan(), daqchannelmap::FarDetDAQChannelMap.encodeLChan(), daqchannelmap::TestBeamDAQChannelMap.encodeLChan(), meta::Metadata.FillMetadata(), daqchannelmap::DAQChannelMapOLD.getBlockOffline(), daqchannelmap::DAQChannelMapBaseOLD.getBlockOrDiblock(), daqchannelmap::DAQChannelMapOLD.getBlockType(), GetCosmics(), daqchannelmap::DAQChannelMapOLD.getDCMLinkOffline(), daqchannelmap::DAQChannelMapOLD.getDCMOffline(), daqchannelmap::DAQChannelMapOLD.getDiBlockOffline(), daqchannelmap::DAQChannelMapBaseOLD.getDiBlockType(), daqchannelmap::DAQChannelMapOLD.getDiBlockType(), daqchannelmap::DAQChannelMapOLD.getDiBlockTypeOffline(), daqchannelmap::DAQChannelMapOLD.getFirstDCMInViewOffline(), daqchannelmap::DAQChannelMapOLD.getLastDCMInViewOffline(), daqchannelmap::DAQChannelMapOLD.getLocalPlaneInBlockOffline(), daqchannelmap::DAQChannelMapBaseOLD.getLocalPlaneInBlockOrDiblock(), daqchannelmap::DAQChannelMapOLD.getLocalPlaneInDiblockOffline(), daqchannelmap::DAQChannelMapOLD.getLocalPlaneInDiblockViewOffline(), daqchannelmap::DAQChannelMapBaseOLD.getNumberOfChannelsInXPlane(), daqchannelmap::DAQChannelMapBaseOLD.getNumberOfChannelsInYPlane(), daqchannelmap::DAQChannelMapBaseOLD.getNumberOfPlanesBeforeBlock(), daqchannelmap::DAQChannelMapBaseOLD.getNumberOfPlanesBeforeDiblock(), daqchannelmap::DAQChannelMapBaseOLD.getNumberOfPlanesInBlock(), daqchannelmap::DAQChannelMapBaseOLD.getNumberOfPlanesInDiblock(), daqchannelmap::DAQChannelMapBaseOLD.getNumberOfXDCM(), daqchannelmap::DAQChannelMapBaseOLD.getNumberOfYDCM(), daqchannelmap::DAQChannelMapOLD.getOnlineCellOffline(), daqchannelmap::DAQChannelMapOLD.getPixelOffline(), daqchannelmap::DAQChannelMapOLD.getPlaneViewOffline(), GetSystsFromFile(), daqchannelmap::DAQChannelMapBaseOLD.getTotalNumberOfDiblocks(), GoodRuns(), daqchannelmap::DAQChannelMapBaseOLD.initNumberOfDCMsInDiblockDetector(), nova::dbi::RunHistory.LoadDAQRunHistory(), main(), make_fc_nus_surfs_nersc_2019(), MakeCovarSim(), MakeSurface(), MakeSurfaceJoint(), MakeSurfaceLLTest(), MakeSurfaceNoNDOsc(), NewNearlinePlots(), NuMu2019_BasicPIDPlots_FD(), NuMu2019_BasicPIDPlots_ND(), NuMu2019_BasicPIDPlots_Spectrum(), NuMu2020_BasicPIDPlots_FD(), NuMu2020_BasicPIDPlots_ND(), NuMu2020_BasicPIDPlots_Spectrum(), rawdata::RawBeamlineTrigger.RawBeamlineTrigger(), rawdata::RawBeamlineWC.RawBeamlineWC(), om::HistoTable.ReadFile(), rawdata::RawBeamlineTrigger.SetDetectorID(), rawdata::RawBeamlineWC.SetDetectorID(), ana.TAHadEND(), and rawdata::RawBeamlineWC.~RawBeamlineWC().

runNovaSAM.detectors = dict()
runNovaSAM.detId = metadata["nova.detectorid"].lower()
runNovaSAM.dh = ifdh.ifdh("http://samweb.fnal.gov:8480/sam/nova/api")
runNovaSAM.dirList = os.listdir(".")

Definition at line 406 of file runNovaSAM.py.

runNovaSAM.doMeta

Definition at line 667 of file runNovaSAM.py.

runNovaSAM.experiment

Definition at line 630 of file runNovaSAM.py.

runNovaSAM.failFiles

Definition at line 857 of file runNovaSAM.py.

runNovaSAM.False

Definition at line 600 of file runNovaSAM.py.

runNovaSAM.fclFile = args.config

Definition at line 315 of file runNovaSAM.py.

runNovaSAM.fclFileObj = open(tmpFclName, 'a')

Definition at line 327 of file runNovaSAM.py.

runNovaSAM.fclPath = resolveFclPath(fclFile)

Definition at line 319 of file runNovaSAM.py.

runNovaSAM.file_type = metadata["file_type"]

Definition at line 291 of file runNovaSAM.py.

runNovaSAM.fileMetaDataMgr

Definition at line 648 of file runNovaSAM.py.

runNovaSAM.FirstRun

Definition at line 736 of file runNovaSAM.py.

runNovaSAM.flatLabel

Definition at line 789 of file runNovaSAM.py.

runNovaSAM.flatName

Definition at line 794 of file runNovaSAM.py.

runNovaSAM.flatTier

Definition at line 687 of file runNovaSAM.py.

runNovaSAM.gdbArgs

Definition at line 877 of file runNovaSAM.py.

runNovaSAM.gErrorIgnoreLevel
runNovaSAM.h5Label

Definition at line 804 of file runNovaSAM.py.

runNovaSAM.h5Name

Definition at line 809 of file runNovaSAM.py.

runNovaSAM.h5Tier

Definition at line 689 of file runNovaSAM.py.

runNovaSAM.help

Definition at line 205 of file runNovaSAM.py.

runNovaSAM.histName

Definition at line 826 of file runNovaSAM.py.

runNovaSAM.ifdhcmd

Definition at line 864 of file runNovaSAM.py.

runNovaSAM.Index
runNovaSAM.inFile = args.inFile

Definition at line 217 of file runNovaSAM.py.

runNovaSAM.inFileBase = os.path.basename(inFile)

Definition at line 221 of file runNovaSAM.py.

runNovaSAM.inPID

Definition at line 959 of file runNovaSAM.py.

runNovaSAM.lastdir

Definition at line 937 of file runNovaSAM.py.

runNovaSAM.LastRun

Definition at line 737 of file runNovaSAM.py.

runNovaSAM.logfile

Definition at line 888 of file runNovaSAM.py.

Referenced by main(), and nl::timing::LogFile.ProcessLog().

dictionary runNovaSAM.metadata = samweb.getMetadata(inFileBase)
runNovaSAM.nevt = None

Definition at line 311 of file runNovaSAM.py.

runNovaSAM.NewOMod

Definition at line 714 of file runNovaSAM.py.

runNovaSAM.NewOName

Definition at line 751 of file runNovaSAM.py.

runNovaSAM.noCleanup

Definition at line 926 of file runNovaSAM.py.

runNovaSAM.olddir

Are we streaming the files via xrootd? txtcmd="cat %s | xargs -n1 samweb2xrootd > xrootd_inFile.txt"inFile os.system(txtcmd) with open("xrootd_inFile.txt") as f: for line in f: print line.strip() cmdList.append( line.strip() ) print "" Are we going to copy the files?

Definition at line 854 of file runNovaSAM.py.

Referenced by numusand::NumuSandFxs.getScatt(), cosrej::CosRejFxs.getScatt(), and ndreco::NDRecoFxs.getTrackScatt().

runNovaSAM.outC

Definition at line 709 of file runNovaSAM.py.

list runNovaSAM.outList = []

Definition at line 344 of file runNovaSAM.py.

runNovaSAM.outNameTemp

Definition at line 734 of file runNovaSAM.py.

runNovaSAM.outP

Definition at line 709 of file runNovaSAM.py.

runNovaSAM.output = outTier.split(":")[0]

Definition at line 348 of file runNovaSAM.py.

runNovaSAM.outputs

Definition at line 695 of file runNovaSAM.py.

runNovaSAM.outTier

Definition at line 340 of file runNovaSAM.py.

runNovaSAM.outX

Definition at line 720 of file runNovaSAM.py.

runNovaSAM.outXc

Definition at line 710 of file runNovaSAM.py.

runNovaSAM.outXp

Definition at line 710 of file runNovaSAM.py.

runNovaSAM.outY

Definition at line 721 of file runNovaSAM.py.

runNovaSAM.outYc

Definition at line 711 of file runNovaSAM.py.

runNovaSAM.outYp

Definition at line 711 of file runNovaSAM.py.

runNovaSAM.parser = argparse.ArgumentParser(description='Run the nova command using SAM metadata')

Definition at line 204 of file runNovaSAM.py.

runNovaSAM.PassFile

Definition at line 652 of file runNovaSAM.py.

runNovaSAM.precopyscript

Definition at line 692 of file runNovaSAM.py.

runNovaSAM.release = os.environ["SRT_BASE_RELEASE"]

Definition at line 285 of file runNovaSAM.py.

Referenced by AnalyzeSysts(), BestFit(), bin_composition_pie_chart(), CalcRWithSystsNus17(), CompareBinningSchemes(), CompareMissingLeptons(), ConsolidateSystMaker(), containment_optimization_plots(), CopyPred(), CVNCuts(), demo_cut_optimization(), demo_trivial_xsec_analysis(), draw_michel_plots(), DrawContours(), DrawCovMx(), DrawLLComparisonContours(), drawPlot(), drawSensitivity(), drawSystsShiftingNDdata(), drawSystsShiftingNDdata_updatedAna(), example_plot(), fake_future_data(), FCContour(), FCCorrectSlice(), fd_plot(), fill_col(), FillHists(), GeniePredictionToRoot(), get_univ_chisq(), GetBiases(), getContProf(), getContProf_Sensitivity(), getHists_FNEX(), GetMatrices(), GetMockData(), GetNueCosmics2017(), GetNueCosmics2018(), GetNueCosmics2019(), ana.GetNueCosmics2020(), GetNueCosmicsFuture(), GetNueData2017(), GetNueData2018(), GetNueData2019(), ana.GetNueData2020(), GetNuePrediction2017(), GetNuePrediction2018(), GetNuePrediction2019(), ana.GetNuePrediction2020(), GetNuePredictionFuture(), ana.GetNumuData2020(), GetNumuPredictionsFuture(), getSensitivity(), GetSurf(), GetSystsFromFile(), getTimePeakPlots(), LoadCovMx(), LoadData(), LoadExtrapPrediction(), ana::CountingExperiment.LoadFrom(), ana::TrivialBkgdEstimator.LoadFrom(), ana::PredictionSterile.LoadFrom(), ana::FDPredictionSterile.LoadFrom(), ana::FluxReweight.LoadFrom(), ana::NDPredictionSterile.LoadFrom(), ana::SingleNucAnalysis.LoadFrom(), ana::FitInAnaBinsBkgdEstimator.LoadFrom(), ana::NumuCC2p2hAnalysis.LoadFrom(), ana::NumuCC2p2hBkgdEstimator.LoadFrom(), ana::nueccinc::NueCCIncMRECorrection.LoadFrom(), ana::MultiExperiment.LoadFrom(), ana::SingleSampleExperiment.LoadFrom(), ana::PredictionCombinePeriods.LoadFrom(), ana::PredictionAddRock.LoadFrom(), ana::PredictionExtendToPeripheral.LoadFrom(), ana::PredictionScaleComp.LoadFrom(), ana::CutOptimization.LoadFrom(), ana::TrivialCrossSectionAnalysis.LoadFrom(), ana::CrossSectionAnalysis.LoadFrom(), ana::Multiverse.LoadFrom(), ana::SpectrumComponents.LoadFrom(), ana::NumuCCIncAnalysis.LoadFrom(), ana::nueccinc::NueCCIncCrossSectionAnalysis.LoadFrom(), ana::ModularExtrapSterile.LoadFrom(), ana::MichelDecomp.LoadFrom(), ana::TruthReweight.LoadFrom(), ana::DataMCPair.LoadFrom(), ana::RecoReweight.LoadFrom(), ana::SystMaker.LoadFrom(), ana::nueccinc::NueCCIncEnhancedSamples.LoadFrom(), ana::SystematicsMaker.LoadFrom(), ana::PredictionInterp.LoadFromBody(), LoadMaps(), ana.LoadMaps(), LoadPPFX(), LoadPrediction(), ana.LoadSystsFromFile(), Make2DPlot(), make_extrap_figure(), make_extrap_figure_hists(), make_fc_nus_surfs_nersc_2019(), make_files_for_decomp_plots(), make_muonid_opt(), make_nominal_xs(), Make_NuMuCC_Inc_XS(), make_nus17_fc_surfs(), make_nus_fc_surfs(), make_starplots(), make_surfprof(), make_vertex_optimiz(), make_xs(), make_xs_1D(), makeEnergyEstimator(), makeFlatWeight(), MakeISysts(), makeMatrixElementSurface(), MakeNumuCovMx(), MakePeriCutPlot(), MakePlot(), MakePlots(), MakeSurface(), MakeSurfaceBinningStudy(), MakeSurfaceLLTest(), MakeSurfaceNoNDOsc(), MakeSystsPDF(), MakeTable(), mec_nux_tester_2020(), mec_tuning_fitter_2020(), mrbrem_get_reweighted_spectra(), mrbrem_plots(), mre_blessed(), mre_comp_split(), muonid_optimization_plots(), nue_decomp_scales_for_make_decomp(), nuebar_signif(), NumuExtrap(), PeripheralCuts(), plot_3NDvsFD(), plot_3NDvsFD_FHC(), plot_3NDvsFD_RHC(), plot_BEN(), plot_contprof(), plot_datamc_ND_numu(), plot_datamc_ND_numu_REW(), plot_datamcpred(), plot_datapredictions(), plot_joint_fit_2020_contours(), plot_nd_data_mc(), plot_ND_numu_NOMvsREW(), plot_NDvsFD_REW(), plot_NDvsFD_weights(), plot_NDvsFD_weights_FHC(), plot_NDvsFD_weights_RHC(), plot_nuCrystalBall(), plot_nue_filesyst_pred(), plot_nue_xsec_pred(), plot_nueFD_Signal_REWvsNOM_FHC(), plot_nueFD_Signal_REWvsNOM_pTExtrap_FHC(), plot_nueFD_Signal_REWvsNOM_pTExtrap_RHC(), plot_nueFD_Signal_REWvsNOM_RHC(), plot_nuTree(), plot_pi0_xcheck(), plot_pid(), plot_predictions(), plot_rationoosc(), plot_resolution(), plot_shifts(), plot_syst_contours(), plot_time(), plot_uncertainty(), plotContProf(), plotDataPred(), plotDataPred_SplitCanvas(), PlotNus17PredSystsData(), PlotNus18Sideband(), PlotNusSensAna01(), PlotPionPlots(), plots(), Plotting_DataAndPrediction(), pred_err(), PredictCosmic(), ana::PredictionExtrapSum.PredictionExtrapSum(), ana::PredictionSyst3Flavor2020.PredictionSyst3Flavor2020(), ana::PredictionSystJoint2018.PredictionSystJoint2018(), ana::PredictionSystJointDemo.PredictionSystJointDemo(), ana::PredictionSystNue2017.PredictionSystNue2017(), ana::PredictionSystNumu2017.PredictionSystNumu2017(), preselection_cutflow(), print_tables(), saveContours_addExpt(), saveContours_complete(), saveContours_oscpar(), saveContours_simple(), saveContours_systs(), selection_story_plots(), SetBestFitParams(), SetCosmic(), SetPrediction(), signal_count(), starPlot(), syst_plot_test(), syst_table_fit(), syst_table_fit_new(), test_nue2017Prediction(), test_nue2018_fitter(), test_prediction_interp(), TestPred(), ana::Bayesian1DMarginal.ToTH1(), Toy_analyses(), UnfoldInOut(), and xsec_extrap_plots().

runNovaSAM.ret

Definition at line 866 of file runNovaSAM.py.

Referenced by ana::OscillatableSpectrum._Oscillated(), ana::PredictionExtrap._PredictComponent(), ana::PredictionExtrapSum._PredictComponent(), ana::PredictionExtendToPeripheral._PredictComponent(), ana::PredictionAddRock._PredictComponentSyst(), ana::PredictionInterp._PredictComponentSyst(), ana::CutOptimization.AbsUncertainty(), ana::CutOptimization.AbsUncertaintySquared(), ana::Seed.ActiveFitVars(), ana::SeedList.ActiveFitVars(), ana::SystShifts.ActiveSysts(), ana.AddErrorInQuadrature(), AddHistograms(), ana.AddToSummaryV(), ana::Hist.Adopt(), ana::Hist.AdoptSparse(), ana::Hist.AdoptStan(), rawfileparser::RawFileParser.AdvanceToConfigEnd(), rawfileparser::RawFileParser.AdvanceToConfigStart_file(), rawfileparser::RawFileParser.AdvanceToConfigStart_mem(), rawfileparser::RawFileParser.AdvanceToFirstEvent_file(), rawfileparser::RawFileParser.AdvanceToFirstEvent_mem(), rawfileparser::RawFileParser.AdvanceToNextEvent_file(), rawfileparser::RawFileParser.AdvanceToNextEvent_mem(), rawfileparser::RawFileParser.AdvanceToPreviousEvent_mem(), rawfileparser::RawFileParser.AdvanceToRunHeader_file(), rawfileparser::RawFileParser.AdvanceToRunHeader_mem(), rawfileparser::RawFileParser.AdvanceToRunTail_file(), rawfileparser::RawFileParser.AdvanceToRunTail_mem(), dt::Chain.AllChunks(), dt::Chain.AllHits(), ana.AnaTypeToString(), dt::Chain.AsChunkMap(), ana::Spectrum.AsimovData(), ana::TrivialBkgdEstimator.Background(), calib::BetheBlochTables.BetheBlochTables(), stan::services::optimize.bfgs(), rawfileparser::RawFileParser.BuildEventIndex_file(), rawfileparser::RawFileParser.BuildEventIndex_mem(), mcmc.BuildExperiments(), ana::StanFitter.BuildInitContext(), ana::GenericSystematicDef< SRType >.BuildSpectrumDown(), ana::GenericSystematicDef< SRType >.BuildSpectrumUp(), caldp::AttenProfilesMap.Channels(), ana::WildcardSource.CheckedWildcard(), ana::SolarConstraints.ChiSq(), ana::MultiExperiment.ChiSq(), rawfileparser::RawFileParser.close(), stan::math.columns_dot_product(), stan::math.columns_dot_self(), CombineHistograms(), ana::PredictionExtrapSum.ComponentCC(), ana::PredictionExtrapSum.ComponentNC(), ana::PredictionExtrapSum.ComponentNCAnti(), ana::PredictionExtrapSum.ComponentNCTotal(), ana::ThreadPool::TaskQueue.consume(), convert(), convert_mcnp_txt_to_root(), ConvertNormalBasis(), osc::OscCalcGeneral.Copy(), osc::_OscCalcPMNSOpt< T >.Copy(), osc::OscCalcPMNSOptEigen.Copy(), ana::Multiverse.CopyAndTransform(), gibuu::GiBUURegen.CopyGenieEvent(), ana.CopyUpDownSpectrum(), dt::ViewMerger.CountUnexplainedOnLine(), ana.DataMCComparison(), ana.DataMCComparisonAreaNormalized(), ana.DataMCComparisonComponents(), novarwgt.DecodeGeneratorVersion(), caf.DecodeGeneratorVersion(), DecorrelateFD(), DecorrelateND(), ana.DefaultOscCalc(), ana.DefaultOscCalcIH(), ana.DefaultSterileCalc(), stan::math.dot_product(), lem::Potential.Downsampled(), lem::MatchableEvent.Downsampled(), ana::CovMxSurface.DrawContours(), ana.DrawQuantLabel(), ana::Prod4LoadersBase.ECAFTypeFlatToTier(), ana::Prod5LoadersBase.ECAFTypeFlatToTier(), ana.EigenMatrixXdFromTMatrixD(), novarwgt.EncodeGeneratorVersion(), EnergyBin(), ErrorBand(), ErrorsToHist(), tf::HoughScore.Eval(), NovaMCEmptyEvent.eventTimestamp(), rb::Cluster.Exclude(), gibuu::GiBUURegen.ExpandLibraryPath(), ana::IFitter.ExpandSeeds(), mcmc.ExptPtrs(), ana.factorial(), dt::ViewMerger.FakeThirdDimension(), FillPCAContainers(), caf.FillProngVars(), calib::ThroughgoingSelection.filter(), calib::RockMuonStopperSelection.filter(), calib::StopperSelection.filter(), novaddt::MoonShadow.filter(), EliminateBeamSpills.filter(), hough::LiteTH2.FindBinX(), hv::LiteTH2.FindBinX(), hough::LiteTH2.FindBinY(), hv::LiteTH2.FindBinY(), ana.FindCurveCrossings(), geo::GeometryBase.FindGDMLFile(), caf::CAFMaker.FindManyPStrict(), lem.FindMatches(), ana.FindPackageDir(), trk::KalmanTrackAna.FindVisibleProngs(), cheat::RecoCheckAna.FindVisibleProngs(), fuzz::FuzzyKValidate.FindVisibleProngs3D(), fuzz::FuzzyKVertex.FindVisibleProngs3D(), calib::AttenFit.FitQuality(), calib::AttenuationFit.FitQuality(), ana::PredictionInterp.FitRatios(), lem::MatchableEvent.Flipped(), ana::covmx::CovarianceMatrix.ForcePosDef(), ana::Progress.FormatTime(), nuesand::FillNueSandbox.FracModalHits(), ana::Hist.FromDirectory(), lem::dec::Forest.FromFile(), ana::SpectrumLoader.FromSAMProject(), lem::PIDExtraVars.FromString(), lem::PIDDetails.FromString(), ana::FCBin.FromTree(), lem::EventSummary.FromTree(), GenerateFutureData(), caf.GenieReweightTable(), ana2019::fakedata.Get2019Prediction(), ana.get3FlavorAna2020AllCPTSysts(), ana.get3FlavorAna2020AllSysts(), ana.get3FlavorAna2020LargeXsecSysts(), ana.getAllAna2017Systs(), ana.getAllAna2018Systs(), ana.getAllCPTSysts(), caldp::AttenHistsMap.GetAllHistsByPlane(), ana.getAllNumuProd4FDHistDef(), ana.getAllNumuProd4NDHistDef(), ana.getAllNumuProd5FDHistDef(), ana.getAllNumuProd5FDMultiHistDef(), ana.getAllNumuProd5FDNuTruthHistDef(), ana.getAllNumuProd5NDHistDef(), ana.getAllNumuProd5NDMultiHistDef(), ana.getAllNumuProd5NDNuTruthHistDef(), ana.getAllNusAna01FDHistDefs(), ana.getAllNusAna01NDHistDefs(), caldp::AttenProfilesMap.GetAllProfilesByPlaneAndCell(), GetAllSamples(), ana::CutOptimization.GetAllSystDefs(), ana.getAllXsecNuTruthSysts_2017(), ana.getAna2017LargeXsecSysts(), ana.getAna2018LargeXsecSysts(), ana.getAna2018NueOnly(), ana.getAna2018NumuOnly(), ana.getAna2020NueOnly(), ana.getAna2020NumuOnly(), cosrej::CosRejFxs.getAngle(), numusand::NumuSandFxs.getAngle(), GetBG(), ana.GetBG(), GetBiasErrorLine(), ana::covmx::CovarianceMatrix.GetBinnings(), ana.GetCAFMetadata(), ana::covmx.GetComponents(), rawfileparser::RawFileParser.getConfigBlock(), GetConstraints(), ana::CovMxSurface.GetContours(), GetCorrelations(), ana.GetCorrelations(), GetCosmics(), ana::covmx::CovarianceMatrix.GetCovMxRelative(), evd::GeometryDrawer.GetDCMBoxes(), calib::IBetheBloch.GetdEdxGraph(), calib::EnergyLossVsDistance.GetEnergyLossGraph(), rawfileparser::RawFileParser.getEvent(), gibuu::GiBUURegen.GetEvent(), ana::LikelihoodCovMxExperiment.GetExpectedSpectrum(), GetExtrapolationDefs(), GetFakeData(), ana.GetFDMCComponents(), rawfileparser::RawFileParser.getFirstEvent(), GetFNRatio(), GetGaussianProfile(), GetGaussianSurface(), geo::CellGeo.GetGeoMatrix(), ana::ISurface.GetGraphs(), GetHist(), GetJointFitSystematicList(), ana.GetJointFitSystematicList(), ana.GetKeySystNames(), ana.GetKeySysts(), GetMatrices(), GetMockData(), calib::IBetheBloch.GetMPVGraph(), ana::covmx::CovarianceMatrix.GetNBins(), GetNC(), ana.GetNC(), GetNCFDSamples(), GetNCNDSamples(), ana::covmx::CovarianceMatrix.GetNComponents(), GetNCSamples(), ana.GetNDComponents(), ana.GetNDCompsFromDecomp(), ana.GetNDDecompsFromDecomp(), ana.GetNDMCComponents(), rawfileparser::RawFileParser.getNextEvent(), ana.getNue2018PredFile(), ana.getNue2018PredVar(), GetNueNDComponents(), GetNueNDComponentsMC(), GetNuePredPath(), ana.getNumu2018PredFile(), ana.getNumu2018PredVar(), GetNumuFDSamples(), GetNumuNDSamples(), GetNumuSamples(), GetNus18Binning(), GetNus18Constraints(), GetNus18FitVars(), GetNus18SeedValues(), ana.getNusAna2020AllSysts(), getPadHists(), osc::OscCalcSterileBeam.GetParamsHash(), osc::OscCalcSterile.GetParamsHash(), osc::_NoOscillations< T >.GetParamsHash(), osc::_OscCalcDMP< T >.GetParamsHash(), osc::OscCalcPMNSOptEigen.GetParamsHash(), osc::OscCalcCPT.GetParamsHash(), osc::_IOscCalcAdjustable< T >.GetParamsHashDefault(), osc::OscCalcPMNS_CPT.GetParamsHashDefaultBar(), GetPlotOptions(), GetPOTCombination(), GetPOTComboTitle(), rawfileparser::RawFileParser.getPreviousEvent(), ana::T2KToyExperiment.GetReweightedSignal(), rawfileparser::RawFileParser.getRunHeader(), rawfileparser::RawFileParser.getRunTail(), GetSampleFromOptString(), GetSamplesFromOptString(), SystGroupHelper.GetShifts(), GetShifts2017(), ana.GetShifts2018(), ana.GetShifts2020(), ana.GetSpectrum(), GetSystConcats(), GetSystematics2017(), ana.GetSystematics2018(), ana.GetSystematics2020(), GetSystGroup(), ana::covmx::Sample.GetSystShifts(), calib::EnergyLossVsDistance.GetTF1(), GetTotFNRatio(), nuesand::FillNueSandbox.GetTrackAngle(), ana::FitDelta13InPiUnitsSterile.GetValue(), ana::FitDelta14InPiUnitsSterile.GetValue(), lem::LEMWorker.GetWork(), rawfileparser::RawFileParser.GotoEvent_file(), HistNumuOpt(), dt::Chunk.HitsOnLine(), cheat::BackTracker.HitsToParticle(), cheat::BackTracker.HitToFLSHit(), tf::TimingFitAlg.HoughFitPts(), ImportDataGraph(), InitCutDefs(), InitHistDefs(), stan::optimization::BFGSMinimizer< ModelAdaptor< M >, QNUpdateType, Scalar, DimAtCompile >.initialize(), InitSpectra(), geo::LiveGeometry.InMuonCatcher(), ana.InputPath(), util.ipow(), ana.JoinGraphs(), JointGraphs(), ana.kKalmanMinMax_byPdg(), ana.kMinPngNhit(), ana.kProngContainment_coord(), ana::SystShifts.LatexName(), stan::services::optimize.lbfgs(), load(), load_libs_muonid(), load_libs_nuebarccinc(), load_libs_nueccinc(), load_libs_numubarccpi0(), load_libs_numucc2p2h(), load_libs_numucc_0Pi(), load_libs_numuccinc(), LoadCosmic(), mcmc.LoadFakeData(), LoadFakeData(), ana.LoadFileList(), ana::PredictionXSecTuning.LoadFrom(), ana::CountingExperiment.LoadFrom(), ana::SolarConstraints.LoadFrom(), ana::PredictionNoOsc.LoadFrom(), ana::PredictionSterile.LoadFrom(), ana::CheatDecomp.LoadFrom(), ana::ModularExtrap.LoadFrom(), ana::FluxReweight.LoadFrom(), ana::PredictionExtrap.LoadFrom(), ana::Binning.LoadFrom(), ana::CovMxManager.LoadFrom(), ana::NCDecomp.LoadFrom(), ana::NDExtrapBeamComponent.LoadFrom(), ana::CovMxSurface.LoadFrom(), ana::NueDecomp.LoadFrom(), ana::SingleSampleExperiment.LoadFrom(), ana::NDExtrapComponent.LoadFrom(), ana::NumuDecomp.LoadFrom(), ana::PredictionSystJoint2018.LoadFrom(), ana::PredictionSystJointDemo.LoadFrom(), ana::NDOscillatableSpectrum.LoadFrom(), ana::PredictionNoExtrap.LoadFrom(), ana::FDExtrap.LoadFrom(), ana::NDExtrap.LoadFrom(), ana::ProportionalDecomp.LoadFrom(), ana::TrivialExtrap.LoadFrom(), ana::FakeDecomp.LoadFrom(), ana::ReweightableSpectrum.LoadFrom(), ana::TrivialCrossSectionAnalysis.LoadFrom(), ana::Multiverse.LoadFrom(), ana::PredictionInterp.LoadFrom(), ana::TwoSampleDecomp.LoadFrom(), ana::SystShifts.LoadFrom(), ana::SpectrumComponents.LoadFrom(), ana::covmx::CovarianceMatrix.LoadFrom(), ana::OscillatableSpectrum.LoadFrom(), ana::FluxDecomp.LoadFrom(), ana::ModularExtrapSterile.LoadFrom(), ana::MichelDecomp.LoadFrom(), ana::BENDecomp.LoadFrom(), ana::PredictionSystNue2017.LoadFrom(), ana::PredictionSystNumu2017.LoadFrom(), ana::TruthReweight.LoadFrom(), ana::DataMCPair.LoadFrom(), ana::RecoReweight.LoadFrom(), ana::Spectrum.LoadFrom(), ana.LoadFrom< osc::IOscCalcAdjustable >(), ana::FCCollection.LoadFromFile(), ana::FCSurface.LoadFromFile(), genie::GSimFiles.LoadFromFile(), ana::FrequentistSurface.LoadFromMulti(), genie::XSecSplineList.LoadFromXml(), LoadPrediction(), ana.LoadPredictions(), ana.LoadRealData(), mcmc.LoadSystsCreateDummyMECSysts(), ana::SAMQuerySource.LocateSAMFiles(), ana::MultiExperiment.LogLikelihood(), ana::GaussianPriorSystShifts.LogPrior(), ana::BoundedGaussianPriorSystShifts.LogPrior(), calib::AttenFit.lowessFit(), calib::AttenuationFit.lowessFit(), ana::GradientDescent.Magnitude(), MakeAverageTrueEnergySurface(), dt::View.MakeChunkCombos(), ana.MakeCosOutOfTimeList(), MakeCutFlowSpectra(), MakeDataReleaseFileContour(), MakeDataReleaseFileSlice(), MakeKin2DSpectra(), MakeKinSpectra(), MakeName(), ana.MakeNumiUnblindList(), MakeRatio(), MakeRatios(), MakeSample(), MakeSpectra(), MakeTitle(), ana.MakeUnblindList(), MakeUnblindList(), hough::MultiHough2P.MapToTH2F(), dt::ViewMerger.MatchVerticals(), osc.MatrixExp(), caldp::TCTrack.MaxCell(), rb::Cluster.MaxCell(), nuesand::FillNueSandbox.MaxHits(), caldp::TCTrack.MaxPath(), caldp::TCTrack.MaxPlane(), rb::Cluster.MaxPlane(), caldp::TCTrack.MaxTNS(), rb::Cluster.MaxTNS(), lem::Match.MaybeFlip(), dt::Cand.MaybeFlip(), cheat::BackTracker.MCTruthToParticles(), calib::AttenFit.MeanProfile(), calib::AttenuationFit.MeanProfile(), ana::ResolutionScan.MeanScan(), rb::Cluster.MeanTNS(), calib::AttenFit.MedianProfile(), calib::AttenuationFit.MedianProfile(), caldp::TCTrack.MinCell(), rb::Cluster.MinCell(), caldp::TCTrack.MinPath(), caldp::TCTrack.MinPlane(), rb::Cluster.MinPlane(), caldp::TCTrack.MinTNS(), rb::Cluster.MinTNS(), lem.MMapFileAtAddress(), ana::Spectrum.MockData(), MostConservative(), MyDefaultOscCalc(), dt::Cand.NHitPlanes(), dt::Chain.NHitPlanes(), ana::RecordMultiSink.NSinks(), rb::Cluster.OfflineChans(), ana::Ratio.operator*(), ana::Multiverse.operator*(), ana::Spectrum.operator*(), ana::ReweightableSpectrum.operator+(), ana::OscillatableSpectrum.operator+(), ana::Spectrum.operator+(), ana::ReweightableSpectrum.operator-(), ana::OscillatableSpectrum.operator-(), ana::Spectrum.operator-(), ana::Ratio.operator/(), ana::Multiverse.operator/(), ana::Spectrum.operator/(), ana::_preview::_RecordSource< T >.operator[](), osc::_IOscCalc< T >.P(), lem::FindMatchesAlg.PackageMatches(), PackMatrix(), PaintReachCanvas(), parse_as_vector(), ParseOption(), ParseOptions(), ana::SystShifts.Penalty(), PIDFileTag(), PIDLongName(), plot_ratios(), ana::NumuCCIncAnalysis.PlotHelper(), PlotMCComponentsErrorBand(), dt::DiscreteTracker.PossibleNextSegs(), ana::FDPredictionSterile.Predict(), ana::NDPredictionSterile.Predict(), ana::covmx::CovarianceMatrix.Predict(), ana::PredictionScaleComp.Predict(), ana::NDPredictionNoOsc.Predict(), ana::PredictionSterile.PredictComponent(), ana::FDPredictionSterile.PredictComponent(), ana::NDPredictionSterile.PredictComponent(), ana::PredictionNoOsc.PredictComponent(), ana::NDPredictionNoOsc.PredictComponent(), PredictCosmic(), ana::PredictionInterp.PredictionInterp(), Print(), ana.Profile(), ProfileAxes(), calib::BetheBlochFit.ProfileMPV(), lem::dec::Cut.Prune(), caf.PtrVecToVec(), cheat::BackTracker.PtrVecToVecRawPtr(), stan::math.quad_form_sym(), ana::MCMCSamples.QuantileLL(), lem::dec::Forest.RandomOrthoMatrix(), RebinToShortAxis(), dt::DiscreteTracker.RecoDiscrete(), ana.RefineSeeds(), RemoveBins(), ana.RemoveBins(), ana.replaceAll(), ana::ResolutionScan.RMSScan(), ana::PredictionAddRock.RockComponent(), stan::math.rows_dot_product(), stan::math.rows_dot_self(), ana::T2KToyExperiment.SetPOTAnti(), ana::FitSinSq2Theta13.SetValue(), ana::SummedSyst.Shift(), ShiftedCosmics(), ana::SystShifts.ShortName(), ana::Registry< T >.ShortNameToPtr(), murem::MuonRemove.SliceSelection(), ana.sort_chisq_tot(), SortSystHists(), SplitHistograms(), ana.SqrtProfile(), ana.SqrtSlice(), caf.StripSubscripts(), flat::Flat< std::vector< T > >.SubLengthName(), flat::Flat< T[N]>.SubLengthName(), stan::math::LDLT_factor< var, R, C >.success(), mcmc.SupportedSysts(), ana.systsQ3Q0(), TEST(), slid::DedxDistribution.TH1DToTH1F(), TH1ToTH2(), calib::ThresholdCorrMap.ThresholdCorrAt(), ana.TMatrixDFromEigenMatrixXd(), stan::math.to_fvar(), dt::Chain.ToDebugTracks(), ana.ToEigen(), ana.ToEigenSterile(), ana::CutOptimization.ToHist(), ana::BayesianMarginal.ToHistogram(), ana::Multiverse.ToSpectrum(), lem::PIDExtraVars.ToString(), ValidCalibPDF.ToString(), rb::Cluster.TotalADC(), caldp::LiteProfile.TotalEntries(), rb::Cluster.TotalGeV(), caldp::LiteProfile.TotalHits(), rb::Prong.TotalLength(), rb::Cluster.TotalPE(), rb::Cluster.TotalWeight(), ana::NDOscCurve.ToTH1(), ana::OscCurve.ToTH1(), ana::Ratio.ToTH1(), ana::Hist.ToTH1(), ana::Spectrum.ToTH1(), ana::Ratio.ToTH2(), ana::ReweightableSpectrum.ToTH2(), ana::ISurface.ToTH2(), ana::Spectrum.ToTH2(), hough::LiteTH2.ToTH2F(), hv::LiteTH2.ToTH2F(), ana.ToTH2Helper(), ana::Spectrum.ToTH3(), ana.ToTH3Helper(), ana.ToTHStack(), ana::MCMCSample.ToTMap(), dt::Cand.ToTrack(), ana.ToUpDownHist(), ana::CutOptimization.ToUpDownHist(), ana::MCMCSamples.Trace(), murem::TrackCleanUpAlg.TrackEinMIP(), lem::dec::Forest.Train(), lem::dec.TransformEvent(), calib::AttenCache.TranslateChannelMC(), ncid::MakeNCCosRej.TransMomFraction(), ncid::NCNNKeras.TransMomFraction(), cosrej::MakeNueCosRej.TransMomFraction(), calib::AttenFit.TruncatedMeanProfile(), calib::AttenuationFit.TruncatedMeanProfile(), ana::UnfoldSVD.Truth(), ana::UnfoldTikhonov.Truth(), UnpackMatrix(), cheat::BackTracker.VecPtrToVecRawPtr(), cheat::BackTracker.VecToVecRawPtr(), ana::Nus17SystFromHist.WeightFor(), ana::NusSystFromHist.WeightFor(), ana::NuISyst.WeightFor(), ana::Nus18SystFromHist.WeightFor(), ana::SpectrumLoaderBase.WildcardOrSAMQuery(), stan::optimization.WolfeLineSearch(), ana::Hist.Zero(), ana::Hist.ZeroSparse(), dt::ViewMerger.ZipVerticalTracks(), rb::Track.ZipWith(), ana::ProfilerSupport.~ProfilerSupport(), and calib::ThresholdCorrMap.~ThresholdCorrMap().

runNovaSAM.retCode = subprocess.call(cmdList)
runNovaSAM.run_match = run_pattern.match(inFileBase)

Definition at line 238 of file runNovaSAM.py.

runNovaSAM.run_pattern = re.compile(r"^.*?_r([0-9]+)_s([0-9]+).+")

Definition at line 237 of file runNovaSAM.py.

runNovaSAM.runNum = int(metadata["runs"][0][0])

Definition at line 234 of file runNovaSAM.py.

Referenced by calib::Calibrator.postBeginRun().

runNovaSAM.samweb = samweb_client.SAMWebClient(experiment='nova')

Definition at line 219 of file runNovaSAM.py.

runNovaSAM.skip_match = _skip_pattern.match(file)

Definition at line 408 of file runNovaSAM.py.

runNovaSAM.stderr

Definition at line 888 of file runNovaSAM.py.

runNovaSAM.stdout

Definition at line 888 of file runNovaSAM.py.

runNovaSAM.str

Definition at line 207 of file runNovaSAM.py.

Referenced by createMetadata(), and getOutDir().

runNovaSAM.stream = int(metadata["data_stream"])

Definition at line 251 of file runNovaSAM.py.

Referenced by genie::Algorithm.AllowReconfig(), genie::RSHelicityAmpl.Amp20Plus(), genie::ProcessInfo.AsString(), ClassImp(), genie::geometry::FidPolyhedron.clear(), nova::database::Row.Col(), genie::GVldContext.Emax(), genie::RunOpt.EnableBareXSecPreCalc(), novaddt::HitSubtract.endJob(), Expression.Eval(), genie::geometry::FidCylinder.FidCylinder(), genie::geometry::FidSphere.FidSphere(), genie::Spline.GetAsTSpline(), nutools::dbi::Table.GetConnectionTimeout(), rvp::RecVarPID.getMethodNameFromXML(), xnue::XnuePID.getMethodNameFromXML(), rvp::RecVarPID.getVarNamesFromXML(), xnue::XnuePID.getVarNamesFromXML(), genie::PDF.Gluon(), genie::Kinematics.HadSystP4(), genie::Target.HitNucP4(), genie::geometry::PathSegment.IsTrimmedEmpty(), genie::geometry::PlaneParam.IsValid(), genie::AlgId.Key(), genie::AxialFormFactor.Model(), genie::ELFormFactors.Model(), genie::QELFormFactors.Model(), genie::DISStructureFunc.Model(), genie::CacheBranchNtp.Ntuple(), genie::TuneId.OnlyConfiguration(), genie::geometry.operator<(), genie::utils.operator<<(), genie::exceptions.operator<<(), genie::geometry.operator<<(), operator<<(), genie.operator<<(), nova::database.operator<<(), nutools::dbi.operator<<(), nova::dbi.operator<<(), genie::flux.operator<<(), genie::Interaction.PhaseSpacePtr(), genie::exceptions::EVGThreadException.ReturnStep(), genie::GHepParticle.SetLastDaughter(), genie::RegistryItem< T >.SetLocal(), genie::XclsTag.SetNNeutrons(), nutools::dbi::Row.SetVldTimeEnd(), nova::dbi::Row.SetVldTimeEnd(), genie::exceptions::INukeException.ShowReason(), genie::exceptions::NievesQELException.ShowReason(), genie::CacheBranchFx.Spl(), genie::InitialState.TgtPtr(), nova::database::Column.Update(), nutools::dbi::Column.Update(), nova::dbi::Column.Update(), genie::GHepRecord.Vertex(), genie::GEVGDriver.XSecSumSpline(), genie::geometry::FidShape.~FidShape(), genie::flux::GJPARCNuFluxPassThroughInfo.~GJPARCNuFluxPassThroughInfo(), genie::flux::GNuMIFluxPassThroughInfo.~GNuMIFluxPassThroughInfo(), genie::flux::GSimpleNtpAux.~GSimpleNtpAux(), genie::flux::GSimpleNtpEntry.~GSimpleNtpEntry(), genie::flux::GSimpleNtpNuMI.~GSimpleNtpNuMI(), genie::exceptions::InteractionException.~InteractionException(), and genie::utils::T2KEvGenMetaData.~T2KEvGenMetaData().

runNovaSAM.stream_match = stream_pattern.match(inFileBase)

Definition at line 263 of file runNovaSAM.py.

runNovaSAM.stream_pattern = re.compile(r"^.*?_(dd.*?)[_,.].+", re.IGNORECASE)

Definition at line 262 of file runNovaSAM.py.

string runNovaSAM.streamEntry = 't{0:02d}'

Definition at line 252 of file runNovaSAM.py.

runNovaSAM.subNum = int(metadata["runs"][0][1])

Definition at line 235 of file runNovaSAM.py.

int runNovaSAM.subversion = os.environ["NPASS"]

Definition at line 305 of file runNovaSAM.py.

runNovaSAM.tier = outTier.split(":")[1]
runNovaSAM.tmpdir

Definition at line 938 of file runNovaSAM.py.

runNovaSAM.tmpFclName = os.path.basename(fclPath).replace(".fcl", "_" + os.path.splitext(inFileBase)[0] + ".fcl")

Definition at line 322 of file runNovaSAM.py.

runNovaSAM.tmpSecondFclName

Definition at line 942 of file runNovaSAM.py.

runNovaSAM.True

Definition at line 926 of file runNovaSAM.py.

runNovaSAM.type

Definition at line 205 of file runNovaSAM.py.