ALMaSS Bembidion ODdox  1.1
The bembidion model description following ODdox protocol
bembidion_all.h
Go to the documentation of this file.
1 /*
2 *******************************************************************************************************
3 Copyright (c) 2011, Christopher John Topping, University of Aarhus
4 All rights reserved.
5 
6 Redistribution and use in source and binary forms, with or without modification, are permitted provided
7 that the following conditions are met:
8 
9 Redistributions of source code must retain the above copyright notice, this list of conditions and the
10 following disclaimer.
11 Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
12 the following disclaimer in the documentation and/or other materials provided with the distribution.
13 
14 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
15 IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
16 FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS
17 BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
18 BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
19 BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
20 LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
21 SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
22 ********************************************************************************************************
23 */
24 //---------------------------------------------------------------------------
25 
26 #ifndef Bembidion_allH
27 #define Bembidion_allH
28 
29 //---------------------------------------------------------------------------
30 
31 extern const char* SimulationName;
32 
33 typedef enum
34 {
36 // Egg
40 // Larva
44 // Pupa
48 // Adult
54 // Destroy
57 
58 //------------------------------------------------------------------------------
59 
60 typedef enum
61 {
62  bob_Egg = 0,
67 
68 //------------------------------------------------------------------------------
69 
70 typedef vector<APoint> TListOfEggs;
71 
72 //------------------------------------------------------------------------------
73 
74 //------------------------------------------------------------------------------
75 // Forward Declarations
76 
78 class Landscape;
79 class MovementMap;
80 class SimplePositionMap;
81 
82 
83 
84 //------------------------------------------------------------------------------
85 /* Not used
86 class ListOfPositions
87 {
88  public:
89  int locs[2][30];
90  int NoLocs;
91 };
92 //------------------------------------------------------------------------------
93 */
95 {
96  public:
97  int x;
98  int y;
99  unsigned direction;
100 };
101 //------------------------------------------------------------------------------
102 
104 {
105  public:
106  int BeenThereX[101];
107  int BeenThereY[101];
108  int nsteps;
109 };
110 //------------------------------------------------------------------------------
111 
114 {
115  public:
117  int x;
118  int y;
121  int HowMany;
122 };
123 //------------------------------------------------------------------------------
124 
129 class CompareEggX {
130 public:
131  bool operator() ( APoint A1, APoint A2 ) const {
132  return (A1.m_x > A2.m_x);
133  }
134 };
135 //------------------------------------------------------------------------------
136 
141 class Bembidion_Base : public TAnimal
142 {
143 public:
145  Bembidion_Base( int x, int y, Landscape* L,
148  void ReInit( int x, int y, Landscape* L, Bembidion_Population_Manager* BPM );
150  virtual void BeginStep(){}
152  virtual void Step(){}
154  virtual void EndStep(){}
156  virtual void st_Die();
157  // Attributes
163  void CopyMyself(int a_beetle);
165  void CopyMyselfB(int a_beetle);
166 };
167 //------------------------------------------------------------------------------
173 {
174 
180 public:
184  virtual void Step();
186  virtual void BeginStep();
188  void AddEgg(int x, int y) {
189  APoint E;
190  E.m_x=x;
191  E.m_y=y;
192  EggList.push_back(E);
193  };
195  void DeleteEgg(int x, int y); // Very slow do not use unless absolutely necessary
198 protected:
200  int st_Develop();
202  void st_Hatch();
204  void DailyMortality();
205  // Attributes
208  // The list of eggs is in a vector of type APoint
209  void SortXR();
210 };
211 //------------------------------------------------------------------------------
212 
218 public:
220  Bembidion_Larvae( int x, int y, Landscape* L, Bembidion_Population_Manager* BPM );
222  void ReInit( int x, int y, Landscape* L, Bembidion_Population_Manager* BPM );
224  virtual void BeginStep();
226  virtual void Step();
228  virtual void KillThis();
229 protected:
231  int st_Develop();
233  void st_Pupate();
235  virtual bool DailyMortality();
237  virtual bool OnFarmEvent( FarmToDo event );
239  inline bool TempRelatedLarvalMortality( int temp2 );
240  // Attributes
242  double m_AgeDegrees;
247 
248 };
249 //------------------------------------------------------------------------------
250 
256 {
257 public:
259  Bembidion_Pupae(int x, int y, Landscape* L,
261 
263  void ReInit( int x, int y, Landscape* L, Bembidion_Population_Manager* BPM );
265  virtual void BeginStep();
267  virtual void Step();
269  virtual void KillThis();
270 protected:
272  int st_Develop();
274  void st_Emerge();
276  virtual bool DailyMortality();
278  virtual bool OnFarmEvent(FarmToDo event);
279  // Attributes
281  double m_AgeDegrees;
284 
285 };
286 //------------------------------------------------------------------------------
292 {
293 public:
295  Bembidion_Adult(int x, int y, Landscape* L,
298  void ReInit( int x, int y, Landscape* L, Bembidion_Population_Manager* BPM );
300  virtual ~Bembidion_Adult();
302  virtual void Step();
304  virtual void BeginStep();
306  virtual void EndStep();
308  void SetBodyBurden(double a_pcide) { m_body_burden = a_pcide; }
310  void SetPPPThreshold(double a_thresh) { m_PPPThreshold = a_thresh; }
312  void SetPPPEffectProb(double a_conc) { m_PPPEffectProb = a_conc; }
314  void SetPPPEffectProbDecay(double a_decay) { m_PPPEffectProbDecay = a_decay; }
316  void SetAdultPPPElimRate(double a_rate) { m_AdultPPPElimRate = a_rate; }
317 protected:
319  void Init();
321  int st_Forage();
323  int st_Aggregate();
325  int st_Hibernate();
327  int st_Dispersal();
329  bool st_Aging();
331  bool WinterMort();
333  bool DDepMort();
335  int DailyMovement(int p_distance, bool disp_aggreg);
337  void MoveTo(int p_dist, unsigned p_direction, int p_turning);
339  inline int MoveTo_quality_assess();
341  int MoveToAggr(int p_dist, unsigned p_direction, int p_turning);
343  void Reproduce(int p_x, int p_y);
345  void CanReproduce();
347  virtual bool DailyMortality();
349  virtual bool OnFarmEvent(FarmToDo event);
352  // Attributes
354  double m_negDegrees;
357  //double OldBest;
369  static double m_AdultPPPElimRate;
375  static double m_PPPThreshold;
377  static double m_PPPEffectProb;
379  static double m_PPPEffectProbDecay;
380 
381 };
382 //------------------------------------------------------------------------------
383 
386 {
387  public:
389  void CreateObjects(int ob_type, TAnimal *pvo,void* null ,
390  struct_Bembidion * data,int number);
392  virtual void Init (void);
394  virtual void DoFirst (void);
396  virtual void DoBefore (void);
398  virtual void DoAlmostLast (void);
400  virtual void DoLast (void);
402  virtual float Probe(int ListIndex,probe_data* p_TheProbe );
408  int SupplyAdPopSize() {return m_AdPopSize;}
410  int SupplyEggPopSize() {return m_EPopSize;}
416  double SupplyEDayDeg(int day) { return m_EDayDeg[day];}
418  double SupplyLDayDeg(int L, int day) { return m_LDayDeg[day][L];}
420  double SupplyPDayDeg(int day) { return m_PDayDeg[day];}
421  protected:
423  virtual void Catastrophe();
425  virtual void TheRipleysOutputProbe(FILE* a_prb);
427  virtual void TheReallyBigOutputProbe();
429  virtual void TheAOROutputProbe( );
431  bool IsStartHabitat(int a_x, int a_y);
432 #ifdef __BEETLEPESTICIDE1
433 
434  void LocOutputError( void );
436  void LocOutputOpen( void );
438  void DoInFieldLocationOutput();
439 #endif
440 #ifdef __RECORD_RECOVERY_POLYGONS
441 
442  void RecordRecoveryPolygons();
443  int m_RecoveryPolygons[101];
444  int m_RecoveryPolygonsC[101];
445 #endif
446 
447 
448 //Attributes
449  protected:
461  double m_EDayDeg[365];
463  double m_LDayDeg[365][3];
465  double m_PDayDeg[365];
466  public:
468  MovementMap* m_MoveMap;
470  SimplePositionMap* m_LarvaePosMap; // Modified ***CJT*** 26-05-2009
472  SimplePositionMap* m_AdultPosMap; // Modified ***CJT*** 26-05-2009
474  int LDDepMort0; // Must be range 1-8
476  double LDDepMort1; // 0-100
478  int ADDepMort0; //
480  double ADDepMort1; // 0-100
485 
486 #ifdef __BEETLEPESTICIDE1
487 protected:
489  int m_InFieldNo;
491  int m_InCropNo;
493  int m_OffFieldNo;
495  TTypesOfVegetation m_InCropRef;
497  void incInField() { m_InFieldNo++; }
499  void incInCrop() { m_InCropNo++; }
501  void incOffField() { m_OffFieldNo++; }
503  void PestMortLocOutputOpen( void );
505  void PestMortLocOutput( void );
507  void PestMortLocOutputError( void );
508 public:
510  void RecordPesticideMortLoc(int a_x, int a_y)
511  {
512  // Need to get the element type, if a field need to check the crop
514  if (tole == tole_Orchard) incInCrop();
515  else if (tole == tole_Field)
516  {
517  if (m_TheLandscape->SupplyVegType(a_x, a_y) == m_InCropRef) incInCrop();
518  else incInField();
519  } else
520  {
521  incOffField();
522  }
523  }
524 #endif
525 
526 };
527 
528 
529 
530 #endif
531 
Bembidion_Adult::SetPPPThreshold
void SetPPPThreshold(double a_thresh)
Definition: bembidion_all.h:310
struct_Bembidion::HowMany
int HowMany
Definition: bembidion_all.h:121
bob_Egg
Definition: bembidion_all.h:62
param_List15::nsteps
int nsteps
Definition: bembidion_all.h:108
Bembidion_Adult::BeginStep
virtual void BeginStep()
Adult BeginStep.
Definition: Bembidion_all.cpp:2189
Bembidion_Adult::st_Aging
bool st_Aging()
Daily ageing.
Definition: Bembidion_all.cpp:1681
tobs_PDeveloping
Definition: bembidion_all.h:45
Bembidion_Egg_List::AddEgg
void AddEgg(int x, int y)
Add an egg to the list.
Definition: bembidion_all.h:188
Bembidion_Pupae::m_AgeDegrees
double m_AgeDegrees
Record pupal day degrees.
Definition: bembidion_all.h:281
struct_Bembidion::L
Landscape * L
Definition: bembidion_all.h:119
param_List15::BeenThereY
int BeenThereY[101]
Definition: bembidion_all.h:107
Bembidion_Adult::DDepMort
bool DDepMort()
Density-dependent mortality.
Definition: Bembidion_all.cpp:2321
Bembidion_Larvae::st_Develop
int st_Develop()
Larvae state development.
Definition: Bembidion_all.cpp:885
Bembidion_Adult::Bembidion_Adult
Bembidion_Adult(int x, int y, Landscape *L, Bembidion_Population_Manager *BPM)
Definition: Bembidion_all.cpp:1366
Bembidion_Adult::pPoint
static param_Point pPoint
A helper attribute when simulating movement.
Definition: bembidion_all.h:367
Landscape::SupplyVegType
TTypesOfVegetation SupplyVegType(int a_x, int a_y)
Definition: landscape.h:1321
Bembidion_Adult::OldDirection
int OldDirection
The last direction moved.
Definition: bembidion_all.h:359
Landscape::SupplyElementType
TTypesOfLandscapeElement SupplyElementType(int a_polyref)
Definition: landscape.h:1110
Bembidion_Larvae::st_Pupate
void st_Pupate()
Larvae state pupation.
Definition: Bembidion_all.cpp:928
Bembidion_Population_Manager
The population manager class for beetles.
Definition: bembidion_all.h:385
Bembidion_Pupae::st_Develop
int st_Develop()
Pupal state development.
Definition: Bembidion_all.cpp:1235
param_List15
Definition: bembidion_all.h:103
Bembidion_Adult::~Bembidion_Adult
virtual ~Bembidion_Adult()
Definition: Bembidion_all.cpp:1378
Bembidion_Population_Manager::CreateObjects
void CreateObjects(int ob_type, TAnimal *pvo, void *null, struct_Bembidion *data, int number)
Method to add beetles to the population.
Definition: Bembidion_all.cpp:2942
Bembidion_Adult::CanReproduce
void CanReproduce()
Does reproduction if possible.
Definition: Bembidion_all.cpp:1862
Bembidion_Larvae::ReInit
void ReInit(int x, int y, Landscape *L, Bembidion_Population_Manager *BPM)
ReInit for object pool.
Definition: Bembidion_all.cpp:656
Bembidion_Adult::Reproduce
void Reproduce(int p_x, int p_y)
Produces the eggs.
Definition: Bembidion_all.cpp:1910
Bembidion_Population_Manager::TheRipleysOutputProbe
virtual void TheRipleysOutputProbe(FILE *a_prb)
Special output functionality.
Definition: Bembidion_all.cpp:3007
Bembidion_Larvae::Step
virtual void Step()
Larvae Step code.
Definition: Bembidion_all.cpp:961
Bembidion_Population_Manager::m_EPopSize
int m_EPopSize
To store the current population size.
Definition: bembidion_all.h:455
bob_Adult
Definition: bembidion_all.h:65
Bembidion_Population_Manager::m_LDayDeg
double m_LDayDeg[365][3]
Storage for daily day degrees for larve.
Definition: bembidion_all.h:463
Bembidion_Pupae::st_Emerge
void st_Emerge()
Pupal state emergence.
Definition: Bembidion_all.cpp:1281
Bembidion_Adult::st_Aggregate
int st_Aggregate()
Aggregation behaviour.
Definition: Bembidion_all.cpp:1624
Bembidion_Base
The class describing the base class for beetle objects objects.
Definition: bembidion_all.h:141
param_Point::x
int x
Definition: bembidion_all.h:97
Bembidion_Population_Manager::m_AdultPosMap
SimplePositionMap * m_AdultPosMap
Optimsied map of adult positions.
Definition: bembidion_all.h:472
tobs_PDying
Definition: bembidion_all.h:47
Bembidion_Population_Manager::Bembidion_Population_Manager
Bembidion_Population_Manager(Landscape *p_L)
Constructor.
Definition: Bembidion_all.cpp:2355
Bembidion_Egg_List::m_DayMade
int m_DayMade
Definition: bembidion_all.h:207
Bembidion_Population_Manager::Init
virtual void Init(void)
Intialises the population manager.
Definition: Bembidion_all.cpp:2408
Bembidion_Pupae::KillThis
virtual void KillThis()
Kill this pupa.
Definition: Bembidion_all.cpp:1297
Bembidion_Population_Manager::m_AdPopSize
int m_AdPopSize
To store the current population size.
Definition: bembidion_all.h:453
Bembidion_Egg_List
The class describing the beetle Egg_List objects.
Definition: bembidion_all.h:172
tobs_EDying
Definition: bembidion_all.h:39
Bembidion_Population_Manager::DoAlmostLast
virtual void DoAlmostLast(void)
Removes dead or pupated larvae from the simulation.
Definition: Bembidion_all.cpp:2736
Bembidion_Adult::st_Forage
int st_Forage()
Foraging behaviour.
Definition: Bembidion_all.cpp:1604
BeetleObjects
BeetleObjects
Definition: bembidion_all.h:60
Bembidion_Population_Manager::LDDepMort1
double LDDepMort1
Storage for density-dependent mortality parameter.
Definition: bembidion_all.h:476
Bembidion_Population_Manager::SupplyEDayDeg
double SupplyEDayDeg(int day)
Get egg day degress for a specific day.
Definition: bembidion_all.h:416
Bembidion_Population_Manager::~Bembidion_Population_Manager
virtual ~Bembidion_Population_Manager()
Destructor.
Definition: Bembidion_all.cpp:2393
tobs_Destroy
Definition: bembidion_all.h:55
Bembidion_Pupae::Bembidion_Pupae
Bembidion_Pupae(int x, int y, Landscape *L, Bembidion_Population_Manager *BPM)
Pupae class constructor.
Definition: Bembidion_all.cpp:1020
Bembidion_Population_Manager::m_PPopSize
int m_PPopSize
To store the current population size.
Definition: bembidion_all.h:459
Bembidion_Population_Manager::TheAOROutputProbe
virtual void TheAOROutputProbe()
Special output functionality.
Definition: Bembidion_all.cpp:3049
Bembidion_Adult::SetBodyBurden
void SetBodyBurden(double a_pcide)
Definition: bembidion_all.h:308
Bembidion_Population_Manager::m_LarvaePosMap
SimplePositionMap * m_LarvaePosMap
Optimised map of larval positions.
Definition: bembidion_all.h:470
struct_Bembidion::y
int y
Definition: bembidion_all.h:118
Bembidion_Pupae::BeginStep
virtual void BeginStep()
Pupae BeginStep code.
Definition: Bembidion_all.cpp:1304
struct_Bembidion::DayDegrees
int DayDegrees
Definition: bembidion_all.h:116
Bembidion_Base::ReInit
void ReInit(int x, int y, Landscape *L, Bembidion_Population_Manager *BPM)
ReInit for object pool.
Definition: Bembidion_all.cpp:213
param_Point::y
int y
Definition: bembidion_all.h:98
Bembidion_Population_Manager::m_LPopSize
int m_LPopSize
To store the current population size.
Definition: bembidion_all.h:457
Bembidion_Adult::pList
static param_List15 pList
A helper attribute when simulating movement.
Definition: bembidion_all.h:365
tobs_LDeveloping
Definition: bembidion_all.h:41
Bembidion_Base::Bembidion_Base
Bembidion_Base(int x, int y, Landscape *L, Bembidion_Population_Manager *BPM)
Constructor.
Definition: Bembidion_all.cpp:205
Bembidion_Adult::SetAdultPPPElimRate
void SetAdultPPPElimRate(double a_rate)
Definition: bembidion_all.h:316
Landscape
The landscape class containing all environmental and topographical data.
Definition: landscape.h:112
Bembidion_Adult::MoveTo
void MoveTo(int p_dist, unsigned p_direction, int p_turning)
Moves attempting egg laying under way.
Definition: Bembidion_all.cpp:1746
Bembidion_Larvae::KillThis
virtual void KillThis()
Kill this larva.
Definition: Bembidion_all.cpp:946
TTypesOfVegetation
TTypesOfVegetation
Definition: tov_declaration.h:30
Bembidion_Population_Manager::SupplyAdPopSize
int SupplyAdPopSize()
Get adult population size.
Definition: bembidion_all.h:408
bob_Larva
Definition: bembidion_all.h:63
tobs_Pupating
Definition: bembidion_all.h:42
Bembidion_Adult::st_Dispersal
int st_Dispersal()
Intiate Dispersal behaviour.
Definition: Bembidion_all.cpp:1669
TAnimal
The base class for all ALMaSS animal classes.
Definition: populationmanager.h:205
param_Point
Definition: bembidion_all.h:94
Bembidion_Population_Manager::Catastrophe
virtual void Catastrophe()
Method to arbitrarily alter populations size.
Definition: Bembidion_all.cpp:3060
Bembidion_Adult::ReInit
void ReInit(int x, int y, Landscape *L, Bembidion_Population_Manager *BPM)
ReInit for object pool.
Definition: Bembidion_all.cpp:1372
Bembidion_Adult::m_CanReproduce
bool m_CanReproduce
Signal reproductive readiness.
Definition: bembidion_all.h:363
Bembidion_Larvae::DailyMortality
virtual bool DailyMortality()
Larvae non-temperature or density related mortality.
Definition: Bembidion_all.cpp:1004
tobs_Hatching
Definition: bembidion_all.h:38
Bembidion_Adult::DailyMortality
virtual bool DailyMortality()
Density-independent mortality.
Definition: Bembidion_all.cpp:2306
Bembidion_Population_Manager::The_Landscape
Landscape * The_Landscape
Pointer to the landscape.
Definition: bembidion_all.h:451
Bembidion_Adult::SetPPPEffectProbDecay
void SetPPPEffectProbDecay(double a_decay)
Definition: bembidion_all.h:314
Bembidion_Egg_List::st_Develop
int st_Develop()
Egg_List state development.
Definition: Bembidion_all.cpp:289
Bembidion_Egg_List::Bembidion_Egg_List
Bembidion_Egg_List(int today, Bembidion_Population_Manager *BPM, Landscape *L)
Egg_List class constructor.
Definition: Bembidion_all.cpp:281
probe_data
Data structure to hold & output probe data probe data is designed to be used to return the number of ...
Definition: populationmanager.h:283
Population_Manager
Base class for all population managers.
Definition: populationmanager.h:424
Bembidion_Population_Manager::LDDepMort0
int LDDepMort0
Storage for density-dependent mortality parameter.
Definition: bembidion_all.h:474
Bembidion_Larvae
The class describing the beetle larvae objects.
Definition: bembidion_all.h:217
struct_Bembidion::x
int x
Definition: bembidion_all.h:117
Bembidion_Adult::m_currentPPPEffectProb
double m_currentPPPEffectProb
Current effect probability.
Definition: bembidion_all.h:373
Bembidion_Adult::m_EggCounter
int m_EggCounter
The number of eggs produced.
Definition: bembidion_all.h:361
Bembidion_Adult::InternalPesticideHandlingAndResponse
virtual void InternalPesticideHandlingAndResponse()
Hand pesticide events code for the beetle.
Definition: Bembidion_all.cpp:2157
tobs_Aggregating
Definition: bembidion_all.h:50
Bembidion_Population_Manager::ADDepMort1
double ADDepMort1
Storage for density-dependent mortality parameter.
Definition: bembidion_all.h:480
tole_Orchard
Definition: tole_declaration.h:71
Bembidion_Adult::MoveToAggr
int MoveToAggr(int p_dist, unsigned p_direction, int p_turning)
Moves using a stopping rule for hibernation.
Definition: Bembidion_all.cpp:1974
Bembidion_Adult::m_negDegrees
double m_negDegrees
The number of negative day degrees experienced.
Definition: bembidion_all.h:354
tobs_ADying
Definition: bembidion_all.h:53
TListOfEggs
vector< APoint > TListOfEggs
Definition: bembidion_all.h:70
Bembidion_Adult::m_body_burden
double m_body_burden
Current body burden of pesticide.
Definition: bembidion_all.h:371
struct_Bembidion::BPM
Bembidion_Population_Manager * BPM
Definition: bembidion_all.h:120
Bembidion_Population_Manager::SupplyPupaePopSize
int SupplyPupaePopSize()
Get pupal population size.
Definition: bembidion_all.h:414
Bembidion_Adult::SetPPPEffectProb
void SetPPPEffectProb(double a_conc)
Definition: bembidion_all.h:312
Bembidion_Pupae
The class describing the beetle pupae objects.
Definition: bembidion_all.h:255
Bembidion_Population_Manager::DoBefore
virtual void DoBefore(void)
Replaces the Step function for the Egg_List.
Definition: Bembidion_all.cpp:2671
Bembidion_Pupae::DailyMortality
virtual bool DailyMortality()
Pupae non-temperature or density related mortality.
Definition: Bembidion_all.cpp:1352
Bembidion_Population_Manager::m_EList
Bembidion_Egg_List * m_EList[365]
Replacement for TheArray[0].
Definition: bembidion_all.h:484
Bembidion_Adult::Step
virtual void Step()
Adult Step.
Definition: Bembidion_all.cpp:2213
Bembidion_Population_Manager::SupplyLDayDeg
double SupplyLDayDeg(int L, int day)
Get larval day degress for a specific dayand instar.
Definition: bembidion_all.h:418
struct_Bembidion
A data class for Bembidion data.
Definition: bembidion_all.h:113
Bembidion_Larvae::OnFarmEvent
virtual bool OnFarmEvent(FarmToDo event)
Larvae reactions to management events.
Definition: Bembidion_all.cpp:664
Bembidion_Base::CurrentBState
TTypesOfBeetleState CurrentBState
Current behavioural state.
Definition: bembidion_all.h:159
tobs_Emerging
Definition: bembidion_all.h:46
bob_Pupa
Definition: bembidion_all.h:64
TAnimal::CopyMyself
virtual void CopyMyself()
Definition: populationmanager.h:224
Bembidion_Egg_List::DeleteEgg
void DeleteEgg(int x, int y)
Remove an egg from the list.
Bembidion_Adult::m_AdultPPPElimRate
static double m_AdultPPPElimRate
the daily elimination rate for pesticides
Definition: bembidion_all.h:369
Bembidion_Base::st_Die
virtual void st_Die()
Common state Die.
Definition: Bembidion_all.cpp:224
Bembidion_Larvae::BeginStep
virtual void BeginStep()
Larvae class BeginStep code.
Definition: Bembidion_all.cpp:953
Bembidion_Adult
The class describing the adult (female) beetle objects.
Definition: bembidion_all.h:291
Population_Manager::m_TheLandscape
Landscape * m_TheLandscape
Definition: populationmanager.h:515
Bembidion_Adult::Init
void Init()
Intitialise attribute values.
Definition: Bembidion_all.cpp:1383
Bembidion_Adult::st_Hibernate
int st_Hibernate()
Hibernation behaviour.
Definition: Bembidion_all.cpp:1635
tole_Field
Definition: tole_declaration.h:43
Bembidion_Larvae::Bembidion_Larvae
Bembidion_Larvae(int x, int y, Landscape *L, Bembidion_Population_Manager *BPM)
Larvae class constructor.
Definition: Bembidion_all.cpp:647
Bembidion_Adult::OnFarmEvent
virtual bool OnFarmEvent(FarmToDo event)
Adult reactions to management events.
Definition: Bembidion_all.cpp:1397
Bembidion_Pupae::ReInit
void ReInit(int x, int y, Landscape *L, Bembidion_Population_Manager *BPM)
ReInit for object pool.
Definition: Bembidion_all.cpp:1028
Bembidion_Egg_List::st_Hatch
void st_Hatch()
Egg_List state hatching.
Definition: Bembidion_all.cpp:300
Bembidion_Population_Manager::m_PDayDeg
double m_PDayDeg[365]
Storage for daily day degrees for pupae.
Definition: bembidion_all.h:465
SimulationName
const char * SimulationName
Definition: Bembidion_all.cpp:93
Bembidion_Base::CopyMyselfB
void CopyMyselfB(int a_beetle)
For experimental purposes.
Definition: Bembidion_all.cpp:258
Bembidion_Population_Manager::SupplyLarvaePopSize
int SupplyLarvaePopSize()
Get larval population size.
Definition: bembidion_all.h:412
Bembidion_Adult::m_PPPThreshold
static double m_PPPThreshold
PPP effects threshold.
Definition: bembidion_all.h:375
Bembidion_Population_Manager::TheReallyBigOutputProbe
virtual void TheReallyBigOutputProbe()
Special output functionality.
Definition: Bembidion_all.cpp:3030
CompareEggX::operator()
bool operator()(APoint A1, APoint A2) const
Definition: bembidion_all.h:131
Bembidion_Larvae::m_AgeDegrees
double m_AgeDegrees
Record larvae day degrees.
Definition: bembidion_all.h:242
Bembidion_Pupae::Step
virtual void Step()
Pupae Step code.
Definition: Bembidion_all.cpp:1312
Bembidion_Pupae::OnFarmEvent
virtual bool OnFarmEvent(FarmToDo event)
Pupal reactions to management events.
Definition: Bembidion_all.cpp:1035
tobs_Dispersing
Definition: bembidion_all.h:52
Bembidion_Population_Manager::SupplyPDayDeg
double SupplyPDayDeg(int day)
Get pupal day degress for a specific day.
Definition: bembidion_all.h:420
TTypesOfLandscapeElement
TTypesOfLandscapeElement
Definition: tole_declaration.h:36
Bembidion_Population_Manager::ADDepMort0
int ADDepMort0
Storage for density-dependent mortality parameter.
Definition: bembidion_all.h:478
tobs_EDeveloping
Definition: bembidion_all.h:37
param_Point::direction
unsigned direction
Definition: bembidion_all.h:99
Bembidion_Population_Manager::DoFirst
virtual void DoFirst(void)
Does day degree development calculations here.
Definition: Bembidion_all.cpp:2559
Bembidion_Adult::EndStep
virtual void EndStep()
Adult EndStep.
Definition: Bembidion_all.cpp:2197
Bembidion_Pupae::m_DayMade
int m_DayMade
Definition: bembidion_all.h:283
Bembidion_Base::m_OurPopulation
Bembidion_Population_Manager * m_OurPopulation
Pointer to the population manager.
Definition: bembidion_all.h:161
Bembidion_Population_Manager::m_EDayDeg
double m_EDayDeg[365]
Storage for daily day degrees for eggs.
Definition: bembidion_all.h:461
Bembidion_Base::EndStep
virtual void EndStep()
EndStep - empty.
Definition: bembidion_all.h:154
Bembidion_Egg_List::SortXR
void SortXR()
Definition: Bembidion_all.cpp:634
Bembidion_Population_Manager::SupplyEggPopSize
int SupplyEggPopSize()
Get egg population size.
Definition: bembidion_all.h:410
tobs_LDying
Definition: bembidion_all.h:43
Bembidion_Egg_List::BeginStep
virtual void BeginStep()
Egg_List class BeginStep code.
Definition: Bembidion_all.cpp:323
Bembidion_Larvae::m_LarvalStage
int m_LarvalStage
Current larval growth stage (1-3)
Definition: bembidion_all.h:244
Bembidion_Egg_List::EggList
TListOfEggs EggList
The list of eggs.
Definition: bembidion_all.h:197
Bembidion_Population_Manager::TodaysEggProduction
int TodaysEggProduction
Daily temperature determined egg production.
Definition: bembidion_all.h:482
FarmToDo
FarmToDo
Definition: treatment.h:31
tobs_Hibernating
Definition: bembidion_all.h:51
Bembidion_Population_Manager::Probe
virtual float Probe(int ListIndex, probe_data *p_TheProbe)
Overides the Population_Manager::Probe method.
Definition: Bembidion_all.cpp:2745
Bembidion_Base::BeginStep
virtual void BeginStep()
BeginStep - empty.
Definition: bembidion_all.h:150
Bembidion_Adult::m_HibernateDegrees
double m_HibernateDegrees
The number of day degrees experienced in the spring which may trigger dispersal.
Definition: bembidion_all.h:356
Bembidion_Population_Manager::DoLast
virtual void DoLast(void)
Adds output adult locations to DoLast.
Definition: Bembidion_all.cpp:2709
Bembidion_Base::Step
virtual void Step()
Step - empty.
Definition: bembidion_all.h:152
Bembidion_Adult::WinterMort
bool WinterMort()
Density-independent winter mortality.
Definition: Bembidion_all.cpp:1698
Bembidion_Larvae::m_DayMade
int m_DayMade
Definition: bembidion_all.h:246
tobs_Foraging
Definition: bembidion_all.h:49
Bembidion_Adult::MoveTo_quality_assess
int MoveTo_quality_assess()
Moves w.r.t. habitat quality only.
Definition: Bembidion_all.cpp:1931
Bembidion_Adult::m_PPPEffectProb
static double m_PPPEffectProb
Effect probability on threshold excedence.
Definition: bembidion_all.h:377
CompareEggX
Function class to compare to Eggs X.
Definition: bembidion_all.h:129
Bembidion_Adult::DailyMovement
int DailyMovement(int p_distance, bool disp_aggreg)
Initiates the daily movement for the beelt.
Definition: Bembidion_all.cpp:1724
Bembidion_Population_Manager::IsStartHabitat
bool IsStartHabitat(int a_x, int a_y)
Used to specify legal starting habitats for simulation start-up.
Definition: Bembidion_all.cpp:2535
Bembidion_Egg_List::Step
virtual void Step()
Egg_List class Step code.
Definition: Bembidion_all.cpp:330
tobs_Initiation
Definition: bembidion_all.h:35
TTypesOfBeetleState
TTypesOfBeetleState
Definition: bembidion_all.h:33
Bembidion_Population_Manager::m_MoveMap
MovementMap * m_MoveMap
Map of suitability for movement.
Definition: bembidion_all.h:468
Bembidion_Egg_List::DailyMortality
void DailyMortality()
Egg_List non-temperature or density related mortality.
Definition: Bembidion_all.cpp:363
Bembidion_Larvae::TempRelatedLarvalMortality
bool TempRelatedLarvalMortality(int temp2)
Determine larval temperature related mortality.
Definition: Bembidion_all.cpp:864
Bembidion_Adult::m_PPPEffectProbDecay
static double m_PPPEffectProbDecay
Effect probability on threshold excedence.
Definition: bembidion_all.h:379
param_List15::BeenThereX
int BeenThereX[101]
Definition: bembidion_all.h:106