diff --git a/src/CelerisLab/simulation.py b/src/CelerisLab/simulation.py index b1e0327..7fbdc8a 100644 --- a/src/CelerisLab/simulation.py +++ b/src/CelerisLab/simulation.py @@ -172,7 +172,8 @@ class Simulation: self.bodies.stage_add(obj) return -1 body_id = self.bodies.add(obj) - self._refresh_stepper_block() + if translation is not None: + self._refresh_stepper_block() return body_id def add_jet(self, jet) -> int: @@ -273,8 +274,10 @@ class Simulation: if self._initialized: self.bodies.stage_remove(id) else: + moving = self.bodies.get(id).motion is not None self.bodies.remove(id) - self._refresh_stepper_block() + if moving: + self._refresh_stepper_block() # -- Legacy convenience (keep for backward compat) ----------------------- def add_cylinder(self, center: Tuple[float, ...],