Re: [GRASS-user] floodplain creation
Based on what we have discussed (including some off-list), the best shot seems to be using directions based on r.watershed on the carved DEM together with the given (not computed) streams for HAND (streams are also used for the carving and r.lake steps). An alternative is using streams from r.watershed, but only those which fall into a buffer around the given streams (for more context, see some of my previous emails when I already mentioned this). Getting the directions for a stream, as I suggested, is of course useless except for using it for updating the direction raster which may or may not bring a minor improvement (probably not worth complicating the workflow). Vaclav On Wed, Oct 3, 2018 at 5:46 PM Shane Carey wrote: > > Hi Vaclav, > > I have checked the output from r.watershed with what you have calculated and I do see differences in the value obtained by both. Could it be a rounding issue perhaps? The only other difference I see is that the output from r.watershed is a complete raster as opposed to just the river network. See image attached to explain what I mean. Does that make any difference? > > > Le gach dea ghui, > Shane Carey > GIS and Data Solutions Consultant > > > On Tue, Oct 2, 2018 at 12:07 PM Shane Carey wrote: >> >> Ok cool. When I I try to run the r.stream.distance with this new new stream direction layer (that I calculated with r.mapcalc "streams_direction_8 = int((streams_direction + 45) / 45)" ), >> >> it just hangs on the part that says: "caclulating downstream parameters". So I am not sure what is going on here - have you any ideas on this? >> >> Also, could you explain a little about what this expression is doing: (streams_direction + 45) / 45) >> >> Thanks Vaclav >> >> >> Le gach dea ghui, >> Shane Carey >> GIS and Data Solutions Consultant >> >> ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user
Re: [GRASS-user] floodplain creation
Ok cool. When I I try to run the r.stream.distance with this new new stream direction layer (that I calculated with r.mapcalc "streams_direction_8 = int((streams_direction + 45) / 45)" ), it just hangs on the part that says: "caclulating downstream parameters". So I am not sure what is going on here - have you any ideas on this? Also, could you explain a little about what this expression is doing: (streams_direction + 45) / 45) Thanks Vaclav Le gach dea ghui, *Shane Carey* *GIS and Data Solutions Consultant* On Mon, Oct 1, 2018 at 4:29 PM Vaclav Petras wrote: > > On Sat, Sep 29, 2018 at 1:55 PM Shane Carey wrote: > >> My last bit of the puzzle is to create the flow direction raster. How do >> I reclassify in order to get the stream direction using r.mapcalc? >> > > Hi Shane, > > You are welcome. What you need to do are 2 steps: 1) vector to raster > conversion with direction to be used for raster values: > > v.to.rast input=streams output=streams_direction use=dir > > The v.to.rast manual says: "line direction in degrees CCW from east" [1]. > However, the r.stream.distance manual specifies the drainage direction to > be: "...zero and negative values are valid direction data only if they vary > from -8 to 8 (CCW from East in steps of 45 degrees). Flow direction map > shall be of integer type (CELL)." So you need to reclassify. > > [1] https://grass.osgeo.org/grass74/manuals/v.to.rast.html > [2] https://grass.osgeo.org/grass74/manuals/addons/r.stream.distance.html > > The reclassification with r.mapcalc would be something like the following, > but I didn't really check and it may be wrong. Alternative would be to use > r.recode. > > r.mapcalc "streams_direction_8 = int((streams_direction + 45) / 45)" > > So please double check the output from the above and compare it with what > you get from r.watershed. > > For completeness, here is what I wrote before: > > """ > Yes, just convert your streams to raster (presence-absence) and a raster > for flow direction as I mentioned here: > > https://lists.osgeo.org/pipermail/grass-user/2018-September/079135.html > > Since you already have the streams and you want to use them, you need to > convert them to raster and then also get stream direction for r.stream. > distance by reclassifying, e.g. with r.mapcalc, output from something > like this: > > v.to.rast in=streams output=streams_dir use=dir > > which you can see in context here (different hydrology tool): > > > http://ncsu-geoforall-lab.github.io/geospatial-modeling-course/grass/simwe.html > """ > > >> I am just coping in what you said from your last email Vaclav so that you >> know which part I am stuck on. This is really super - thanks again >> >> [Since you already have the streams and you want to use them, you need to >> convert them to raster and then also get stream direction for >> r.stream.distance by reclassifying, e.g. with r.mapcalc] >> >> Le gach dea ghui, >> *Shane Carey* >> *GIS and Data Solutions Consultant* >> >> >> On Fri, Sep 28, 2018 at 3:02 PM Vaclav Petras >> wrote: >> >>> >>> On Thu, Sep 27, 2018 at 12:10 PM Shane Carey >>> wrote: >>> Is there anyway of the algorithm just being able to create a floodlain for actual real rivers as opposed to the derived river dataset? >>> >>> Yes, just convert your streams to raster (presence-absence) and a raster >>> for flow direction as I mentioned here: >>> >>> https://lists.osgeo.org/pipermail/grass-user/2018-September/079135.html >>> >>> However, you need to be cautious about fit between the existing streams >>> and the DEM. Definitively check how your existing streams align with the >>> derived ones (where there are both streams). >>> >>> On Máirt 25 MFómh 2018 at 15:49, Shane Carey wrote: > Image attached shows rivers (black line) and floodplain of where it > thinks there are rivers and in some cases where there may not be rivers. > >>> To use the derived streams and get rid of parts you don't want, you >>> could buffer the existing streams and preserve only the derived streams >>> which are in that buffer. >>> >>> However, you should really look at why they are different and >>> specifically what is closer to reality. >>> >> ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user
Re: [GRASS-user] floodplain creation
On Sat, Sep 29, 2018 at 1:55 PM Shane Carey wrote: > My last bit of the puzzle is to create the flow direction raster. How do I > reclassify in order to get the stream direction using r.mapcalc? > Hi Shane, You are welcome. What you need to do are 2 steps: 1) vector to raster conversion with direction to be used for raster values: v.to.rast input=streams output=streams_direction use=dir The v.to.rast manual says: "line direction in degrees CCW from east" [1]. However, the r.stream.distance manual specifies the drainage direction to be: "...zero and negative values are valid direction data only if they vary from -8 to 8 (CCW from East in steps of 45 degrees). Flow direction map shall be of integer type (CELL)." So you need to reclassify. [1] https://grass.osgeo.org/grass74/manuals/v.to.rast.html [2] https://grass.osgeo.org/grass74/manuals/addons/r.stream.distance.html The reclassification with r.mapcalc would be something like the following, but I didn't really check and it may be wrong. Alternative would be to use r.recode. r.mapcalc "streams_direction_8 = int((streams_direction + 45) / 45)" So please double check the output from the above and compare it with what you get from r.watershed. For completeness, here is what I wrote before: """ Yes, just convert your streams to raster (presence-absence) and a raster for flow direction as I mentioned here: https://lists.osgeo.org/pipermail/grass-user/2018-September/079135.html Since you already have the streams and you want to use them, you need to convert them to raster and then also get stream direction for r.stream. distance by reclassifying, e.g. with r.mapcalc, output from something like this: v.to.rast in=streams output=streams_dir use=dir which you can see in context here (different hydrology tool): http://ncsu-geoforall-lab.github.io/geospatial-modeling-course/grass/simwe.html """ > I am just coping in what you said from your last email Vaclav so that you > know which part I am stuck on. This is really super - thanks again > > [Since you already have the streams and you want to use them, you need to > convert them to raster and then also get stream direction for > r.stream.distance by reclassifying, e.g. with r.mapcalc] > > Le gach dea ghui, > *Shane Carey* > *GIS and Data Solutions Consultant* > > > On Fri, Sep 28, 2018 at 3:02 PM Vaclav Petras > wrote: > >> >> On Thu, Sep 27, 2018 at 12:10 PM Shane Carey wrote: >> >>> >>> Is there anyway of the algorithm just being able to create a floodlain >>> for actual real rivers as opposed to the derived river dataset? >>> >> >> Yes, just convert your streams to raster (presence-absence) and a raster >> for flow direction as I mentioned here: >> >> https://lists.osgeo.org/pipermail/grass-user/2018-September/079135.html >> >> However, you need to be cautious about fit between the existing streams >> and the DEM. Definitively check how your existing streams align with the >> derived ones (where there are both streams). >> >> >>> >>> On Máirt 25 MFómh 2018 at 15:49, Shane Carey >>> wrote: >>> Image attached shows rivers (black line) and floodplain of where it thinks there are rivers and in some cases where there may not be rivers. >>> >> To use the derived streams and get rid of parts you don't want, you could >> buffer the existing streams and preserve only the derived streams which are >> in that buffer. >> >> However, you should really look at why they are different and >> specifically what is closer to reality. >> > ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user
Re: [GRASS-user] floodplain creation
Super Vaclav - I am nearly there now - My last bit of the puzzle is to create the flow direction raster. How do I reclassify in order to get the stream direction using r.mapcalc? I am just coping in what you said from your last email Vaclav so that you know which part I am stuck on. This is really super - thanks again [Since you already have the streams and you want to use them, you need to convert them to raster and then also get stream direction for r.stream.distance by reclassifying, e.g. with r.mapcalc] Le gach dea ghui, *Shane Carey* *GIS and Data Solutions Consultant* On Fri, Sep 28, 2018 at 3:02 PM Vaclav Petras wrote: > > On Thu, Sep 27, 2018 at 12:10 PM Shane Carey wrote: > >> >> Is there anyway of the algorithm just being able to create a floodlain >> for actual real rivers as opposed to the derived river dataset? >> > > Yes, just convert your streams to raster (presence-absence) and a raster > for flow direction as I mentioned here: > > https://lists.osgeo.org/pipermail/grass-user/2018-September/079135.html > > However, you need to be cautious about fit between the existing streams > and the DEM. Definitively check how your existing streams align with the > derived ones (where there are both streams). > > >> >> On Máirt 25 MFómh 2018 at 15:49, Shane Carey wrote: >> >>> Image attached shows rivers (black line) and floodplain of where it >>> thinks there are rivers and in some cases where there may not be rivers. >>> >> > To use the derived streams and get rid of parts you don't want, you could > buffer the existing streams and preserve only the derived streams which are > in that buffer. > > However, you should really look at why they are different and specifically > what is closer to reality. > ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user
Re: [GRASS-user] floodplain creation
On Thu, Sep 27, 2018 at 12:10 PM Shane Carey wrote: > > Is there anyway of the algorithm just being able to create a floodlain for > actual real rivers as opposed to the derived river dataset? > Yes, just convert your streams to raster (presence-absence) and a raster for flow direction as I mentioned here: https://lists.osgeo.org/pipermail/grass-user/2018-September/079135.html However, you need to be cautious about fit between the existing streams and the DEM. Definitively check how your existing streams align with the derived ones (where there are both streams). > > On Máirt 25 MFómh 2018 at 15:49, Shane Carey wrote: > >> Image attached shows rivers (black line) and floodplain of where it >> thinks there are rivers and in some cases where there may not be rivers. >> > To use the derived streams and get rid of parts you don't want, you could buffer the existing streams and preserve only the derived streams which are in that buffer. However, you should really look at why they are different and specifically what is closer to reality. ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user
Re: [GRASS-user] floodplain creation
Hi, Is there anyway of the algorithm just being able to create a floodlain for actual real rivers as opposed to the derived river dataset? Thanks On Máirt 25 MFómh 2018 at 15:49, Shane Carey wrote: > Image attached shows rivers (black line) and floodplain of where it thinks > there are rivers and in some cases where there may not be rivers. > > Cheers > > > > > Le gach dea ghui, > *Shane Carey* > *GIS and Data Solutions Consultant* > > On Tue, Sep 25, 2018 at 3:45 PM, Shane Carey wrote: > >> Yes, this is the problem - there is not exact stream matching with the >> ones derived on the carved DEM with the "Real" rivers. Any advice on how to >> get around that? >> >> Thanks >> >> Le gach dea ghui, >> *Shane Carey* >> *GIS and Data Solutions Consultant* >> >> On Tue, Sep 25, 2018 at 3:53 AM, Vaclav Petras >> wrote: >> >>> >>> >>> On Mon, Sep 24, 2018 at 6:33 PM Shane Carey wrote: >>> This works well, but doesn't capture every river - is it a case of making the threshold value smaller or making a deeper carve in the rivers??? >>> >>> >>> It's probably the threshold. How your rivers compare to the ones derived >>> on carved DEM? >>> >>> >>> Thanks in advance - I think this method would will work well, if it were able to "flood" all rivers. On Sun, Sep 23, 2018 at 12:55 PM, Shane Carey wrote: > Thanks, I will compare them and let you know the differences. > Thanks > > On Domh 23 MFómh 2018 at 02:09, Vaclav Petras > wrote: > >> These are steps based on: >> >> >> https://grasswiki.osgeo.org/wiki/From_GRASS_GIS_novice_to_power_user_(workshop_at_FOSS4G_Boston_2017)#Hydrology:_Estimating_inundation_extent_using_HAND_methodology >> >> You need r.stream.distance module from Addons: >> >> g.extension r.stream.distance >> >> Get drainage and streams from your DEM (your carved DEM): >> >> r.watershed elevation=dem accumulation=flowacc drainage=drainage >> stream=streams threshold=10 >> >> Compute height above nearest drainage/stream (HAND): >> >> r.stream.distance stream_rast=streams direction=drainage >> elevation=elevation method=downstream difference=hand >> >> Use r.lake not on the original DEM, but on the HAND and start >> flooding ("lake") from the streams: >> >> r.lake elevation=hand water_level=3 lake=flood_3m seed=streams >> >> Convert to vector if desired: >> >> r.to.vect -s input=flood_3m output=flood_3m type=area >> >> The difference to the r.grow+r.mapcalc method [1] is that this uses >> an addon module (there should be no problem installing it) and that >> r.grow >> uses euclidean distance for what is later used for height difference >> while >> r.steam.distance follows drainage and further that r.lake floods only the >> cells accessible to water unlike the r.mapcalc expression which just >> looks >> at height. The two methodological differences can be summarized as "not >> respecting the surrounding terrain enough." Anyway, the r.grow+r.mapcalc >> method can get you quite far and I would be interested in the comparison >> (will differ for different terrains). >> >> Best, >> Vaclav >> >> [1] >> https://lists.osgeo.org/pipermail/grass-user/2018-September/079134.html >> >> On Fri, Sep 21, 2018 at 11:39 AM Shane Carey >> wrote: >> >>> Hi All, >>> >>> I have used r.carve to carve out the rivers of a DTM - a really >>> super job. I now need to pour 3meters of water into every cell in the >>> river >>> and see how for this water extends out - onto the floodplain. >>> >>> I was trying to use r.lake to do this, but unsure as to how r.lake >>> will work to pour 3 meters of water in every cell along the river >>> network. >>> >>> Any advice on this would be great. It is for the creation of a >>> floodplain. >>> >>> Thanks >>> >>> >>> Le gach dea ghui, >>> *Shane Carey* >>> >>> ___ >>> grass-user mailing list >>> grass-user@lists.osgeo.org >>> https://lists.osgeo.org/mailman/listinfo/grass-user >> >> -- > Le gach dea ghui, > *Shane Carey* > *GIS and Data Solutions Consultant* > >> > -- Le gach dea ghui, *Shane Carey* *GIS and Data Solutions Consultant* ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user
Re: [GRASS-user] floodplain creation
Image attached shows rivers (black line) and floodplain of where it thinks there are rivers and in some cases where there may not be rivers. Cheers Le gach dea ghui, *Shane Carey* *GIS and Data Solutions Consultant* On Tue, Sep 25, 2018 at 3:45 PM, Shane Carey wrote: > Yes, this is the problem - there is not exact stream matching with the > ones derived on the carved DEM with the "Real" rivers. Any advice on how to > get around that? > > Thanks > > Le gach dea ghui, > *Shane Carey* > *GIS and Data Solutions Consultant* > > On Tue, Sep 25, 2018 at 3:53 AM, Vaclav Petras > wrote: > >> >> >> On Mon, Sep 24, 2018 at 6:33 PM Shane Carey wrote: >> >>> >>> This works well, but doesn't capture every river - is it a case of >>> making the threshold value smaller or making a deeper carve in the rivers??? >>> >> >> >> It's probably the threshold. How your rivers compare to the ones derived >> on carved DEM? >> >> >> >>> >>> Thanks in advance - I think this method would will work well, if it were >>> able to "flood" all rivers. >>> >>> On Sun, Sep 23, 2018 at 12:55 PM, Shane Carey >>> wrote: >>> Thanks, I will compare them and let you know the differences. Thanks On Domh 23 MFómh 2018 at 02:09, Vaclav Petras wrote: > These are steps based on: > > https://grasswiki.osgeo.org/wiki/From_GRASS_GIS_novice_to_po > wer_user_(workshop_at_FOSS4G_Boston_2017)#Hydrology:_ > Estimating_inundation_extent_using_HAND_methodology > > You need r.stream.distance module from Addons: > > g.extension r.stream.distance > > Get drainage and streams from your DEM (your carved DEM): > > r.watershed elevation=dem accumulation=flowacc drainage=drainage > stream=streams threshold=10 > > Compute height above nearest drainage/stream (HAND): > > r.stream.distance stream_rast=streams direction=drainage > elevation=elevation method=downstream difference=hand > > Use r.lake not on the original DEM, but on the HAND and start flooding > ("lake") from the streams: > > r.lake elevation=hand water_level=3 lake=flood_3m seed=streams > > Convert to vector if desired: > > r.to.vect -s input=flood_3m output=flood_3m type=area > > The difference to the r.grow+r.mapcalc method [1] is that this uses an > addon module (there should be no problem installing it) and that r.grow > uses euclidean distance for what is later used for height difference while > r.steam.distance follows drainage and further that r.lake floods only the > cells accessible to water unlike the r.mapcalc expression which just looks > at height. The two methodological differences can be summarized as "not > respecting the surrounding terrain enough." Anyway, the r.grow+r.mapcalc > method can get you quite far and I would be interested in the comparison > (will differ for different terrains). > > Best, > Vaclav > > [1] https://lists.osgeo.org/pipermail/grass-user/2018-September/ > 079134.html > > On Fri, Sep 21, 2018 at 11:39 AM Shane Carey > wrote: > >> Hi All, >> >> I have used r.carve to carve out the rivers of a DTM - a really super >> job. I now need to pour 3meters of water into every cell in the river and >> see how for this water extends out - onto the floodplain. >> >> I was trying to use r.lake to do this, but unsure as to how r.lake >> will work to pour 3 meters of water in every cell along the river >> network. >> >> Any advice on this would be great. It is for the creation of a >> floodplain. >> >> Thanks >> >> >> Le gach dea ghui, >> *Shane Carey* >> >> ___ >> grass-user mailing list >> grass-user@lists.osgeo.org >> https://lists.osgeo.org/mailman/listinfo/grass-user > > -- Le gach dea ghui, *Shane Carey* *GIS and Data Solutions Consultant* >>> >>> > ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user
Re: [GRASS-user] floodplain creation
Yes, this is the problem - there is not exact stream matching with the ones derived on the carved DEM with the "Real" rivers. Any advice on how to get around that? Thanks Le gach dea ghui, *Shane Carey* *GIS and Data Solutions Consultant* On Tue, Sep 25, 2018 at 3:53 AM, Vaclav Petras wrote: > > > On Mon, Sep 24, 2018 at 6:33 PM Shane Carey wrote: > >> >> This works well, but doesn't capture every river - is it a case of making >> the threshold value smaller or making a deeper carve in the rivers??? >> > > > It's probably the threshold. How your rivers compare to the ones derived > on carved DEM? > > > >> >> Thanks in advance - I think this method would will work well, if it were >> able to "flood" all rivers. >> >> On Sun, Sep 23, 2018 at 12:55 PM, Shane Carey >> wrote: >> >>> Thanks, I will compare them and let you know the differences. >>> Thanks >>> >>> On Domh 23 MFómh 2018 at 02:09, Vaclav Petras >>> wrote: >>> These are steps based on: https://grasswiki.osgeo.org/wiki/From_GRASS_GIS_novice_to_ power_user_(workshop_at_FOSS4G_Boston_2017)#Hydrology: _Estimating_inundation_extent_using_HAND_methodology You need r.stream.distance module from Addons: g.extension r.stream.distance Get drainage and streams from your DEM (your carved DEM): r.watershed elevation=dem accumulation=flowacc drainage=drainage stream=streams threshold=10 Compute height above nearest drainage/stream (HAND): r.stream.distance stream_rast=streams direction=drainage elevation=elevation method=downstream difference=hand Use r.lake not on the original DEM, but on the HAND and start flooding ("lake") from the streams: r.lake elevation=hand water_level=3 lake=flood_3m seed=streams Convert to vector if desired: r.to.vect -s input=flood_3m output=flood_3m type=area The difference to the r.grow+r.mapcalc method [1] is that this uses an addon module (there should be no problem installing it) and that r.grow uses euclidean distance for what is later used for height difference while r.steam.distance follows drainage and further that r.lake floods only the cells accessible to water unlike the r.mapcalc expression which just looks at height. The two methodological differences can be summarized as "not respecting the surrounding terrain enough." Anyway, the r.grow+r.mapcalc method can get you quite far and I would be interested in the comparison (will differ for different terrains). Best, Vaclav [1] https://lists.osgeo.org/pipermail/grass-user/2018- September/079134.html On Fri, Sep 21, 2018 at 11:39 AM Shane Carey wrote: > Hi All, > > I have used r.carve to carve out the rivers of a DTM - a really super > job. I now need to pour 3meters of water into every cell in the river and > see how for this water extends out - onto the floodplain. > > I was trying to use r.lake to do this, but unsure as to how r.lake > will work to pour 3 meters of water in every cell along the river network. > > Any advice on this would be great. It is for the creation of a > floodplain. > > Thanks > > > Le gach dea ghui, > *Shane Carey* > > ___ > grass-user mailing list > grass-user@lists.osgeo.org > https://lists.osgeo.org/mailman/listinfo/grass-user -- >>> Le gach dea ghui, >>> *Shane Carey* >>> *GIS and Data Solutions Consultant* >>> >> >> ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user
Re: [GRASS-user] floodplain creation
On Mon, Sep 24, 2018 at 6:33 PM Shane Carey wrote: > > This works well, but doesn't capture every river - is it a case of making > the threshold value smaller or making a deeper carve in the rivers??? > It's probably the threshold. How your rivers compare to the ones derived on carved DEM? > > Thanks in advance - I think this method would will work well, if it were > able to "flood" all rivers. > > On Sun, Sep 23, 2018 at 12:55 PM, Shane Carey wrote: > >> Thanks, I will compare them and let you know the differences. >> Thanks >> >> On Domh 23 MFómh 2018 at 02:09, Vaclav Petras >> wrote: >> >>> These are steps based on: >>> >>> >>> https://grasswiki.osgeo.org/wiki/From_GRASS_GIS_novice_to_power_user_(workshop_at_FOSS4G_Boston_2017)#Hydrology:_Estimating_inundation_extent_using_HAND_methodology >>> >>> You need r.stream.distance module from Addons: >>> >>> g.extension r.stream.distance >>> >>> Get drainage and streams from your DEM (your carved DEM): >>> >>> r.watershed elevation=dem accumulation=flowacc drainage=drainage >>> stream=streams threshold=10 >>> >>> Compute height above nearest drainage/stream (HAND): >>> >>> r.stream.distance stream_rast=streams direction=drainage >>> elevation=elevation method=downstream difference=hand >>> >>> Use r.lake not on the original DEM, but on the HAND and start flooding >>> ("lake") from the streams: >>> >>> r.lake elevation=hand water_level=3 lake=flood_3m seed=streams >>> >>> Convert to vector if desired: >>> >>> r.to.vect -s input=flood_3m output=flood_3m type=area >>> >>> The difference to the r.grow+r.mapcalc method [1] is that this uses an >>> addon module (there should be no problem installing it) and that r.grow >>> uses euclidean distance for what is later used for height difference while >>> r.steam.distance follows drainage and further that r.lake floods only the >>> cells accessible to water unlike the r.mapcalc expression which just looks >>> at height. The two methodological differences can be summarized as "not >>> respecting the surrounding terrain enough." Anyway, the r.grow+r.mapcalc >>> method can get you quite far and I would be interested in the comparison >>> (will differ for different terrains). >>> >>> Best, >>> Vaclav >>> >>> [1] >>> https://lists.osgeo.org/pipermail/grass-user/2018-September/079134.html >>> >>> On Fri, Sep 21, 2018 at 11:39 AM Shane Carey >>> wrote: >>> Hi All, I have used r.carve to carve out the rivers of a DTM - a really super job. I now need to pour 3meters of water into every cell in the river and see how for this water extends out - onto the floodplain. I was trying to use r.lake to do this, but unsure as to how r.lake will work to pour 3 meters of water in every cell along the river network. Any advice on this would be great. It is for the creation of a floodplain. Thanks Le gach dea ghui, *Shane Carey* ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user >>> >>> -- >> Le gach dea ghui, >> *Shane Carey* >> *GIS and Data Solutions Consultant* >> > > ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user
Re: [GRASS-user] floodplain creation
Hi All, This works well, but doesn't capture every river - is it a case of making the threshold value smaller or making a deeper carve in the rivers??? Thanks in advance - I think this method would will work well, if it were able to "flood" all rivers. Thanks Le gach dea ghui, *Shane Carey* *GIS and Data Solutions Consultant* On Sun, Sep 23, 2018 at 12:55 PM, Shane Carey wrote: > Thanks, I will compare them and let you know the differences. > Thanks > > On Domh 23 MFómh 2018 at 02:09, Vaclav Petras > wrote: > >> These are steps based on: >> >> https://grasswiki.osgeo.org/wiki/From_GRASS_GIS_novice_to_ >> power_user_(workshop_at_FOSS4G_Boston_2017)#Hydrology: >> _Estimating_inundation_extent_using_HAND_methodology >> >> You need r.stream.distance module from Addons: >> >> g.extension r.stream.distance >> >> Get drainage and streams from your DEM (your carved DEM): >> >> r.watershed elevation=dem accumulation=flowacc drainage=drainage >> stream=streams threshold=10 >> >> Compute height above nearest drainage/stream (HAND): >> >> r.stream.distance stream_rast=streams direction=drainage >> elevation=elevation method=downstream difference=hand >> >> Use r.lake not on the original DEM, but on the HAND and start flooding >> ("lake") from the streams: >> >> r.lake elevation=hand water_level=3 lake=flood_3m seed=streams >> >> Convert to vector if desired: >> >> r.to.vect -s input=flood_3m output=flood_3m type=area >> >> The difference to the r.grow+r.mapcalc method [1] is that this uses an >> addon module (there should be no problem installing it) and that r.grow >> uses euclidean distance for what is later used for height difference while >> r.steam.distance follows drainage and further that r.lake floods only the >> cells accessible to water unlike the r.mapcalc expression which just looks >> at height. The two methodological differences can be summarized as "not >> respecting the surrounding terrain enough." Anyway, the r.grow+r.mapcalc >> method can get you quite far and I would be interested in the comparison >> (will differ for different terrains). >> >> Best, >> Vaclav >> >> [1] https://lists.osgeo.org/pipermail/grass-user/2018- >> September/079134.html >> >> On Fri, Sep 21, 2018 at 11:39 AM Shane Carey wrote: >> >>> Hi All, >>> >>> I have used r.carve to carve out the rivers of a DTM - a really super >>> job. I now need to pour 3meters of water into every cell in the river and >>> see how for this water extends out - onto the floodplain. >>> >>> I was trying to use r.lake to do this, but unsure as to how r.lake will >>> work to pour 3 meters of water in every cell along the river network. >>> >>> Any advice on this would be great. It is for the creation of a >>> floodplain. >>> >>> Thanks >>> >>> >>> Le gach dea ghui, >>> *Shane Carey* >>> >>> ___ >>> grass-user mailing list >>> grass-user@lists.osgeo.org >>> https://lists.osgeo.org/mailman/listinfo/grass-user >> >> -- > Le gach dea ghui, > *Shane Carey* > *GIS and Data Solutions Consultant* > ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user
Re: [GRASS-user] floodplain creation
Thanks, I will compare them and let you know the differences. Thanks On Domh 23 MFómh 2018 at 02:09, Vaclav Petras wrote: > These are steps based on: > > > https://grasswiki.osgeo.org/wiki/From_GRASS_GIS_novice_to_power_user_(workshop_at_FOSS4G_Boston_2017)#Hydrology:_Estimating_inundation_extent_using_HAND_methodology > > You need r.stream.distance module from Addons: > > g.extension r.stream.distance > > Get drainage and streams from your DEM (your carved DEM): > > r.watershed elevation=dem accumulation=flowacc drainage=drainage > stream=streams threshold=10 > > Compute height above nearest drainage/stream (HAND): > > r.stream.distance stream_rast=streams direction=drainage > elevation=elevation method=downstream difference=hand > > Use r.lake not on the original DEM, but on the HAND and start flooding > ("lake") from the streams: > > r.lake elevation=hand water_level=3 lake=flood_3m seed=streams > > Convert to vector if desired: > > r.to.vect -s input=flood_3m output=flood_3m type=area > > The difference to the r.grow+r.mapcalc method [1] is that this uses an > addon module (there should be no problem installing it) and that r.grow > uses euclidean distance for what is later used for height difference while > r.steam.distance follows drainage and further that r.lake floods only the > cells accessible to water unlike the r.mapcalc expression which just looks > at height. The two methodological differences can be summarized as "not > respecting the surrounding terrain enough." Anyway, the r.grow+r.mapcalc > method can get you quite far and I would be interested in the comparison > (will differ for different terrains). > > Best, > Vaclav > > [1] > https://lists.osgeo.org/pipermail/grass-user/2018-September/079134.html > > On Fri, Sep 21, 2018 at 11:39 AM Shane Carey wrote: > >> Hi All, >> >> I have used r.carve to carve out the rivers of a DTM - a really super >> job. I now need to pour 3meters of water into every cell in the river and >> see how for this water extends out - onto the floodplain. >> >> I was trying to use r.lake to do this, but unsure as to how r.lake will >> work to pour 3 meters of water in every cell along the river network. >> >> Any advice on this would be great. It is for the creation of a floodplain. >> >> Thanks >> >> >> Le gach dea ghui, >> *Shane Carey* >> >> ___ >> grass-user mailing list >> grass-user@lists.osgeo.org >> https://lists.osgeo.org/mailman/listinfo/grass-user > > -- Le gach dea ghui, *Shane Carey* *GIS and Data Solutions Consultant* ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user
Re: [GRASS-user] floodplain creation
These are steps based on: https://grasswiki.osgeo.org/wiki/From_GRASS_GIS_novice_to_power_user_(workshop_at_FOSS4G_Boston_2017)#Hydrology:_Estimating_inundation_extent_using_HAND_methodology You need r.stream.distance module from Addons: g.extension r.stream.distance Get drainage and streams from your DEM (your carved DEM): r.watershed elevation=dem accumulation=flowacc drainage=drainage stream=streams threshold=10 Compute height above nearest drainage/stream (HAND): r.stream.distance stream_rast=streams direction=drainage elevation=elevation method=downstream difference=hand Use r.lake not on the original DEM, but on the HAND and start flooding ("lake") from the streams: r.lake elevation=hand water_level=3 lake=flood_3m seed=streams Convert to vector if desired: r.to.vect -s input=flood_3m output=flood_3m type=area The difference to the r.grow+r.mapcalc method [1] is that this uses an addon module (there should be no problem installing it) and that r.grow uses euclidean distance for what is later used for height difference while r.steam.distance follows drainage and further that r.lake floods only the cells accessible to water unlike the r.mapcalc expression which just looks at height. The two methodological differences can be summarized as "not respecting the surrounding terrain enough." Anyway, the r.grow+r.mapcalc method can get you quite far and I would be interested in the comparison (will differ for different terrains). Best, Vaclav [1] https://lists.osgeo.org/pipermail/grass-user/2018-September/079134.html On Fri, Sep 21, 2018 at 11:39 AM Shane Carey wrote: > Hi All, > > I have used r.carve to carve out the rivers of a DTM - a really super job. > I now need to pour 3meters of water into every cell in the river and see > how for this water extends out - onto the floodplain. > > I was trying to use r.lake to do this, but unsure as to how r.lake will > work to pour 3 meters of water in every cell along the river network. > > Any advice on this would be great. It is for the creation of a floodplain. > > Thanks > > > Le gach dea ghui, > *Shane Carey* > > ___ > grass-user mailing list > grass-user@lists.osgeo.org > https://lists.osgeo.org/mailman/listinfo/grass-user ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user
Re: [GRASS-user] floodplain creation
On 09/21/2018 06:39 PM, Shane Carey wrote: Hi All, I have used r.carve to carve out the rivers of a DTM - a really super job. I now need to pour 3meters of water into every cell in the river and see how for this water extends out - onto the floodplain. I was trying to use r.lake to do this, but unsure as to how r.lake will work to pour 3 meters of water in every cell along the river network. The r.lake module sets a uniform height of water creating a lake. I think this is not what you want. Any advice on this would be great. It is for the creation of a floodplain. Have you tried the nice solution suggested by Johannes? https://lists.osgeo.org/pipermail/grass-user/2018-September/079134.html Thanks Le gach dea ghui, Shane Carey ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user -- Micha Silver Ben Gurion Univ. Sde Boker, Remote Sensing Lab cell: +972-523-665918 ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user
[GRASS-user] floodplain creation
Hi All, I have used r.carve to carve out the rivers of a DTM - a really super job. I now need to pour 3meters of water into every cell in the river and see how for this water extends out - onto the floodplain. I was trying to use r.lake to do this, but unsure as to how r.lake will work to pour 3 meters of water in every cell along the river network. Any advice on this would be great. It is for the creation of a floodplain. Thanks Le gach dea ghui, *Shane Carey* ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user