Preparing Inputs
To run GeoCARET command line interface (CLI), the input parameters for all dams/reservoirs being processed need to be supplied in a CSV file and provided as a command-line argument.
For example, if your input file is called dams.csv
and resides inside the data
sub-folder, you could run GeoCARET by typing:
> python heet_cli.py data/dams.csv projectname jobname standard
See Running the GeoCARET Script for full details of all the arguments that are passed to GeoCARET CLI. Information about running GeoCARET using an alternative installation with Docker can be found in Running the GeoCARET Docker Container.
Supported Geographical Region(s)
Due to limitations imposed by the extent of some GIS layers, the analysis is only possible for dam locations in the latitude range -60 to +60 decimal degrees (DD). Additionally, the analysis of dams at the locations falling within this range, but close to its upper and lower limits will fail if:
The HYDROBASINS level 12 subbasin the dam resides in partially lies outside of this range. - see GIS Assets, Lehner et al. [1].
The modelled reservoir extends outside of this range.
Input file specification
The User Inputs file, MUST meet the following file specification and constraints:
Hint
Data type Int means an integer variable, Str is a string, Bool is a boolean (1/0) and Num is a floating-point numerical variable.
name |
title |
description |
type |
required |
unique |
min |
max |
---|---|---|---|---|---|---|---|
|
Dam Identifier |
Dam identifier |
Int |
TRUE |
TRUE |
1 |
|
|
Country Name |
The name of the country the dam is located in. SHOULD be the ISO 3166 official short name (EN). |
Str |
TRUE |
FALSE |
||
|
Dam Name |
The name of the dam |
Str |
TRUE |
FALSE |
||
|
River Name |
The name of the river the dam will be constructed on |
Str |
FALSE |
FALSE |
||
|
Main Basin Name |
The name of main river basin the dam will be located in |
Str |
FALSE |
FALSE |
||
|
Dam Latitude |
The latitude of the dam location in decimal degrees |
Num |
TRUE |
FALSE |
-60 |
+60 |
|
Dam Longitude |
The longitude of the dam location in decimal degrees |
Num |
TRUE |
FALSE |
-180 |
+180 |
|
Dam Height |
The dam height in metres |
Num |
FALSE |
FALSE |
10 |
300 |
|
Full Supply Level |
The full supply level of the reservoir (masl) |
Num |
FALSE |
FALSE |
10 |
300 |
|
Power Capacity |
The installed power capacity of the dam in MegaWatts |
Num |
FALSE |
FALSE |
.001 |
2500 |
|
Turbine Efficiency |
The efficiency of the dam’s turbines, percent |
Num |
FALSE |
FALSE |
0 |
100 |
|
Power Plant Depth |
The depth of the power plant below the base of the dam wall in metres |
Num |
FALSE |
FALSE |
0 |
300 |
|
Year Commissioned |
Year Commissioned |
Num |
FALSE |
FALSE |
||
|
Future Dam Model |
A flag to indicate whether the dam should be modelled as a future or existing dam |
Bool |
TRUE |
FALSE |
Additionally:
The file MUST be in UTF-8
csv
format.Columns may be in any order.
At least one of
dam_height
,fsl_masl
and power capacity MUST be present.Capitalisation of column names is ignored, i.e. column names
dam_lat
,DAM_LAT
anddam_Lat
are all valid.Leading and trailing white spaces in column names are ignored.
Extra columns with additional variables may be present, but will be ignored.
Future Dams vs Existing Dams
GeoCARET can analyse new proposed sites, a.k.a. future dams as well as existing assets, a.k.a. existing dams.
By setting the future_dam_model
flag to true/false the user chooses whether to model individual dams as future/existing dams with the following constraints imposed:
Recommendations
Only the dams commissioned after year 2000 can be modelled as future dams, since the digital elevation model SRTM was developed in 2000 - see GIS Assets.
Only the dams commissioned before 2020 can be modelled as existing dams, since the landcover data currently is only available up to year 2020.
Dams commissioned between 2001 and 2019 (inclusive) can be modelled either as existing or future dams.
We recommend that existing dams commissioned in or after 2001 are modelled as future dams.
Modelling existing dams
Where dams are modelled as existing dams, the reservoir is delineated using landcover water pixels at a resolution of ~350m. The version of the landcover data year used for delineating existing reservoirs is chosen as follows. We select the earliest available dataset created after commissioning of the dam. For example for landcover data sets from years 1992, 2000, 2010 and 2020, a dam commissioned in year 1991 will be delineated using the landcover data from 1992; a dam commissioned in 1992 will be delineated using the data from the year 2000.
Modelling future dams
Where dams are modelled as future dams, the reservoir is delineated using the function delineate_future_reservoir
which extracts the reservoir by “flooding” the landscape.
The choice of the digital elevation model (DEM), e.g. DEM type and resolution, can be specified in delineator/heet_config.py
- see Configuration Options.
For landcover analysis, we select the first available data before commissioning of the dam. For example for a set of landcover maps availbale from years 1992, 2000, 2010 and 2020, if a dam is commissioned in 1993, the landcover analysis will be conducted using the landcover data from year 1992. If the landcover data preceding the inundation of the reservoir is not available, we apply the buffer zone method following the approach described in The G-res tool v2.1 Technical documentation. We use the landcover data from 1992 as the input to the buffer zone method as it is the oldest landcover data available.
User inputs file validation
Before the User Input file is uploaded to Google Earth Engine, it is checked for the potential problems listed below. If any issues are detected, the input file will be rejected, the GeoCARET tool will exit and the user will be asked to make corrections:
Duplicate column names: duplicate column names are present in the input file. This check is case insensitive and white space insensitive so column names
dam_lat
andDAM_LAT
in the same file are regarded as duplicates and are flagged for correction.Missing columns: one or more required columns are missing from the input file.All required columns must be present in the file in addition to one of
dam_height
,fsl_masl
andpower capacity
.Non uniqueness: one or more columns which should contain unique values, contain one or more duplicate values. All columns where the unique constraint is True must contain unique values.
Out of range values: One or more columns contain out of range values. When a min or max value is specified for a column, a range check is applied to determine whether the supplied values are in range. All values must be within range.
Mismatched data types: One or more columns contains value(s) which do not match the intended data type. All supplied values must match the specified data type of the column they are in e.g. numbers stored as strings e.g. “11,000” are not permitted in numeric or integer fields.