Displays the shape or curvature of the slope, which can be concave or convex and can be understood from the curvature value. The curvature is calculated by computing the second derivative of the surface.


For more information about how this function works, see the Curvature raster function.

The referenced raster dataset for the raster object is temporary. To make it permanent, you can call the raster object's save method.


Curvature (raster, curvature_type, {z_factor})
ParameterExplanationData Type

The input raster dataset.


The curvature type accentuates different aspects of the slope.

  • standardCombines the profile and planform curvatures.
  • planformIs perpendicular to the direction of the maximum slope. It affects the convergence and divergence of flow across a surface.
  • profile Is parallel to the slope and indicates the direction of maximum slope. It affects the acceleration and deceleration of flow across the surface.

(The default value is standard)


The z-factor is a scaling factor used to convert the elevation values for two purposes:

  • To convert the elevation units (such as meters or feet) to the horizontal coordinate units of the dataset, which may be feet, meters, or degrees.
  • To add vertical exaggeration for visual effect.

If the x,y units and z units are in the same units of measure, the z-factor should be set to 1. The z-values of the input surface are multiplied by the z-factor when calculating the final output surface.

(The default value is 1)

Return Value
Data TypeExplanation

The output raster.

Code sample

Curvature example 1

This example calculates the curvature of a given slope.

from arcpy.ia import *
out_curvature_raster = Curvature("curvature_input.tif", "profile", 2)"C:/arcpyExamples/outputs/curv_profile.tif")
Curvature example 2

This example calculates the curvature of a given slope.

# Import system modules
import arcpy
from arcpy.ia import *

# Set the analysis environments
arcpy.env.workspace = "C:/arcpyExamples/data"

# Set the local variables
in_raster = "curvature_input.tif"

# Execute Curvature function
out_curvature_raster = Curvature(in_raster, "planform", 3)

# Save the output"C:/arcpyExamples/outputs/cur_planform.tif")