Calculates the slope of each cell in a raster.
Slope is the magnitude portion of the gradient vector. It is the maximum
change of elevation from a raster cell to any immediate neighbor. It uses Horn's method
for computing slope.
As with aspect, slope is calculated from estimates of the partial derivatives dz / dx and dz / dy.
Slope is computed in degrees from horizontal.
If Slope operations encounters NoData in its neighborhood, that neighborhood cell well be treated as having
the same elevation as the focal cell.
The expression for slope is:
val slope = atan(sqrt(pow(`dz / dy`, 2) * pow(`dz / dx`, 2)))