What does r.carve do aside from simple subtraction?
I'm wondering what r.carve does that can't be accomplished more efficiently with the commands v.to.rast, r.thin and r.calc?
I tried to run r.carve multiple times on a DEM and it kept failing. It would take up to two hours to run, warning the whole time about divide by zero errors, then fail, write a corrupt DEM, or produce a DEM with three blocks of values and no elevation data anymore.
I finally used v.to.rast to convert the streamlines to raster and give them the value I wanted to burn into the DEM, r.thin to thin the stream raster, and then r.calc to subtract the the streamlines from the DEM. Oh, and another command was in there to convert nulls to zeros in the stream raster. This took all of 10 minutes to run and worked perfectly.
Is r.carve doing something special beyond this? I'm confused why it takes so long to run considering what it seems to be doing. I have no idea why it kept failing on my data but I'll assume that that is user error.