#include <cbmdisturbanceeventmodule.h>
◆ CBMDisturbanceEventModule()
◆ ~CBMDisturbanceEventModule()
◆ doDisturbanceEvent()
| void doDisturbanceEvent |
( |
DynamicVar |
n | ) |
|
|
overridevirtual |
Get the disturbances and disturbance type codes from parameter n,
Invoke createProportionalOperation() on _landUnitData,
for each disturbance, add a transfer between the source and destination pools
Invoke submitOperation() and applyOperations() on _landUnitData
If the total biomass is < 0.001, set CBMDisturbanceEventModule._age to 0,
if the variable "enable_peatland" is present in _landUnitData and is not null, if the total woody biomass is < 0.001, CBMDisturbanceEventModule._shrubAge is set to 0
If the value of peatlandId in variable "peatland_class" of _landUnitData is either Peatlands::TREED_PEATLAND_BOG, Peatlands::TREED_PEATLAND_POORFEN, Peatlands::TREED_PEATLAND_RICHFEN or Peatlands::TREED_PEATLAND_SWAMP,
indicating a treed peatland, and totalSmallTreeBiomass is < 0.001 set CBMDisturbanceEventModule._smalltreeAge to 0
- Parameters
-
- Returns
- void
Reimplemented from CBMModuleBase.
◆ doLocalDomainInit()
| void doLocalDomainInit |
( |
| ) |
|
|
overridevirtual |
Initialise pools CBMDisturbanceEventModule._softwoodMerch, CBMDisturbanceEventModule._softwoodFoliage,CBMDisturbanceEventModule._softwoodOther,
CBMDisturbanceEventModule._softwoodCoarseRoots, CBMDisturbanceEventModule._softwoodFineRoots, CBMDisturbanceEventModule._hardwoodMerch, CBMDisturbanceEventModule._hardwoodFoliage, CBMDisturbanceEventModule._hardwoodOther, CBMDisturbanceEventModule._hardwoodCoarseRoots, CBMDisturbanceEventModule._hardwoodFineRoots. and variable "age" from _landUnitData
If _landUnitData has variable "enable_peatland" and is not null,
initialise pools CBMDisturbanceEventModule._woodyFoliageLive, CBMDisturbanceEventModule._woodyStemsBranchesLive, CBMDisturbanceEventModule._woodyRootsLive,
CBMDisturbanceEventModule._softwoodStem, CBMDisturbanceEventModule._hardwoodStem and variables CBMDisturbanceEventModule._shrubAge, CBMDisturbanceEventModule._smalltreeAge from _landUnitData
- Returns
- void
Reimplemented from CBMModuleBase.
◆ moduleType()
| flint::ModuleTypes moduleType |
( |
| ) |
|
◆ subscribe()
| void subscribe |
( |
NotificationCenter & |
notificationCenter | ) |
|
|
override |
Subscribe to the signals localDomainInit, Disturbance event, and TimingStep
- Parameters
-
| notificationcenter | NotificationCenter& |
- Returns
- void
◆ _age
◆ _hardwoodCoarseRoots
| const flint::IPool* _hardwoodCoarseRoots |
|
private |
◆ _hardwoodFineRoots
| const flint::IPool* _hardwoodFineRoots |
|
private |
◆ _hardwoodFoliage
| const flint::IPool* _hardwoodFoliage |
|
private |
◆ _hardwoodMerch
| const flint::IPool* _hardwoodMerch |
|
private |
◆ _hardwoodOther
| const flint::IPool* _hardwoodOther |
|
private |
◆ _hardwoodStem
| const flint::IPool* _hardwoodStem |
|
private |
◆ _shrubAge
| flint::IVariable* _shrubAge |
|
private |
◆ _smalltreeAge
| flint::IVariable* _smalltreeAge |
|
private |
◆ _softwoodCoarseRoots
| const flint::IPool* _softwoodCoarseRoots |
|
private |
◆ _softwoodFineRoots
| const flint::IPool* _softwoodFineRoots |
|
private |
◆ _softwoodFoliage
| const flint::IPool* _softwoodFoliage |
|
private |
◆ _softwoodMerch
| const flint::IPool* _softwoodMerch |
|
private |
◆ _softwoodOther
| const flint::IPool* _softwoodOther |
|
private |
◆ _softwoodStem
| const flint::IPool* _softwoodStem |
|
private |
◆ _woodyFoliageLive
| const flint::IPool* _woodyFoliageLive |
|
private |
◆ _woodyRootsLive
| const flint::IPool* _woodyRootsLive |
|
private |
◆ _woodyStemsBranchesLive
| const flint::IPool* _woodyStemsBranchesLive |
|
private |
The documentation for this class was generated from the following files: