GCBM
peatlandaftercbmmodule.h
Go to the documentation of this file.
1 #ifndef MOJA_MODULES_CBM_PEATLAND_AFTERCBM_H_
2 #define MOJA_MODULES_CBM_PEATLAND_AFTERCBM_H_
3 
4 #include "moja/modules/cbm/_modules.cbm_exports.h"
6 
7 namespace moja {
8 namespace modules {
9 namespace cbm {
10 
11  /*
12  After CBM simulation on a landunit, prepare the landunit to simulate
13  peatland simulation.
14  (1) transfer carbon from some of CBM pools to peatland pools
15  (2) should be called after finishing regular CBM simulation.
16  */
17 
18  class CBM_API PeatlandAfterCBMModule : public CBMModuleBase {
19  public:
21  virtual ~PeatlandAfterCBMModule() {};
22 
23  void configure(const DynamicObject& config) override;
24  void subscribe(NotificationCenter& notificationCenter) override;
25 
26  void doLocalDomainInit() override;
27  void doTimingStep() override;
28 
29  private:
30  const flint::IPool* _acrotelm_o;
31  const flint::IPool* _catotelm_a;
32  const flint::IPool* _atmosphere;
33 
34  const flint::IPool* _softwoodFoliage;
35  const flint::IPool* _hardwoodFoliage;
36 
37  const flint::IPool* _softwoodOther;
38  const flint::IPool* _hardwoodOther;
39 
40  const flint::IPool* _softwoodFineRoots;
41  const flint::IPool* _hardwoodFineRoots;
42 
43  const flint::IPool* _woodyFoliageDead;
44  const flint::IPool* _woodyStemsBranchesDead;
45  const flint::IPool* _woodyRootsDead;
46 
47  /*
48  For forested peatland, transfer som of the cbm pool values to peatland pool.
49  */
50  void transferCBMPoolToPeatland();
51  };
52 }}}
53 #endif
moja::modules::cbm::PeatlandAfterCBMModule::_woodyStemsBranchesDead
const flint::IPool * _woodyStemsBranchesDead
Definition: peatlandaftercbmmodule.h:44
moja::modules::cbm::PeatlandAfterCBMModule::_atmosphere
const flint::IPool * _atmosphere
Definition: peatlandaftercbmmodule.h:32
moja::modules::cbm::PeatlandAfterCBMModule::_softwoodOther
const flint::IPool * _softwoodOther
Definition: peatlandaftercbmmodule.h:37
moja::modules::cbm
Definition: ageclasshelper.cpp:12
moja::modules::cbm::PeatlandAfterCBMModule
Definition: peatlandaftercbmmodule.h:18
moja::modules::cbm::CBMModuleBase
Definition: cbmmodulebase.h:22
moja::modules::cbm::PeatlandAfterCBMModule::_catotelm_a
const flint::IPool * _catotelm_a
Definition: peatlandaftercbmmodule.h:31
moja::modules::cbm::PeatlandAfterCBMModule::_hardwoodFoliage
const flint::IPool * _hardwoodFoliage
Definition: peatlandaftercbmmodule.h:35
moja::modules::cbm::PeatlandAfterCBMModule::PeatlandAfterCBMModule
PeatlandAfterCBMModule()
Definition: peatlandaftercbmmodule.h:20
moja::modules::cbm::PeatlandAfterCBMModule::_hardwoodFineRoots
const flint::IPool * _hardwoodFineRoots
Definition: peatlandaftercbmmodule.h:41
moja::modules::cbm::PeatlandAfterCBMModule::_softwoodFineRoots
const flint::IPool * _softwoodFineRoots
Definition: peatlandaftercbmmodule.h:40
moja::modules::cbm::PeatlandAfterCBMModule::_woodyRootsDead
const flint::IPool * _woodyRootsDead
Definition: peatlandaftercbmmodule.h:45
moja::modules::cbm::PeatlandAfterCBMModule::_woodyFoliageDead
const flint::IPool * _woodyFoliageDead
Definition: peatlandaftercbmmodule.h:43
moja::modules::cbm::PeatlandAfterCBMModule::~PeatlandAfterCBMModule
virtual ~PeatlandAfterCBMModule()
Definition: peatlandaftercbmmodule.h:21
moja::modules::cbm::PeatlandAfterCBMModule::_hardwoodOther
const flint::IPool * _hardwoodOther
Definition: peatlandaftercbmmodule.h:38
moja::modules::cbm::PeatlandAfterCBMModule::_acrotelm_o
const flint::IPool * _acrotelm_o
Definition: peatlandaftercbmmodule.h:30
moja
Definition: ageclasshelper.cpp:10
cbmmodulebase.h
moja::modules::cbm::PeatlandAfterCBMModule::_softwoodFoliage
const flint::IPool * _softwoodFoliage
Definition: peatlandaftercbmmodule.h:34