4545 .type = bool
4646 .help = if True, save the data modelers after running refinement. The file includes model values, errors, and useful information
4747 .help = for examining the modeling results, can be loaded using modeler = np.load(fname, allow_pickle=True)[()]
48+ refspec = None
49+ .type = str
50+ .help = path to a reference .lam file to use as the spectra for each shot
4851"""
4952import os
5053from libtbx .phil import parse
@@ -69,10 +72,11 @@ def __init__(self, *args, **kwargs):
6972 logging .basicConfig (level = logging .DEBUG )
7073
7174 if self .params .save_modelers :
75+ self .modeler_dir = os .path .join (self .params .output .output_dir , "modelers" )
7276 if COMM .rank == 0 :
73- self .modeler_dir = os .path .join (self .params .output .output_dir , "modelers" )
7477 if not os .path .exists (self .modeler_dir ):
7578 os .makedirs (self .modeler_dir )
79+ COMM .barrier ()
7680
7781 @property
7882 def device_id (self ):
@@ -133,7 +137,10 @@ def refine(self, exps, ref):
133137 assert len (exps )== 1
134138 # TODO MPI select GPU device
135139
136- exp , ref , data_modeler , x = refine (exps [0 ], ref , self .params .diffBragg , gpu_device = self .device_id , return_modeler = True )
140+ exp , ref , data_modeler , x = refine (exps [0 ], ref ,
141+ self .params .diffBragg ,
142+ spec = self .params .refspec ,
143+ gpu_device = self .device_id , return_modeler = True )
137144 orig_exp_name = os .path .abspath (self .params .output .refined_experiments_filename )
138145 refls_name = os .path .abspath (self .params .output .indexed_filename )
139146 self .params .diffBragg .outdir = self .params .output .output_dir
0 commit comments