[GRASSLIST:7513] Re: r.terraflow failured
David Finlayson
david.p.finlayson at gmail.com
Mon Jul 11 01:12:23 EDT 2005
I don't have matlab, but I have achieved much the same thing using GMT
and Python (and a lot of hand editing of the command files). I have a
lot of this to do over the next few months and I wanted to smooth out
the work flow with GRASS since all of the land cover data is
classified imagery. You've given me some good ideas.
David
On 7/10/05, Hamish <hamish_nospam at yahoo.com> wrote:
> > My PhD research (nearly done!) is on the morphology of low-energy
> > beaches in fjords and its relationship with sea grasses on the
> > low-tide terrace. I've been meaning to contact you about using GRASS
> > with SWAN. Check this out:
> >
> > http://students.washington.edu/dfinlays/waves/
>
> Nice.
>
>
> Some tips on using GRASS with the SWAN nearshore wave model follow.
>
> SWAN (GPL'd): http://fluidmechanics.tudelft.nl/swan/default.htm
> "Simulating WAves Nearshore"
>
> Unknown to me if SWAN works with GCC 4's new fortran 90/95 compiler.
> If so, we have an all Free-software chain.
>
>
> You can use GRASS to make an elevation map then export it directly into
> something that can be loaded by the model with r.out.ascii. You can
> parse the top lines of that ASCII file to get the region extents for the
> model, but be warned that SWAN's use of grid-points vs. cell-center
> coordinate conventions aren't terribly consistent, so be careful adding
> and subtracting one cell to get everything to match up where you intend
> it to be (& triple check).
>
> This can be a problem when you reload the data into GRASS if the data is
> shifted by half a cell. If you don't reset the bounds correctly or
> double the resolution, the data at each grid point will shift itself to
> match the current region (ie by 1/2 a cell both in x and y) and you'll
> see all the raster data no longer matching up with e.g. vector coastline
> data. Changing the region settings or fixing your adjustments will make
> it ok again.
>
> SWAN crashes with a segfault (for me anyway) if you try and make your
> computational grid bigger than about 500x500 (give or take period and
> radial resolution settings). SWAN's memory handling is IMO pretty
> wasteful, but it's a lot better than it used to be. Buy 2gb RAM.
>
> SWAN's "BLOCK" output command can send data to a Matlab array. Do any
> post-processing there (obligatory "or use Octave" plug) (well, r.mapcalc
> could work too), re-save and import into GRASS with r.in.mat. (Importing
> SWAN data into grass is why I wrote r.in.mat by the way) Once you have
> your scripts set up to automate the creation of the swan command file
> from r.out.ascii output & script the post processing to give you a .mat
> file that GRASS can load, it's a really smooth process you can apply to
> many different shorelines just by using d.zoom!
>
> To get the shape of the beach correct (which is kind of critical if
> you're looking at modelling waves crashing against them) make sure you
> are careful when you merge any bathymetry data with coastline, island,
> and topography elevation data. They are sure to use different vertical
> datums (lowest low water vs. mean high water springs, etc).
>
>
>
> good luck,
>
> Hamish
>
--
David Finlayson
Marine Geology & Geophysics
School of Oceanography
Box 357940
University of Washington
Seattle, WA 98195-7940
USA
Office: Marine Sciences Building, Room 112
Phone: (206) 616-9407
Web: http://students.washington.edu/dfinlays
More information about the grass-user
mailing list