34 std::numeric_limits<uint32_t>::max());
44 #if defined(USE_OPENCL) && !defined(__ROOTCLING__)
97 const auto& all_exec_ctxts = sim->GetAllExecCtxts();
98 all_exec_ctxts[0]->SetupIterationAll(all_exec_ctxts);
99 sim->GetEnvironment()->Update();
110 const auto& all_exec_ctxts = sim->GetAllExecCtxts();
111 all_exec_ctxts[0]->TearDownIterationAll(all_exec_ctxts);
132 sim->GetEnvironment()->ForcedUpdate();
151 rm->ForEachAgentParallel(param->scheduling_batch_size,
function);
Contains code required by all agents.
void PropagateStaticness(bool beginning=false)
void RunBehaviors()
Execute all behaviorsq.
virtual void RunDiscretization()
A class that sets up diffusion grids of the substances in this simulation.
Defines the 3D physical interactions between physical objects.
ResourceManager * GetResourceManager()
Returns the ResourceManager instance.
experimental::TimeSeries * GetTimeSeries()
static Simulation * GetActive()
This function returns the currently active Simulation simulation.
const Param * GetParam() const
Returns the simulation parameters.
void Update()
Adds a new data point to all time series with a collector.
LambdaFunctor< decltype(&TLambda::operator())> L2F(const TLambda &l)
BDM_REGISTER_OP(BoundSpace, "bound space", kCpu)
BDM_REGISTER_OP_WITH_FREQ(LoadBalancingOp, "load balancing", kCpu, std::numeric_limits< uint32_t >::max())
Interface for implementing an operation.
void operator()(Agent *agent) override
BDM_OP_HEADER(BehaviorOp)
void operator()(Agent *agent) override
BDM_OP_HEADER(DiscretizationOp)
Defines the 3D physical interactions between physical objects.
Defines the 3D physical interactions between physical objects.
bool detect_static_agents
BDM_OP_HEADER(PropagateStaticnessAgentOp)
void operator()(Agent *agent) override
BDM_OP_HEADER(PropagateStaticnessOp)
void operator()() override
void operator()() override
BDM_OP_HEADER(SetUpIterationOp)
Interface for implementing an operation that should run on a GPU.
BDM_OP_HEADER(TearDownIterationOp)
void operator()() override
void operator()() override
BDM_OP_HEADER(UpdateEnvironmentOp)
void operator()(Agent *agent) override
BDM_OP_HEADER(UpdateStaticnessOp)
BDM_OP_HEADER(UpdateTimeSeriesOp)
void operator()() override