I used modflowapi to run my current models, just experimenting at this stage, not updating anything. My callback_function is simple as below:
def callback_function(sim, callback_step):
if callback_step == Callbacks.initialize:
print(sim.models)
if callback_step == Callbacks.stress_period_start:
print('start of stress period')
if callback_step == Callbacks.stress_period_end:
print(f'end of stress period')
if callback_step == Callbacks.timestep_start:
print(f"start of time step")
if callback_step == Callbacks.timestep_end:
print(f"end of time step")
Initially, it was successful with some, but not with others. Then (actually after many runs) I realized the issue was with ats. If I deactivate ats, every model runs properly, even the very complex ones. It is quite amazing. However, in the function run_simulation , I see the 'ats' option.

I would like to ask how ats works with modflowapi?
I used modflowapi to run my current models, just experimenting at this stage, not updating anything. My callback_function is simple as below:
Initially, it was successful with some, but not with others. Then (actually after many runs) I realized the issue was with ats. If I deactivate ats, every model runs properly, even the very complex ones. It is quite amazing. However, in the function
run_simulation, I see the 'ats' option.I would like to ask how ats works with modflowapi?