ALMaSS Bembidion ODdox
1.1
The bembidion model description following ODdox protocol
|
Go to the documentation of this file.
26 #ifndef Bembidion_allH
27 #define Bembidion_allH
80 class SimplePositionMap;
132 return (A1.m_x > A2.m_x);
337 void MoveTo(
int p_dist,
unsigned p_direction,
int p_turning);
341 int MoveToAggr(
int p_dist,
unsigned p_direction,
int p_turning);
392 virtual void Init (
void);
400 virtual void DoLast (
void);
432 #ifdef __BEETLEPESTICIDE1
434 void LocOutputError(
void );
436 void LocOutputOpen(
void );
438 void DoInFieldLocationOutput();
440 #ifdef __RECORD_RECOVERY_POLYGONS
442 void RecordRecoveryPolygons();
443 int m_RecoveryPolygons[101];
444 int m_RecoveryPolygonsC[101];
486 #ifdef __BEETLEPESTICIDE1
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 );
510 void RecordPesticideMortLoc(
int a_x,
int a_y)
void SetPPPThreshold(double a_thresh)
virtual void BeginStep()
Adult BeginStep.
bool st_Aging()
Daily ageing.
void AddEgg(int x, int y)
Add an egg to the list.
double m_AgeDegrees
Record pupal day degrees.
bool DDepMort()
Density-dependent mortality.
int st_Develop()
Larvae state development.
Bembidion_Adult(int x, int y, Landscape *L, Bembidion_Population_Manager *BPM)
static param_Point pPoint
A helper attribute when simulating movement.
TTypesOfVegetation SupplyVegType(int a_x, int a_y)
int OldDirection
The last direction moved.
TTypesOfLandscapeElement SupplyElementType(int a_polyref)
void st_Pupate()
Larvae state pupation.
The population manager class for beetles.
int st_Develop()
Pupal state development.
virtual ~Bembidion_Adult()
void CreateObjects(int ob_type, TAnimal *pvo, void *null, struct_Bembidion *data, int number)
Method to add beetles to the population.
void CanReproduce()
Does reproduction if possible.
void ReInit(int x, int y, Landscape *L, Bembidion_Population_Manager *BPM)
ReInit for object pool.
void Reproduce(int p_x, int p_y)
Produces the eggs.
virtual void TheRipleysOutputProbe(FILE *a_prb)
Special output functionality.
virtual void Step()
Larvae Step code.
int m_EPopSize
To store the current population size.
double m_LDayDeg[365][3]
Storage for daily day degrees for larve.
void st_Emerge()
Pupal state emergence.
int st_Aggregate()
Aggregation behaviour.
The class describing the base class for beetle objects objects.
SimplePositionMap * m_AdultPosMap
Optimsied map of adult positions.
Bembidion_Population_Manager(Landscape *p_L)
Constructor.
virtual void Init(void)
Intialises the population manager.
virtual void KillThis()
Kill this pupa.
int m_AdPopSize
To store the current population size.
The class describing the beetle Egg_List objects.
virtual void DoAlmostLast(void)
Removes dead or pupated larvae from the simulation.
int st_Forage()
Foraging behaviour.
double LDDepMort1
Storage for density-dependent mortality parameter.
double SupplyEDayDeg(int day)
Get egg day degress for a specific day.
virtual ~Bembidion_Population_Manager()
Destructor.
Bembidion_Pupae(int x, int y, Landscape *L, Bembidion_Population_Manager *BPM)
Pupae class constructor.
int m_PPopSize
To store the current population size.
virtual void TheAOROutputProbe()
Special output functionality.
void SetBodyBurden(double a_pcide)
SimplePositionMap * m_LarvaePosMap
Optimised map of larval positions.
virtual void BeginStep()
Pupae BeginStep code.
void ReInit(int x, int y, Landscape *L, Bembidion_Population_Manager *BPM)
ReInit for object pool.
int m_LPopSize
To store the current population size.
static param_List15 pList
A helper attribute when simulating movement.
Bembidion_Base(int x, int y, Landscape *L, Bembidion_Population_Manager *BPM)
Constructor.
void SetAdultPPPElimRate(double a_rate)
The landscape class containing all environmental and topographical data.
void MoveTo(int p_dist, unsigned p_direction, int p_turning)
Moves attempting egg laying under way.
virtual void KillThis()
Kill this larva.
int SupplyAdPopSize()
Get adult population size.
int st_Dispersal()
Intiate Dispersal behaviour.
The base class for all ALMaSS animal classes.
virtual void Catastrophe()
Method to arbitrarily alter populations size.
void ReInit(int x, int y, Landscape *L, Bembidion_Population_Manager *BPM)
ReInit for object pool.
bool m_CanReproduce
Signal reproductive readiness.
virtual bool DailyMortality()
Larvae non-temperature or density related mortality.
virtual bool DailyMortality()
Density-independent mortality.
Landscape * The_Landscape
Pointer to the landscape.
void SetPPPEffectProbDecay(double a_decay)
int st_Develop()
Egg_List state development.
Bembidion_Egg_List(int today, Bembidion_Population_Manager *BPM, Landscape *L)
Egg_List class constructor.
Data structure to hold & output probe data probe data is designed to be used to return the number of ...
Base class for all population managers.
int LDDepMort0
Storage for density-dependent mortality parameter.
The class describing the beetle larvae objects.
double m_currentPPPEffectProb
Current effect probability.
int m_EggCounter
The number of eggs produced.
virtual void InternalPesticideHandlingAndResponse()
Hand pesticide events code for the beetle.
double ADDepMort1
Storage for density-dependent mortality parameter.
int MoveToAggr(int p_dist, unsigned p_direction, int p_turning)
Moves using a stopping rule for hibernation.
double m_negDegrees
The number of negative day degrees experienced.
vector< APoint > TListOfEggs
double m_body_burden
Current body burden of pesticide.
Bembidion_Population_Manager * BPM
int SupplyPupaePopSize()
Get pupal population size.
void SetPPPEffectProb(double a_conc)
The class describing the beetle pupae objects.
virtual void DoBefore(void)
Replaces the Step function for the Egg_List.
virtual bool DailyMortality()
Pupae non-temperature or density related mortality.
Bembidion_Egg_List * m_EList[365]
Replacement for TheArray[0].
virtual void Step()
Adult Step.
double SupplyLDayDeg(int L, int day)
Get larval day degress for a specific dayand instar.
A data class for Bembidion data.
virtual bool OnFarmEvent(FarmToDo event)
Larvae reactions to management events.
TTypesOfBeetleState CurrentBState
Current behavioural state.
virtual void CopyMyself()
void DeleteEgg(int x, int y)
Remove an egg from the list.
static double m_AdultPPPElimRate
the daily elimination rate for pesticides
virtual void st_Die()
Common state Die.
virtual void BeginStep()
Larvae class BeginStep code.
The class describing the adult (female) beetle objects.
Landscape * m_TheLandscape
void Init()
Intitialise attribute values.
int st_Hibernate()
Hibernation behaviour.
Bembidion_Larvae(int x, int y, Landscape *L, Bembidion_Population_Manager *BPM)
Larvae class constructor.
virtual bool OnFarmEvent(FarmToDo event)
Adult reactions to management events.
void ReInit(int x, int y, Landscape *L, Bembidion_Population_Manager *BPM)
ReInit for object pool.
void st_Hatch()
Egg_List state hatching.
double m_PDayDeg[365]
Storage for daily day degrees for pupae.
const char * SimulationName
void CopyMyselfB(int a_beetle)
For experimental purposes.
int SupplyLarvaePopSize()
Get larval population size.
static double m_PPPThreshold
PPP effects threshold.
virtual void TheReallyBigOutputProbe()
Special output functionality.
bool operator()(APoint A1, APoint A2) const
double m_AgeDegrees
Record larvae day degrees.
virtual void Step()
Pupae Step code.
virtual bool OnFarmEvent(FarmToDo event)
Pupal reactions to management events.
double SupplyPDayDeg(int day)
Get pupal day degress for a specific day.
int ADDepMort0
Storage for density-dependent mortality parameter.
virtual void DoFirst(void)
Does day degree development calculations here.
virtual void EndStep()
Adult EndStep.
Bembidion_Population_Manager * m_OurPopulation
Pointer to the population manager.
double m_EDayDeg[365]
Storage for daily day degrees for eggs.
virtual void EndStep()
EndStep - empty.
int SupplyEggPopSize()
Get egg population size.
virtual void BeginStep()
Egg_List class BeginStep code.
int m_LarvalStage
Current larval growth stage (1-3)
TListOfEggs EggList
The list of eggs.
int TodaysEggProduction
Daily temperature determined egg production.
virtual float Probe(int ListIndex, probe_data *p_TheProbe)
Overides the Population_Manager::Probe method.
virtual void BeginStep()
BeginStep - empty.
double m_HibernateDegrees
The number of day degrees experienced in the spring which may trigger dispersal.
virtual void DoLast(void)
Adds output adult locations to DoLast.
virtual void Step()
Step - empty.
bool WinterMort()
Density-independent winter mortality.
int MoveTo_quality_assess()
Moves w.r.t. habitat quality only.
static double m_PPPEffectProb
Effect probability on threshold excedence.
Function class to compare to Eggs X.
int DailyMovement(int p_distance, bool disp_aggreg)
Initiates the daily movement for the beelt.
bool IsStartHabitat(int a_x, int a_y)
Used to specify legal starting habitats for simulation start-up.
virtual void Step()
Egg_List class Step code.
MovementMap * m_MoveMap
Map of suitability for movement.
void DailyMortality()
Egg_List non-temperature or density related mortality.
bool TempRelatedLarvalMortality(int temp2)
Determine larval temperature related mortality.
static double m_PPPEffectProbDecay
Effect probability on threshold excedence.