File failed to load: https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/extensions/ams.js
ALMaSS  1.2 (after EcoStack, March 2024)
The Animal, Landscape and Man Simulation System
All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Elements.cpp File Reference
#include <math.h>
#include "../Landscape/ls.h"
#include "Elements.h"

Macros

#define _CRT_SECURE_NO_DEPRECATE
 
#define __WEED_CURVE   99
 
#define EL_BUG_PERCENT_A   0.0
 
#define EL_BUG_PERCENT_B   0.2975
 
#define EL_BUG_PERCENT_C   0.095916647275
 
#define EL_BUG_PERCENT_D   0
 
#define EL_BUG_PERCENT_SB_A   0
 
#define EL_BUG_PERCENT_SB_B   0.380763296
 
#define EL_BUG_PERCENT_SB_C   0
 
#define EL_BUG_PERCENT_D   0
 
#define EL_BUG_PERCENT_WW_A   0.0
 
#define EL_BUG_PERCENT_WW_B   0.1283
 
#define EL_BUG_PERCENT_WW_C   0.0
 
#define EL_BUG_PERCENT_D   0
 
#define EL_BUG_PERCENT_WRy_A   0.0
 
#define EL_BUG_PERCENT_WRy_B   0.395651915
 
#define EL_BUG_PERCENT_WRy_C   0.0
 
#define EL_BUG_PERCENT_D   0
 
#define EL_BUG_PERCENT_WR_A   0.0
 
#define EL_BUG_PERCENT_WR_B   0.028271643
 
#define EL_BUG_PERCENT_WR_C   0.0
 
#define EL_BUG_PERCENT_D   0
 
#define EL_BUG_PERCENT_G_A   4.123817127
 
#define EL_BUG_PERCENT_G_B   0.151015629
 
#define EL_BUG_PERCENT_G_C   -0.228228353
 
#define EL_BUG_PERCENT_D   0
 
#define EL_BUG_PERCENT_SA_A   10.72459109
 
#define EL_BUG_PERCENT_SA_B   0.4
 
#define EL_BUG_PERCENT_SA_C   2.529631141
 
#define EL_BUG_PERCENT_D   0
 
#define EL_BUG_PERCENT_Edges_A   10.72459109
 
#define EL_BUG_PERCENT_Edges_B   0.8
 
#define EL_BUG_PERCENT_Edges_C   2.529631141
 
#define EL_BUG_PERCENT_D   0
 
#define EL_GROWTH_DAYDEG_MAGIC   l_el_growth_daydeg_magic.value()
 
#define EL_GROWTH_DATE_MAGIC   (g_date->DayInYear(1,9))
 
#define EL_GROWTH_PHASE_SHIFT_LEVEL   (l_el_growth_phase_shift_level.value())
 
#define EL_PLANT_BIOMASS   (l_el_plant_biomass_proport.value())
 
#define EL_VEG_START_LAIT   (l_el_veg_start_lait.value())
 
#define EL_VEG_HEIGHTSCALE   (l_el_veg_heightscale.value())
 
#define RV_CUT_MAY   (l_el_rv_cut_may.value())
 
#define RV_CUT_JUN   (l_el_rv_cut_jun.value())
 
#define RV_CUT_JUL   (l_el_rv_cut_jul.value())
 
#define RV_CUT_AUG   (l_el_rv_cut_aug.value())
 
#define RV_CUT_SEP   (l_el_rv_cut_sep.value())
 
#define RV_CUT_OCT   (l_el_rv_cut_oct.value())
 
#define RV_MAY_1ST   (l_el_rv_may_1st.value())
 
#define RV_CUT_HEIGHT   (l_el_rv_cut_height.value())
 
#define RV_CUT_GREEN   (l_el_rv_cut_green.value())
 
#define RV_CUT_TOTAL   (l_el_rv_cut_total.value())
 
#define EL_WEED_PERCENT   (l_el_weed_percent.value())
 
#define EL_WEED_SLOPE   (l_el_weed_slope.value())
 
#define EL_BUG_SLOPE   (l_el_bug_slope.value())
 
#define EL_WEED_GLUE   (l_el_weed_glue.value())
 
#define EL_BUG_GLUE   (l_el_bug_glue.value())
 

Functions

LE_TypeClassCreateLETypeClass ()
 

Variables

TTypesOfPopulation g_Species
 
class PollenNectarDevelopmentDatag_nectarpollen
 
std::shared_ptr< Population_Manager_Baseg_AManager
 
CfgArray_Double cfg_FloweringPeriodPhasesProportionArray
 Vector to store the proportions for flowering period phases, for now there are three phases; beginning, complete, end. More...
 
CfgArray_Double cfg_FloweringPeriodPhasesLengthArray
 Vector to store the length proportion for flowering period phases. More...
 
CfgInt cfg_pest_productapplic_startdate
 Start date for applying pesticide the first time. More...
 
CfgInt cfg_pest_productapplic_period
 Period for applying pesticide. More...
 
CfgInt cfg_farm_cattle_grass_low
 
static CfgArray_Int cfg_field_boundary_cut_start ("FIELD_BOUNDARY_CUT_START", CFG_CUSTOM, 2, vector< int > {9999, 9999})
 First dates of cutting for field boundaries with grass. More...
 
static CfgArray_Int cfg_field_boundary_cut_end ("FIELD_BOUNDARY_CUT_END", CFG_CUSTOM, 2, vector< int > {120, 300})
 Last dates of cutting for field boundaries with grass. More...
 
static CfgArray_Double cfg_field_boundary_cut_chance ("FIELD_BOUNDARY_CUT_CHANCE", CFG_CUSTOM, 2, vector< double > {0.5, 0.5})
 The daily chance for cutting of field boundaries with grass when it is within the cutting period. More...
 
static CfgInt cfg_flowerstripCutStart ("ELE_FLOWERSTRIPCUT_START", CFG_CUSTOM, 366)
 First date of cutting for flower strips. More...
 
static CfgInt cfg_flowerstripCutEnd ("ELE_FLOWERSTRIPCUT_END", CFG_CUSTOM, -1)
 Last possible date of cutting for flower strips. More...
 
static CfgFloat cfg_flowerstripCutChance ("ELE_FLOWERSTRIPCUT_CHANCE", CFG_CUSTOM, 0.0)
 If after first date of cutting for flower strips, this is the daily chance it happens. More...
 
CfgBool cfg_pollen_nectar_on ("ELE_POLLENNECTAR_ON", CFG_CUSTOM, false)
 Flag to determine whether nectar and pollen models are used - should be set to true for pollinator models! More...
 
CfgBool cfg_calc_pond_pesticide ("POND_PEST_CALC_ON", CFG_CUSTOM, false)
 Flag to determine whether to calculate pond pesticide concentration. More...
 
CfgFloat cfg_pondpesticiderunoff ("POND_PEST_RUNOFFFACTOR", CFG_CUSTOM, 10.0)
 The multiplication factor assumed to account for ingress of pesticide from run-off and soil water to a pond. More...
 
CfgBool cfg_randompondquality ("POND_RANDOMQUALITY", CFG_CUSTOM, false)
 Controls whether random pond quality is used. More...
 
CfgInt cfg_goosecountperiod ("GOOSE_GOOSECOUNTPERIOD", CFG_CUSTOM, 1)
 The number of days a goose count can be used. More...
 
CfgFloat cfg_PermanentVegGrowthMaxScaler ("VEG_GROWTHSCALERMAX", CFG_CUSTOM, 1.0)
 Scales the growth of vegetation - max value. More...
 
CfgFloat cfg_PermanentVegGrowthMinScaler ("VEG_GROWTHSCALERMIN", CFG_CUSTOM, 1.0)
 Scales the growth of vegetation - min value. More...
 
CfgFloat cfg_PermanentVegGrowthMaxScalerField ("VEG_FIELDGROWTHSCALERMAX", CFG_CUSTOM, 1.100)
 Scales the growth of vegetation - max value. More...
 
CfgFloat cfg_PermanentVegGrowthMinScalerField ("VEG_FIELDGROWTHSCALERMIN", CFG_CUSTOM, 0.9)
 Scales the growth of vegetation - min value. More...
 
CfgFloat cfg_insectbiomassscaling ("ELE_INSECTBIOMASSSCALER", CFG_CUSTOM, 0.5)
 A scaling value used to change the insext density crop relationship which was based on DK 2000 data. More...
 
CfgInt cfg_month_varying_flower_base_temp ("MONTH_VARING_FLOWER_BASE_TEMP", CFG_CUSTOM, 10)
 Starting month for varying base development temperature for flower resource model. More...
 
CfgFloat cfg_base_temp_increment_flower ("BASE_TEMP_INCREMENT_FLOWER", CFG_CUSTOM, 5)
 Flower resource base temperature increment per month from the starting month. More...
 
CfgFloat cfg_weight_cold_flower_resource ("WEIGHT_CODE_FLOWER_RESOURCE", CFG_CUSTOM, 0.8)
 Weight to shorten flowering period and decreasing resource amount when it is cold. More...
 
CfgFloat cfg_noncrop_growth_stage_with_green_biomass ("NONCROP_GROWTH_STAGE_WITH_GREEN_BIOMASS", CFG_CUSTOM, 50)
 Growth stage for non-crop habitat, this is used for aphid. More...
 
CfgFloat cfg_beer_law_extinction_coef ("BEER_LAW_EXTINCTION_COEF", CFG_CUSTOM, 0.6)
 The extiction coefficient that is used in Beer's law. More...
 
CfgArray_Double cfg_PollenMonthBaseTemp ("POLLEN_MONTH_BASE_TEMP", CFG_CUSTOM, 12, vector< double > {3.9, 3.9, 4, 3.5, 8, 9, 9, 6, 5, 0, 2, 2})
 Monthly base development temperature for pollen. More...
 
CfgArray_Double cfg_NectarMonthBaseTemp ("NECTAR_MONTH_BASE_TEMP", CFG_CUSTOM, 12, vector< double > {3.6, 3.6, 3.9, 3.9, 9, 9, 9, 6, 5, 0, 2, 2})
 Monthly base development temperature for NECTAR. More...
 
CfgFloat cfg_clover_interested_biomass_fraction ("CLOVER_INTERESTED_BIOMASS_FRACTION", CFG_CUSTOM, 0.4)
 The interested biomass fraction for clover crop. More...
 
CfgArray_Double cfg_SeasonalInsectScaler ("ELE_SEASONAL_INSECT_SCALER", CFG_CUSTOM, 12, vector< double > {0.1, 0.1, 0.15, 0.25, 0.75, 1.0, 1.0, 1.0, 0.9, 0.75, 0.25, 0.1 })
 Monthly scaler for insect biomass vs veg biomass. More...
 
const double c_SolarConversion [2][81]
 
CfgFloat l_pest_insecticide_amount
 
static CfgFloat l_pest_productOrchard_amount ("PEST_PRODUCTORCHARD_AMOUNT", CFG_CUSTOM, 0.0)
 
CfgInt cfg_pest_productapplic_startdate2
 Start date for applying pesticide the second. More...
 
CfgInt cfg_pest_productapplic_startdate3
 Start date for applying pesticide the third time. More...
 
CfgBool l_pest_enable_pesticide_engine
 Used to turn on or off the PPP functionality of ALMaSS. More...
 
CfgFloat cfg_goose_GrainDecayRateWinter {"GOOSE_GRAINDECAYRATEWINTER", CFG_CUSTOM, 0.958, 0.0, 1.0}
 The decay rate for spilled grain for Harvest to Spring. More...
 
CfgFloat cfg_goose_MaizeDecayRateWinter {"GOOSE_MAIZEDECAYRATEWINTER", CFG_CUSTOM, 0.9, 0.0, 1.0}
 The decay rate for spilled maize for Harvest to Spring. More...
 
CfgFloat cfg_goose_MaizeDecayRateSpring {"GOOSE_MAIZEDECAYRATESPRING", CFG_CUSTOM, 0.9, 0.0, 1.0}
 The decay rate for spilled grain for Spring. More...
 
CfgFloat cfg_goose_GrainDecayRateSpring {"GOOSE_GRAINDECAYRATESPRING", CFG_CUSTOM, 0.95, 0.0, 1.0}
 The decay rate for spilled grain for Spring until 1st July. More...
 
CfgBool cfg_goose_UniformDecayRate {"GOOSE_UNIFORMDECAYRATE", CFG_CUSTOM, true}
 Use the same grain and maize decay rate (the winter one also for spring) More...
 
CfgFloat cfg_goose_grass_to_winter_cereal_scaler
 The scaler to go from energy intake from grass forage to winter cereal The default value of 1.0325 is a quick fix to account for higher energy intake on winter cereal - Based on Therkildsen & Madsen 2000 Energetics of feeding... More...
 
static CfgFloat cfg_beetlebankinsectscaler ("ELE_BBINSECTSCALER", CFG_CUSTOM, 1.0)
 
static double g_weed_percent [tov_Undefined]
 
static double g_bug_percent_a [tov_Undefined]
 
static double g_bug_percent_b [tov_Undefined]
 
static double g_bug_percent_c [tov_Undefined]
 
static double g_bug_percent_d [tov_Undefined]
 
static CfgInt cfg_OrchardSprayDay ("TOX_ORCHARDSPRAYDAY", CFG_CUSTOM, 150)
 
static CfgInt cfg_OrchardSprayDay2 ("TOX_ORCHARDSPRAYDAYTWO", CFG_CUSTOM, 200000)
 
CfgInt cfg_OrchardNoCutsDay ("TOX_ORCHARDNOCUTS", CFG_CUSTOM, -1)
 
static CfgInt cfg_MownGrassNoCutsDay ("ELE_MOWNGRASSNOCUTS", CFG_CUSTOM, 2)
 
static CfgInt cfg_UMPatchyChance ("UMPATCHYCHANCE", CFG_CUSTOM, 0)
 
static CfgFloat cfg_BBPatchyChance ("BEETLEBANKBPATCHYCHANCE", CFG_CUSTOM, 0.5)
 The chance that a beetlebank being created is patchy or not. More...
 
static CfgFloat cfg_MGPatchyChance ("MOWNGRASSPATCHYCHANCE", CFG_CUSTOM, 0.5)
 The chance that a beetlebank being created is patchy or not. More...
 
static CfgFloat cfg_SetAsidePatchyChance ("SETASIDEPATCHYCHANCE", CFG_CUSTOM, 1.0)
 The chance that a setaside being created is patchy or not. More...
 
static CfgFloat cfg_ele_weedscaling ("ELE_WEEDSCALING", CFG_CUSTOM, 1.0)
 
CfgFloat cfg_PondLarvalFoodBiomassConst ("POND_LARVALFOODBIOMASSCONST", CFG_CUSTOM, 215.0)
 A constant relating the proportion of food units per m2. The value is calibrated to estimates of newt density. More...
 
CfgFloat cfg_PondLarvalFoodR ("POND_LARVALFOODFOODR", CFG_CUSTOM, 0.15)
 The instanteous rate of growth for larval food (r from logistic equation) More...
 
CfgInt g_el_tramline_decaytime_days ("ELEM_TRAMLINE_DECAYTIME_DAYS", CFG_PRIVATE, 21)
 
CfgInt g_el_herbicide_delaytime_days ("ELEM_HERBICIDE_DELAYTIME_DAYS", CFG_PRIVATE, 14)
 
CfgInt g_el_strigling_delaytime_days ("ELEM_STRIGLING_DELAYTIME_DAYS", CFG_PRIVATE, 14)
 
static CfgInt l_el_growth_daydeg_magic ("ELEM_GROWTH_DAYDEG_MAGIC", CFG_PRIVATE, 100)
 
static CfgFloat l_el_growth_phase_shift_level ("ELEM_GROWTH_PHASE_SHIFT_LEVEL", CFG_PRIVATE, 0.5)
 
static CfgFloat l_el_plant_biomass_proport ("ELEM_PLANT_BIOMASS_PROPORT", CFG_PRIVATE, 41.45)
 
static CfgFloat l_el_veg_start_lait ("ELEM_VEG_START_LAIT", CFG_PRIVATE, 1.08)
 
static CfgInt l_el_veg_heightscale ("ELEM_VEG_HEIGHTSCALE", CFG_PRIVATE, 16)
 
static CfgInt l_el_rv_cut_may ("ELEM_RV_CUT_MAY", CFG_PRIVATE, 142)
 
static CfgInt l_el_rv_cut_jun ("ELEM_RV_CUT_JUN", CFG_PRIVATE, 28)
 
static CfgInt l_el_rv_cut_jul ("ELEM_RV_CUT_JUL", CFG_PRIVATE, 35)
 
static CfgInt l_el_rv_cut_aug ("ELEM_RV_CUT_AUG", CFG_PRIVATE, 42)
 
static CfgInt l_el_rv_cut_sep ("ELEM_RV_CUT_SEP", CFG_PRIVATE, 49)
 
static CfgInt l_el_rv_cut_oct ("ELEM_RV_CUT_OCT", CFG_PRIVATE, 49)
 
static CfgInt l_el_rv_may_1st ("ELEM_RV_MAY_1ST", CFG_PRIVATE, 121)
 
static CfgFloat l_el_rv_cut_height ("ELEM_RV_CUT_HEIGHT", CFG_PRIVATE, 10.0)
 
static CfgFloat l_el_rv_cut_green ("ELEM_RV_CUT_GREEN", CFG_PRIVATE, 1.5)
 
static CfgFloat l_el_rv_cut_total ("ELEM_RV_CUT_TOTAL", CFG_PRIVATE, 2.0)
 
CfgFloat l_el_o_cut_height ("ELEM_RV_CUT_HEIGHT", CFG_PRIVATE, 10.0)
 
CfgFloat l_el_o_cut_green ("ELEM_RV_CUT_GREEN", CFG_PRIVATE, 1.5)
 
CfgFloat l_el_o_cut_total ("ELEM_RV_CUT_TOTAL", CFG_PRIVATE, 2.0)
 
static CfgFloat l_el_weed_percent ("ELEM_WEED_PERCENT", CFG_PRIVATE, 0.1)
 
static CfgFloat l_el_weed_slope ("ELEM_WEED_SLOPE", CFG_PRIVATE, 0.15)
 
static CfgFloat l_el_bug_slope ("ELEM_BUG_SLOPE", CFG_PRIVATE, 0.2)
 
static CfgFloat l_el_weed_glue ("ELEM_WEED_GLUE", CFG_PRIVATE, 0.99)
 
static CfgFloat l_el_bug_glue ("ELEM_BUG_GLUE", CFG_PRIVATE, 0.50)
 
class LE_TypeClassg_letype
 

Macro Definition Documentation

◆ __WEED_CURVE

#define __WEED_CURVE   99

◆ _CRT_SECURE_NO_DEPRECATE

#define _CRT_SECURE_NO_DEPRECATE

◆ EL_BUG_GLUE

#define EL_BUG_GLUE   (l_el_bug_glue.value())

◆ EL_BUG_PERCENT_A

#define EL_BUG_PERCENT_A   0.0

◆ EL_BUG_PERCENT_B

#define EL_BUG_PERCENT_B   0.2975

◆ EL_BUG_PERCENT_C

#define EL_BUG_PERCENT_C   0.095916647275

◆ EL_BUG_PERCENT_D [1/8]

#define EL_BUG_PERCENT_D   0

◆ EL_BUG_PERCENT_D [2/8]

#define EL_BUG_PERCENT_D   0

◆ EL_BUG_PERCENT_D [3/8]

#define EL_BUG_PERCENT_D   0

◆ EL_BUG_PERCENT_D [4/8]

#define EL_BUG_PERCENT_D   0

◆ EL_BUG_PERCENT_D [5/8]

#define EL_BUG_PERCENT_D   0

◆ EL_BUG_PERCENT_D [6/8]

#define EL_BUG_PERCENT_D   0

◆ EL_BUG_PERCENT_D [7/8]

#define EL_BUG_PERCENT_D   0

◆ EL_BUG_PERCENT_D [8/8]

#define EL_BUG_PERCENT_D   0

◆ EL_BUG_PERCENT_Edges_A

#define EL_BUG_PERCENT_Edges_A   10.72459109

◆ EL_BUG_PERCENT_Edges_B

#define EL_BUG_PERCENT_Edges_B   0.8

◆ EL_BUG_PERCENT_Edges_C

#define EL_BUG_PERCENT_Edges_C   2.529631141

◆ EL_BUG_PERCENT_G_A

#define EL_BUG_PERCENT_G_A   4.123817127

◆ EL_BUG_PERCENT_G_B

#define EL_BUG_PERCENT_G_B   0.151015629

◆ EL_BUG_PERCENT_G_C

#define EL_BUG_PERCENT_G_C   -0.228228353

◆ EL_BUG_PERCENT_SA_A

#define EL_BUG_PERCENT_SA_A   10.72459109

◆ EL_BUG_PERCENT_SA_B

#define EL_BUG_PERCENT_SA_B   0.4

◆ EL_BUG_PERCENT_SA_C

#define EL_BUG_PERCENT_SA_C   2.529631141

◆ EL_BUG_PERCENT_SB_A

#define EL_BUG_PERCENT_SB_A   0

◆ EL_BUG_PERCENT_SB_B

#define EL_BUG_PERCENT_SB_B   0.380763296

◆ EL_BUG_PERCENT_SB_C

#define EL_BUG_PERCENT_SB_C   0

◆ EL_BUG_PERCENT_WR_A

#define EL_BUG_PERCENT_WR_A   0.0

◆ EL_BUG_PERCENT_WR_B

#define EL_BUG_PERCENT_WR_B   0.028271643

◆ EL_BUG_PERCENT_WR_C

#define EL_BUG_PERCENT_WR_C   0.0

◆ EL_BUG_PERCENT_WRy_A

#define EL_BUG_PERCENT_WRy_A   0.0

◆ EL_BUG_PERCENT_WRy_B

#define EL_BUG_PERCENT_WRy_B   0.395651915

◆ EL_BUG_PERCENT_WRy_C

#define EL_BUG_PERCENT_WRy_C   0.0

◆ EL_BUG_PERCENT_WW_A

#define EL_BUG_PERCENT_WW_A   0.0

◆ EL_BUG_PERCENT_WW_B

#define EL_BUG_PERCENT_WW_B   0.1283

◆ EL_BUG_PERCENT_WW_C

#define EL_BUG_PERCENT_WW_C   0.0

◆ EL_BUG_SLOPE

#define EL_BUG_SLOPE   (l_el_bug_slope.value())

◆ EL_GROWTH_DATE_MAGIC

#define EL_GROWTH_DATE_MAGIC   (g_date->DayInYear(1,9))

◆ EL_GROWTH_DAYDEG_MAGIC

#define EL_GROWTH_DAYDEG_MAGIC   l_el_growth_daydeg_magic.value()

◆ EL_GROWTH_PHASE_SHIFT_LEVEL

#define EL_GROWTH_PHASE_SHIFT_LEVEL   (l_el_growth_phase_shift_level.value())

◆ EL_PLANT_BIOMASS

#define EL_PLANT_BIOMASS   (l_el_plant_biomass_proport.value())

◆ EL_VEG_HEIGHTSCALE

#define EL_VEG_HEIGHTSCALE   (l_el_veg_heightscale.value())

◆ EL_VEG_START_LAIT

#define EL_VEG_START_LAIT   (l_el_veg_start_lait.value())

◆ EL_WEED_GLUE

#define EL_WEED_GLUE   (l_el_weed_glue.value())

◆ EL_WEED_PERCENT

#define EL_WEED_PERCENT   (l_el_weed_percent.value())

◆ EL_WEED_SLOPE

#define EL_WEED_SLOPE   (l_el_weed_slope.value())

◆ RV_CUT_AUG

#define RV_CUT_AUG   (l_el_rv_cut_aug.value())

◆ RV_CUT_GREEN

#define RV_CUT_GREEN   (l_el_rv_cut_green.value())

◆ RV_CUT_HEIGHT

#define RV_CUT_HEIGHT   (l_el_rv_cut_height.value())

◆ RV_CUT_JUL

#define RV_CUT_JUL   (l_el_rv_cut_jul.value())

◆ RV_CUT_JUN

#define RV_CUT_JUN   (l_el_rv_cut_jun.value())

◆ RV_CUT_MAY

#define RV_CUT_MAY   (l_el_rv_cut_may.value())

◆ RV_CUT_OCT

#define RV_CUT_OCT   (l_el_rv_cut_oct.value())

◆ RV_CUT_SEP

#define RV_CUT_SEP   (l_el_rv_cut_sep.value())

◆ RV_CUT_TOTAL

#define RV_CUT_TOTAL   (l_el_rv_cut_total.value())

◆ RV_MAY_1ST

#define RV_MAY_1ST   (l_el_rv_may_1st.value())

Function Documentation

◆ CreateLETypeClass()

LE_TypeClass* CreateLETypeClass ( )
3435 {
3436  if (g_letype == NULL)
3437  {
3438  g_letype = new LE_TypeClass;
3439  }
3440 
3441  return g_letype;
3442 }

References g_letype.

Referenced by main().

Variable Documentation

◆ c_SolarConversion

const double c_SolarConversion[2][81]
Initial value:
= {
{
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.28,
0.56,0.84,1.12,1.4,1.4,1.4,1.4,1.4,1.4,1.4,1.4,1.4,1.4,1.4,1.4,1.4,1.4,1.4,
1.4,1.4,1.26,1.12,0.98,0.84,0.7,0.56,0.42,0.28,0.14,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0
},
{
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0.242857,0.485714,0.728571,0.971429,1.214286,1.457143,1.7,1.7,1.7,1.7,
1.7,1.7,1.7,1.7,1.7,1.7,1.7,1.7,1.7,1.7,1.7,1.7,1.7,1.7,1.7,1.7,1.7,1.7,
1.53,1.36,1.19,1.02,0.85,0.68,0.51,0.34,0.17,0,0,0,0,0,0
}
}

Referenced by VegElement::RecalculateBugsNStuff().

◆ cfg_base_temp_increment_flower

CfgFloat cfg_base_temp_increment_flower("BASE_TEMP_INCREMENT_FLOWER", CFG_CUSTOM, 5)

Flower resource base temperature increment per month from the starting month.

◆ cfg_BBPatchyChance

CfgFloat cfg_BBPatchyChance("BEETLEBANKBPATCHYCHANCE", CFG_CUSTOM, 0.5)
static

The chance that a beetlebank being created is patchy or not.

Referenced by BeetleBank::BeetleBank().

◆ cfg_beer_law_extinction_coef

CfgFloat cfg_beer_law_extinction_coef("BEER_LAW_EXTINCTION_COEF", CFG_CUSTOM, 0.6)

The extiction coefficient that is used in Beer's law.

Referenced by VegElement::RecalculateBugsNStuff().

◆ cfg_beetlebankinsectscaler

CfgFloat cfg_beetlebankinsectscaler("ELE_BBINSECTSCALER", CFG_CUSTOM, 1.0)
static

◆ cfg_calc_pond_pesticide

CfgBool cfg_calc_pond_pesticide("POND_PEST_CALC_ON", CFG_CUSTOM, false)

Flag to determine whether to calculate pond pesticide concentration.

Referenced by Pond::CalcPondPesticide().

◆ cfg_clover_interested_biomass_fraction

CfgFloat cfg_clover_interested_biomass_fraction("CLOVER_INTERESTED_BIOMASS_FRACTION", CFG_CUSTOM, 0.4)

The interested biomass fraction for clover crop.

Referenced by VegElement::SetInterestedBiomassFractionForCrop().

◆ cfg_ele_weedscaling

CfgFloat cfg_ele_weedscaling("ELE_WEEDSCALING", CFG_CUSTOM, 1.0)
static

◆ cfg_farm_cattle_grass_low

CfgInt cfg_farm_cattle_grass_low

◆ cfg_field_boundary_cut_chance

CfgArray_Double cfg_field_boundary_cut_chance("FIELD_BOUNDARY_CUT_CHANCE", CFG_CUSTOM, 2, vector< double > {0.5, 0.5})
static

The daily chance for cutting of field boundaries with grass when it is within the cutting period.

Referenced by FieldBoundary::DoDevelopment().

◆ cfg_field_boundary_cut_end

CfgArray_Int cfg_field_boundary_cut_end("FIELD_BOUNDARY_CUT_END", CFG_CUSTOM, 2, vector< int > {120, 300})
static

Last dates of cutting for field boundaries with grass.

Referenced by FieldBoundary::DoDevelopment().

◆ cfg_field_boundary_cut_start

CfgArray_Int cfg_field_boundary_cut_start("FIELD_BOUNDARY_CUT_START", CFG_CUSTOM, 2, vector< int > {9999, 9999})
static

First dates of cutting for field boundaries with grass.

Referenced by FieldBoundary::DoDevelopment().

◆ cfg_FloweringPeriodPhasesLengthArray

CfgArray_Double cfg_FloweringPeriodPhasesLengthArray

◆ cfg_FloweringPeriodPhasesProportionArray

CfgArray_Double cfg_FloweringPeriodPhasesProportionArray

Vector to store the proportions for flowering period phases, for now there are three phases; beginning, complete, end.

Referenced by LE::CalculateFlowerResourceForCrop(), VegElement::DoDevelopment(), LE::SetPollenNectarType(), and PollenNectarDevelopmentCurveSet::UpdateFlowerResource().

◆ cfg_flowerstripCutChance

CfgFloat cfg_flowerstripCutChance("ELE_FLOWERSTRIPCUT_CHANCE", CFG_CUSTOM, 0.0)
static

If after first date of cutting for flower strips, this is the daily chance it happens.

Referenced by FlowerStrip::DoDevelopment().

◆ cfg_flowerstripCutEnd

CfgInt cfg_flowerstripCutEnd("ELE_FLOWERSTRIPCUT_END", CFG_CUSTOM, -1)
static

Last possible date of cutting for flower strips.

Referenced by FlowerStrip::DoDevelopment().

◆ cfg_flowerstripCutStart

CfgInt cfg_flowerstripCutStart("ELE_FLOWERSTRIPCUT_START", CFG_CUSTOM, 366)
static

First date of cutting for flower strips.

Referenced by FlowerStrip::DoDevelopment().

◆ cfg_goose_GrainDecayRateSpring

CfgFloat cfg_goose_GrainDecayRateSpring {"GOOSE_GRAINDECAYRATESPRING", CFG_CUSTOM, 0.95, 0.0, 1.0}

The decay rate for spilled grain for Spring until 1st July.

Referenced by VegElement::CalcGooseForageResources().

◆ cfg_goose_GrainDecayRateWinter

CfgFloat cfg_goose_GrainDecayRateWinter {"GOOSE_GRAINDECAYRATEWINTER", CFG_CUSTOM, 0.958, 0.0, 1.0}

The decay rate for spilled grain for Harvest to Spring.

Referenced by VegElement::CalcGooseForageResources().

◆ cfg_goose_grass_to_winter_cereal_scaler

CfgFloat cfg_goose_grass_to_winter_cereal_scaler
Initial value:
{"GOOSE_GRASS_TO_WINTER_CEREAL_SCALER", CFG_CUSTOM, 1.0325, 0.0,
10.0}

The scaler to go from energy intake from grass forage to winter cereal The default value of 1.0325 is a quick fix to account for higher energy intake on winter cereal - Based on Therkildsen & Madsen 2000 Energetics of feeding...

Referenced by VegElement::CalcGooseForageResources().

◆ cfg_goose_MaizeDecayRateSpring

CfgFloat cfg_goose_MaizeDecayRateSpring {"GOOSE_MAIZEDECAYRATESPRING", CFG_CUSTOM, 0.9, 0.0, 1.0}

The decay rate for spilled grain for Spring.

Referenced by VegElement::CalcGooseForageResources().

◆ cfg_goose_MaizeDecayRateWinter

CfgFloat cfg_goose_MaizeDecayRateWinter {"GOOSE_MAIZEDECAYRATEWINTER", CFG_CUSTOM, 0.9, 0.0, 1.0}

The decay rate for spilled maize for Harvest to Spring.

Referenced by VegElement::CalcGooseForageResources().

◆ cfg_goose_UniformDecayRate

CfgBool cfg_goose_UniformDecayRate {"GOOSE_UNIFORMDECAYRATE", CFG_CUSTOM, true}

Use the same grain and maize decay rate (the winter one also for spring)

Referenced by VegElement::CalcGooseForageResources().

◆ cfg_goosecountperiod

CfgInt cfg_goosecountperiod("GOOSE_GOOSECOUNTPERIOD", CFG_CUSTOM, 1)

The number of days a goose count can be used.

Referenced by LE::GetGooseNos(), and LE::GetQuarryNos().

◆ cfg_insectbiomassscaling

CfgFloat cfg_insectbiomassscaling("ELE_INSECTBIOMASSSCALER", CFG_CUSTOM, 0.5)

A scaling value used to change the insext density crop relationship which was based on DK 2000 data.

Referenced by VegElement::CalculateInsectBiomass().

◆ cfg_MGPatchyChance

CfgFloat cfg_MGPatchyChance("MOWNGRASSPATCHYCHANCE", CFG_CUSTOM, 0.5)
static

The chance that a beetlebank being created is patchy or not.

Referenced by MownGrassStrip::MownGrassStrip().

◆ cfg_month_varying_flower_base_temp

CfgInt cfg_month_varying_flower_base_temp("MONTH_VARING_FLOWER_BASE_TEMP", CFG_CUSTOM, 10)

Starting month for varying base development temperature for flower resource model.

◆ cfg_MownGrassNoCutsDay

CfgInt cfg_MownGrassNoCutsDay("ELE_MOWNGRASSNOCUTS", CFG_CUSTOM, 2)
static

◆ cfg_NectarMonthBaseTemp

CfgArray_Double cfg_NectarMonthBaseTemp("NECTAR_MONTH_BASE_TEMP", CFG_CUSTOM, 12, vector< double > {3.6, 3.6, 3.9, 3.9, 9, 9, 9, 6, 5, 0, 2, 2})

Monthly base development temperature for NECTAR.

◆ cfg_noncrop_growth_stage_with_green_biomass

CfgFloat cfg_noncrop_growth_stage_with_green_biomass("NONCROP_GROWTH_STAGE_WITH_GREEN_BIOMASS", CFG_CUSTOM, 50)

Growth stage for non-crop habitat, this is used for aphid.

◆ cfg_OrchardNoCutsDay

CfgInt cfg_OrchardNoCutsDay("TOX_ORCHARDNOCUTS", CFG_CUSTOM, -1)

◆ cfg_OrchardSprayDay

CfgInt cfg_OrchardSprayDay("TOX_ORCHARDSPRAYDAY", CFG_CUSTOM, 150)
static

◆ cfg_OrchardSprayDay2

CfgInt cfg_OrchardSprayDay2("TOX_ORCHARDSPRAYDAYTWO", CFG_CUSTOM, 200000)
static

◆ cfg_PermanentVegGrowthMaxScaler

CfgFloat cfg_PermanentVegGrowthMaxScaler("VEG_GROWTHSCALERMAX", CFG_CUSTOM, 1.0)

Scales the growth of vegetation - max value.

Referenced by VegElement::SetVegGrowthScalerRand().

◆ cfg_PermanentVegGrowthMaxScalerField

CfgFloat cfg_PermanentVegGrowthMaxScalerField("VEG_FIELDGROWTHSCALERMAX", CFG_CUSTOM, 1.100)

Scales the growth of vegetation - max value.

Referenced by Field::SetVegGrowthScalerRand().

◆ cfg_PermanentVegGrowthMinScaler

CfgFloat cfg_PermanentVegGrowthMinScaler("VEG_GROWTHSCALERMIN", CFG_CUSTOM, 1.0)

Scales the growth of vegetation - min value.

Referenced by VegElement::SetVegGrowthScalerRand().

◆ cfg_PermanentVegGrowthMinScalerField

CfgFloat cfg_PermanentVegGrowthMinScalerField("VEG_FIELDGROWTHSCALERMIN", CFG_CUSTOM, 0.9)

Scales the growth of vegetation - min value.

Referenced by Field::SetVegGrowthScalerRand().

◆ cfg_pest_productapplic_period

CfgInt cfg_pest_productapplic_period

Period for applying pesticide.

◆ cfg_pest_productapplic_startdate

CfgInt cfg_pest_productapplic_startdate

Start date for applying pesticide the first time.

Referenced by Orchard::DoDevelopment(), and OrchardBand::DoDevelopment().

◆ cfg_pest_productapplic_startdate2

CfgInt cfg_pest_productapplic_startdate2

Start date for applying pesticide the second.

Referenced by Orchard::DoDevelopment(), and OrchardBand::DoDevelopment().

◆ cfg_pest_productapplic_startdate3

CfgInt cfg_pest_productapplic_startdate3

Start date for applying pesticide the third time.

Referenced by Orchard::DoDevelopment(), and OrchardBand::DoDevelopment().

◆ cfg_pollen_nectar_on

CfgBool cfg_pollen_nectar_on("ELE_POLLENNECTAR_ON", CFG_CUSTOM, false)

Flag to determine whether nectar and pollen models are used - should be set to true for pollinator models!

Referenced by Landscape::Landscape(), PollenNectarDevelopmentData::PollenNectarDevelopmentData(), VegElement::RecalculateBugsNStuff(), VegElement::SetSpeciesFunction(), Landscape::Tick(), Landscape::VegDump(), and VegElement::VegElement().

◆ cfg_PollenMonthBaseTemp

CfgArray_Double cfg_PollenMonthBaseTemp("POLLEN_MONTH_BASE_TEMP", CFG_CUSTOM, 12, vector< double > {3.9, 3.9, 4, 3.5, 8, 9, 9, 6, 5, 0, 2, 2})

Monthly base development temperature for pollen.

◆ cfg_PondLarvalFoodBiomassConst

CfgFloat cfg_PondLarvalFoodBiomassConst("POND_LARVALFOODBIOMASSCONST", CFG_CUSTOM, 215.0)

A constant relating the proportion of food units per m2. The value is calibrated to estimates of newt density.

Referenced by Pond::CalcLarvalFood().

◆ cfg_PondLarvalFoodR

CfgFloat cfg_PondLarvalFoodR("POND_LARVALFOODFOODR", CFG_CUSTOM, 0.15)

The instanteous rate of growth for larval food (r from logistic equation)

Referenced by Pond::CalcLarvalFood().

◆ cfg_pondpesticiderunoff

CfgFloat cfg_pondpesticiderunoff("POND_PEST_RUNOFFFACTOR", CFG_CUSTOM, 10.0)

The multiplication factor assumed to account for ingress of pesticide from run-off and soil water to a pond.

Referenced by Pond::CalcPondPesticide().

◆ cfg_randompondquality

CfgBool cfg_randompondquality("POND_RANDOMQUALITY", CFG_CUSTOM, false)

Controls whether random pond quality is used.

Referenced by Pond::Pond().

◆ cfg_SeasonalInsectScaler

CfgArray_Double cfg_SeasonalInsectScaler("ELE_SEASONAL_INSECT_SCALER", CFG_CUSTOM, 12, vector< double > {0.1, 0.1, 0.15, 0.25, 0.75, 1.0, 1.0, 1.0, 0.9, 0.75, 0.25, 0.1 })

Monthly scaler for insect biomass vs veg biomass.

Referenced by VegElement::VegElement().

◆ cfg_SetAsidePatchyChance

CfgFloat cfg_SetAsidePatchyChance("SETASIDEPATCHYCHANCE", CFG_CUSTOM, 1.0)
static

The chance that a setaside being created is patchy or not.

Referenced by PermanentSetaside::PermanentSetaside().

◆ cfg_UMPatchyChance

CfgInt cfg_UMPatchyChance("UMPATCHYCHANCE", CFG_CUSTOM, 0)
static

◆ cfg_weight_cold_flower_resource

CfgFloat cfg_weight_cold_flower_resource("WEIGHT_CODE_FLOWER_RESOURCE", CFG_CUSTOM, 0.8)

Weight to shorten flowering period and decreasing resource amount when it is cold.

◆ g_AManager

◆ g_bug_percent_a

double g_bug_percent_a[tov_Undefined]
static

◆ g_bug_percent_b

double g_bug_percent_b[tov_Undefined]
static

◆ g_bug_percent_c

double g_bug_percent_c[tov_Undefined]
static

◆ g_bug_percent_d

double g_bug_percent_d[tov_Undefined]
static

◆ g_el_herbicide_delaytime_days

CfgInt g_el_herbicide_delaytime_days("ELEM_HERBICIDE_DELAYTIME_DAYS", CFG_PRIVATE, 14)

◆ g_el_strigling_delaytime_days

CfgInt g_el_strigling_delaytime_days("ELEM_STRIGLING_DELAYTIME_DAYS", CFG_PRIVATE, 14)

◆ g_el_tramline_decaytime_days

CfgInt g_el_tramline_decaytime_days("ELEM_TRAMLINE_DECAYTIME_DAYS", CFG_PRIVATE, 21)

◆ g_letype

◆ g_nectarpollen

◆ g_Species

TTypesOfPopulation g_Species

Referenced by Crop::AphidDamage().

◆ g_weed_percent

double g_weed_percent[tov_Undefined]
static

◆ l_el_bug_glue

CfgFloat l_el_bug_glue("ELEM_BUG_GLUE", CFG_PRIVATE, 0.50)
static

◆ l_el_bug_slope

CfgFloat l_el_bug_slope("ELEM_BUG_SLOPE", CFG_PRIVATE, 0.2)
static

◆ l_el_growth_daydeg_magic

CfgInt l_el_growth_daydeg_magic("ELEM_GROWTH_DAYDEG_MAGIC", CFG_PRIVATE, 100)
static

◆ l_el_growth_phase_shift_level

CfgFloat l_el_growth_phase_shift_level("ELEM_GROWTH_PHASE_SHIFT_LEVEL", CFG_PRIVATE, 0.5)
static

◆ l_el_o_cut_green

CfgFloat l_el_o_cut_green("ELEM_RV_CUT_GREEN", CFG_PRIVATE, 1.5)

◆ l_el_o_cut_height

CfgFloat l_el_o_cut_height("ELEM_RV_CUT_HEIGHT", CFG_PRIVATE, 10.0)

◆ l_el_o_cut_total

CfgFloat l_el_o_cut_total("ELEM_RV_CUT_TOTAL", CFG_PRIVATE, 2.0)

◆ l_el_plant_biomass_proport

CfgFloat l_el_plant_biomass_proport("ELEM_PLANT_BIOMASS_PROPORT", CFG_PRIVATE, 41.45)
static

◆ l_el_rv_cut_aug

CfgInt l_el_rv_cut_aug("ELEM_RV_CUT_AUG", CFG_PRIVATE, 42)
static

◆ l_el_rv_cut_green

CfgFloat l_el_rv_cut_green("ELEM_RV_CUT_GREEN", CFG_PRIVATE, 1.5)
static

◆ l_el_rv_cut_height

CfgFloat l_el_rv_cut_height("ELEM_RV_CUT_HEIGHT", CFG_PRIVATE, 10.0)
static

◆ l_el_rv_cut_jul

CfgInt l_el_rv_cut_jul("ELEM_RV_CUT_JUL", CFG_PRIVATE, 35)
static

◆ l_el_rv_cut_jun

CfgInt l_el_rv_cut_jun("ELEM_RV_CUT_JUN", CFG_PRIVATE, 28)
static

◆ l_el_rv_cut_may

CfgInt l_el_rv_cut_may("ELEM_RV_CUT_MAY", CFG_PRIVATE, 142)
static

◆ l_el_rv_cut_oct

CfgInt l_el_rv_cut_oct("ELEM_RV_CUT_OCT", CFG_PRIVATE, 49)
static

◆ l_el_rv_cut_sep

CfgInt l_el_rv_cut_sep("ELEM_RV_CUT_SEP", CFG_PRIVATE, 49)
static

◆ l_el_rv_cut_total

CfgFloat l_el_rv_cut_total("ELEM_RV_CUT_TOTAL", CFG_PRIVATE, 2.0)
static

◆ l_el_rv_may_1st

CfgInt l_el_rv_may_1st("ELEM_RV_MAY_1ST", CFG_PRIVATE, 121)
static

◆ l_el_veg_heightscale

CfgInt l_el_veg_heightscale("ELEM_VEG_HEIGHTSCALE", CFG_PRIVATE, 16)
static

◆ l_el_veg_start_lait

CfgFloat l_el_veg_start_lait("ELEM_VEG_START_LAIT", CFG_PRIVATE, 1.08)
static

◆ l_el_weed_glue

CfgFloat l_el_weed_glue("ELEM_WEED_GLUE", CFG_PRIVATE, 0.99)
static

◆ l_el_weed_percent

CfgFloat l_el_weed_percent("ELEM_WEED_PERCENT", CFG_PRIVATE, 0.1)
static

◆ l_el_weed_slope

CfgFloat l_el_weed_slope("ELEM_WEED_SLOPE", CFG_PRIVATE, 0.15)
static

◆ l_pest_enable_pesticide_engine

CfgBool l_pest_enable_pesticide_engine

Used to turn on or off the PPP functionality of ALMaSS.

Referenced by Osmia_Female::st_ReproductiveBehaviour(), and TAnimal::TAnimal().

◆ l_pest_insecticide_amount

CfgFloat l_pest_insecticide_amount

◆ l_pest_productOrchard_amount

CfgFloat l_pest_productOrchard_amount("PEST_PRODUCTORCHARD_AMOUNT", CFG_CUSTOM, 0.0)
static
LE_TypeClass
Definition: Elements.h:72
CFG_CUSTOM
Definition: Configurator.h:70
g_letype
class LE_TypeClass * g_letype
Definition: Elements.cpp:806