ALMaSS Rabbit ODdox
1.00
The rabbit model description following ODdox protocol
|
#include <elements.h>
Public Member Functions | |
VegElement (void) | |
virtual | ~VegElement (void) |
virtual void | DoDevelopment (void) |
void | ResetGeese (void) |
Reset geese numbers to zero in case this was not done by the population manager (the normal situation). More... | |
virtual double | GetDigestability (void) |
virtual double | GetLAGreen (void) |
virtual double | GetLATotal (void) |
virtual double | GetVegCover (void) |
virtual double | GetVegHeight (void) |
virtual double | GetVegBiomass (void) |
virtual double | GetDeadBiomass (void) |
virtual double | GetGreenBiomass (void) |
virtual double | GetWeedBiomass (void) |
virtual int | GetVegDensity (void) |
virtual bool | GetSkScrapes (void) |
virtual bool | GetVegPatchy (void) |
virtual void | SetVegPatchy (bool p) |
virtual double | GetInsectPop (void) |
virtual void | SetInsectPop (double insects) |
virtual TTypesOfVegetation | GetVegType (void) |
virtual void | Insecticide (double a_fraction) |
virtual bool | IsCereal () |
virtual bool | IsMatureCereal () |
virtual bool | IsMaize () |
virtual bool | IsGrass () |
virtual bool | IsGooseGrass () |
virtual void | InsectMortality (double a_fraction) |
virtual void | ReduceWeedBiomass (double a_fraction) |
virtual void | ToggleCattleGrazing (void) |
virtual void | TogglePigGrazing (void) |
virtual void | GrazeVegetation (double a_grams, bool a_force) |
virtual void | GrazeVegetationTotal (double a_grams) |
virtual void | SetVegType (TTypesOfVegetation a_vege_type, TTypesOfVegetation a_weed_type) |
virtual void | SetCropData (double, double, double, TTypesOfVegetation, double, int) |
virtual void | SetCropDataAll (double, double, double, double, TTypesOfVegetation, double, double, int, double, bool, double) |
virtual void | SetVegHeight (double a_veg_height) |
virtual void | SetVegParameters (double a_veg_height, double a_LAtotal, double a_LAgreen, double a_WeedBiomass) |
virtual void | SetGrowthPhase (int a_phase) |
virtual void | StoreLAItotal () |
virtual void | ForceGrowthInitialize (void) |
virtual void | ForceGrowthTest (void) |
virtual void | ForceGrowthDevelopment (void) |
virtual void | ZeroVeg (void) |
virtual void | ReduceVeg (double a_reduc) |
virtual void | ReduceVeg_Extended (double a_reduc) |
void | Set_taken (bool a_taken, int index) |
bool | Get_taken (int index) |
void | Set_tov_type (TTypesOfVegetation a_tov_type, int index) |
void | Set_area_in_crop_data (double a_area) |
void | Set_biomass_at_harvest (double a_biomass, int index) |
void | Set_harvested () |
bool | Get_harvested (int index) |
void | Add_no_herb_app () |
void | Add_no_fi_app () |
void | Add_missed_herb_app () |
void | Add_missed_fi_app () |
void | Set_CropDataStorage (int index, CropActualValues a_struct) |
CropActualValues | Get_CropDataStorage (int index) |
void | Clean_CropDataStorage (int index) |
virtual void | ResetDigestability () |
sets growth record to zero More... | |
virtual int | GetVegPhase () |
Public Member Functions inherited from LE | |
LE (void) | |
virtual | ~LE (void) |
LE_Signal | GetSignal (void) |
void | SetSignal (LE_Signal a_signal) |
int | GetSubType (void) |
void | SetSubType (int a_subtype) |
int | GetALMaSSEleType (void) |
void | SetALMaSSEleType (int a_type) |
virtual TTypesOfLandscapeElement | GetElementType (void) |
void | SetElementType (int a_type) |
void | Trace (int a_value) |
void | ResetTrace (void) |
long | GetRunNum (void) |
void | BumpRunNum (void) |
long | GetMgtLoopDetectDate (void) |
void | SetMgtLoopDetectDate (long a_num) |
long | GetMgtLoopDetectCount (void) |
void | SetMgtLoopDetectCount (long a_num) |
void | Tick (void) |
int | GetVegStore (void) |
void | SetVegStore (int a_veg) |
void | ZeroVegAge () |
int | GetVegAge () |
virtual APoint | GetCentroid () |
virtual int | GetCentroidX () |
virtual int | GetCentroidY () |
virtual void | SetCentroid (int x, int y) |
virtual double | GetDayDegrees (void) |
virtual void | SetVegBiomass (int) |
virtual void | GrazeVeg_Extended (double) |
virtual double | GetTrafficLoad (void) |
virtual TTypesOfVegetation | GetPreviousCrop (int) |
bool | GetPoison (void) |
void | SetPoison (bool a_poison) |
bool | GetHigh (void) |
int | GetCattleGrazing (void) |
bool | GetPigGrazing (void) |
bool | HasTramlines (void) |
bool | IsRecentlyMown (void) |
int | IsRecentlySprayed (void) |
int | GetPoly (void) |
Returns the polyref number for this polygon. More... | |
int | GetMapIndex (void) |
void | SetMapIndex (int a_map_index) |
int | GetOwnerFile (void) |
int | GetOwnerIndex (void) |
int | GetLastTreatment (int *a_index) |
Farm * | GetOwner (void) |
double | GetArea (void) |
double | GetGooseGrazingForage (GooseSpecies a_goose) |
double | GetBirdSeed (void) |
void | SetBirdSeed (double a_forage) |
double | GetBirdMaize (void) |
void | SetBirdMaize (double a_forage) |
int | GetCountryDesignation (void) |
void | SetCountryDesignation (int a_designation) |
long | GetOldDays (void) |
void | SetOwner (Farm *a_owner, int a_owner_num, int a_owner_index) |
void | SetHigh (bool a_high) |
void | SetPoly (int a_poly) |
void | SetMapValid (bool a_valid) |
bool | GetMapValid (void) |
void | SetArea (double a_area) |
int | GetSoilType () |
int | GetSoilTypeR () |
void | SetSoilType (int a_st) |
void | SetLastSownVeg (TTypesOfVegetation a_tov) |
Records the last vegetation type to be sown. More... | |
TTypesOfVegetation | GetLastSownVeg () |
Returns the last vegetation type to be sown. More... | |
void | SetLastTreatment (int a_treatment) |
void | SetSprayedToday (bool a_didit) |
bool | GetSprayedToday () |
void | SetCopyTreatment (int a_treatment) |
void | SetOldDays (long a_days) |
void | SetRotIndex (int a_index) |
int | GetRotIndex (void) |
void | SetTramlinesDecay (int a_decaytime_days) |
void | SetHerbicideDelay (int a_decaytime_days) |
void | SetMownDecay (int a_decaytime_days) |
void | AddArea (double a_area_diff) |
LE * | GetBorder (void) |
int | GetUnsprayedMarginPolyRef (void) |
void | SetBorder (LE *a_border) |
void | SetUnsprayedMarginPolyRef (int a_unsprayedmargin) |
void | SetPesticideCell (int a_cell) |
int | GetPesticideCell () |
void | SetValidXY (int a_valid_x, int a_valid_y) |
int | GetValidX (void) |
int | GetValidY (void) |
int | GetMaxX (void) |
int | GetMaxY (void) |
int | GetMinX (void) |
int | GetMinY (void) |
void | SetMaxX (int x) |
void | SetMaxY (int y) |
void | SetMinX (int x) |
void | SetMinY (int y) |
int | GetMDates (int a, int b) |
void | SetMDates (int a, int b, int c) |
int | GetMConstants (int a) |
void | SetMConstants (int a, int c) |
double | GetVegDDegs () |
Get the total of day degrees for the crop/veg on this element. More... | |
int | GetOpenness (void) |
For goose model functionality, openness score for the polygon. More... | |
void | SetGooseNos (int a_number, int a_day) |
void | SetGooseSpNos (int a_number, int a_day, GooseSpecies a_goose) |
void | SetGooseNosTimed (int a_number, int a_day) |
void | SetGooseSpNosTimed (int a_number, int a_day, GooseSpecies a_goose) |
int | GetGooseNosToday () |
For goose model functionality, returns the number of geese today. More... | |
int | GetGooseNosTodayTimed () |
For goose model functionality, returns the number of geese today at a predefined time. More... | |
int | GetGooseNos () |
For goose model functionality, returns the number of geese yesterday. More... | |
int | GetGooseSpNosToday (GooseSpecies a_goose) |
For goose model functionality, returns the number of geese per species yesterday. More... | |
int | GetGooseSpNosTodayTimed (GooseSpecies a_goose) |
For goose model functionality, returns the number of geese per species yesterday at a predefined time. More... | |
void | SetOpenness (int a_openness) |
Records the openness statistic for this polygon. More... | |
void | DoCopy (const LE *a_Le) |
a copy function to be used because a copy constuctor won't work More... | |
virtual void | SetMaleNewtPresent (bool) |
Sets a male newt as present/absent in descendent classes - here only to prevent need for dynamic casts. More... | |
virtual bool | IsMaleNewtPresent () |
Sets a male newt as present/absent in descendent classes - here only to prevent need for dynamic casts. More... | |
Protected Member Functions | |
void | ReadBugPercentageFile (void) |
virtual void | RecalculateBugsNStuff (void) |
void | RandomVegStartValues (double *a_LAtotal, double *a_LAgreen, double *a_veg_height, double *a_weed_biomass) |
void | ForceGrowthSpringTest (void) |
Protected Attributes | |
TTypesOfVegetation | m_vege_type |
int | m_curve_num |
int | m_weed_curve_num |
int | m_veg_phase |
int | m_nutrient_status |
double | m_LAtotal |
double | m_oldLAtotal |
double | m_LAgreen |
double | m_insect_pop |
double | m_veg_biomass |
double | m_total_biomass |
double | m_total_biomass_old |
double | m_green_biomass |
double | m_dead_biomass |
double | m_weed_biomass |
double | m_veg_height |
int | m_veg_density |
bool | m_veg_patchy |
double | m_veg_cover |
bool | m_forced_phase_shift |
double | m_digestability |
double | m_oldnewgrowth [32] |
int | m_newoldgrowthindex |
double | m_newgrowthsum |
double | m_force_Weed |
double | m_force_LAgreen |
double | m_force_LAtotal |
double | m_force_veg_height |
bool | m_force_growth |
FILE * | m_ifile |
CropActualValues | m_CropDataStorage [2] |
Keeps data on pesticide applications, biomass at harvest etc. Data for maximum two crops can be stored (hence size - 2). Used by a farmer to make a yearly accounting (OptimisingFarm::ActualProfit()). More... | |
int | m_crop_index |
Protected Attributes inherited from LE | |
long | m_running |
LE * | m_border |
int | m_unsprayedmarginpolyref |
int | m_valid_x |
int | m_valid_y |
int | m_centroidx |
int | m_centroidy |
int | m_vege_danger_store |
int | m_PesticideGridCell |
bool | m_is_in_map |
int | m_subtype |
int | m_maxx |
int | m_minx |
int | m_maxy |
int | m_miny |
long | m_olddays |
long | m_management_loop_detect_date |
long | m_management_loop_detect_count |
Farm * | m_owner |
int | m_countrydesignation |
int | m_owner_file |
int | m_owner_index |
int | m_rot_index |
bool | m_sprayedtoday |
flag to indicate an overspray situation More... | |
int | m_poly |
The polyref number for this polygon. More... | |
int | m_map_index |
int | m_almass_le_type |
This holds the ALMaSS element type reference number. More... | |
int | m_farmfunc_tried_to_do |
int | m_tramlinesdecay |
int | m_mowndecay |
int | m_herbicidedelay |
TTypesOfLandscapeElement | m_type |
double | m_area |
int | m_gooseNos [366] |
The number of geese each day. More... | |
int | m_gooseSpNos [366][gs_foobar] |
The number of geese of each species each day. More... | |
int | m_gooseNosTimed [366] |
The number of geese at a predefined time per day. More... | |
int | m_gooseSpNosTimed [366][gs_foobar] |
The number of geese of each species at a predefined time per day. More... | |
double | m_birdseedforage |
The grain forage present in KJ/m2. More... | |
double | m_birdmaizeforage |
The maize forage present in KJ/m2. More... | |
double | m_goosegrazingforage [gs_foobar] |
The grazing forage present in KJ/min. More... | |
TTypesOfVegetation | m_lastsownvegtype |
Records the last vegegetation type that was sown on the element. More... | |
int | m_openness |
The openness metric for a field (if any) More... | |
int | m_vegage |
int | m_soiltype |
int | m_days_since_insecticide_spray |
bool | m_high |
bool | m_poison |
int | m_cattle_grazing |
int | m_default_grazing_level |
bool | m_pig_grazing |
double | m_vegddegs |
double | m_yddegs |
double | m_ddegs |
vector< int > | m_lasttreat |
unsigned int | m_lastindex |
int | MDates [2][25] |
int | MConsts [10] |
LE_Signal | m_signal_mask |
Additional Inherited Members | |
Public Attributes inherited from LE | |
int | m_tried_to_do |
int | m_squares_in_map |
bool | m_skylarkscrapes |
For management testing of skylark scrapes. More... | |
long | m_user [EL_MAX_USERSPACE] |
Variable used to record the current grazing pressure by e.g. voles. More... | |
bool | m_repeat_start |
Static Protected Attributes inherited from LE | |
static double | m_monthly_traffic [] |
Used for birds that feed on grain on cereal fields 3% spill is expected. More... | |
static double | m_largeroad_load [] |
static double | m_smallroad_load [] |
Definition at line 487 of file elements.h.
VegElement::VegElement | ( | void | ) |
Definition at line 573 of file elements.cpp.
References Clean_CropDataStorage(), EL_BUG_PERCENT_A, EL_BUG_PERCENT_B, EL_BUG_PERCENT_C, EL_BUG_PERCENT_D, EL_BUG_PERCENT_Edges_A, EL_BUG_PERCENT_Edges_B, EL_BUG_PERCENT_Edges_C, EL_BUG_PERCENT_G_A, EL_BUG_PERCENT_G_B, EL_BUG_PERCENT_G_C, EL_BUG_PERCENT_SB_A, EL_BUG_PERCENT_SB_B, EL_BUG_PERCENT_SB_C, EL_BUG_PERCENT_WR_A, EL_BUG_PERCENT_WR_B, EL_BUG_PERCENT_WR_C, EL_BUG_PERCENT_WRy_A, EL_BUG_PERCENT_WRy_B, EL_BUG_PERCENT_WRy_C, EL_BUG_PERCENT_WW_A, EL_BUG_PERCENT_WW_B, EL_BUG_PERCENT_WW_C, g_biomass_scale, g_bug_percent_a, g_bug_percent_b, g_bug_percent_c, g_bug_percent_d, g_crops, g_weed_percent, janfirst, l_el_read_bug_percentage_file(), m_crop_index, m_curve_num, LE::m_ddegs, m_digestability, m_force_growth, m_forced_phase_shift, m_insect_pop, m_LAgreen, m_LAtotal, m_newgrowthsum, m_newoldgrowthindex, m_nutrient_status, m_oldnewgrowth, m_total_biomass, m_total_biomass_old, m_veg_biomass, m_veg_cover, m_veg_height, LE::m_vegddegs, m_vege_type, m_weed_biomass, m_weed_curve_num, LE::m_yddegs, SetGrowthPhase(), SetVegPatchy(), tov_AgroChemIndustryCereal, tov_BroadBeans, tov_Carrots, tov_CloverGrassGrazed1, tov_CloverGrassGrazed2, tov_FieldPeas, tov_FieldPeasSilage, tov_FieldPeasStrigling, tov_FodderBeet, tov_FodderGrass, tov_Heath, tov_Maize, tov_MaizeSilage, tov_MaizeStrigling, tov_NaturalGrass, tov_NoGrowth, tov_None, tov_Oats, tov_OBarleyPeaCloverGrass, tov_OCarrots, tov_OCloverGrassGrazed1, tov_OCloverGrassGrazed2, tov_OCloverGrassSilage1, tov_OFieldPeas, tov_OFieldPeasSilage, tov_OFirstYearDanger, tov_OFodderBeet, tov_OGrazingPigs, tov_OMaizeSilage, tov_OOats, tov_OPermanentGrassGrazed, tov_OPotatoes, tov_OrchardCrop, tov_OSBarleySilage, tov_OSeedGrass1, tov_OSeedGrass2, tov_OSetaside, tov_OSpringBarley, tov_OSpringBarleyClover, tov_OSpringBarleyExt, tov_OSpringBarleyGrass, tov_OSpringBarleyPigs, tov_OTriticale, tov_OWinterBarley, tov_OWinterBarleyExt, tov_OWinterRape, tov_OWinterRye, tov_OWinterWheat, tov_OWinterWheatUndersown, tov_OWinterWheatUndersownExt, tov_PermanentGrassGrazed, tov_PermanentGrassLowYield, tov_PermanentGrassTussocky, tov_PermanentSetaside, tov_Potatoes, tov_PotatoesIndustry, tov_SeedGrass1, tov_SeedGrass2, tov_Setaside, tov_SpringBarley, tov_SpringBarleyCloverGrass, tov_SpringBarleyCloverGrassStrigling, tov_SpringBarleyGrass, tov_SpringBarleyPeaCloverGrassStrigling, tov_SpringBarleyPTreatment, tov_SpringBarleySeed, tov_SpringBarleySilage, tov_SpringBarleySKManagement, tov_SpringBarleySpr, tov_SpringBarleyStrigling, tov_SpringBarleyStriglingCulm, tov_SpringBarleyStriglingSingle, tov_SpringRape, tov_SpringWheat, tov_SugarBeet, tov_Triticale, tov_Wasteland, tov_WinterBarley, tov_WinterBarleyStrigling, tov_WinterRape, tov_WinterRapeStrigling, tov_WinterRye, tov_WinterRyeStrigling, tov_WinterWheat, tov_WinterWheatShort, tov_WinterWheatStrigling, tov_WinterWheatStriglingCulm, tov_WinterWheatStriglingSingle, tov_WWheatPControl, tov_WWheatPToxicControl, tov_WWheatPTreatment, tov_YoungForest, CfgBool::value(), and CropData::VegTypeToCurveNum().
|
inlinevirtual |
Definition at line 490 of file elements.h.
|
inline |
Definition at line 587 of file elements.h.
|
inline |
Definition at line 586 of file elements.h.
|
inline |
Definition at line 579 of file elements.h.
Referenced by OptimisingFarm::FungicideTreat(), and OptimisingFarm::InsecticideTreat().
|
inline |
Definition at line 576 of file elements.h.
Referenced by OptimisingFarm::HerbicideTreat().
void VegElement::Clean_CropDataStorage | ( | int | index | ) |
Sets the values of a struct in an array m_CropDataStorage (at a given index) to default values.
Definition at line 1751 of file elements.cpp.
References CropActualValues::area, CropActualValues::biomass_at_harvest, CropActualValues::harvested, m_CropDataStorage, CropActualValues::missed_fi_app, CropActualValues::missed_herb_app, CropActualValues::no_fi_app, CropActualValues::no_herb_app, CropActualValues::taken, CropActualValues::tov_type, and tov_Undefined.
Referenced by OptimisingFarm::ActualProfit(), OptimisingFarm::HandleEvents(), and VegElement().
|
virtual |
Reimplemented from LE.
Reimplemented in MownGrass, OrchardBand, Orchard, ForestElement, UnsprayedFieldMargin, Wasteland, NaturalGrassWet, NaturalGrassDry, Scrub, GreenElement, RoadsideSlope, RoadsideVerge, BeetleBank, HedgeBank, Hedges, and Field.
Definition at line 1621 of file elements.cpp.
References cfg_ele_weedscaling, Calendar::Date(), ForceGrowthDevelopment(), g_crops, g_date, g_landscape_p, g_weather, Weather::GetDDDegs(), CropData::GetHeightDiff(), CropData::GetLAgreenDiff(), CropData::GetLAtotalDiff(), m_curve_num, LE::m_ddegs, m_force_growth, LE::m_herbicidedelay, m_LAgreen, m_LAtotal, LE::m_owner_index, LE::m_poly, m_veg_height, m_veg_phase, LE::m_vegddegs, m_weed_biomass, m_weed_curve_num, LE::m_yddegs, RecalculateBugsNStuff(), ResetGeese(), Landscape::SupplyFarmIntensity(), and CfgFloat::value().
Referenced by Field::DoDevelopment(), Hedges::DoDevelopment(), HedgeBank::DoDevelopment(), BeetleBank::DoDevelopment(), RoadsideVerge::DoDevelopment(), GreenElement::DoDevelopment(), Scrub::DoDevelopment(), NaturalGrassDry::DoDevelopment(), NaturalGrassWet::DoDevelopment(), Wasteland::DoDevelopment(), ForestElement::DoDevelopment(), Orchard::DoDevelopment(), OrchardBand::DoDevelopment(), and MownGrass::DoDevelopment().
|
virtual |
Reimplemented from LE.
Definition at line 1596 of file elements.cpp.
References m_force_LAgreen, m_force_LAtotal, m_force_veg_height, m_LAgreen, m_LAtotal, and m_veg_height.
Referenced by DoDevelopment().
|
virtual |
Reimplemented from LE.
Definition at line 1553 of file elements.cpp.
References Calendar::DayInYear(), g_crops, g_date, CropData::GetStartValue(), janfirst, m_curve_num, m_force_growth, m_force_LAgreen, m_force_LAtotal, m_force_veg_height, m_force_Weed, m_LAgreen, m_LAtotal, m_veg_height, m_weed_biomass, m_weed_curve_num, marchfirst, RandomVegStartValues(), and CropData::StartValid().
Referenced by ForceGrowthSpringTest(), and ForceGrowthTest().
|
protected |
Definition at line 1534 of file elements.cpp.
References ForceGrowthInitialize(), g_crops, CropData::GetHeightDiff(), CropData::GetLAgreenDiff(), CropData::GetLAtotalDiff(), janfirst, and m_curve_num.
Referenced by SetGrowthPhase().
|
virtual |
Reimplemented from LE.
Definition at line 1523 of file elements.cpp.
References Calendar::DayInYear(), ForceGrowthInitialize(), g_date, and m_force_growth.
Referenced by ReduceVeg(), ReduceVeg_Extended(), and ZeroVeg().
|
inline |
Definition at line 592 of file elements.h.
Referenced by OptimisingFarm::ActualProfit(), and OptimisingFarm::HandleEvents().
|
inline |
Definition at line 574 of file elements.h.
|
inline |
Definition at line 567 of file elements.h.
Referenced by OptimisingFarm::ActualProfit(), and OptimisingFarm::HandleEvents().
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
Reimplemented from LE.
Definition at line 504 of file elements.h.
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
Reimplemented from LE.
Definition at line 509 of file elements.h.
Referenced by OptimisingFarm::Harvest().
|
inlinevirtual |
|
virtual |
/brief Reduce the total vegetation biomass as a result of grazing per m2
Used to calculate the change in vegetation height and biomass as a result of grazing. Input parameter is the change in wet biomass/m2. The problem is to convert this into changes in LAtotal, LAgreen and height. We have an area, biomass, total biomass, height and density. If biomass is missing we need to change height and biomass before continuing and and do something with LA_total and LA_Green. Some assumptions: 1 - The grazing takes all LA equally 2 - That biomass is evenly distributed 3 - That LA is proportional to biomass in some way, so LA is also evenly distributed 4 - That we can use the current grazing pressure to alter a_reduc
Reimplemented from LE.
Definition at line 1682 of file elements.cpp.
References LE::m_default_grazing_level, m_LAgreen, m_LAtotal, m_oldLAtotal, m_veg_biomass, m_veg_height, and m_weed_biomass.
Referenced by GrazeVegetationTotal().
|
virtual |
/brief Reduce the total vegetation biomass as a result of grazing per polygon
Reimplemented from LE.
Definition at line 1677 of file elements.cpp.
References GrazeVegetation(), and LE::m_area.
|
inlinevirtual |
|
virtual |
|
virtual |
Reimplemented from LE.
Definition at line 1175 of file elements.cpp.
References LE::m_lastsownvegtype, tov_AgroChemIndustryCereal, tov_Oats, tov_OBarleyPeaCloverGrass, tov_OOats, tov_OSBarleySilage, tov_OSpringBarley, tov_OSpringBarleyClover, tov_OSpringBarleyExt, tov_OSpringBarleyGrass, tov_OSpringBarleyPigs, tov_OTriticale, tov_OWinterBarley, tov_OWinterBarleyExt, tov_OWinterRye, tov_OWinterWheat, tov_OWinterWheatUndersown, tov_SpringBarley, tov_SpringBarleyCloverGrass, tov_SpringBarleyGrass, tov_SpringBarleyPeaCloverGrassStrigling, tov_SpringBarleyPTreatment, tov_SpringBarleySeed, tov_SpringBarleySKManagement, tov_SpringBarleySpr, tov_SpringBarleyStrigling, tov_SpringBarleyStriglingCulm, tov_SpringBarleyStriglingSingle, tov_SpringWheat, tov_Triticale, tov_WinterBarley, tov_WinterRye, tov_WinterWheat, tov_WinterWheatStrigling, tov_WinterWheatStriglingCulm, tov_WinterWheatStriglingSingle, tov_WWheatPControl, tov_WWheatPToxicControl, and tov_WWheatPTreatment.
Referenced by RecalculateBugsNStuff().
|
inlinevirtual |
Definition at line 1311 of file elements.cpp.
References LE::m_lastsownvegtype, m_vege_type, tov_CloverGrassGrazed1, tov_CloverGrassGrazed2, tov_FodderGrass, tov_NaturalGrass, tov_OCloverGrassGrazed1, tov_OCloverGrassGrazed2, tov_OSeedGrass1, tov_OSeedGrass2, tov_PermanentGrassGrazed, tov_PermanentGrassLowYield, tov_PermanentGrassTussocky, tov_SeedGrass1, and tov_SeedGrass2.
Referenced by RecalculateBugsNStuff().
|
inlinevirtual |
Reimplemented from LE.
Definition at line 1284 of file elements.cpp.
References m_vege_type, tov_CloverGrassGrazed1, tov_CloverGrassGrazed2, tov_FodderGrass, tov_Heath, tov_NaturalGrass, tov_OCloverGrassGrazed1, tov_OCloverGrassGrazed2, tov_OrchardCrop, tov_OSeedGrass1, tov_OSeedGrass2, tov_PermanentGrassGrazed, tov_PermanentGrassLowYield, tov_PermanentGrassTussocky, tov_PermanentSetaside, tov_SeedGrass1, tov_SeedGrass2, tov_Setaside, and tov_YoungForest.
|
virtual |
Currently (18/03/2015) only used for goose foraging, so silage maize does not produce grain
Definition at line 1269 of file elements.cpp.
References m_vege_type, tov_Maize, tov_MaizeSilage, and tov_OMaizeSilage.
|
virtual |
Reimplemented from LE.
Definition at line 1223 of file elements.cpp.
References m_vege_type, tov_AgroChemIndustryCereal, tov_Oats, tov_OOats, tov_OSpringBarley, tov_OSpringBarleyClover, tov_OSpringBarleyExt, tov_OSpringBarleyGrass, tov_OSpringBarleyPigs, tov_OTriticale, tov_OWinterBarley, tov_OWinterBarleyExt, tov_OWinterRye, tov_OWinterWheat, tov_OWinterWheatUndersown, tov_SpringBarley, tov_SpringBarleyCloverGrass, tov_SpringBarleyGrass, tov_SpringBarleyPeaCloverGrassStrigling, tov_SpringBarleyPTreatment, tov_SpringBarleySeed, tov_SpringBarleySKManagement, tov_SpringBarleySpr, tov_SpringBarleyStrigling, tov_SpringBarleyStriglingCulm, tov_SpringBarleyStriglingSingle, tov_SpringWheat, tov_Triticale, tov_WinterBarley, tov_WinterRye, tov_WinterWheat, tov_WinterWheatStrigling, tov_WinterWheatStriglingCulm, tov_WinterWheatStriglingSingle, tov_WWheatPControl, tov_WWheatPToxicControl, and tov_WWheatPTreatment.
|
protected |
Definition at line 1463 of file elements.cpp.
References EL_VEG_HEIGHTSCALE, and EL_VEG_START_LAIT.
Referenced by ForceGrowthInitialize().
|
protected |
Definition at line 1147 of file elements.cpp.
References FloatToDouble(), g_bug_percent_a, g_bug_percent_b, g_bug_percent_c, g_bug_percent_d, g_msg, g_weed_percent, l_el_bug_percentage_file(), m_ifile, tov_Undefined, CfgStr::value(), MapErrorMsg::Warn(), and WARN_FILE.
|
protectedvirtual |
Here we also want to know how much biomass we have on the field in total. So we multiply the current biomass by area
The 1.0325 is a quick fix to account for higher energy intake on winter cereal - Based on Therkildsen & Madsen 2000 Energetics of feeding...
or potentially it is a grazable grass
Reimplemented from LE.
Definition at line 1339 of file elements.cpp.
References c_SolarConversion, g_biomass_scale, g_bug_percent_a, g_bug_percent_b, g_bug_percent_c, g_landscape_p, IsCereal(), IsGooseGrass(), LE::m_area, LE::m_birdmaizeforage, LE::m_birdseedforage, LE::m_days_since_insecticide_spray, m_dead_biomass, m_digestability, LE::m_goosegrazingforage, m_green_biomass, m_insect_pop, m_LAgreen, m_LAtotal, m_newgrowthsum, m_newoldgrowthindex, m_oldLAtotal, m_oldnewgrowth, LE::m_owner_index, LE::m_poly, m_total_biomass, m_total_biomass_old, m_veg_biomass, m_veg_cover, m_veg_density, m_veg_height, m_vege_type, m_weed_biomass, Landscape::SupplyFarmIntensity(), Landscape::SupplyGlobalRadiation(), Landscape::SupplyGooseGrazingForageH(), Landscape::SupplyTemp(), tov_Maize, tov_MaizeSilage, tov_MaizeStrigling, tov_NoGrowth, tov_None, tov_OFirstYearDanger, tov_OMaizeSilage, tov_OPotatoes, tov_Potatoes, tov_PotatoesIndustry, and CfgFloat::value().
Referenced by RoadsideVerge::Cutting(), DoDevelopment(), and ZeroVeg().
|
virtual |
Reimplemented from LE.
Definition at line 1707 of file elements.cpp.
References ForceGrowthTest(), m_LAgreen, m_LAtotal, m_oldLAtotal, m_veg_biomass, m_veg_height, and m_weed_biomass.
Referenced by OrchardBand::DoDevelopment().
|
virtual |
Reimplemented from LE.
Definition at line 1718 of file elements.cpp.
References Calendar::DayInYear(), EL_GROWTH_DATE_MAGIC, EL_GROWTH_DAYDEG_MAGIC, EL_GROWTH_PHASE_SHIFT_LEVEL, ForceGrowthTest(), g_date, harvest1, LE::m_ddegs, m_forced_phase_shift, m_LAgreen, m_LAtotal, m_oldLAtotal, m_veg_biomass, m_veg_height, m_weed_biomass, LE::m_yddegs, and SetGrowthPhase().
|
inlinevirtual |
|
inlinevirtual |
void VegElement::ResetGeese | ( | void | ) |
Reset geese numbers to zero in case this was not done by the population manager (the normal situation).
Definition at line 1669 of file elements.cpp.
References Calendar::DayInYear(), g_date, LE::m_gooseNos, LE::m_gooseSpNos, and LE::m_gooseSpNosTimed.
Referenced by DoDevelopment().
|
inline |
Definition at line 570 of file elements.h.
Referenced by OptimisingFarm::HandleEvents().
|
inline |
Definition at line 571 of file elements.h.
Referenced by OptimisingFarm::Harvest().
|
inline |
Definition at line 591 of file elements.h.
Referenced by OptimisingFarm::HandleEvents().
|
inline |
Definition at line 573 of file elements.h.
Referenced by OptimisingFarm::Harvest().
|
inline |
Definition at line 566 of file elements.h.
Referenced by OptimisingFarm::HandleEvents().
|
inline |
Definition at line 568 of file elements.h.
Referenced by OptimisingFarm::HandleEvents().
|
virtual |
Reimplemented from LE.
Definition at line 1788 of file elements.cpp.
References LE::m_cattle_grazing, m_LAgreen, m_LAtotal, m_veg_cover, m_veg_height, and m_vege_type.
|
virtual |
Reimplemented from LE.
Definition at line 1798 of file elements.cpp.
References LE::m_cattle_grazing, m_insect_pop, m_LAgreen, m_LAtotal, m_veg_biomass, m_veg_cover, m_veg_density, m_veg_height, m_veg_patchy, m_vege_type, and m_weed_biomass.
|
virtual |
If it is the first growth phase of the year then we might cause some unnecessary hops if e.g. our biomass is 0 and we suddenly jump up to 20 cm To stop this happening we check here and if our settings are lower than the targets we do nothing.
Reimplemented from LE.
Definition at line 1471 of file elements.cpp.
References Calendar::Date(), ForceGrowthSpringTest(), g_crops, g_date, g_weather, Weather::GetDDDegs(), CropData::GetStartValue(), harvest, janfirst, m_curve_num, LE::m_ddegs, m_force_growth, m_forced_phase_shift, m_LAgreen, m_LAtotal, m_veg_height, m_veg_phase, LE::m_vegddegs, LE::m_yddegs, sow, and CropData::StartValid().
Referenced by Orchard::Cutting(), MownGrass::Cutting(), ReduceVeg_Extended(), and VegElement().
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
Reimplemented from LE.
Definition at line 536 of file elements.h.
References g_crops, tov_Undefined, and CropData::VegTypeToCurveNum().
|
inlinevirtual |
|
inlinevirtual |
Reimplemented from LE.
Definition at line 525 of file elements.h.
|
inlinevirtual |
|
virtual |
Reimplemented from LE.
Definition at line 1606 of file elements.cpp.
References ForceGrowthTest(), LE::m_birdmaizeforage, LE::m_birdseedforage, m_LAgreen, m_LAtotal, m_veg_biomass, m_veg_cover, m_veg_height, m_weed_biomass, and RecalculateBugsNStuff().
|
protected |
Definition at line 643 of file elements.h.
Referenced by VegElement().
|
protected |
Keeps data on pesticide applications, biomass at harvest etc. Data for maximum two crops can be stored (hence size - 2). Used by a farmer to make a yearly accounting (OptimisingFarm::ActualProfit()).
Definition at line 642 of file elements.h.
Referenced by Clean_CropDataStorage().
|
protected |
Definition at line 605 of file elements.h.
Referenced by BeetleBank::BeetleBank(), DoDevelopment(), FieldBoundary::FieldBoundary(), ForceGrowthInitialize(), ForceGrowthSpringTest(), Heath::Heath(), HedgeBank::HedgeBank(), Hedges::Hedges(), Marsh::Marsh(), MownGrass::MownGrass(), NaturalGrassDry::NaturalGrassDry(), NaturalGrassWet::NaturalGrassWet(), Orchard::Orchard(), OrchardBand::OrchardBand(), PermanentSetaside::PermanentSetaside(), SetGrowthPhase(), UnsprayedFieldMargin::UnsprayedFieldMargin(), VegElement(), Wasteland::Wasteland(), and YoungForest::YoungForest().
|
protected |
Definition at line 617 of file elements.h.
Referenced by RecalculateBugsNStuff().
|
protected |
Definition at line 624 of file elements.h.
Referenced by NaturalGrassDry::DoDevelopment(), NaturalGrassWet::DoDevelopment(), Wasteland::DoDevelopment(), PermanentSetaside::PermanentSetaside(), PermPastureTussocky::PermPastureTussocky(), RecalculateBugsNStuff(), and VegElement().
|
protected |
Definition at line 632 of file elements.h.
Referenced by DoDevelopment(), ForceGrowthInitialize(), ForceGrowthTest(), SetGrowthPhase(), and VegElement().
|
protected |
Definition at line 629 of file elements.h.
Referenced by ForceGrowthDevelopment(), and ForceGrowthInitialize().
|
protected |
Definition at line 630 of file elements.h.
Referenced by ForceGrowthDevelopment(), and ForceGrowthInitialize().
|
protected |
Definition at line 631 of file elements.h.
Referenced by ForceGrowthDevelopment(), and ForceGrowthInitialize().
|
protected |
Definition at line 628 of file elements.h.
Referenced by ForceGrowthInitialize().
|
protected |
Definition at line 623 of file elements.h.
Referenced by ReduceVeg_Extended(), SetGrowthPhase(), and VegElement().
|
protected |
Definition at line 616 of file elements.h.
Referenced by RecalculateBugsNStuff().
|
protected |
Definition at line 633 of file elements.h.
Referenced by ReadBugPercentageFile().
|
protected |
Definition at line 612 of file elements.h.
Referenced by Field::DoDevelopment(), UnsprayedFieldMargin::DoDevelopment(), InsectMortality(), RecalculateBugsNStuff(), SetCropDataAll(), and VegElement().
|
protected |
Definition at line 611 of file elements.h.
Referenced by RoadsideVerge::Cutting(), Orchard::Cutting(), MownGrass::Cutting(), DoDevelopment(), Field::DoDevelopment(), ForceGrowthDevelopment(), ForceGrowthInitialize(), GrazeVegetation(), RecalculateBugsNStuff(), ReduceVeg(), ReduceVeg_Extended(), SetCropData(), SetCropDataAll(), SetGrowthPhase(), VegElement(), and ZeroVeg().
|
protected |
Definition at line 609 of file elements.h.
Referenced by RoadsideVerge::Cutting(), Orchard::Cutting(), MownGrass::Cutting(), DoDevelopment(), Field::DoDevelopment(), UnsprayedFieldMargin::DoDevelopment(), ForceGrowthDevelopment(), ForceGrowthInitialize(), GrazeVegetation(), RecalculateBugsNStuff(), ReduceVeg(), ReduceVeg_Extended(), SetCropData(), SetCropDataAll(), SetGrowthPhase(), VegElement(), and ZeroVeg().
|
protected |
Definition at line 627 of file elements.h.
Referenced by RecalculateBugsNStuff(), and VegElement().
|
protected |
Definition at line 626 of file elements.h.
Referenced by RecalculateBugsNStuff(), and VegElement().
|
protected |
Definition at line 608 of file elements.h.
Referenced by VegElement().
|
protected |
Definition at line 610 of file elements.h.
Referenced by GrazeVegetation(), RecalculateBugsNStuff(), ReduceVeg(), and ReduceVeg_Extended().
|
protected |
Definition at line 625 of file elements.h.
Referenced by RecalculateBugsNStuff(), and VegElement().
|
protected |
Definition at line 614 of file elements.h.
Referenced by RecalculateBugsNStuff(), and VegElement().
|
protected |
Definition at line 615 of file elements.h.
Referenced by RecalculateBugsNStuff(), and VegElement().
|
protected |
Definition at line 613 of file elements.h.
Referenced by Field::DoDevelopment(), UnsprayedFieldMargin::DoDevelopment(), GrazeVegetation(), RecalculateBugsNStuff(), ReduceVeg(), ReduceVeg_Extended(), SetCropDataAll(), VegElement(), and ZeroVeg().
|
protected |
Definition at line 622 of file elements.h.
Referenced by Field::DoDevelopment(), RecalculateBugsNStuff(), SetCropData(), SetCropDataAll(), VegElement(), and ZeroVeg().
|
protected |
Definition at line 620 of file elements.h.
Referenced by Field::DoDevelopment(), UnsprayedFieldMargin::DoDevelopment(), RecalculateBugsNStuff(), and SetCropDataAll().
|
protected |
Definition at line 619 of file elements.h.
Referenced by RoadsideVerge::Cutting(), Orchard::Cutting(), MownGrass::Cutting(), DoDevelopment(), Field::DoDevelopment(), UnsprayedFieldMargin::DoDevelopment(), ForceGrowthDevelopment(), ForceGrowthInitialize(), GrazeVegetation(), RecalculateBugsNStuff(), ReduceVeg(), ReduceVeg_Extended(), SetCropData(), SetCropDataAll(), SetGrowthPhase(), VegElement(), and ZeroVeg().
|
protected |
Definition at line 621 of file elements.h.
Referenced by BeetleBank::BeetleBank(), Field::DoDevelopment(), GreenElement::GreenElement(), Heath::Heath(), MownGrass::MownGrass(), NaturalGrassDry::NaturalGrassDry(), NaturalGrassWet::NaturalGrassWet(), PermanentSetaside::PermanentSetaside(), PermPasture::PermPasture(), PermPastureLowYield::PermPastureLowYield(), PermPastureTussocky::PermPastureTussocky(), RoadsideSlope::RoadsideSlope(), RoadsideVerge::RoadsideVerge(), SetCropDataAll(), UnsprayedFieldMargin::UnsprayedFieldMargin(), Wasteland::Wasteland(), and YoungForest::YoungForest().
|
protected |
Definition at line 607 of file elements.h.
Referenced by DoDevelopment(), UnsprayedFieldMargin::DoDevelopment(), and SetGrowthPhase().
|
protected |
Definition at line 604 of file elements.h.
Referenced by BeetleBank::BeetleBank(), Field::DoDevelopment(), UnsprayedFieldMargin::DoDevelopment(), FieldBoundary::FieldBoundary(), Heath::Heath(), HedgeBank::HedgeBank(), Hedges::Hedges(), IsGooseGrass(), IsGrass(), IsMaize(), IsMatureCereal(), Marsh::Marsh(), MownGrass::MownGrass(), NaturalGrassDry::NaturalGrassDry(), NaturalGrassWet::NaturalGrassWet(), Orchard::Orchard(), OrchardBand::OrchardBand(), PermanentSetaside::PermanentSetaside(), PlantNursery::PlantNursery(), RecalculateBugsNStuff(), RoadsideSlope::RoadsideSlope(), RoadsideVerge::RoadsideVerge(), SetCropData(), SetCropDataAll(), UnsprayedFieldMargin::UnsprayedFieldMargin(), VegElement(), Vildtager::Vildtager(), Wasteland::Wasteland(), and YoungForest::YoungForest().
|
protected |
Definition at line 618 of file elements.h.
Referenced by DoDevelopment(), Field::DoDevelopment(), UnsprayedFieldMargin::DoDevelopment(), ForceGrowthInitialize(), GrazeVegetation(), RecalculateBugsNStuff(), ReduceVeg(), ReduceVeg_Extended(), SetCropDataAll(), VegElement(), and ZeroVeg().
|
protected |
Definition at line 606 of file elements.h.
Referenced by DoDevelopment(), UnsprayedFieldMargin::DoDevelopment(), ForceGrowthInitialize(), and VegElement().