Open mondus opened 3 years ago
This is probably already feasible with submodels.
for cell_cycle: // 10s interval
do_cell_cycle();
for mechanical_model/10: //10x per outer loop
do_mechanical_model();
for environment_agent/10: //100x per outer loop
do_environment();
Less clear how we would handle cell-cycle having a variable frequency, if the other layers needed to be continue at a consistent rate, perhaps blocking do_cell_cycle()
with some kind of condition, probably more depends on how the variability there actually works.
It would be nice to consider core support for simulations occurring at different timescales. Currently time is not a concept in FLAMEGPU on simulation ticks. To complement this we would need to allow certain agents/functions to operate at different granularities and then
step()
would simply iterate the smallest timescale unit within the model. E.g. Within a biological model we may have an example similar to that within Physicell;