LSDTopoTools is composed of a number of objects (e.g., LSDRaster, LSDChannel, LSDFlowInfo, etc.) which are then called from programs we call driver functions. For more information, see the appendix [Code Structure].
Most of these functions drive specific kinds of analysis, but we do have a general program capable of a number of different analyses. This program is called the AnalysisDriver and is available here: https://github.com/LSDtopotools/LSDTopoTools_AnalysisDriver.
The analysis driver runs from parameter files. In this appendix we document the options for running the AnalysisDriver from a parameter file.
The format of AnalysisDriver parameter files is a keyword followed by a value.
The value can be a string, an integer, a boolean or a floating point number depending on the keyword.
The order of the keywords does not matter.
Comments can be inserted into the parameter file using the hash symbol (#
).
Keyword | Input type | Description |
---|---|---|
dem read extension |
string |
The type of data format used in reading rasters. Options are |
dem write extension |
string |
The type of data format used in reading rasters. Options are |
write path |
string |
The path to which data is written. |
read path |
string |
The path from which data is read. |
write fname |
string |
The prefix of rasters to be written without extension.
For example if this is |
read fname |
string |
The filename of the raster to be read without extension. For example if the raster is |
Important
|
These require booleans,
but in in the AnalysisDriver parameter file booleans must be true--anything else is considered false.
true is case sensitive, so DO NOT write True : it will be interpreted as false!!
|
Keyword | Input type | Description |
---|---|---|
write fill |
boolean |
Write a filled raster. |
write write trimmed and nodata filled |
boolean |
This is for data with nodata around the edges and holes of nodata in the middle. The holes are filled and the nodata around the edges is trimmed. |
write hillshade |
boolean |
Write a hillshade raster. |
write mask threshold |
boolean |
Write a masked raster. This will contain the original data but data above or below a threshold (you decide which one using other parameters) is changed to nodata. |
write curvature mask threshold |
boolean |
Write a mask raster based on curvature. This doesn’t retain the curvature values, but rather yeilds nodata if you are obve or below a threshold (you set that with a parameter) and otherwise 1. |
write slope |
boolean |
Write a slope raster. |
write curvature |
boolean |
Write a curvature raster. |
write planform curvature |
boolean |
Write a planform curvature raster. |
write tangential curvature |
boolean |
Write a tangential curvature raster. |
write profile curvature |
boolean |
Write a profile curvature raster. |
write aspect |
boolean |
Write an aspect raster. |
write topographic classification |
boolean |
Write a raster where convex, concave and planar regions are classified by an integer. |
write drainage area |
boolean |
Write a drainage area raster. |
write channel net |
boolean |
Write a channel network. This will print a raster of stream orders and a raster of junctions. |
write nodeindex |
boolean |
Writes a nodeindex raster. Used by developers for debugging. |
write write single thread channel |
boolean |
This extracts a single tread channel from a starting and ending node, and prints to csv. |
write chi map |
boolean |
This calculates the chi coordinate (a coordinate that integrates drainage area along channel length) from all base level nodes. |
write factor of safety at saturation |
boolean |
Calculates the factor of safety using an infinite slope analysis (similar to Sinmap or Shalstab). |
Keyword | Input type | Default | Description |
---|---|---|---|
min_slope_for_fill |
float |
0.0001 |
The minimum slope between nodes in a DEM: this is for filling flats |
fill_method |
string |
new_fill |
The method to be used for the fill function. Options are |
Keyword | Input type | Default | Description |
---|---|---|---|
hs_altitude |
float |
45 |
The altitude of the sun in degrees |
hs_azimuth |
float |
315 |
The azimuth of the "sun" in degrees |
hs_z_factor |
float |
1 |
The vertical exaggeration factor as a ratio |
Keyword | Input type | Default | Description |
---|---|---|---|
boundary conditions |
A four element list of strings |
n n n n |
This gives the boundary conditions at the north, east, south and west boundaries, respectively.
The options are |
Keyword | Input type | Default | Description |
---|---|---|---|
curvature_mask_nodataisbelowthreshold |
int |
1 |
This works like a boolean. Anything other than 1 is treated as false. If true, anything below the threshold is masked (i.e., turned to nodata). If false anything above threshold is turned to nodata. |
curvature_mask_threshold |
float |
0 |
A threshold value of curvature from which to derive the mask |
mask_nodataisbelowthreshold |
int |
1 |
This works like a boolean. Anything other than 1 is treated as false. If true, anything below the threshold is masked (i.e., turned to nodata). If false anything above threshold is turned to nodata. |
mask_threshold |
float |
0 |
A threshold value from which to derive the mask of nodata values. |
Keyword | Input type | Default | Description |
---|---|---|---|
A_0 |
float |
1000 |
A normalizing area for chi calculations in m2. This will affect absolute values of chi but not relative values of chi. |
m_over_n |
float |
0.4 |
The m/n ratio. |
threshold_area_for_chi |
float |
0 |
Threshold area for chi calculations in m2. Pixels with area lower than this threshold will be assigned nodata. |
Keyword | Input type | Default | Description |
---|---|---|---|
polyfit_window_radius |
float |
2*sqrt(2)*data_resolution |
The radius of nodes over which to fit the polynomial window in m. |
slope_method |
string |
d8 |
The method for calculating slope. Options are |
Keyword | Input type | Default | Description |
---|---|---|---|
drainage_area_method |
string |
dinf |
The method for calculating drainage area. The options are: |
Keyword | Input type | Default | Description |
---|---|---|---|
single_thread_channel_method |
string |
start_and_end_node |
The method for calculating drainage area. So far there is only one option: |
starting_channel_node |
int |
if none give you will get a user prompt |
The nodeindex of the starting node. |
ending_channel_node |
int |
if none give you will get a user prompt |
The nodeindex of the ending node. |
Keyword | Input type | Default | Description |
---|---|---|---|
pixel_threshold_for_channel_net |
int (but in program seems to be float…need to check) |
The number of pixels that are needed to initiate a channel. |
Keyword | Input type | Default | Description |
---|---|---|---|
root_cohesion |
float |
The root cohesion in N m-2. |
|
soil_density |
float |
The soil density in kg m-3 |
|
hydraulic_conductivity |
float |
The hydraulic conductivity in m day-1. |
|
soil_thickness |
float |
Soil thickness m (assumed to be the same everywhere). |
|
tan_phi |
float |
0.8 |
The friction angle (dimensionless). |