[GRASS-user] Creating a ground water from a vector files of contours?

Hello Grassusers,

Like the subject line says, I need help creating a ground water map using a vector file of contours. The ground water file came from a E00 file that was read into Grass using v.in.e00. I am currently running v.surf.rst which is taking a long time to run. Are there other ways to do this problem?

Thanks in advance,
Bob

Bob Moskovitz
Seismic Hazards Zonation Program
California Geological Survey
http://gmw.consrv.ca.gov/shmp

CONFIDENTIALITY NOTICE: This communication is intended only for the use of the individual or entity to which it is addressed. This message contains information from the State of California, California Geological Survey, which may be privileged, confidential and exempt from disclosure under applicable law, including the Electronic Communications Privacy Act. If the reader of this communication is not the intended recipient, you are hereby notified that any dissemination, distribution, or copying of this communication is strictly prohibited.

Hi Bob,

What have you defined your region as: i.e. what is the cell size, and what
sort of area are you dealing with? If the cell size is too small, or your
have defined a very large area, then v.surf.rst will take a very long time --
possibly producing a finer grid than really needed.

That aside, contour data can sometimes be a troublesome source for an
interpolation. Also, for VERY large datasets (small resolution / large area)
you might try some other interpolator. check the archives for some ideas.

Cheers,

Dylan

On Monday 05 February 2007 12:50, Moskovitz, Bob wrote:

Hello Grassusers,

Like the subject line says, I need help creating a ground water map using a
vector file of contours. The ground water file came from a E00 file that
was read into Grass using v.in.e00. I am currently running v.surf.rst
which is taking a long time to run. Are there other ways to do this
problem?

Thanks in advance,
Bob

Bob Moskovitz
Seismic Hazards Zonation Program
California Geological Survey
http://gmw.consrv.ca.gov/shmp

CONFIDENTIALITY NOTICE: This communication is intended only for the use of
the individual or entity to which it is addressed. This message contains
information from the State of California, California Geological Survey,
which may be privileged, confidential and exempt from disclosure under
applicable law, including the Electronic Communications Privacy Act. If the
reader of this communication is not the intended recipient, you are hereby
notified that any dissemination, distribution, or copying of this
communication is strictly prohibited.

--
Dylan Beaudette
Soils and Biogeochemistry Graduate Group
University of California at Davis
530.754.7341

On Mon, 2007-02-05 at 12:50 -0800, Moskovitz, Bob wrote:

Hello Grassusers,

Like the subject line says, I need help creating a ground water map
using a vector file of contours. The ground water file came from a
E00 file that was read into Grass using v.in.e00. I am currently
running v.surf.rst which is taking a long time to run. Are there
other ways to do this problem?

Bob,

As you've discovered, v.surf.rst is quite computationally intensive.
Depending on your needs, here are a some suggestions that may help:

- When using RST, experiment with a small region to setup parameters
properly. It will save a lot of time in the long run.
- Reducing resolution will speed calculations.
- Setup several overlapping regions, run each one on a separate CPU,
crop outlying data, and r.patch them together. This unfortunately
allows plenty of room for human error and may introduce seams.
- Depending on level of "accuracy" and output desired, v.surf.bspline
and v.surf.idw may be less expensive alternatives.

In the past, I have setup my RST parameters and "set it and forget
it" (to borrow from RonCo. :-). I came back a week later and I was
ready to start doing real work.

Others may have better ideas...

--
Brad Douglas <rez touchofmadness com> KB8UYR/6
Address: 37.493,-121.924 / WGS84 National Map Corps #TNMC-3785

Bob wrote:

Like the subject line says, I need help creating a ground water map
using a vector file of contours. The ground water file came from a
E00 file that was read into Grass using v.in.e00. I am currently
running v.surf.rst which is taking a long time to run. Are there
other ways to do this problem?

g.region res=
v.to.rast
r.surf.contour

"r.surf.contour - Surface generation program from rasterized contours."

It works pretty well, but do read the help page for some hints.

Also from the man page:
"BUGS

r.surf.contour has not been fully updated for NULL support and still
considers a value of "0" to be NULL. Thus any contour lines at 0
elevation (e.g. the coastline) will be ignored. In such cases converting
any 0 values in the input map to -1 with r.mapcalc may be a suitable
work-around.

Currently r.surf.contour will only produce CELL (integer) map output.
If you would like a finer grade output map (i.e. floating point) it is
recommended to multiply the input map by 100 (for example) using
r.mapcalc, then divide the resultant r.surf.contour output map by 100.0,
again with r.mapcalc.

Volunteers are sought to remedy both these issues."

Hamish

On 2/5/07, Hamish <hamish_nospam@yahoo.com> wrote:

Bob wrote:
>
> Like the subject line says, I need help creating a ground water map
> using a vector file of contours. The ground water file came from a
> E00 file that was read into Grass using v.in.e00. I am currently
> running v.surf.rst which is taking a long time to run. Are there
> other ways to do this problem?

g.region res=
v.to.rast
r.surf.contour

"r.surf.contour - Surface generation program from rasterized contours."

It works pretty well, but do read the help page for some hints.

Also from the man page:
"BUGS

r.surf.contour has not been fully updated for NULL support and still
considers a value of "0" to be NULL. Thus any contour lines at 0
elevation (e.g. the coastline) will be ignored. In such cases converting
any 0 values in the input map to -1 with r.mapcalc may be a suitable
work-around.

Currently r.surf.contour will only produce CELL (integer) map output.
If you would like a finer grade output map (i.e. floating point) it is
recommended to multiply the input map by 100 (for example) using
r.mapcalc, then divide the resultant r.surf.contour output map by 100.0,
again with r.mapcalc.

Volunteers are sought to remedy both these issues."

Hamish

_______________________________________________
grassuser mailing list
grassuser@grass.itc.it
http://grass.itc.it/mailman/listinfo/grassuser

not sure how well this would work, but ...

how about

v.to.points
transfer elevation from contour lines to point [z] coordinates
v.surf.rst or other interpolator...

???

cheers,

dylan

Dylan Beaudette wrote:

> Bob wrote:
> >
> > Like the subject line says, I need help creating a ground water
> > map using a vector file of contours. The ground water file came
> > from a E00 file that was read into Grass using v.in.e00. I am
> > currently running v.surf.rst which is taking a long time to run.
> > Are there other ways to do this problem?

H:

> r.surf.contour - Surface generation program from rasterized
> contours.

Dylan:

not sure how well this would work, but ...

(r.surf.contour does work well!, also try r.surf.nnbathy from wiki addons)

Dylan:

how about

v.to.points
transfer elevation from contour lines to point [z] coordinates
v.surf.rst or other interpolator...

that doesn't work very well as it aliases results at areas of high point
density. (ie along the contour lines)

Imagine what the quadtree segmentation vector looks like in that case.
(v.surf.rst treefile=)

Hamish

On Monday 05 February 2007 23:13, Hamish wrote:

Dylan Beaudette wrote:
> > Bob wrote:
> > > Like the subject line says, I need help creating a ground water
> > > map using a vector file of contours. The ground water file came
> > > from a E00 file that was read into Grass using v.in.e00. I am
> > > currently running v.surf.rst which is taking a long time to run.
> > > Are there other ways to do this problem?

H:
> > r.surf.contour - Surface generation program from rasterized
> > contours.

Dylan:
> not sure how well this would work, but ...

(r.surf.contour does work well!, also try r.surf.nnbathy from wiki addons)

Oops, looks like I commented without reading. I meant to say that gridding
from contour data can be problematic as compared to a pile of points.

Dylan:
> how about
>
> v.to.points
> transfer elevation from contour lines to point [z] coordinates
> v.surf.rst or other interpolator...

that doesn't work very well as it aliases results at areas of high point
density. (ie along the contour lines)

Good point.

Imagine what the quadtree segmentation vector looks like in that case.
(v.surf.rst treefile=)

will have to try that some time...

Cheers,

--
Dylan Beaudette
Soils and Biogeochemistry Graduate Group
University of California at Davis
530.754.7341