Expand description
Re-exports the default simulation types and traits.
Modules§
- backend
- Numerically solve a given simulation setup.
- cara
cara
- See cellular_raza_core::backend::cara
- cartesian_
cuboid_ 2_ vertex_ old - Contains deprecated cartesian cuboid implementations for an older vertex model
- cartesian_
cuboid_ n_ old - Contains deprecated cartesian cuboid implementations
- cpu_
os_ threads cpu_os_threads
- See cellular_raza_core::backend::cpu_os_threads
- domain_
old - Traits and types which will eventually replace the old Domain definition.
- elli
elli
- See cellular_raza_core::backend::elli
- 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.
Macros§
- aux_
storage_ constructor chili
- build_
aux_ storage chili
- build_
communicator chili
- communicator_
generics_ placeholders chili
- Inserts as many blanks as generics were used to create the communicator struct by build_communicator!.
- prepare_
types chili
- Prepares communicator and auxiliary storage types with build_communicator! and build_aux_storage!.
- run_
main chili
- run_
simulation chili
- run_
test_ for_ aspects chili
- Run a particularly structured test multiple times for combinations of aspects
- test_
compatibility chili
- Checks if defined types and concepts are compatible before actually executing the simulation.
Structs§
- AuxStorage
Cycle chili
- Stores intermediate information about the cell cycle.
- AuxStorage
Interaction chili
- Helper storage for number of neighbors of Interaction trait.
- AuxStorage
Mechanics chili
- Stores intermediate information about the mechanics of a cell.
- AuxStorage
Reactions chili
- Helper storage for values regarding intracellular concentrations for the Reactions trait.
- AuxStorage
Reactions Contact chili
- Implementor of the UpdateReactionsContact trait.
- Barrier
Sync chili
- This very simple implementation uses the [hurdles::Barrier] struct which should in theory perform faster than the std::sync::Barrier struct from the standard library.
- Batch
Save Format - Define how batches of elements and identifiers are saved when being serialized.
- Bound
Lennard Jones - Lennard-Jones interaction potential with numerical upper and lower limit.
- Bound
Lennard Jones F32 - Identical to BoundLennardJones but for
f32
type. - Boundary
Error - Can occur during boundary calculation
- Brownian1D
- Brownian motion of particles
- Brownian1D
F32 - Brownian motion of particles
- Brownian2D
- Brownian motion of particles
- Brownian2D
F32 - Brownian motion of particles
- Brownian3D
- Brownian motion of particles
- Brownian3D
F32 - Brownian motion of particles
- Calc
Error - General Calculation Error
- Cartesian
Cuboid - A generic Domain with a cuboid layout.
- Cartesian
Cuboid1 New - Cartesian cuboid in
1D
with float typef64
- Cartesian
Cuboid1 NewF32 - Cartesian cuboid in
1D
with float typef32
- Cartesian
Cuboid2 New - Cartesian cuboid in
2D
with float typef64
- Cartesian
Cuboid2 NewF32 - Cartesian cuboid in
2D
with float typef32
- Cartesian
Cuboid3 New - Cartesian cuboid in
3D
with float typef64
- Cartesian
Cuboid3 NewF32 - Cartesian cuboid in
3D
with float typef32
- Cartesian
Cuboid Rods - Cells are represented by rods
- Cartesian
SubDomain - Subdomain corresponding to the CartesianCuboid struct.
- Cartesian
SubDomain1 - Subdomain of CartesianCuboid1New
- Cartesian
SubDomain2 - Subdomain of CartesianCuboid2New
- Cartesian
SubDomain3 - Subdomain of CartesianCuboid3New
- Cartesian
SubDomain1 F32 - Subdomain of CartesianCuboid1NewF32
- Cartesian
SubDomain2 F32 - Subdomain of CartesianCuboid2NewF32
- Cartesian
SubDomain3 F32 - Subdomain of CartesianCuboid3NewF32
- Cartesian
SubDomain Rods - The corresponding SubDomain of the CartesianCuboidRods domain.
- Cartesian
Voxel1 - Voxel of the CartesianSubDomain1
- Cartesian
Voxel2 - Voxel of the CartesianSubDomain2
- Cartesian
Voxel3 - Voxel of the CartesianSubDomain3
- Cartesian
Voxel1 F32 - Voxel of the CartesianSubDomain1F32
- Cartesian
Voxel2 F32 - Voxel of the CartesianSubDomain2F32
- Cartesian
Voxel3 F32 - Voxel of the CartesianSubDomain3F32
- Cell
Agent Box - 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.
- CellBox
chili
- Wrapper around the user-defined CellAgent
- Cell
Identifier chili
- Unique identifier which is given to every cell in the simulation
- Channel
Comm chili
- Sender-Receiver Communicator based on [crossbeam_channel].
- Combined
Save Format - Define how elements and identifiers are saved when being serialized together.
- Communication
Error - Error which occurs during sending, receiving or transmitting information between threads
- Controller
Error - Occurs when incorrectly applying a controller effect
- Death
Error - Errors occurring during the final death step of a cell
- Decomposed
Domain - Generated by the decompose method. The backend will know how to deal with this type and crate a working simulation from it.
- Default
Handler chili
- Handles any error which is encountered and caught (i.e. no panics) during runtime.
- Division
Error - Errors related to a cell dividing process
- Drawing
Error - Used to catch errors related to plotting
- Fixed
Stepsize - Time stepping with a fixed time length
- Force
Information chili
- Return type to the requested PosInformation.
- Index
Error - Can occur internally when information is not present at expected place
- Json
Storage Interface - Save elements as json files with serde_json.
- Langevin1D
- Langevin dynamics
- Langevin1D
F32 - Langevin dynamics
- Langevin2D
- Langevin dynamics
- Langevin2D
F32 - Langevin dynamics
- Langevin3D
- Langevin dynamics
- Langevin3D
F32 - Langevin dynamics
- Memory
Storage Interface - Use the [sled] database to save results to an embedded database.
- MiePotential
- Generalizeation of the BoundLennardJones potential.
- MiePotential
F32 - Generalizeation of the BoundLennardJones potential.
- Modular
Cell - Superseded by the CellAgent derive macro.
- Morse
Potential - Famous Morse potential for diatomic molecules.
- Morse
Potential F32 - Famous Morse potential for diatomic molecules.
- Newton
Damped1D - Newtonian dynamics governed by mass and damping.
- Newton
Damped1D F32 - Newtonian dynamics governed by mass and damping.
- Newton
Damped2D - Newtonian dynamics governed by mass and damping.
- Newton
Damped2D F32 - Newtonian dynamics governed by mass and damping.
- Newton
Damped3D - Newtonian dynamics governed by mass and damping.
- Newton
Damped3D F32 - Newtonian dynamics governed by mass and damping.
- Next
Time Point - Represents the next time point which is returned by the TimeStepper::advance method.
- NoCellular
Reactions - Do not model intracellular reactions at all.
- NoCycle
- No cycle of the cell.
- NoExtracellular
Gradient Sensing - Type which allows to simply not model gradients.
- NoInteraction
- No interaction of the cell with any other.
- PosInformation
chili
- Send about the position of cells between threads.
- Reactions
Contact Information chili
- This information will be sent from one cell to another to determine their combined reactions.
- Reactions
Contact Return chili
- This informatino is returned after receiving ReactionsContactInformation and delivers the increment.
- Reactions
Extra Border Info chili
- Carries information about the border given by the ReactionsExtra trait between subdomains.
- Reactions
Extra Border Return chili
- Return information of border value after having obtained the SubDomainReactions::BorderInfo
- Request
Error - Ask the wrong object for information and receive this error
- Ring
Buffer chili
- A ring Buffer with constant size. Makes use of a fixed-size array internally.
- Ring
Buffer Iter chili
- Iterator of the RingBuffer struct.
- Ring
Buffer Iter Ref chili
- Produced by the iter method of the RingBuffer.
- 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
- RonStorage
Interface - Save elements as ron files with ron.
- Send
Cell chili
- Send cell and its AuxStorage between threads.
- Settings
chili
- Specify settings surrounding execution and storage
- Setup
Error - Occurs during setup of a new simulation
- Simulation
Runner chili
- Intermediate object which gets consumed once the simulation is run
- Simulation
Setup chili
- Struct containing all necessary information to construct a fully working simulation and run it.
- Sled
Storage Interface - Use the [sled] database to save results to an embedded database.
- Storage
Access chili
- Gathers the StorageManager for cells and voxels of the previously run simulation
- Storage
Builder - Used to construct a StorageManager
- Storage
Manager - This manager handles if multiple storage options have been specified It can load resources from one storage aspect and will
- SubDomain
Box chili
- Encapsulates a subdomain with cells and other simulation aspects.
- SubDomain
Plain Index chili
- Identifier or subdomains
- Time
Error - Error related to advancing the simulation time or displaying its progress
- UDGraph
chili
- Undirected graph
- Vertex
Derived Interaction - Derives an interaction potential from a point-like potential.
- Vertex
Mechanics2D - Mechanics model which represents cells as vertices with edges between them.
- Voxel
chili
- Stores information related to a voxel of the physical simulation domain.
- Voxel
Plain Index chili
- Identifier for voxels used internally to get rid of user-defined ones.
Enums§
- Cycle
Event - Contains all events which can arise during the cell cycle and need to be communciated to the simulation engine (see also Cycle).
- Decompose
Error - Error during decomposition of a SimulationDomain into multiple subdomains
- Handling
Strategy chili
- Contains handling strategies for errors which can arise during the simulation process.
- Simulation
Error chili
- Covers all errors that can occur in this Simulation The errors are listed from very likely to be a user error from almost certainly an internal error.
- Storage
Error - Error related to storing and reading elements
- Storage
Mode - The mode in which to generate paths and store results.
- Storage
Option - Define how to store results of the simulation.
- Time
Event - A TimeEvent describes that a certain action is to be executed after the next iteration step.
Traits§
- Build
From Graph chili
- Construct a BTreeMap of the type from a graph
- Communicator
chili
- Handles communications between different simulation processes.
- Create
Plotting Root - 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.
- Default
From chili
- Used to construct initial (empty) AuxStorage variants.
- Domain
- Provides an abstraction of the physical total simulation domain.
- Domain
Create SubDomains - Generate SubDomains from an existing Domain
- Domain
RngSeed - Manage the current rng seed of a Domain
- Error
Handler chili
- Handle any error which may occur as specified by SimulationError
- File
Based Storage - Abstraction and simplification of many file-based storage solutions
- FromMap
chili
- Constructs a collection of Items from a map (graph)
- Id
- Specifies how to retrieve a unique identifier of an object.
- Interaction
- Trait describing force-interactions between cellular agents.
- 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.
- Plot
Self - 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.
- Reactions
- Describes purely intracellular reactions of a cellagent.
- Reactions
Contact - Reactions between cells which are in direct contact
- Reactions
Extra - This trait models extracellular reactions which interact with agents.
- Sort
Cells - Assign an VoxelIndex to a given cell.
- Storage
Interface - Provide methods to initialize, store and load single and multiple elements at iterations.
- Storage
Interface Load - Handles loading of elements
- Storage
Interface Open - Open or create a new instance of the Storage controller.
- Storage
Interface Store - Handles storing of elements
- SubDomain
- Subdomains are produced by decomposing a Domain into multiple physical regions.
- SubDomain
Force - Apply a force on a cell depending on its position and velocity.
- SubDomain
Mechanics - Apply boundary conditions to a cells position and velocity.
- SubDomain
Reactions - Describes extracellular reactions and fluid dynamics
- Sync
SubDomains chili
- Responsible for syncing the simulation between different threads.
- Time
Stepper - Increments time of the simulation
- Update
Cycle chili
- Trait which describes how to store intermediate information on the cell cycle.
- Update
Interaction chili
- Interface to store intermediate information about interactions.
- Update
Mechanics chili
- Used to store intermediate information about last positions and velocities.
Can store up to
N
values. - Update
Reactions chili
- Interface to store intermediate information about cellular reactions.
- Update
Reactions Contact chili
- Used to update properties of the cell related to the ReactionsContact trait.
- Velocity
- Methods for accessing the velocity of an agent
- Xapy
- Mathematical abstraction similar to the well-known
axpy
method.
Functions§
- calculate_
morse_ interaction - Calculates the interaction strength behind the MorsePotential and MorsePotentialF32 structs.
- construct_
simulation_ runner chili
- Construct a new SimulationRunner from a given auxiliary storage and communicator object
- local_
cycle_ update chili
- Advances the cycle of a cell by a small time increment
dt
. - local_
interaction_ react_ to_ neighbors chili
- Perform the Interaction::react_to_neighbors function and clear current neighbors.
- local_
mechanics_ update chili
- We assume that cells implement the Mechanics and Interaction traits. In this last step, all ForceInformation are gathered and used to update the cells positions and velocities.
- local_
reactions_ intracellular chili
- Calculates the increment from the Reactions trait.
- local_
reactions_ use_ increment chili
- Ensures that intracellular increments have been cleared before the next update step.
- local_
subdomain_ update_ reactions_ extra chili
- Performs the increment operation.
- local_
update_ contact_ reactions chili
- Updates the cells intracellular values from the obtained contact informations
- mechanics_
adams_ bashforth_ 2 chili
- Two-step Adams-Bashforth method.
- mechanics_
adams_ bashforth_ 3 chili
- Three-step Adams-Bashforth method.
- mechanics_
euler chili
- Classical euler solver for the Mechanics trait.
- 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.
- reactions_
contact_ adams_ bashforth_ 3rd chili
- Calculates the increment introduced by the ReactionsContact aspect.
- validate_
map chili
- Validates a given map.
- wiener_
process - Generate a vector corresponding to a wiener process.
Type Aliases§
- Cellular
Identifier - 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.
Derive Macros§
- AuxStorage
chili
- Cell
Agent - Derive cellular concepts
- Communicator
chili
- Domain
- FromMap
chili
- SubDomain