diff --git a/src/kyupy/wave_sim.py b/src/kyupy/wave_sim.py index aabb63d..36866c4 100644 --- a/src/kyupy/wave_sim.py +++ b/src/kyupy/wave_sim.py @@ -377,9 +377,11 @@ class WaveSimCuda(WaveSim): def _grid_dim(self, x, y): return cdiv(x, self._block_dim[0]), cdiv(y, self._block_dim[1]) - def c_prop(self, sims=None, seed=1): + def c_prop(self, sims=None, seed=1, op_from=0, op_to=None): sims = min(sims or self.sims, self.sims) for op_start, op_stop in zip(self.level_starts, self.level_stops): + if op_from > op_start: continue + if op_to is not None and op_to <= op_start: break grid_dim = self._grid_dim(sims, op_stop - op_start) wave_eval_gpu[grid_dim, self._block_dim](self.ops, op_start, op_stop, self.c, self.c_locs, self.c_caps, self.abuf, int(0), sims, self.delays, self.simctl_int, seed)