I realize this is an old post - but I need a similar function. Working for our County Surveyor, we have several 'open ditch' drains that are county regulated. We have a 75ft easement from top of bank. So naturally, finding top of bank is important. I haven't found a way to automate yet, as I am self taught on the software, but in ArcGIS Pro, I used the lidar dem of our county and generated a slope map percent raster? anyway, it's a layer that is shaded based on the slope gradient. the steeper the bank, the darker the shading - so all I had to do after that was essentially 'trace' the map. I created a top of bank layer shape file - turned on my regulated drain layer which is centerline of all of our drains - (open and tile). wherever there was an open drain, I had the slope layer on, and visually, I could see where the slope of the ditch leveled out - as a color change from dark to light. as well the centerline or 'flow' area of the ditch was also light colored. So I simply drew in polylines on my top of bank layer. I made sure to pay attention to how I drew them in, so that I could do a buffer - offsetting Right - for every line in the layer. I then had a right of way layer shaded with my 75ft buffer, from top of bank. I only wish I could get the software to draw in the top of bank line for me.