Skip to content

AgentRelaxation

baseendje edited this page Nov 30, 2021 · 1 revision

Agent relaxation

Mechanical relaxation can be enabled with default parameters by adding the following code snippet to your spatial compartment.

<process name="agentRelax" class="AgentRelaxation" />

In scenarios with extra small or extra large agents, you will likely also want to set maxAgentOverlap. This setting determines the maximum amount of agent overlap for a scenario to be considered to be relaxed.

<process name="agentRelax" class="AgentRelaxation" >
    <aspect name="maxAgentOverlap" class="Double" value="0.1 [um]" />
</process>

Using different relaxation methods

In order to change the relaxation method, relaxationMethod can be set to either EULER (default), HEUN, or SHOVE.

Method Description
EULER (default) Mechanical relaxation using forward euler steps
HEUN Mechanical relaxation using Heun's method (second order Runga-Kutta
SHOVE Resolve agent overlap using a shoving algorithm similar to the algorithm used in iDynoMiCS 1

Note that the SHOVE method works significantly different from the others. It was implemented to make it easier to reproduce older agent based models. Many older models implement shoving algorithms.

The shoveFactor can be set to control how coarseness of the SHOVE method. Note that 1 is the smallest allowed factor ( 1 < shoveFactor ). Larger values will typically result in sparser biofilms and more mixing.

<process name="agentRelax" class="AgentRelaxation" >
    <aspect name="relaxationMethod" class="String" value="SHOVE" />
    <aspect name="maxAgentOverlap" class="Double" value="0.1 [um]" />
    <aspect name="shoveFactor" class="Double" value="1.25" />
</process>
Clone this wiki locally