def timestep(self):

        cfl = self.rp.get_param("driver.cfl")
    
        u = self.cc_data.get_var("x-velocity")
        v = self.cc_data.get_var("y-velocity")
    
        # the timestep is min(dx/|u|, dy|v|)
        xtmp = self.cc_data.grid.dx/(abs(u))
        ytmp = self.cc_data.grid.dy/(abs(v))

        dt = cfl*min(xtmp.min(), ytmp.min())

        return dt
The timestep() function computes the advective timestep 
dataset/ETHPy150Open zingale/pyro2/lm_combustion/simulation.py/Simulation.timestep