Expand description
§cellular_raza - Building Blocks
Building blocks allow users to quickly construct complex cellular agents. The simplest approach is to use fully-defined cell models. However, users can also build their own complex models by combining existing ones.
To create your own agent with physical mechanics and interactions, we need to include the building blocks for them as fields of our agent struct.
struct MyAgent {
mechanics: NewtonDamped2D,
interaction: BoundLennardJones,
}Furthermore, we can derive desired concepts by using the CellAgent derive macro.
#[derive(CellAgent)]
struct MyAgent {
#[Mechanics]
mechanics: NewtonDamped2D,
#[Interaction]
interaction: BoundLennardJones,
}For technical reasons, we are required to also once more specify the types for position,
velocity and force when specifying which struct field to derive from.
The optional Inf generic parameter of the Interaction trait was left out and thus defaults to ().
It can and needs to also be specified when choosing interactions with non-trivial
interaction information.
§Optional Features
Features guard implementations which introduce additional dependencies. To simplify usability, we enable commonly used features by default.
- pyo3 Rust bindings to the Python interpreter
Modules§
- cartesian_
cuboid_ n_ old plotters - Contains deprecated cartesian cuboid implementations
- pool_
bacteria pyo3 - Objects and definitions surrounding the bacterial pool model
Structs§
- Bound
Lennard Jones - Lennard-Jones interaction potential with numerical upper and lower limit.
- Bound
Lennard Jones F32 - Identical to BoundLennardJones but for
f32type. - 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
- Cartesian
Cuboid - A generic Domain with a cuboid layout.
- Cartesian
Cuboid Rods - Cells are represented by rods
- Cartesian
Diffusion2D - Domain based on CartesianCuboid in 2 dimensions with extracellular diffusion.
- Cartesian
Diffusion2D SubDomain - Subdomain for the CartesianDiffusion2D domain.
- Cartesian
SubDomain - Subdomain corresponding to the CartesianCuboid struct.
- Cartesian
SubDomain Rods - The corresponding SubDomain of the CartesianCuboidRods domain.
- Langevin1D
- Langevin dynamics
- Langevin1D
F32 - Langevin dynamics
- Langevin2D
- Langevin dynamics
- Langevin2D
F32 - Langevin dynamics
- Langevin3D
- Langevin dynamics
- Langevin3D
F32 - Langevin dynamics
- 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.
- 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.
- RodInteraction
- Automatically derives a Interaction suitable for rods from a point-wise interaction.
- RodMechanics
- A mechanical model for Bacterial Rods
- 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.
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§
- Nothing
- Type alias used when not wanting to simulate any cellular reactions for example.