m = pwAddC(m, *ID, *size, outside, spatialDim, name, unit, constant,
designerProps, classname, description)
m = pwAddC(m, interactive)
Adds a compartment to the model, defined essentially by its ID and
the size which can be a number or the name of a parameter.
Arguments for pwAddC
m struct A model struct
ID ID Compartment ID
size float/string Size of the compartment
outside ID ID of the embracing compartment
spatialDim integer Dimension of the compartment
constant integer constant size of compartment (1 yes, 0 no)
designerProps array [x y z w h r g b isVisible]
classname string E.g. 'cytoplasm' or 'nucleus'
Alternative function call for interactive specification:
interactive bool If true, the user is prompted to enter the properties
into a user interface.
Chemical reactions depend on the concentration of their reactants and products.
If a molecule enters a different compartment, e.g. the nuclues, the concentration
decrease in the cytoplasm may differ from the concentration increase in the
nucleus. Hence, handling the compartment volume is a crucial aspect for the
modeling of chemical reaction networks.
PottersWheel treats all x variables as concentrations!
Therefore, all plotted x trajectories are concentrations,
even if the start value for a variable was given as an amount.
If a system has two or more compartments, a reaction A -> B
with rate constant k, A being in compartment c1 and B in c2
leads to the following flux and change for the concentrations A and B:
v = (k * A) * c1 % flux (amount)
dA/dt = - v /c1 % concentration change
dB/dt = v /c2
Please open the dynamically generated ODE C file to see how PottersWheel
processed the reactions of your system.
Instead of a numeric value for the compartment size a parameter name
can be specified. This is useful if the compartment size should
Currently, only the ID and size information are processed within
PottersWheel. However, the other arguments are exported to SBML files.