Package it.unibo.alchemist.model.implementations.reactions

Types

Link copied to clipboard
abstract class AbstractReaction<T> : Reaction<T>
The type which describes the concentration of a molecule This class offers a partial implementation of Reaction.
Link copied to clipboard
class BiochemicalReaction : ChemicalReaction<Double>
A biochemical Reaction.
Link copied to clipboard
open class BiochemicalReactionBuilder<P : Position<P>?, Vector<P>?>
This class implements a builder for chemical reactions.
Link copied to clipboard
open class BlendedSteering<T>(environment: Euclidean2DEnvironment<T>, pedestrian: Pedestrian2D<T>, timeDistribution: TimeDistribution<T>) : SteeringBehavior<T>

Steering behavior using DistanceWeighted steering strategy (= steering actions are summed with different weights depending on the distance to their target).

Link copied to clipboard
class BlendedSteeringWithPhysics<T>(environment: EuclideanPhysics2DEnvironmentWithGraph<*, T, *, *>, pedestrian: PhysicalPedestrian2D<T>, timeDistribution: TimeDistribution<T>) : BlendedSteering<T>

BlendedSteering strategy for physical pedestrians, taking into account physical forces as well. Sum strategy is used to combine steering actions and physical forces.

Link copied to clipboard
open class ChemicalReaction<T> : AbstractReaction<T>
Link copied to clipboard
class CognitiveBehavior<T, V : Vector<V>, A : GeometricTransformation<V>>(pedestrian: CognitivePedestrian<T, V, A>, timeDistribution: TimeDistribution<T>) : AbstractReaction<T>

Reaction representing the cognitive behavior of a pedestrian.

Link copied to clipboard
class Event<T> : AbstractReaction<T>
This reaction completely ignores the propensity conditioning of the conditions, and tries to run every time the TimeDistribution wants to.
Link copied to clipboard
open class NavigationPrioritisedSteering<T, N : ConvexPolygon> @JvmOverloads constructor(env: Euclidean2DEnvironmentWithGraph<*, T, N, *>, pedestrian: Pedestrian2D<T>, timeDistribution: TimeDistribution<T>, toleranceAngle: Double, alpha: Double) : SteeringBehavior<T>

A SteeringBehavior using SinglePrevalent steering strategy and accepting a collection of actions containing a single NavigationAction2D, which is used as the prevalent one.

Link copied to clipboard
class NavigationPrioritisedSteeringWithPhysics<T, N : ConvexPolygon> @JvmOverloads constructor(env: EuclideanPhysics2DEnvironmentWithGraph<*, T, N, *>, pedestrian: PhysicalPedestrian2D<T>, timeDistribution: TimeDistribution<T>, toleranceAngle: Double, alpha: Double) : NavigationPrioritisedSteering<T, N>

NavigationPrioritisedSteering strategy for physical pedestrians, taking into account physical forces as well. Sum strategy is used to combine steering actions and physical forces.

Link copied to clipboard
class PrioritySteering<T>(environment: Euclidean2DEnvironment<T>, pedestrian: Pedestrian2D<T>, timeDistribution: TimeDistribution<T>) : SteeringBehavior<T>

Steering behavior using Nearest steering strategy (= the only action executed is the one with the nearest target).

Link copied to clipboard
class SAPEREGradient<P : Position<P>?> : AbstractReaction<List<ILsaMolecule>>
This class provides a fast and stable gradient implementation, inspired on the NBR construct used in Proto.
Link copied to clipboard
class SAPEREReaction : AbstractReaction<List<ILsaMolecule>>
This class realizes a reaction with Lsa concentrations.
Link copied to clipboard
open class SteeringBehavior<T>(env: Environment<T, Euclidean2DPosition>, pedestrian: Pedestrian2D<T>, timeDistribution: TimeDistribution<T>, steerStrategy: SteeringStrategy<T, Euclidean2DPosition>) : AbstractReaction<T>

Reaction representing the steering behavior of a pedestrian.