Nodes of different colours represent the following:
Solid arrows point from a submodule to the (sub)module which it is
descended from. Dashed arrows point from a module or program unit to
modules which it uses.
Where possible, edges connecting nodes are
given different colours to make them easier to distinguish in
large graphs.
~ ~ ~ PURPOSE ~ ~ ~
this subroutine performs the tuber harvest operation
multiply root biomass by harvest efficiency
remove harvested root mass from existing root mass
update root fractions in each layer
allocate remaining dead roots, N, P to soil layers
apply pest stress to harvest index - mass lost due to pests - don't add to residue
adjust foliar and internal pesticide for tuber removal
BUG FIX: original code kept yld_rto fraction instead of (1-yld_rto)
tuber harvest is terminal for the current plant (plant mass is zeroed below)
route remaining pesticide before zeroing pools:
- pl_on always returns to soil surface
- pl_in returns to soil only for non-sink pesticides (tracked as kill_ret)
- for sink option, pl_in is terminally removed and tracked as harvest export
add above ground mass to residue pool
zero all plant components - assume tuber harvest kills plant
Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
Where possible, edges connecting nodes are
given different colours to make them easier to distinguish in
large graphs.