Module cpu_os_threads

Source
Available on crate feature cpu_os_threads only.
Expand description

See cellular_raza_core::backend::cpu_os_threads

Note that this backend is NOT compatible with the cellular_raza_core::backend::chili. In order to use this backend, import it with

use cellular_raza::prelude::cpu_os_threads::*;

Modules§

backend
Numerically solve a given simulation setup.
cartesian_cuboid_2_vertex_old
Contains deprecated cartesian cuboid implementations for an older vertex model
cartesian_cuboid_n_old
Contains deprecated cartesian cuboid implementations
domain_old
Traits and types which will eventually replace the old Domain definition.
pool_bacteria
Objects and definitions surrounding the bacterial pool model
rayon
Rayon is a data-parallelism library that makes it easy to convert sequential computations into parallel.
reactions_old
Contains traits and types which specify cellular reactions specific to the cpu_os_threads backend.
storage
Interface and methods to store and load simulation aspects.
time
Controls how the simulation time is advanced
tracing
A scoped, structured logging and diagnostics system.

Structs§

AuxiliaryCellPropertyStorage
Contains auxiliary information to update cellular properties
BatchSaveFormat
Define how batches of elements and identifiers are saved when being serialized.
BoundLennardJones
Lennard-Jones interaction potential with numerical upper and lower limit.
BoundLennardJonesF32
Identical to BoundLennardJones but for f32 type.
BoundaryError
Can occur during boundary calculation
Brownian1D
Brownian motion of particles
Brownian1DF32
Brownian motion of particles
Brownian2D
Brownian motion of particles
Brownian2DF32
Brownian motion of particles
Brownian3D
Brownian motion of particles
Brownian3DF32
Brownian motion of particles
CalcError
General Calculation Error
CartesianCuboid
A generic Domain with a cuboid layout.
CartesianCuboid1New
Cartesian cuboid in 1D with float type f64
CartesianCuboid1NewF32
Cartesian cuboid in 1D with float type f32
CartesianCuboid2New
Cartesian cuboid in 2D with float type f64
CartesianCuboid2NewF32
Cartesian cuboid in 2D with float type f32
CartesianCuboid3New
Cartesian cuboid in 3D with float type f64
CartesianCuboid3NewF32
Cartesian cuboid in 3D with float type f32
CartesianCuboidRods
Cells are represented by rods
CartesianSubDomain
Subdomain corresponding to the CartesianCuboid struct.
CartesianSubDomain1
Subdomain of CartesianCuboid1New
CartesianSubDomain2
Subdomain of CartesianCuboid2New
CartesianSubDomain3
Subdomain of CartesianCuboid3New
CartesianSubDomain1F32
Subdomain of CartesianCuboid1NewF32
CartesianSubDomain2F32
Subdomain of CartesianCuboid2NewF32
CartesianSubDomain3F32
Subdomain of CartesianCuboid3NewF32
CartesianSubDomainRods
The corresponding SubDomain of the CartesianCuboidRods domain.
CartesianVoxel1
Voxel of the CartesianSubDomain1
CartesianVoxel2
Voxel of the CartesianSubDomain2
CartesianVoxel3
Voxel of the CartesianSubDomain3
CartesianVoxel1F32
Voxel of the CartesianSubDomain1F32
CartesianVoxel2F32
Voxel of the CartesianSubDomain2F32
CartesianVoxel3F32
Voxel of the CartesianSubDomain3F32
CellAgentBox
A container struct containing meta-information of a given Cell Some variables such as id are not required and not desired to be initialized by the user. This CellAgentBox acts as a container around the cell to hold these variables.
CombinedSaveFormat
Define how elements and identifiers are saved when being serialized together.
CommunicationError
Error which occurs during sending, receiving or transmitting information between threads
ControllerError
Occurs when incorrectly applying a controller effect
DeathError
Errors occurring during the final death step of a cell
DecomposedDomain
Generated by the decompose method. The backend will know how to deal with this type and crate a working simulation from it.
DivisionError
Errors related to a cell dividing process
DomainBox
Wrapper around the user-defined simulation Domain
DrawingError
Used to catch errors related to plotting
FixedStepsize
Time stepping with a fixed time length
IndexError
Can occur internally when information is not present at expected place
JsonStorageInterface
Save elements as json files with serde_json.
Langevin1D
Langevin dynamics
Langevin1DF32
Langevin dynamics
Langevin2D
Langevin dynamics
Langevin2DF32
Langevin dynamics
Langevin3D
Langevin dynamics
Langevin3DF32
Langevin dynamics
MemoryStorageInterface
Use the [sled] database to save results to an embedded database.
MiePotential
Generalizeation of the BoundLennardJones potential.
MiePotentialF32
Generalizeation of the BoundLennardJones potential.
ModularCell
Superseded by the CellAgent derive macro.
MorsePotential
Famous Morse potential for diatomic molecules.
MorsePotentialF32
Famous Morse potential for diatomic molecules.
MultiVoxelContainer
Subdomain which consists of multiple Voxels
NewtonDamped1D
Newtonian dynamics governed by mass and damping.
NewtonDamped1DF32
Newtonian dynamics governed by mass and damping.
NewtonDamped2D
Newtonian dynamics governed by mass and damping.
NewtonDamped2DF32
Newtonian dynamics governed by mass and damping.
NewtonDamped3D
Newtonian dynamics governed by mass and damping.
NewtonDamped3DF32
Newtonian dynamics governed by mass and damping.
NextTimePoint
Represents the next time point which is returned by the TimeStepper::advance method.
NoCellularReactions
Do not model intracellular reactions at all.
NoCycle
No cycle of the cell.
NoExtracellularGradientSensing
Type which allows to simply not model gradients.
NoInteraction
No interaction of the cell with any other.
PlottingConfig
Contains settings for plotting results.
RequestError
Ask the wrong object for information and receive this error
RngError
Can occur when generating distributions or drawing samples from them.
RodInteraction
Automatically derives a Interaction suitable for rods from a point-wise interaction.
RodMechanics
A mechanical model for Bacterial Rods
RonStorageInterface
Save elements as ron files with ron.
SetupError
Occurs during setup of a new simulation
SimulationConfig
Contains non-volatile configurations such as display settings etc.
SimulationMetaParams
Store meta parameters for simulation
SimulationResult
Returned after finishing a full simulation
SimulationSetup
Complete Set of parameters controlling execution flow of simulation
SimulationSupervisor
Supervisor controlling simulation execution
SledStorageInterface
Use the [sled] database to save results to an embedded database.
StorageBuilder
Used to construct a StorageManager
StorageManager
This manager handles if multiple storage options have been specified It can load resources from one storage aspect and will
Strategies
Contains methods to modify voxels when initializing the simulation domain.
TimeError
Error related to advancing the simulation time or displaying its progress
TimeSetup
Contains information about the discretization of time and when to save results.
VertexDerivedInteraction
Derives an interaction potential from a point-like potential.
VertexMechanics2D
Mechanics model which represents cells as vertices with edges between them.
VoxelBox
Wrapper for a Voxel struct that includes more information and cells.

Enums§

CycleEvent
Contains all events which can arise during the cell cycle and need to be communciated to the simulation engine (see also Cycle).
DecomposeError
Error during decomposition of a SimulationDomain into multiple subdomains
ImageType
Image type used for saving results to a file.
SimulationError
Covers all errors that can occur in this Simulation
StorageError
Error related to storing and reading elements
StorageMode
The mode in which to generate paths and store results.
StorageOption
Define how to store results of the simulation.
TimeEvent
A TimeEvent describes that a certain action is to be executed after the next iteration step.

Traits§

Agent
Encapsulates all concepts that can be specified for a Agent
CreatePlottingRoot
Creates a new plotting root which can then be drawn upon.
Cycle
This trait represents all cycles of a cell and works in tandem with the CycleEvent enum.
Domain
Provides an abstraction of the physical total simulation domain.
DomainCreateSubDomains
Generate SubDomains from an existing Domain
DomainRngSeed
Manage the current rng seed of a Domain
FileBasedStorage
Abstraction and simplification of many file-based storage solutions
ForceBound
Represents a force which can act between two cells.
Id
Specifies how to retrieve a unique identifier of an object.
Interaction
Trait describing force-interactions between cellular agents.
InteractionInformation
Trait implementations needed for the information generic parameter of Interaction.
Intracellular
Setter and Getter for intracellular values of a cellagent.
Mechanics
Describes the position of a cell-agent and allows to calculate increments and set/get information of the agent.
PlotSelf
Allows elements of the simulation such as cells and voxels to draw themselves onto a plotting root. Typically, voxels will draw first and cells afterwards.
Position
Methods for accessing the position of an agent.
PositionBound
Represents the current position of a cell-agent.
Reactions
Describes purely intracellular reactions of a cellagent.
ReactionsContact
Reactions between cells which are in direct contact
ReactionsExtra
This trait models extracellular reactions which interact with agents.
SortCells
Assign an VoxelIndex to a given cell.
StorageInterface
Provide methods to initialize, store and load single and multiple elements at iterations.
StorageInterfaceLoad
Handles loading of elements
StorageInterfaceOpen
Open or create a new instance of the Storage controller.
StorageInterfaceStore
Handles storing of elements
SubDomain
Subdomains are produced by decomposing a Domain into multiple physical regions.
SubDomainForce
Apply a force on a cell depending on its position and velocity.
SubDomainMechanics
Apply boundary conditions to a cells position and velocity.
SubDomainReactions
Describes extracellular reactions and fluid dynamics
TimeStepper
Increments time of the simulation
Velocity
Methods for accessing the velocity of an agent
VelocityBound
Represents the velocity of a cell.
Xapy
Mathematical abstraction similar to the well-known axpy method.

Functions§

calculate_morse_interaction
Calculates the interaction strength behind the MorsePotential and MorsePotentialF32 structs.
nearest_point_from_point_to_line
Calculate the point on a line which is closest to an external given point.
nearest_point_from_point_to_multiple_lines
Generalizes the nearest_point_from_point_to_line function for a collection of line segments.
ray_intersects_line_segment
Implements the ray-casting algorithm to check if a ray intersects with a given line segment.
wiener_process
Generate a vector corresponding to a wiener process.

Type Aliases§

CellularIdentifier
This is a unique identifier which is deterministic even in multi-threading situations. Its components are
Nothing
Type alias used when not wanting to simulate any cellular reactions for example.
PlainIndex
This is a purely implementational detail and should not be of any concern to the end user.

Derive Macros§

CellAgent
Derive cellular concepts
Domain
SubDomain