Gadget
Public Member Functions | List of all members
NumberPredator Class Reference

This is the class used to model the predation of stocks by a fleet that will catch a specified number of preys, calculating the catch by numbers, and not by biomass, of the prey available. More...

#include <numberpredator.h>

Inheritance diagram for NumberPredator:
Inheritance graph
Collaboration diagram for NumberPredator:
Collaboration graph

Public Member Functions

 NumberPredator (CommentStream &infile, const char *givenname, const IntVector &Areas, const TimeClass *const TimeInfo, Keeper *const keeper, Formula multscaler)
 This is the NumberPredator constructor. More...
 
virtual ~NumberPredator ()
 This is the default NumberPredator destructor. More...
 
virtual void Eat (int area, const AreaClass *const Area, const TimeClass *const TimeInfo)
 This will calculate the amount the predator consumes on a given area. More...
 
virtual void adjustConsumption (int area, const TimeClass *const TimeInfo)
 This will adjust the amount the predator consumes on a given area, to take oversconsumption into consideration. More...
 
virtual void Print (ofstream &outfile) const
 This function will print the predator information. More...
 
- Public Member Functions inherited from LengthPredator
 LengthPredator (const char *givenname, const IntVector &Areas, const TimeClass *const TimeInfo, Keeper *const keeper, Formula multscaler)
 This is the LengthPredator constructor. More...
 
virtual ~LengthPredator ()
 This is the default LengthPredator destructor. More...
 
virtual void Sum (const PopInfoVector &NumberInArea, int area)
 This will calculate the amount of prey that is consumed by the predator. More...
 
double getMultScaler () const
 This will return the multiplicative value used scale the catch. More...
 
virtual void setTimeMultiplier (const TimeClass *const TimeInfo, int quotastep, double value)
 This is a multiplier set in lengthpredator.
More...
 
virtual void Reset (const TimeClass *const TimeInfo)
 This function will reset the predation information. More...
 
- Public Member Functions inherited from PopPredator
 PopPredator (const char *givenname, const IntVector &areas, const LengthGroupDivision *const OtherLgrpDiv, const LengthGroupDivision *const GivenLgrpDiv)
 This is the PopPredator constructor to create a predator with a specified length group. More...
 
 PopPredator (const char *givenname, const IntVector &areas)
 This is the PopPredator constructor to create a predator without a specified length group. More...
 
virtual ~PopPredator ()
 This is the default PopPredator destructor. More...
 
virtual const PopInfoVectorgetConsumptionPopInfo (int area, const char *preyname) const
 This function will return the number of a prey on a specified area before the consumption calculation takes place. More...
 
virtual const PopInfoVectorgetPredatorNumber (int area) const
 This function will return the population number of the predator on a given area. More...
 
virtual const DoubleMatrixgetConsumption (int area, const char *preyname) const
 This will return the amount the predator consumes of a given prey on a given area. More...
 
virtual int hasOverConsumption (int area) const
 This will return the flag that denotes if the predator has overconsumed on a given area. More...
 
virtual const DoubleVectorgetOverConsumption (int area) const
 This will return the amount the predator overconsumes on a given area. More...
 
virtual double getTotalOverConsumption (int area) const
 This will return the total amount the predator overconsumes on a given area. More...
 
virtual const LengthGroupDivisiongetLengthGroupDiv () const
 This will return the length group information for the predator. More...
 
virtual double getConsumptionBiomass (int prey, int area) const
 This will return the biomass the predator consumes of a given prey on a given area. More...
 
virtual double getConsumptionRatio (int area, int prey, int len) const
 This will return the ratio used to split the predation between the areas and length groups. More...
 
const DoubleMatrixgetUseSuitability (int area, int prey) const
 This will return the suitability used by the predator for a given prey on a given area, adjusted to take any overconsumption into account. More...
 
void setPrey (PreyPtrVector &preyvec, Keeper *const keeper)
 This will select the preys that will be consumed by the predator. More...
 
- Public Member Functions inherited from Predator
 Predator (const char *givenname, const IntVector &Areas)
 This is the Predator constructor. More...
 
virtual ~Predator ()
 This is the default Predator destructor. More...
 
void setPrey (PreyPtrVector &preyvec, Keeper *const keeper)
 This will select the preys that will be consumed by the predator. More...
 
int doesEat (const char *preyname) const
 This function will check to see if the predator will consume a specified prey. More...
 
virtual void Initialise ()
 This will return the number of prey stocks that the predator will consume. More...
 
int numPreys () const
 
PreygetPrey (int i) const
 This will return a given prey. More...
 
const char * getPreyName (int i) const
 This will return the name of a given prey. More...
 
int didChange (int i, const TimeClass *const TimeInfo)
 This function will check to see if the suitability parameters for a given prey have changed on the current timestep. More...
 
const DoubleMatrixgetSuitability (int i) const
 This will return the suitability values for a given prey. More...
 
double getPreference (int i) const
 This will return the preference for a given prey. More...
 
PredatorType getType () const
 This will return the type of predator class. More...
 
- Public Member Functions inherited from HasName
 HasName ()
 This is the default HasName constructor. More...
 
virtual ~HasName ()
 This is the default HasName destructor. More...
 
 HasName (const char *givenname)
 This is the HasName constructor for a specified name. More...
 
const char * getName () const
 This will return a null terminated text string containing the name of the object. More...
 
- Public Member Functions inherited from LivesOnAreas
 LivesOnAreas ()
 This is the default LivesOnAreas constructor. More...
 
virtual ~LivesOnAreas ()
 This is the default LivesOnAreas destructor. More...
 
 LivesOnAreas (const IntVector &Areas)
 This is the LivesOnAreas constructor for a specified vector of areas. More...
 
int isInArea (int area) const
 This function will check whether the object is defined on a specified area. More...
 
IntVectorgetAreas ()
 This function will return the internal areas that the object is defined on. More...
 
int areaNum (int area) const
 This function will return the area associated with an internal area. More...
 

Additional Inherited Members

- Protected Member Functions inherited from Predator
void readSuitability (CommentStream &infile, const TimeClass *const TimeInfo, Keeper *const keeper)
 This function will read the suitability data from the input file. More...
 
- Protected Member Functions inherited from LivesOnAreas
void storeAreas (const IntVector &Areas)
 This function will store the internal areas to be used. More...
 
- Protected Attributes inherited from LengthPredator
Formula multi
 This is the multiplicative constant that can be used to scale the biomass consumed. More...
 
DoubleVector timeMultiplier
 
- Protected Attributes inherited from PopPredator
LengthGroupDivisionLgrpDiv
 This is the LengthGroupDivision used to store length information. More...
 
ConversionIndexCI
 This is the ConversionIndexPtrVector used to convert to the lengths groups for the length-based predator. More...
 
PopInfoMatrix prednumber
 This is the PopInfoMatrix used to store information on the number of predators for the current timestep. More...
 
DoubleMatrix overconsumption
 This is the DoubleMatrix used to store information on the overconsumption by the predators on the current timestep. More...
 
DoubleMatrixPtrMatrix consumption
 This is the DoubleMatrixPtrMatrix used to store information on the consumption by the predators on the current timestep. More...
 
DoubleMatrix totalconsumption
 This is the DoubleMatrix used to store information on the total consumption by the predators on the current timestep. More...
 
DoubleMatrix overcons
 This is the DoubleMatrix used to store information on the overconsumption by the predators on the current substep of the current timestep. More...
 
DoubleMatrixPtrMatrix cons
 This is the DoubleMatrixPtrMatrix used to store information on the consumption by the predators on the current substep of the current timestep. More...
 
DoubleMatrix totalcons
 This is the DoubleMatrix used to store information on the total consumption by the predators on the current substep of the current timestep. More...
 
DoubleMatrixPtrVector predratio
 This is the DoubleMatrixPtrVector used to store the ratio used to split the predation between the areas and length groups. More...
 
DoubleMatrixPtrMatrix usesuit
 This is the DoubleMatrixPtrMatrix used to store suitability information for the predators on the current timestep, adjusted to take account of any overconsumption. More...
 
IntVector hasoverconsumption
 This is the IntVector used to store information on whether any overconsumption has occured on the current timestep. More...
 
- Protected Attributes inherited from Predator
FormulaVector preference
 This is the FormulaVector used to store the prey preference parameters. More...
 
PredatorType type
 This denotes what type of predator class has been created. More...
 
- Protected Attributes inherited from LivesOnAreas
IntVector areas
 This is the IntVector of internal areas that the object is defined on. More...
 

Detailed Description

This is the class used to model the predation of stocks by a fleet that will catch a specified number of preys, calculating the catch by numbers, and not by biomass, of the prey available.

Constructor & Destructor Documentation

◆ NumberPredator()

NumberPredator::NumberPredator ( CommentStream infile,
const char *  givenname,
const IntVector Areas,
const TimeClass *const  TimeInfo,
Keeper *const  keeper,
Formula  multscaler 
)

This is the NumberPredator constructor.

Parameters
infileis the CommentStream to read the predation parameters from
givennameis the name of the predator
Areasis the IntVector of areas that the predator lives on
TimeInfois the TimeClass for the current model
keeperis the Keeper for the current model
multscaleris the Formula that can be used to scale the biomass consumed

◆ ~NumberPredator()

virtual NumberPredator::~NumberPredator ( )
inlinevirtual

This is the default NumberPredator destructor.

Member Function Documentation

◆ adjustConsumption()

void NumberPredator::adjustConsumption ( int  area,
const TimeClass *const  TimeInfo 
)
virtual

This will adjust the amount the predator consumes on a given area, to take oversconsumption into consideration.

Parameters
areais the area that the prey consumption is being calculated on
TimeInfois the TimeClass for the current model

Implements Predator.

◆ Eat()

void NumberPredator::Eat ( int  area,
const AreaClass *const  Area,
const TimeClass *const  TimeInfo 
)
virtual

This will calculate the amount the predator consumes on a given area.

Parameters
areais the area that the prey consumption is being calculated on
Areais the AreaClass for the current model
TimeInfois the TimeClass for the current model

Implements Predator.

◆ Print()

void NumberPredator::Print ( ofstream &  outfile) const
virtual

This function will print the predator information.

Parameters
outfileis the ofstream that all the model information gets sent to

Reimplemented from PopPredator.


The documentation for this class was generated from the following files: