Log In | Get Help   
Home My Page Projects Code Snippets Project Openings Mareframe
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files
[mareframe] Annotation of /trunk/gadget/quotapredator.h
[mareframe] / trunk / gadget / quotapredator.h Repository:
ViewVC logotype

Annotation of /trunk/gadget/quotapredator.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1 - (view) (download)

1 : agomez 1 #ifndef quotapredator_h
2 :     #define quotapredator_h
3 :    
4 :     #include "lengthpredator.h"
5 :    
6 :     /**
7 :     * \class QuotaPredator
8 :     * \brief This is the class used to model the predation of stocks by a fleet that will catch a proportion of the available biomass, according to a specified management catch-quota rule
9 :     */
10 :     class QuotaPredator : public LengthPredator {
11 :     public:
12 :     /**
13 :     * \brief This is the QuotaPredator constructor
14 :     * \param infile is the CommentStream to read the predation parameters from
15 :     * \param givenname is the name of the predator
16 :     * \param Areas is the IntVector of areas that the predator lives on
17 :     * \param TimeInfo is the TimeClass for the current model
18 :     * \param keeper is the Keeper for the current model
19 :     * \param multscaler is the Formula that can be used to scale the biomass consumed
20 :     */
21 :     QuotaPredator(CommentStream& infile, const char* givenname, const IntVector& Areas,
22 :     const TimeClass* const TimeInfo, Keeper* const keeper, Formula multscaler);
23 :     /**
24 :     * \brief This is the default QuotaPredator destructor
25 :     */
26 :     virtual ~QuotaPredator();
27 :     /**
28 :     * \brief This will calculate the amount the predator consumes on a given area
29 :     * \param area is the area that the prey consumption is being calculated on
30 :     * \param Area is the AreaClass for the current model
31 :     * \param TimeInfo is the TimeClass for the current model
32 :     */
33 :     virtual void Eat(int area, const AreaClass* const Area, const TimeClass* const TimeInfo);
34 :     /**
35 :     * \brief This will adjust the amount the predator consumes on a given area, to take oversconsumption into consideration
36 :     * \param area is the area that the prey consumption is being calculated on
37 :     * \param TimeInfo is the TimeClass for the current model
38 :     */
39 :     virtual void adjustConsumption(int area, const TimeClass* const TimeInfo);
40 :     /**
41 :     * \brief This function will print the predator information
42 :     * \param outfile is the ofstream that all the model information gets sent to
43 :     */
44 :     virtual void Print(ofstream& outfile) const;
45 :     protected:
46 :     /**
47 :     * \brief This function will calculate the quota based on the current biomass level of the prey
48 :     * \param biomass is the available biomass of the prey
49 :     * \return calculated quota
50 :     */
51 :     double calcQuota(double biomass);
52 :     /**
53 :     * \brief This is the identifier of the function to be used to calculate the fishing quota
54 :     */
55 :     int functionnumber;
56 :     /**
57 :     * \brief This is the name of the function to be used to calculate the fishing quota
58 :     */
59 :     char* functionname;
60 :     /**
61 :     * \brief This is the DoubleVector used to store the stock biomass levels
62 :     */
63 :     DoubleVector biomasslevel;
64 :     /**
65 :     * \brief This is the FormulaVector used to store the fishing quota levels
66 :     */
67 :     FormulaVector quotalevel;
68 :     /**
69 :     * \brief This is the DoubleVector used to store the calculated fishing quota
70 :     */
71 :     DoubleVector calcquota;
72 :     /**
73 :     * \brief This is the IntVector used to flag which preys are used to calculate the fishing quota levels
74 :     */
75 :     IntVector selectprey;
76 :     };
77 :    
78 :     #endif

root@forge.cesga.es
ViewVC Help
Powered by ViewVC 1.0.0  

Powered By FusionForge