Storage Capacity (Spatial Analyst) - ArcGIS Pro - Documentation
Storage Capacity (Spatial Analyst) - ArcGIS Pro - Documentation
In this topic
1. Summary
2. Usage
3. Parameters
4. Environments
5. Licensing information
Summary
Creates a table and a chart of elevations and corresponding storage capacities for an input surface raster. The tool calculates the surface area and total volume of
the underlying region at a series of elevation increments.
Usage
The tool creates a table of surface area and total volumes at a series of elevation increments. The table contains a record for every elevation increment for
each zone.
Use the Analysis type parameter (analysis_type in Python) to select surface area, volume calculations, or both. This determines the schema for tables and
charts. For example, if the Area option (AREA in Python) is selected, only an area field is created in the output table and the volume field is omitted. Likewise,
only one chart is created for the area elevation curve.
If no zones are specified, storage capacity is calculated using the analysis extent as a single zone. Specify an optional Input raster or feature zone data
parameter value (in_zone_data in Python) that represents the zones where storage capacities need to be calculated. For example, a zone can be a reservoir or
a detention basin. The tool supports calculations across multiple zones, and storage capacities are calculated independently at each zone based on a zone
field.
The elevation increments on which storage capacities are calculated are based on the Minimum elevation (min_elevation in Python), Maximum elevation
(max_elevation in Python), Increment type (increment_type in Python), and Increment (increment in Python) parameter values.
The default Minimum elevation and Maximum elevation parameter values are determined as follows:
The tool uses the minimum and maximum zonal values from the input surface raster as default values. These values can vary from zone to zone
depending on the minimum and maximum values of the input surface raster in these zones.
If you specify a Minimum elevation or Maximum elevation parameter value, the tool uses the same value for minimum and maximum increments across
all zones. In this case, if a subset of elevation increments becomes smaller than the zonal minimum, the area and volumes are calculated as zero. If they
become larger than the zonal maximum, areas and volumes for those increments are not calculated and appear as null or zero depending on the table
format.
Specify a Z unit (z_unit in Python) parameter value to indicate the input surface raster's vertical units. If the input surface raster has a vertical coordinate
system specified, these units are used as the default z-unit. If no z-unit is specified and the input surface raster does not have a vertical coordinate system, the
default z-unit is meter. When the x,y units are different from the z-unit, the x,y units are converted to match the z-unit when calculating volumes.
By default, this tool will take advantage of multicore processors. The maximum number of cores that can be used is four.
To use fewer cores, use the Parallel Processing Factor environment setting.
Parameters
DialogPython
Label Explanation Data Type
Input surface raster The input raster representing a continuous surface. Raster Layer
Output table The output table that contains for each zone the surface area and total volumes for each increment in elevation. Table
The field that contains the values that define each zone.
Zone field
Field
(Optional) It can be an integer or a string field of the zone dataset.
Area and Volume—Both surface areas and total volumes are calculated at each elevation increment. This is
Analysis type
the default. String
(Optional)
Area—Surface area is calculated at each elevation increment.
Volume—Total volume is calculated at each elevation increment.
Specifies the increment type to use when computing elevation increments between minimum and maximum
elevations.
Increment type
Number of Increments—The number of increments between minimum and maximum elevations is used. This String
(Optional)
is the default.
Value of Increment—The elevation difference between each increment is used.
An incremental value that is either the number of increments or the difference in elevation between increments. The
Increment
value is determined based on the increment type parameter value. Double
(Optional)
Specifies the linear unit that will be used for vertical z-values.
The output table that contains for each zone the surface area and total volumes for each increment in elevation.
out_table Table
The field that contains the values that define each zone.
zone_field
Field
(Optional) It can be an integer or a string field of the zone dataset.
Specifies the increment type to use when computing elevation increments between minimum and maximum elevations.
increment_type NUMBER_OF_INCREMENTS—The number of increments between minimum and maximum elevations is used. This is
String
(Optional) the default.
VALUE_OF_INCREMENT—The elevation difference between each increment is used.
increment An incremental value that is either the number of increments or the difference in elevation between increments. The value
is determined based on the increment type parameter value. Double
(Optional)
Specifies the linear unit that will be used for vertical z-values.
Code sample
import arcpy
from arcpy.sa import *
arcpy.env.workspace = "C:/sapyexamples/data"
arcpy.sa.StorageCapacity("in_surface.tif", "out_table", "in_zones", "zone_id")
# Name: StorageCapacity_Standalone.py
# Description:
# Requirements: Spatial Analyst Extension
Licensing information
Basic: Requires Spatial Analyst
Standard: Requires Spatial Analyst
Advanced: Requires Spatial Analyst
Related topics