[Examples] Fix refinement check in ic_engine.py

The previous refinement check didn't work because the loop never
reached n2 == 4. Replace is checks with == checks.
This commit is contained in:
CyberDrudge 2019-01-11 03:14:00 +05:30 committed by Bryan W. Weber
parent 05eaa0a5e4
commit d9b95b2efb
No known key found for this signature in database
GPG key ID: 3A93E209C87E1FE7

View file

@ -141,16 +141,19 @@ for n1, t_i in enumerate(t):
injector_mfc.set_mass_flow_rate(0)
# perform time integration, refine time step if necessary
solved = False
for n2 in range(4):
if n2 is 4:
raise 'Error: Refinement limit reached'
try:
sim.advance(t_i)
solved = True
break
except ct.CanteraError:
sim.set_max_time_step(1e-6 * 10. ** -n2)
n_last_refinement = n1
if not solved:
raise ct.CanteraError('Refinement limit reached')
# coarsen time step if too long ago
if n1 - n_last_refinement is n_wait_coarsening:
if n1 - n_last_refinement == n_wait_coarsening:
sim.set_max_time_step(1e-5)
# write output data