ToggleMoleculeRandomly

open class ToggleMoleculeRandomly<T>(node: Node<T>, randomGenerator: RandomGenerator, molecule: Molecule, concentration: T, odds: Double) : ToggleMolecule<T> (source)

Treats molecule as a probabilistic switch:

  • if it is present, then with probability odds it's removed from node;

  • otherwise, with probability odds it is inserted in node with the provided concentration.

Parameters

concentration type
node

the node containing the molecule to toggle

randomGenerator

random number generator to use

molecule

the molecule to toggle

concentration

the concentration to use for the "on" state

odds

probability to toggle the molecule every time the action is triggered

Constructors

Link copied to clipboard
constructor(node: Node<T>, randomGenerator: RandomGenerator, molecule: Molecule, concentration: T, odds: Double)

Functions

Link copied to clipboard
open override fun cloneAction(node: Node<T>, reaction: Reaction<T>): ToggleMoleculeRandomly<T>
Link copied to clipboard
open override fun execute()

Rolls the dice and toggles the molecule.

Link copied to clipboard
open override fun getContext(): Context
Link copied to clipboard
@Nonnull
override fun getOutboundDependencies(): ListSet<out Dependency>
Link copied to clipboard
open override fun toString(): String