7#ifndef SEIMS_SUBBASIN_CLS_H
8#define SEIMS_SUBBASIN_CLS_H
12#include "data_raster.hpp"
47 void SetArea(
const FLTPT area) { area_ = area; }
50 void SetSlope(
const FLTPT slp) { slope_ = slp; }
59 void SetPet(
const FLTPT pet) { pet_ = pet; }
62 void SetPerco(
const FLTPT perco) { perco_ = perco; }
65 void SetPerde(
const FLTPT perde) { deep_perco_ = perde; }
68 void SetEg(
const FLTPT eg) { revap_ = eg; }
71 void SetGw(
const FLTPT gw) { gw_ = gw; }
74 void SetQg(
const FLTPT qg) { qg_ = qg; }
77 void SetRg(
const FLTPT rg) { rg_ = rg; }
85 int GetId() {
return subbsn_id_; }
156 FLTPT depression_et_;
226 map<string, FloatRaster *>& rs_map,
int prefix_id);
231 map<string, FloatRaster *>& rs_map,
int prefix_id);
265 vector<int> subbasin_ids_;
271 map<int, Subbasin *> subbasin_objs_;
Base type of all interfaces.
Definition: basic.h:407
Simple wrappers of the API of MongoDB C driver mongo-c-driver, see MongoDB C Driver for more informat...
map< int, Subbasin * > & GetSubbasinObjects()
Get map of subbasin objects.
Definition: clsSubbasin.h:245
Subbasin(int id)
Constructor.
FLTPT GetPerde()
Get average deep percolation (mm)
Definition: clsSubbasin.h:109
void SetCellList(int n_cells, int *cells)
Set cell index list, as well as subbasin area.
~clsSubbasins()
Destructor.
FLTPT GetPet()
Get average PET.
Definition: clsSubbasin.h:103
clsSubbasins(map< string, IntRaster * > &rs_int_map, map< string, FloatRaster * > &rs_map, int prefix_id)
Constructor.
bool GetIsOutput()
Get the output flag (true mean output), the function will be deprecated. By LJ.
Definition: clsSubbasin.h:94
void SetSlopeCoefofBasin(const FLTPT slope_basin)
Set slope correction factor of current subbasin.
Definition: clsSubbasin.h:56
int * GetCells()
Get index of valid cells.
Definition: clsSubbasin.h:91
FLTPT GetArea()
area of subbasin
Definition: clsSubbasin.h:97
FLTPT GetSlopeCoef()
Get slope coefficient of basin.
Definition: clsSubbasin.h:115
FLTPT Subbasin2Basin(const string &key)
Get basin (watershed) scale variable (key) value.
int GetId()
Get subbasin ID.
Definition: clsSubbasin.h:85
void SetQg(const FLTPT qg)
Set groundwater discharge.
Definition: clsSubbasin.h:74
Subbasin * GetSubbasinByID(const int id)
Get single reach information by subbasin ID.
Definition: clsSubbasin.h:236
FLTPT GetSlope()
Get average slope (%)
Definition: clsSubbasin.h:112
void SetEg(const FLTPT eg)
groundwater revaporization
Definition: clsSubbasin.h:68
void SetPerde(const FLTPT perde)
Set average deep percolation (mm)
Definition: clsSubbasin.h:65
void SetSlope(FLTPT *slope)
Set slope of current subbasin as the average of all cells.
int GetSubbasinNumber()
Get subbasin number.
Definition: clsSubbasin.h:239
void SetRg(const FLTPT rg)
Set groundwater runoff.
Definition: clsSubbasin.h:77
FLTPT GetPerco()
Get average percolation (mm)
Definition: clsSubbasin.h:106
void SetSlope(const FLTPT slp)
average slope (%)
Definition: clsSubbasin.h:50
FLTPT GetGw()
Get groundwater storage.
Definition: clsSubbasin.h:121
void SetPet(const FLTPT pet)
pet
Definition: clsSubbasin.h:59
int GetCellCount()
Get valid cells number.
Definition: clsSubbasin.h:88
FLTPT GetEg()
groundwater revaporization
Definition: clsSubbasin.h:118
FLTPT GetQg()
Get groundwater discharge.
Definition: clsSubbasin.h:124
vector< int > & GetSubbasinIDs()
Get subbasin IDs.
Definition: clsSubbasin.h:242
void SetGw(const FLTPT gw)
Set groundwater storage.
Definition: clsSubbasin.h:71
void SetPerco(const FLTPT perco)
Set average percolation (mm)
Definition: clsSubbasin.h:62
bool CheckInputSize(int n)
Check input size.
void SetIsRevapChanged(const bool isrevap)
Is revap changed.
Definition: clsSubbasin.h:80
void SetSlopeCoefficient(FLTPT *rs_slope)
Set slope coefficient for each subbasin according to the basin slope.
FLTPT GetRg()
Get groundwater runoff.
Definition: clsSubbasin.h:127
static clsSubbasins * Init(map< string, IntRaster * > &rs_int_map, map< string, FloatRaster * > &rs_map, int prefix_id)
Check input parameters to ensure the successful constructor.
bool GetIsRevapChanged()
Get the Revap change flat (true mean changed from last time step)
Definition: clsSubbasin.h:100
void SetArea(const FLTPT area)
area of subbasin
Definition: clsSubbasin.h:47
Subbasin related parameters and methods.
Definition: clsSubbasin.h:27
Manager all Subbasin related parameters and methods.
Definition: clsSubbasin.h:214
Common Cross-platform Geographic Library (CCGL)
The SEIMS related definitions and utilities header.