|
Tissue Forge C++ 0.2.1
Interactive, particle-based physics, chemistry and biology modeling and simulation environment
|
A flux is defined between a pair of types, and acts on the state vector between a pair of instances. More...
#include <tfFlux.h>

Public Member Functions | |
| std::string | toString () |
| Get a JSON string representation. | |
Static Public Member Functions | |
| static Fluxes * | newFluxes (int32_t init_size) |
| static Fluxes * | create (FluxKind kind, ParticleType *a, ParticleType *b, const std::string &name, FPTYPE k, FPTYPE decay, FPTYPE target, FPTYPE cutoff=-FPTYPE_ONE) |
| static Fluxes * | addFlux (FluxKind kind, Fluxes *fluxes, int16_t typeId_a, int16_t typeId_b, int32_t index_a, int32_t index_b, FPTYPE k, FPTYPE decay, FPTYPE target, FPTYPE cutoff) |
| static Fluxes * | fluxFick (ParticleType *A, ParticleType *B, const std::string &name, const FPTYPE &k, const FPTYPE &decay=FPTYPE_ZERO, const FPTYPE &cutoff=-FPTYPE_ONE) |
| Creates and binds a Fickian diffusion flux. | |
| static Fluxes * | flux (ParticleType *A, ParticleType *B, const std::string &name, const FPTYPE &k, const FPTYPE &decay=FPTYPE_ZERO, const FPTYPE &cutoff=-FPTYPE_ONE) |
| Alias of fluxFick. | |
| static Fluxes * | secrete (ParticleType *A, ParticleType *B, const std::string &name, const FPTYPE &k, const FPTYPE &target, const FPTYPE &decay=FPTYPE_ZERO, const FPTYPE &cutoff=-FPTYPE_ONE) |
| Creates a secretion flux by active pumping. | |
| static Fluxes * | uptake (ParticleType *A, ParticleType *B, const std::string &name, const FPTYPE &k, const FPTYPE &target, const FPTYPE &decay=FPTYPE_ZERO, const FPTYPE &cutoff=-FPTYPE_ONE) |
| Creates an uptake flux by active pumping. | |
| static Fluxes * | fromString (const std::string &str) |
| Create from a JSON string representation. | |
Public Attributes | |
| int32_t | size |
| int32_t | fluxes_size |
| Flux | fluxes [] |
A flux is defined between a pair of types, and acts on the state vector between a pair of instances.
The indices of the species in each state vector are most likely different, so Tissue Forge tracks the indices in each type, and the transport constatants.
A flux between a pair of types, and pair of respective species needs:
(1) type A, (2) type B, (3) species id in A, (4) species id in B, (5) transport constant.
Allocates Flux as a single block, member pointers point to offsets in these blocks.
Allocated size is: sizeof(Fluxes) + 2 * alloc_size * sizeof(int32) + alloc_size * sizeof(FPTYPE)
|
static |
Alias of fluxFick.
| A | first type |
| B | second type |
| name | name of species |
| k | transport coefficient |
| decay | optional decay. Defaults to 0.0. |
| cutoff | optional cutoff distance. Defaults to global cutoff |
|
static |
Creates and binds a Fickian diffusion flux.
Fickian diffusion flux implements the analogous reaction:
![\[
a.S \leftrightarrow b.S ; k \left(1 - \frac{r}{r_{cutoff}} \right)\left(a.S - b.S\right) ,
\]](../../form_0.png)
![\[
a.S \rightarrow 0 ; \frac{d}{2} a.S ,
\]](../../form_1.png)
![\[
b.S \rightarrow 0 ; \frac{d}{2} b.S ,
\]](../../form_2.png)
where 






Automatically updates when running on a CUDA device.
| A | first type |
| B | second type |
| name | name of species |
| k | transport coefficient |
| decay | optional decay. Defaults to 0.0. |
| cutoff | optional cutoff distance. Defaults to global cutoff |
|
static |
Create from a JSON string representation.
| str |
|
static |
Creates a secretion flux by active pumping.
Secretion flux implements the analogous reaction:
![\[
a.S \rightarrow b.S ; k \left(1 - \frac{r}{r_{cutoff}} \right)\left(a.S - a.S_{target} \right) ,
\]](../../form_10.png)
![\[
a.S \rightarrow 0 ; \frac{d}{2} a.S ,
\]](../../form_11.png)
![\[
b.S \rightarrow 0 ; \frac{d}{2} b.S ,
\]](../../form_12.png)
where 






Automatically updates when running on a CUDA device.
| A | first type |
| B | second type |
| name | name of species |
| k | transport coefficient |
| target | target concentration |
| decay | optional decay. Defaults to 0.0 |
| cutoff | optional cutoff distance. Defaults to global cutoff |
| std::string TissueForge::Fluxes::toString | ( | ) |
Get a JSON string representation.
|
static |
Creates an uptake flux by active pumping.
Uptake flux implements the analogous reaction:
![\[
a.S \rightarrow b.S ; k \left(1 - \frac{r}{r_{cutoff}}\right)\left(b.S - b.S_{target} \right)\left(a.S\right) ,
\]](../../form_13.png)
![\[
a.S \rightarrow 0 ; \frac{d}{2} a.S ,
\]](../../form_11.png)
![\[
b.S \rightarrow 0 ; \frac{d}{2} b.S ,
\]](../../form_12.png)
where 






Automatically updates when running on a CUDA device.
| A | first type |
| B | second type |
| name | name of species |
| k | transport coefficient |
| target | target concentration |
| decay | optional decay. Defaults to 0.0 |
| cutoff | optional cutoff distance. Defaults to global cutoff |