14#include "ld_modelsconfig.h"
15#include "physiology/ld_plantfunctions.h"
16#include "physiology/ld_rootsystem.h"
18#include "state/mbe_state.h"
19#include "ld_eventqueue.h"
30 class LDNDC_API TreeDynamics
41 lerr_t register_ports( cbm::io_kcomm_t *);
42 lerr_t unregister_ports( cbm::io_kcomm_t *);
45 LD_PlantFunctions m_pf;
46 substate_soilchemistry_t & sc_;
47 substate_physiology_t & ph_;
48 MoBiLE_PlantVegetation * m_veg;
49 input_class_setup_t
const * m_se;
50 input_class_soillayers_t
const * m_sl;
53 Mortality( MoBiLE_Plant *,
55 double &_nLitWoodAbove,
56 double *_sWoodBelow_sl,
57 double *_nLitWoodBelow_sl);
60 Growth( MoBiLE_Plant *,
68 update_grass_coverage( MoBiLE_Plant * );
71 Crowding( MoBiLE_Plant *,
80 OnStructureChange( MoBiLE_Plant *,
81 RootSystemDNDC *_rs = NULL);
84 UpdateBiomass( MoBiLE_Plant *);
87 MassDistribution( MoBiLE_Plant *,
88 RootSystemDNDC *_rs = NULL);
91 LaiDistribution( MoBiLE_Plant *);
96 HandleDisturbanceEvents(
97 cbm::io_kcomm_t *_io_kcomm,
112 EventQueue DefoliateEvents;
113 CBM_Handle DefoliateHandle;
114 struct EventDefoliateData
116 double reduction_volume;
120 lerr_t HandleEventDefoliate(
121 MoBiLE_Plant*, EventDefoliateData
const *,
124 int HandleEventsDefoliate(
128 EventQueue RegrowEvents;
129 CBM_Handle RegrowHandle;
130 struct EventRegrowData
134 double tree_number_resize_factor;
137 lerr_t HandleEventRegrow(
138 MoBiLE_Plant*, EventRegrowData
const *,
148 int HandleEventsRegrow(
158 EventQueue ThrowEvents;
159 CBM_Handle ThrowHandle;
160 struct EventThrowData
162 double reduction_volume;
164 lerr_t HandleEventThrow(
165 cbm::io_kcomm_t *_io_kcomm, MoBiLE_Plant*, EventThrowData
const *,
176 int HandleEventsThrow(
177 cbm::io_kcomm_t *_io_kcomm,
189 EventQueue ThinEvents;
190 CBM_Handle ThinHandle;
193 double reduction_volume;
194 double reduction_number;
195 double export_foliage;
196 double export_branch_wood;
197 double export_root_wood;
198 double export_stem_wood;
200 lerr_t HandleEventThin(
201 cbm::io_kcomm_t *_io_kcomm,
202 MoBiLE_Plant*, EventThinData
const *,
215 int HandleEventsThin(
216 cbm::io_kcomm_t *_io_kcomm,
230 EventQueue HarvestEvents;
231 CBM_Handle HarvestHandle;
232 struct EventHarvestData
234 double export_branch_wood;
235 double export_root_wood;
236 double export_stem_wood;
238 lerr_t HandleEventHarvest(
239 cbm::io_kcomm_t *_io_kcomm,
240 MoBiLE_Plant*, EventHarvestData
const *,
250 int HandleEventsHarvest(
251 cbm::io_kcomm_t *_io_kcomm,
Spatially explicit groundwater model.
Definition: airchemistryput.h:15