LookForProcessingFailures.py
Go to the documentation of this file.
1 import os
2 
3 
4 for root, dirs, files in os.walk("/lbne/data/users/ljf26/fluxfiles/g4lbne/v3r2p4/"):
5  for name in root:
6 
7  fullpath = root
8 
9  splitdir = fullpath.split("/")
10 
11  if len(splitdir) != 11:
12  continue
13 
14  if not os.path.exists(fullpath+"/flux/"):
15  print "WARNING: Path without flux directory:",fullpath
16  continue
17 
18 
19  n_tuples = 0
20  n_histos = 0
21  for root, dirs, files in os.walk(fullpath+"/flux/"):
22  for file in files:
23  if(file.startswith("g4lbne_")):
24  n_tuples = n_tuples + 1
25  if(file.startswith("histos_")):
26  n_histos = n_histos + 1
27 
28  version = splitdir[7]
29  plist = splitdir[8]
30  macro = splitdir[9]
31  current = splitdir[10]
32 
33  if(n_tuples != 250 or n_histos != 6):
34  # skip simulations we don't care about anymore
35  if (splitdir[9]=="700kW" or ("CylindricalTarget" in splitdir[9])):
36  continue
37  print "WARNING: "+plist+"/"+macro+"/"+current+" ntuples: "+str(n_tuples)+" nhistos: "+str(n_histos)
38  continue
39 
40  oppcurrent = "-"+current
41  if current.startswith("-"):
42  oppcurrent = current[1:]
43 
44  if not os.path.exists(fullpath.replace(current,oppcurrent)):
45  print "WARNING: "+plist+"/"+macro+"/"+current+" ntuples: "+str(n_tuples)+" has no opposite current directory"
46 
if(!yymsg) yymsg
static QCString str