DISPLACE  1.0
A spatial model of fisheries to help sustainable fishing and maritime spatial planning
Benthos.h
Go to the documentation of this file.
1 // --------------------------------------------------------------------------
2 // DISPLACE: DYNAMIC INDIVIDUAL VESSEL-BASED SPATIAL PLANNING
3 // AND EFFORT DISPLACEMENT
4 // Copyright (c) 2012-2019 Francois Bastardie <fba@aqua.dtu.dk>
5 
6 // This program is free software; you can redistribute it and/or modify
7 // it under the terms of the GNU General Public License as published by
8 // the Free Software Foundation; either version 2 of the License, or
9 // (at your option) any later version.
10 
11 // This program is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 // GNU General Public License for more details.
15 
16 // You should have received a copy of the GNU General Public License along
17 // with this program; if not, write to the Free Software Foundation, Inc.,
18 // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
19 // --------------------------------------------------------------------------
20 
21 #ifndef BENTHOS_H
22 #define BENTHOS_H
23 
24 #include <commons_global.h>
25 #include <vector>
26 #include <map>
27 #include <string>
28 #include <iostream>
29 #include "myutils.h"
30 #include "Node.h"
31 
33 {
34  public:
35  Benthos(int id,
36  int marine_landscape,
37  const vector<Node* > &nodes,
38  const vector<double> &prop_funcgr_biomass_per_node,
39  const vector<double> &prop_funcgr_number_per_node,
40  const vector<double> &meanw_funcgr_number_per_node,
41  const vector<double> &recovery_rates_per_funcgr,
42  const vector<double> &benthos_biomass_carrying_capacity_K_per_landscape_per_funcgr,
43  const vector<double> &benthos_number_carrying_capacity_K_per_landscape_per_funcgr,
45  const vector<double> &h_betas_per_pop);
46  virtual ~Benthos();
47  int get_id() const;
48  int get_marine_landscape() const;
49  const vector<Node* > &get_list_nodes() const;
50  const vector<double> &get_prop_funcgr_biomass_per_node() const;
51  const vector<double> &get_prop_funcgr_number_per_node() const;
52  const vector<double> &get_meanw_funcgr_per_node() const;
53  const vector<double> &get_recovery_rates_per_funcgr() const;
54  const vector<double> &get_benthos_biomass_carrying_capacity_K_per_landscape_per_funcgr() const;
55  const vector<double> &get_benthos_number_carrying_capacity_K_per_landscape_per_funcgr() const;
56  void recover_benthos_tot_biomass_per_funcgroup();
57  void recover_benthos_tot_number_per_funcgroup();
58 
59  const vector<double> &get_h_betas_per_pop() const; // link to Vessel::do_catch() harvest function
60 
61  protected:
62  private:
63  int id;
64  int marine_landscape;
65  // area distribution
66  vector<Node* > list_nodes;
67  // total biomass per functional group
68  vector<double> prop_funcgr_biomass_per_node;
69  vector<double> prop_funcgr_number_per_node;
70  vector<double> meanw_funcgr_per_node;
71  vector<double> recovery_rates_per_funcgr;
72  vector<double> benthos_biomass_carrying_capacity_K_per_landscape_per_funcgr;
73  vector<double> benthos_number_carrying_capacity_K_per_landscape_per_funcgr;
74 
75  vector<double> h_betas_per_pop;
76 };
77 #endif // BENTHOS_H
vector< Node * > nodes
Definition: main.cpp:270
bool is_benthos_in_numbers
Definition: main.cpp:228
Definition: Benthos.h:32
#define COMMONSSHARED_EXPORT
Definition: commons_global.h:23