Module cellular_raza::prelude
source · Expand description
Re-exports the default simulation types and traits.
Modules§
- Numerically solve a given simulation setup.
- Contains deprecated cartesian cuboid implementations for an older vertex model
- Contains deprecated cartesian cuboid implementations
- Traits and types which will eventually replace the old Domain definition.
- Objects and definitions surrounding the bacterial pool model
- Contains traits and types which specify cellular reactions specific to the [cpu_os_threads] backend.
- Interface and methods to store and load simulation aspects.
- Controls how the simulation time is advanced
Macros§
- Inserts as many blanks as generics were used to create the communicator struct by build_communicator!.
- Prepares communicator and auxiliary storage types with build_communicator! and build_aux_storage!.
- Construct, test and run a full simulation.
- Run a particularly structured test multiple times for combinations of aspects
- Checks if defined types and concepts are compatible before actually executing the simulation.
Structs§
- Stores intermediate information about the cell cycle.
- Helper storage for number of neighbors of Interaction trait.
- Stores intermediate information about the mechanics of a cell.
- Helper storage for values regarding intracellular concentrations for the CellularReactions trait.
- Implementor of the UpdateReactionsContact trait.
- 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.
- Define how batches of elements and identifiers are saved when being serialized.
- Lennard-Jones interaction potential with numerical upper and lower limit.
- Identical to BoundLennardJones but for
f32
type. - Can occur during boundary calculation
- Brownian motion of particles
- Brownian motion of particles
- Brownian motion of particles
- Brownian motion of particles
- Brownian motion of particles
- Brownian motion of particles
- General Calculation Error
- A generic Domain with a cuboid layout.
- Cartesian cuboid in
1D
with float typef64
- Cartesian cuboid in
1D
with float typef32
- Cartesian cuboid in
2D
with float typef64
- Cartesian cuboid in
2D
with float typef32
- Cartesian cuboid in
3D
with float typef64
- Cartesian cuboid in
3D
with float typef32
- Subdomain corresponding to the CartesianCuboid struct.
- Subdomain of CartesianCuboid1New
- Subdomain of CartesianCuboid1NewF32
- Subdomain of CartesianCuboid2New
- Subdomain of CartesianCuboid2NewF32
- Subdomain of CartesianCuboid3New
- Subdomain of CartesianCuboid3NewF32
- Voxel of the CartesianSubDomain1
- Voxel of the CartesianSubDomain1F32
- Voxel of the CartesianSubDomain2
- Voxel of the CartesianSubDomain2F32
- Voxel of the CartesianSubDomain3
- Voxel of the CartesianSubDomain3F32
- 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.
- Wrapper around the user-defined CellAgent
- Unique identifier which is given to every cell in the simulation
- Sender-Receiver Communicator based on [crossbeam_channel].
- Define how elements and identifiers are saved when being serialized together.
- Error which occurs during sending, receiving or transmitting information between threads
- Occurs when incorrectly applying a controller effect
- Errors occurring during the final death step of a cell
- Generated by the decompose method. The backend will know how to deal with this type and crate a working simulation from it.
- TODO
- Errors related to a cell dividing process
- Used to catch errors related to plotting
- Time stepping with a fixed time length
- Return type to the requested PosInformation.
- Can occur internally when information is not present at expected place
- Save elements as json files with serde_json.
- Langevin dynamics
- Langevin dynamics
- Langevin dynamics
- Langevin dynamics
- Langevin dynamics
- Langevin dynamics
- Use the [sled] database to save results to an embedded database.
- Generalizeation of the BoundLennardJones potential for arbitrary floating point types.
- Superseded by the CellAgent derive macro.
- Famous Morse potential for diatomic molecules.
- Famous Morse potential for diatomic molecules.
- Newtonian dynamics governed by mass and damping.
- Newtonian dynamics governed by mass and damping.
- Newtonian dynamics governed by mass and damping.
- Newtonian dynamics governed by mass and damping.
- Newtonian dynamics governed by mass and damping.
- Newtonian dynamics governed by mass and damping.
- Represents the next time point which is returned by the TimeStepper::advance method.
- Do not model intracellular reactions at all.
- No cycle of the cell.
- Type which allows to simply not model gradients.
- No interaction of the cell with any other.
- Send about the position of cells between threads.
- This information will be sent from one cell to another to determine their combined reactions.
- This informatino is returned after receiving ReactionsContactInformation and delivers the increment.
- Carries information about the border given by the ReactionsExtra trait between subdomains.
- Return information of border value after having obtained the [ReactionsExtra::BorderInfo]
- Ask the wrong object for information and receive this error
- A ring Buffer with constant size. Makes use of a fixed-size array internally.
- Iterator of the RingBuffer struct.
- Produced by the iter method of the RingBuffer.
- Can occur when generating distributions or drawing samples from them.
- Save elements as ron files with ron.
- Send cell and its AuxStorage between threads.
- Specify settings surrounding execution and storage
- Occurs during setup of a new simulation
- Intermediate object which gets consumed once the simulation is run
- Struct containing all necessary information to construct a fully working simulation and run it.
- Use the [sled] database to save results to an embedded database.
- Gathers the StorageManager for cells and voxels of the previously run simulation
- Used to construct a StorageManager
- This manager handles if multiple storage options have been specified It can load resources from one storage aspect and will
- Encapsulates a subdomain with cells and other simulation aspects.
- Identifier or subdomains
- Error related to advancing the simulation time or displaying its progress
- Undirected graph
- A unique vector containing only non-recurring values but in the correct order.
- Derives an interaction potential from a point-like potential.
- Mechanics model which represents cells as vertices with edges between them.
- Stores information related to a voxel of the physical simulation domain.
- Identifier for voxels used internally to get rid of user-defined ones.
- Save elements as xml files with [quick_xml].
Enums§
- Contains all events which can arise during the cell cycle and need to be communciated to the simulation engine (see also Cycle).
- Error during decomposition of a SimulationDomain into multiple subdomains
- Contains handling strategies for errors which can arise during the simulation process.
- 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.
- Error related to storing and reading elements
- The mode in which to generate paths and store results.
- Define how to store results of the simulation.
- A TimeEvent describes that a certain action is to be executed after the next iteration step.
Traits§
- Construct a BTreeMap of the type from a graph
- Handles communications between different simulation processes.
- Creates a new plotting root which can then be drawn upon.
- This trait represents all cycles of a cell and works in tandem with the CycleEvent enum.
- Provides an abstraction of the physical total simulation domain.
- Generate SubDomains from an existing Domain
- Manage the current rng seed of a Domain
- Handle any error which may occur as specified by SimulationError
- Abstraction and simplification of many file-based storage solutions
- Constructs a collection of Items from a map (graph)
- Specifies how to retrieve a unique identifier of an object.
- Trait describing force-interactions between cellular agents.
- Setter and Getter for intracellular values of a cellagent.
- Describes the position of a cell-agent and allows to calculate increments and set/get information of the agent.
- 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.
- Methods for accessing the position of an agent.
- Describes purely intracellular reactions of a cellagent.
- TODO add description
- TODO add description
- Assign an VoxelIndex to a given cell.
- Provide methods to initialize, store and load single and multiple elements at iterations.
- Handles loading of elements
- Open or create a new instance of the Storage controller.
- Handles storing of elements
- Subdomains are produced by decomposing a Domain into multiple physical regions.
- Apply a force on a cell depending on its position and velocity.
- Apply boundary conditions to a cells position and velocity.
- Describes extracellular reactions and fluid dynamics
- Responsible for syncing the simulation between different threads.
- Increments time of the simulation
- Trait which describes how to store intermediate information on the cell cycle.
- Interface to store intermediate information about interactions.
- Used to store intermediate information about last positions and velocities. Can store up to
N
values. - Interface to store intermediate information about cellular reactions.
- Used to update properties of the cell related to the [ReactionsContact] trait.
- Methods for accessing the velocity of an agent
- Mathematical abstraction similar to the well-known
axpy
method.
Functions§
- Calculates the interaction strength behind the MorsePotential and MorsePotentialF32 structs.
- Construct a new SimulationRunner from a given auxiliary storage and communicator object
- Advances the cycle of a cell by a small time increment
dt
. - TODO
- 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.
- TODO
- Ensures that intracellular increments have been cleared before the next update step.
- Performs the increment operation.
- Updates the cells intracellular values from the obtained contact informations
- Two-step Adams-Bashforth method.
- Three-step Adams-Bashforth method.
- Classical euler solver for the Mechanics trait.
- Calculate the point on a line which is closest to an external given point.
- Generalizes the nearest_point_from_point_to_line function for a collection of line segments.
- Implements the ray-casting algorithm to check if a ray intersects with a given line segment.
- TODO IMPORTANT This function sets the intracellular concentration but this is wrong. Find out how to properly combine this with the new use_increment function.
- TODO
- Validates a given map.
- Generate a vector corresponding to a wiener process.
Type Aliases§
- This is a unique identifier which is deterministic even in multi-threading situations. Its components are
- Type alias used when not wanting to simulate any cellular reactions for example.
Derive Macros§
- Derive cellular concepts