12#ifndef LDNDC_SUBSTATE_SOILCHEMISTRY_H_
13#define LDNDC_SUBSTATE_SOILCHEMISTRY_H_
16#include "state/mbe_substate.h"
17#include "substate/mbe_soilchemistry.h.inc"
20class LDNDC_API substate_soilchemistry_t :
public MoBiLE_Substate
23 static double const INCR;
28 LDNDC_soilchemistry_SUBSTATE_ITEMS
33 int create_checkpoint( substate_checkpoint_write_context_t *);
34 int restore_checkpoint( substate_checkpoint_read_context_t *);
36#ifdef _LDNDC_HAVE_ONLINECONTROL
39 lreply_t * , lrequest_t
const * );
43 lerr_t initialize_profile_(
45 lerr_t initialize_pools_(
55 lerr_t initialize_soil_carbon_(
60 double get_soil_mass(
size_t )
const;
62 double get_accumulated_c_net_flux()
const;
64 double get_bulk_density_without_stones(
size_t )
const;
66 double get_organic_carbon_content_without_stones(
size_t )
const;
69 std::map< std::string, double > n_subdivision;
76assign_soillayer_stone_fraction(
78 size_t const &_nd_stratum,
80 const ldndc::site::input_class_site_t *_site,
81 const ldndc::soillayers::input_class_soillayers_t *_soillayers,
82 const ldndc::soilparameters::input_class_soilparameters_t *_soilparameters,
86assign_soillayer_soil_texture(
90 size_t const &_nd_stratum,
92 const ldndc::site::input_class_site_t *_site,
93 const ldndc::soillayers::input_class_soillayers_t *_soillayers,
94 const ldndc::soilparameters::input_class_soilparameters_t *_soilparameters,
98assign_soillayer_bulk_density(
99 double &_bulk_density_with_stones,
100 size_t const &_nd_stratum,
101 double const &_depth,
102 double const &_stone_fraction,
103 double const &_c_org_without_stones,
104 const ldndc::site::input_class_site_t *_site,
105 const ldndc::soillayers::input_class_soillayers_t *_soillayers,
106 const ldndc::soilparameters::input_class_soilparameters_t *_soilparameters,
110assign_soillayer_organic_carbon_and_nitrogen_content(
112 double &_c_org_without_stones,
113 double &_n_org_without_stones,
114 size_t const &_nd_stratum,
117 const ldndc::site::input_class_site_t *_site,
118 const ldndc::soillayers::input_class_soillayers_t *_soillayers,
119 const ldndc::soilparameters::input_class_soilparameters_t *_soilparameters,
124 double &_porosity_with_stones,
125 size_t const &_nd_stratum,
126 double const &_depth,
127 double const &_stone_fraction,
128 double const &_c_org_without_stones,
129 double const &_bulk_density_without_stones,
130 const ldndc::site::input_class_site_t *_site,
131 const ldndc::soillayers::input_class_soillayers_t *_soillayers,
132 const ldndc::soilparameters::input_class_soilparameters_t *_soilparameters,
Spatially explicit groundwater model.
Definition: airchemistryput.h:15
lerr_t assign_soillayer_porosity(double &_porosity_with_stones, size_t const &_nd_stratum, double const &_depth, double const &_stone_fraction, double const &_c_org_without_stones, double const &_bulk_density_without_stones, const ldndc::site::input_class_site_t *_site, const ldndc::soillayers::input_class_soillayers_t *_soillayers, const ldndc::soilparameters::input_class_soilparameters_t *_soilparameters, bool _info=false)
Definition: mbe_soilchemistry.cpp:632
@ LSUB_FLAG_NONE
Definition: mbe_substate.h:77