diff --git a/mesa_viz_tornado/ModularVisualization.py b/mesa_viz_tornado/ModularVisualization.py index 2a15780..8700e6c 100644 --- a/mesa_viz_tornado/ModularVisualization.py +++ b/mesa_viz_tornado/ModularVisualization.py @@ -242,6 +242,8 @@ def on_message(self, message): if param in self.application.user_params: if is_user_param(self.application.model_kwargs[param]): self.application.model_kwargs[param].value = value + if self.application.dynamic: + setattr(self.application.model, param, value) else: self.application.model_kwargs[param] = value @@ -262,6 +264,7 @@ def __init__( name="Mesa Model", model_params=None, port=None, + dynamic=False, ): """ Args: @@ -275,11 +278,14 @@ def __init__( 3. Environment var PORT 4. Default value (8521) model_params: A dict of model parameters + dynamic: Whether to allow model parameters to update in real-time or not """ self.verbose = True self.max_steps = 100000 + self.dynamic = dynamic + if port is not None: self.port = port else: