Primary Production
Primary producer abundance is modeled as an aggregated biomass pool in each spatial box. The model tracks abundance (mg N/m3) per box. Biomass growth is limited by nutrient, light and space availability. Biomass is lost to predation, lysis, and linear and quadratic mortality. Linear mortality represents additional density-independent mortality not explicitly modeled. Quadratic mortality represents density dependent mortality (for instance, self shading).
Rate of change for standard water column (w) primary producer (PX) is

where

Where 
stands for the growth of PX,

is the loss of PX due to lysis, 
and 
are loss due to linear and quadratic mortality, 
are the losses of PX due to predation, 
is the maximum growth rate, 
is light limitation , 
is nutrient limitation. 
is the maximum growth rate. This is the InvertebrateGrowthRate value in the biology input file for primary producer PX corrected for the current temperature.
is the linear mortality 
is the quadratic mortality
where:
Lysis
is the loss of a primary producer to lysis

where
is the Mortality/FLAG_LYSIS_RATE input parameter for primary producer PX.
Light Limitation
The light limitation equation is dictated by the flaglight input parameter in the biology input file.
If the flaglight input parameter is set to false (0) then
Light limitation

If flaglight is set to true (1) then
Light limitation

where
is the primary producer PX light limitation input variable FLAG_KI_T15 corrected by Tcorr.
Nutrient Limitation
TODO - Not sure if all of these option are now used.
is nutrient limitation - If the flagmicro input parameter is set to false (0) then

where DIN = NH + NO except of those primary producers which are also limited by the availability of Si then nutrient limitation is specified by the flagnut input parameter.
If flagnut == 0 (Leibig)

if flagnut == 1 (multiplicative)

if flagnut == 2 (WQI)
- If the flagmicro input parameter is set to true (1) then the nutrient limitation is also dependent on micronutrients
If primary producer PX is not limited by the availability of Si then the nutrient limitation equation used is dependent on the input parameter flagnut.
If flagnut == 0 (Leibig)

if flagnut == 1 (multiplicative)

if flagnut == 2 (WQI)

If the primary producer is limited by the availability of Si then the equations also include a Si component and are again dependant on the value of the flagnut input parameter:
If flagnut == 0 (Leibig)

if flagnut == 1 (multiplicative)

if flagnut == 2 (WQI)


is space limitation

is the DIN half saturation constant (FLAG_DIN_HALF_SAT) input variable for primary producer PX.
is the Si half saturation constant (FLAG_SI_HALF_SAT) input variable for primary producer PX.
Nutrient Uptake


where
is the half saturation constant for the uptake of NH.