LandscapeDNDC 1.37.0
Loading...
Searching...
No Matches
airchemistry-dndc.h
1
8
9#ifndef LM_AIRCHEMISTRYDNDC_H_
10#define LM_AIRCHEMISTRYDNDC_H_
11
12#include "mbe_legacymodel.h"
13#include "state/mbe_state.h"
14#include "ld_shared.h"
15#include "ld_isotopes.h"
16
17namespace ldndc {
18
19class LDNDC_API AirchemistryDNDC : public MBE_LegacyModel
20{
21 LMOD_EXPORT_MODULE_INFO(AirchemistryDNDC,"airchemistry:airchemistrydndc", "Airchemistry AirchemistryDNDC");
22 public:
23 AirchemistryDNDC(
24 MoBiLE_State *,
25 cbm::io_kcomm_t *,
26 timemode_e);
27
28 ~AirchemistryDNDC();
29
30 lerr_t configure( ldndc::config_file_t const *) { return LDNDC_ERR_OK; }
31
32 lerr_t register_ports( cbm::io_kcomm_t *);
33 lerr_t unregister_ports( cbm::io_kcomm_t *);
34
35 lerr_t initialize();
36 lerr_t receive_state();
37 lerr_t solve();
38 lerr_t send_state();
39 lerr_t finalize() { return LDNDC_ERR_OK; }
40
41 lerr_t sleep() { return LDNDC_ERR_OK; }
42 lerr_t wake() { return LDNDC_ERR_OK; }
43
44 private:
45 input_class_setup_t const & m_setup;
46 input_class_climate_t const & cl_;
47
48 substate_airchemistry_t & ac_;
49 substate_soilchemistry_t & sc_;
50 substate_physiology_t & ph_;
51 substate_surfacebulk_t & sb_;
52 substate_watercycle_t & wc_;
53
54 MoBiLE_PlantVegetation * m_veg;
55
56 private:
57
58 double get_precipitation() const;
59
60 double accumulated_throughfall;
61
62 Isotopes isotope;
63};
64
65}
66
67#endif /* !LM_AIRCHEMISTRYDNDC_H_ */
68
Spatially explicit groundwater model.
Definition airchemistryput.h:15