[GRASS-user] [GRASSLIST:1082] Re: Sediment dispersal modeling
David Finlayson
david.p.finlayson at gmail.com
Wed May 24 14:42:12 EDT 2006
Setting aside how realistic the model is, why not try this:
1. Calculate the distance from the harbor mouth to all marine pixels
(my function r.eucdist would be good for this)
2. Code up a diffusion equation in r.mapcalc that is a function of
distance and calculate its value for the entire map using the distance
map in #1 as input.
3. Cut the "diffused" mass map at some threshold
4. Normalize the map so that it sums to one
5. Multiply the normalized map by the volume of sediment input at the mouth.
I am not sure exactly what #2 should look like, linear, exponential
whatever you think best represents your problem. FWIW I think that the
equation for IDW does something like this:
w = (1 - D/Dmax)^2 / (D/Dmax)
Where w is the resulting normalized weight, D is the distance of the
cell from the source and Dmax is the maximum distance (for
normalization) from the source in the grid.
On 5/24/06, Matthew Perry <perrygeo at gmail.com> wrote:
> Hey folks,
>
> I'm working on a simple model for ocean floor sediment dispersal
> from rivers. The basics are:
>
> - We have sediment outputs at point locations representing the pour point.
> - We want to "move" that sediment outward using something like a cost
> distance function. The catch is that the output raster values, instead
> of representing distance from the point, should represent a decaying
> amount of the total sediment.
> - The total value of all raster cells in the sediment "plume" should
> add up to roughly the total sediment output at the pour.
> - The total count of the sediment plume cells should be proportional
> to the amount of sediment at the pour point.
>
> It is a very simplistic model in that it doesn't take into account
> currents and is only 2D but, for now, this is sufficient for the scale
> we're working at.
>
> We have looked at a few functions such as r.cost and r.spread but
> neither seem to get us any closer to the outputs we're looking for.
> Seeded region-growing (using r.mapcalc) and cellular automata seem
> like they might also be appropriate tools but no luck so far.
>
> Does anyone have any experience doing this sort of modelling in GIS
> (GRASS or otherwise)? Any thoughts on a combination of techniques that
> might yield the results I outlined?
>
> Thanks for the input,
> --
> Matt Perry
> perrygeo at gmail.com
> http://www.perrygeo.net
>
>
--
David Finlayson
More information about the grass-user
mailing list