@@ -149,11 +149,12 @@ def initialize_problem(self, problem_name, *, inputs_file=None, inputs_dict=None
149149
150150 self .rp .load_params (inputs_file , no_new = 1 )
151151
152- # manually override the dovis and verbose defaults
152+ # manually override the I/O, dovis, and verbose defaults
153153 # for Jupyter, we want runtime vis disabled by default
154154 if not self .from_commandline :
155155 self .rp .set_param ("vis.dovis" , 0 )
156156 self .rp .set_param ("driver.verbose" , 0 )
157+ self .rp .set_param ("io.do_io" , 0 )
157158
158159 if inputs_dict is not None :
159160 for k , v in inputs_dict .items ():
@@ -198,7 +199,10 @@ def run_sim(self):
198199
199200 # output the 0th data
200201 basename = self .rp .get_param ("io.basename" )
201- self .sim .write (f"{ basename } { self .sim .n :04d} " )
202+ do_io = self .rp .get_param ("io.do_io" )
203+
204+ if do_io :
205+ self .sim .write (f"{ basename } { self .sim .n :04d} " )
202206
203207 if self .dovis :
204208 plt .figure (num = 1 , figsize = (8 , 6 ), dpi = 100 , facecolor = 'w' )
@@ -208,10 +212,13 @@ def run_sim(self):
208212 self .single_step ()
209213
210214 # final output
211- if self .verbose > 0 :
212- msg .warning ("outputting..." )
213- basename = self .rp .get_param ("io.basename" )
214- self .sim .write (f"{ basename } { self .sim .n :04d} " )
215+ force_final_output = self .rp .get_param ("io.force_final_output" )
216+
217+ if do_io or force_final_output :
218+ if self .verbose > 0 :
219+ msg .warning ("outputting..." )
220+ basename = self .rp .get_param ("io.basename" )
221+ self .sim .write (f"{ basename } { self .sim .n :04d} " )
215222
216223 tm_main .end ()
217224 # -------------------------------------------------------------------------
0 commit comments