Subversion Repositories public iLand

Rev

Rev 1221 | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1221 Rev 1222
1
Redirecting to URL 'https://iland.boku.ac.at/svn/iland/tags/release_1.0/src/core/modelsettings.h':
1
Redirecting to URL 'https://iland.boku.ac.at/svn/iland/tags/release_1.0/src/core/modelsettings.h':
2
/********************************************************************************************
2
/********************************************************************************************
3
**    iLand - an individual based forest landscape and disturbance model
3
**    iLand - an individual based forest landscape and disturbance model
4
**    http://iland.boku.ac.at
4
**    http://iland.boku.ac.at
5
**    Copyright (C) 2009-  Werner Rammer, Rupert Seidl
5
**    Copyright (C) 2009-  Werner Rammer, Rupert Seidl
6
**
6
**
7
**    This program is free software: you can redistribute it and/or modify
7
**    This program is free software: you can redistribute it and/or modify
8
**    it under the terms of the GNU General Public License as published by
8
**    it under the terms of the GNU General Public License as published by
9
**    the Free Software Foundation, either version 3 of the License, or
9
**    the Free Software Foundation, either version 3 of the License, or
10
**    (at your option) any later version.
10
**    (at your option) any later version.
11
**
11
**
12
**    This program is distributed in the hope that it will be useful,
12
**    This program is distributed in the hope that it will be useful,
13
**    but WITHOUT ANY WARRANTY; without even the implied warranty of
13
**    but WITHOUT ANY WARRANTY; without even the implied warranty of
14
**    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14
**    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15
**    GNU General Public License for more details.
15
**    GNU General Public License for more details.
16
**
16
**
17
**    You should have received a copy of the GNU General Public License
17
**    You should have received a copy of the GNU General Public License
18
**    along with this program.  If not, see <http://www.gnu.org/licenses/>.
18
**    along with this program.  If not, see <http://www.gnu.org/licenses/>.
19
********************************************************************************************/
19
********************************************************************************************/
20
20
21
#ifndef MODELSETTINGS_H
21
#ifndef MODELSETTINGS_H
22
#define MODELSETTINGS_H
22
#define MODELSETTINGS_H
23
#include <QtCore>
23
#include <QtCore>
24
#include "expression.h"
24
#include "expression.h"
25
class ModelSettings
25
class ModelSettings
26
{
26
{
27
public:
27
public:
28
    ModelSettings();
28
    ModelSettings();
29
    void loadModelSettings();
29
    void loadModelSettings();
30
    void print();
30
    void print();
31
    // list of settings
31
    // list of settings
32
    // general on/off switches
32
    // general on/off switches
33
    bool growthEnabled; ///< if false, trees will apply/read light patterns, but do not grow
33
    bool growthEnabled; ///< if false, trees will apply/read light patterns, but do not grow
34
    bool mortalityEnabled; ///< if false, no natural (intrinsic+stress) mortality occurs
34
    bool mortalityEnabled; ///< if false, no natural (intrinsic+stress) mortality occurs
35
    bool regenerationEnabled; ///< if true, seed dispersal, establishment, ... is modelled
35
    bool regenerationEnabled; ///< if true, seed dispersal, establishment, ... is modelled
36
    bool carbonCycleEnabled; ///< if true, snag dynamics and soil CN cycle is modelled
36
    bool carbonCycleEnabled; ///< if true, snag dynamics and soil CN cycle is modelled
37
    // light
37
    // light
38
    double lightExtinctionCoefficient; ///< "k" parameter (beer lambert) used for calc. of absorbed light on resourceUnit level
38
    double lightExtinctionCoefficient; ///< "k" parameter (beer lambert) used for calc. of absorbed light on resourceUnit level
39
    double lightExtinctionCoefficientOpacity; ///< "k" for beer lambert used for opacity of single trees
39
    double lightExtinctionCoefficientOpacity; ///< "k" for beer lambert used for opacity of single trees
40
    bool torusMode; ///< special mode that treats each resource unit as a "torus" (light calculation, seed distribution)
40
    bool torusMode; ///< special mode that treats each resource unit as a "torus" (light calculation, seed distribution)
41
    // climate
41
    // climate
42
    double temperatureTau; ///< "tau"-value for delayed temperature calculation acc. to Maekela 2008
42
    double temperatureTau; ///< "tau"-value for delayed temperature calculation acc. to Maekela 2008
43
    // water
43
    // water
44
    double airDensity; // density of air [kg / m3]
44
    double airDensity; // density of air [kg / m3]
45
    double laiThresholdForClosedStands; // for calculation of max-canopy-conductance
45
    double laiThresholdForClosedStands; // for calculation of max-canopy-conductance
46
    double boundaryLayerConductance; // 3pg-evapotranspiration
46
    double boundaryLayerConductance; // 3pg-evapotranspiration
47
    // nitrogen and soil model
47
    // nitrogen and soil model
48
    bool useDynamicAvailableNitrogen; ///< if true, iLand utilizes the dynamically calculated NAvailable
48
    bool useDynamicAvailableNitrogen; ///< if true, iLand utilizes the dynamically calculated NAvailable
49
    // site variables (for now!)
49
    // site variables (for now!)
50
    double latitude; ///< latitude of project site in radians
50
    double latitude; ///< latitude of project site in radians
51
    // production
51
    // production
52
    double epsilon; ///< maximum light use efficency used for the 3PG model
52
    double epsilon; ///< maximum light use efficency used for the 3PG model
53
    bool usePARFractionBelowGroundAllocation; ///< if true, the 'correct' version of the calculation of belowground allocation is used (default=true)
53
    bool usePARFractionBelowGroundAllocation; ///< if true, the 'correct' version of the calculation of belowground allocation is used (default=true)
54
54
55
55
56
};
56
};
57
57
58
#endif // MODELSETTINGS_H
58
#endif // MODELSETTINGS_H
59
 
59