[GRASS-user] help with r.gwflow

Hi all,

I’ve been trying to use r.gwflow recently, for groundwater modeling in urban environments.

The r.gwflow help says that the default boundary conditions at the edges of the region are Neumann conditions, which i understand are fixed flux conditions. However the help does not include the value of the default flux conditions at the boundary. Can someone help me figure out what that is?

Also, if there is anyone actively using r.gwflow who is interested in engaging a bit more, please let me know.
Thanks,
Vishal


Vishal K. Mehta, PhD
Scientist
Stockholm Environment Institute - US
133 D St Suite F
Davis CA 95616
www.sei-us.org

Hi,
as default the boundaries are no flow boundary conditions called
"homogeneous Neumann". Hence the default flux is 0.

Best regards
Soeren

2012/7/11 Vishal Mehta <vishalm1975@gmail.com>:

Hi all,

I've been trying to use r.gwflow recently, for groundwater modeling in urban
environments.

The r.gwflow help says that the default boundary conditions at the edges of
the region are Neumann conditions, which i understand are fixed flux
conditions. However the help does not include the value of the default flux
conditions at the boundary. Can someone help me figure out what that is?

Also, if there is anyone actively using r.gwflow who is interested in
engaging a bit more, please let me know.
Thanks,
Vishal

--
Vishal K. Mehta, PhD
Scientist
Stockholm Environment Institute - US
133 D St Suite F
Davis CA 95616
www.sei-us.org

_______________________________________________
grass-user mailing list
grass-user@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-user

On Wed, Jul 11, 2012 at 1:49 PM, Vishal Mehta <vishalm1975@gmail.com> wrote:

Thanks Soren,
That explains some of the results i’m getting, with water piling up above the surface in the edges in low-lying areas.

Can you please tell me how i can change that to constant flux or constant head? If constant flux, should that be in m/s units?

My problem though is that i dont know what a constant flux or head at the edges should be set to. For now the only bc i have put in there deliberately (beyond the default you mention) is that i have set constant head in stream pixels. I’ll have to let flow through at the edges but i have no idea what that flow should be. Are there some ways of setting the edge conditions such that the gw evolution in the central areas of interest are not highly influenced?

And Markus at the very least the manual should make it explicit that the default is a no-flux boundary.
Thanks,
Vishal

On Wed, Jul 11, 2012 at 1:15 PM, Markus Neteler <neteler@osgeo.org> wrote:

Hi Vishal, Sören,

please send me a text snippet for inclusion into the manual in case
you want it to be improved.

thanks
Markus

On Wed, Jul 11, 2012 at 9:33 PM, Sören Gebbert
<soerengebbert@googlemail.com> wrote:

Hi,
as default the boundaries are no flow boundary conditions called
“homogeneous Neumann”. Hence the default flux is 0.

Best regards
Soeren

2012/7/11 Vishal Mehta <vishalm1975@gmail.com>:

Hi all,

I’ve been trying to use r.gwflow recently, for groundwater modeling in urban
environments.

The r.gwflow help says that the default boundary conditions at the edges of
the region are Neumann conditions, which i understand are fixed flux
conditions. However the help does not include the value of the default flux
conditions at the boundary. Can someone help me figure out what that is?

Also, if there is anyone actively using r.gwflow who is interested in
engaging a bit more, please let me know.
Thanks,
Vishal


Vishal K. Mehta, PhD
Scientist
Stockholm Environment Institute - US
133 D St Suite F
Davis CA 95616
www.sei-us.org


grass-user mailing list
grass-user@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-user


grass-user mailing list
grass-user@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-user


Vishal K. Mehta, PhD
Scientist
Stockholm Environment Institute - US
133 D St Suite F
Davis CA 95616
www.sei-us.org


Vishal K. Mehta, PhD
Scientist
Stockholm Environment Institute - US
133 D St Suite F
Davis CA 95616
www.sei-us.org

Thanks Soren,
From you response, can you please tell me how to do the following two tasks (which i dont find in the online manual for r.gwflow): the remainder of your comments i have figured out.

  • How can i compute the flux in [m^3/s] for each cell with r.mapcalc?
    and

  • i have set the bc of the edges and stream cells at constant head for now- how can i get the budget raster maps you mention?

thanks again,
Vishal

On Sat, Jul 14, 2012 at 12:05 PM, Sören Gebbert <soerengebbert@googlemail.com> wrote:

Hi,
sorry for the delay.

2012/7/11 Vishal Mehta <vishalm1975@gmail.com>:

Thanks Soren,
That explains some of the results i’m getting, with water piling up above
the surface in the edges in low-lying areas.

Can you please tell me how i can change that to constant flux or constant
head? If constant flux, should that be in m/s units?

Constant flux can currently only be defined using sources/sinks with
unit [m^3/s], that is option q.
But i can add two new options (fn, fe) that defines the flux in
northern or eastern direction using the unit [m/s]
that will be multiplied internally with the northern or eastern face
area of the cell?

Otherwise you need to compute the flux in [m^3/s] for each cell with r.mapcalc.

My problem though is that i dont know what a constant flux or head at the
edges should be set to. For now the only bc i have put in there deliberately
(beyond the default you mention) is that i have set constant head in stream
pixels. I’ll have to let flow through at the edges but i have no idea what

You can use the river boundary condition to specify the flux in stream pixel.

that flow should be. Are there some ways of setting the edge conditions such
that the gw evolution in the central areas of interest are not highly
influenced?

You can set the boundary of interest to constant head pixel and
compute the flow throw the boundary pixel using the budget option.
The resulting budget raster map shows the flow from active cell into
sources, sinks and constant heads in [m^3/s].

Best regards
Soeren


Vishal K. Mehta, PhD
Scientist
Stockholm Environment Institute - US
133 D St Suite F
Davis CA 95616
www.sei-us.org

hi Soren,

my constan head boundary conditions on the edges are causing water tables to build up everywhere else. so i estimated a constant flux 0f 0.0019 m3/s that i want to apply for edge cells. this is what i am trying in order to impose a constant flux on the edges

r.mapcalc "sink.init=if(row()==1 || row()==444 ||col()==1 ||col==477,-0.0019,null())

#sink.init is the constant flux on edges

my r.gwflow script runs at monthly time step- ihave a loop $month-here’s the r.gwflow snippet

r.gwflow --o -s solver=cg top=top bottom=bottom status=bc2 hc_x=k.1 hc_y=k.1 s=s.1 type=unconfined dt=2592000 error=0.05 phead=sim.$((prevmonth)) r=gwnaturalms.$((month)) q=sink.init output=sim.$((month))

my boundary condition map (bc2) has contant head in strea pixels. all else are calculated.

do you think the above implementation will correctly impose the constant flux on the edges? it seems though that since this is not a boundary condition, how can it ensure a constant flux at edges?

Thanks for any help you can provide,
Vishal

On Mon, Jul 16, 2012 at 1:46 PM, Vishal Mehta <vishalm1975@gmail.com> wrote:

Thanks Soren,
From you response, can you please tell me how to do the following two tasks (which i dont find in the online manual for r.gwflow): the remainder of your comments i have figured out.

  • How can i compute the flux in [m^3/s] for each cell with r.mapcalc?
    and

  • i have set the bc of the edges and stream cells at constant head for now- how can i get the budget raster maps you mention?

thanks again,
Vishal

On Sat, Jul 14, 2012 at 12:05 PM, Sören Gebbert <soerengebbert@googlemail.com> wrote:

Hi,
sorry for the delay.

2012/7/11 Vishal Mehta <vishalm1975@gmail.com>:

Thanks Soren,
That explains some of the results i’m getting, with water piling up above
the surface in the edges in low-lying areas.

Can you please tell me how i can change that to constant flux or constant
head? If constant flux, should that be in m/s units?

Constant flux can currently only be defined using sources/sinks with
unit [m^3/s], that is option q.
But i can add two new options (fn, fe) that defines the flux in
northern or eastern direction using the unit [m/s]
that will be multiplied internally with the northern or eastern face
area of the cell?

Otherwise you need to compute the flux in [m^3/s] for each cell with r.mapcalc.

My problem though is that i dont know what a constant flux or head at the
edges should be set to. For now the only bc i have put in there deliberately
(beyond the default you mention) is that i have set constant head in stream
pixels. I’ll have to let flow through at the edges but i have no idea what

You can use the river boundary condition to specify the flux in stream pixel.

that flow should be. Are there some ways of setting the edge conditions such
that the gw evolution in the central areas of interest are not highly
influenced?

You can set the boundary of interest to constant head pixel and
compute the flow throw the boundary pixel using the budget option.
The resulting budget raster map shows the flow from active cell into
sources, sinks and constant heads in [m^3/s].

Best regards
Soeren


Vishal K. Mehta, PhD
Scientist
Stockholm Environment Institute - US
133 D St Suite F
Davis CA 95616
www.sei-us.org


Vishal K. Mehta, PhD
Scientist
Stockholm Environment Institute - US
133 D St Suite F
Davis CA 95616
www.sei-us.org

Hi Vishal,

2012/7/18 Vishal Mehta <vishalm1975@gmail.com>:

hi Soren,

my constan head boundary conditions on the edges are causing water tables to
build up everywhere else. so i estimated a constant flux 0f 0.0019 m3/s that
i want to apply for edge cells. this is what i am trying in order to impose
a constant flux on the edges

r.mapcalc "sink.init=if(row()==1 || row()==444 ||col()==1
||col==477,-0.0019,null())

#sink.init is the constant flux on edges
# my r.gwflow script runs at monthly time step- ihave a loop $month-here's
the r.gwflow snippet

r.gwflow --o -s solver=cg top=top bottom=bottom status=bc2 hc_x=k.1 hc_y=k.1
s=s.1 type=unconfined dt=2592000 error=0.05 phead=sim.$((prevmonth))
r=gwnaturalms.$((month)) q=sink.init output=sim.$((month))

my boundary condition map (bc2) has contant head in strea pixels. all else
are calculated.

do you think the above implementation will correctly impose the constant
flux on the edges? it seems though that since this is not a boundary
condition, how can it ensure a constant flux at edges?

Your script looks reasonable, except that the error term is much to large.
You may need to use a smaller number like 10⁻7,
otherwise your results my be wrong.

I have attached a small r.gwflow example to show you how to estimate
the constant flux at
a western boundary using the budget computation. Since the flow will
be specified
as a source term, it will be constant the whole computational time.

Maybe you can apply this method to estimate the boundary flux in your area?

JFYI i am using r.gwflow of GRASS 7.

Best regards
Soeren

Thanks for any help you can provide,
Vishal

On Mon, Jul 16, 2012 at 1:46 PM, Vishal Mehta <vishalm1975@gmail.com> wrote:

Thanks Soren,
From you response, can you please tell me how to do the following two
tasks (which i dont find in the online manual for r.gwflow): the remainder
of your comments i have figured out.

- How can i compute the flux in [m^3/s] for each cell with r.mapcalc?
and

- i have set the bc of the edges and stream cells at constant head for
now- how can i get the budget raster maps you mention?

thanks again,
Vishal

On Sat, Jul 14, 2012 at 12:05 PM, Sören Gebbert
<soerengebbert@googlemail.com> wrote:

Hi,
sorry for the delay.

2012/7/11 Vishal Mehta <vishalm1975@gmail.com>:
> Thanks Soren,
> That explains some of the results i'm getting, with water piling up
> above
> the surface in the edges in low-lying areas.
>
> Can you please tell me how i can change that to constant flux or
> constant
> head? If constant flux, should that be in m/s units?

Constant flux can currently only be defined using sources/sinks with
unit [m^3/s], that is option q.
But i can add two new options (fn, fe) that defines the flux in
northern or eastern direction using the unit [m/s]
that will be multiplied internally with the northern or eastern face
area of the cell?

Otherwise you need to compute the flux in [m^3/s] for each cell with
r.mapcalc.

>
> My problem though is that i dont know what a constant flux or head at
> the
> edges should be set to. For now the only bc i have put in there
> deliberately
> (beyond the default you mention) is that i have set constant head in
> stream
> pixels. I'll have to let flow through at the edges but i have no idea
> what

You can use the river boundary condition to specify the flux in stream
pixel.

> that flow should be. Are there some ways of setting the edge conditions
> such
> that the gw evolution in the central areas of interest are not highly
> influenced?

You can set the boundary of interest to constant head pixel and
compute the flow throw the boundary pixel using the budget option.
The resulting budget raster map shows the flow from active cell into
sources, sinks and constant heads in [m^3/s].

Best regards
Soeren

--
Vishal K. Mehta, PhD
Scientist
Stockholm Environment Institute - US
133 D St Suite F
Davis CA 95616
www.sei-us.org

--
Vishal K. Mehta, PhD
Scientist
Stockholm Environment Institute - US
133 D St Suite F
Davis CA 95616
www.sei-us.org

(attachments)

groundwater.sh (1.65 KB)

Thanks Soren,
for your script.

i’m using r.gwflow in v6.5svn, which does not have the budget parameter option. do you know how i can get the 7 version to work in my 6.5 version?

also, i’d like to know how all th rest if it is set up - the river_bed parameters etc. do you have complete documentation of it? i’m trying to model the coupled water supply-extraction and groundwater system of a city, so more complex real world examples of the use of r.gwflow would be really, really useful. have you used it in a ocomplex setting perhaps for your dissertation?

thanks again,
Vishal

On Wed, Jul 18, 2012 at 2:47 PM, Sören Gebbert <soerengebbert@googlemail.com> wrote:

Hi Vishal,

2012/7/18 Vishal Mehta <vishalm1975@gmail.com>:

hi Soren,

my constan head boundary conditions on the edges are causing water tables to
build up everywhere else. so i estimated a constant flux 0f 0.0019 m3/s that
i want to apply for edge cells. this is what i am trying in order to impose
a constant flux on the edges

r.mapcalc "sink.init=if(row()==1 || row()==444 ||col()==1
||col==477,-0.0019,null())

#sink.init is the constant flux on edges

my r.gwflow script runs at monthly time step- ihave a loop $month-here’s

the r.gwflow snippet

r.gwflow --o -s solver=cg top=top bottom=bottom status=bc2 hc_x=k.1 hc_y=k.1
s=s.1 type=unconfined dt=2592000 error=0.05 phead=sim.$((prevmonth))
r=gwnaturalms.$((month)) q=sink.init output=sim.$((month))

my boundary condition map (bc2) has contant head in strea pixels. all else
are calculated.

do you think the above implementation will correctly impose the constant
flux on the edges? it seems though that since this is not a boundary
condition, how can it ensure a constant flux at edges?

Your script looks reasonable, except that the error term is much to large.
You may need to use a smaller number like 10⁻7,
otherwise your results my be wrong.

I have attached a small r.gwflow example to show you how to estimate
the constant flux at
a western boundary using the budget computation. Since the flow will
be specified
as a source term, it will be constant the whole computational time.

Maybe you can apply this method to estimate the boundary flux in your area?

JFYI i am using r.gwflow of GRASS 7.

Best regards
Soeren

Thanks for any help you can provide,
Vishal

On Mon, Jul 16, 2012 at 1:46 PM, Vishal Mehta <vishalm1975@gmail.com> wrote:

Thanks Soren,
From you response, can you please tell me how to do the following two
tasks (which i dont find in the online manual for r.gwflow): the remainder
of your comments i have figured out.

  • How can i compute the flux in [m^3/s] for each cell with r.mapcalc?
    and

  • i have set the bc of the edges and stream cells at constant head for
    now- how can i get the budget raster maps you mention?

thanks again,
Vishal

On Sat, Jul 14, 2012 at 12:05 PM, Sören Gebbert
<soerengebbert@googlemail.com> wrote:

Hi,
sorry for the delay.

2012/7/11 Vishal Mehta <vishalm1975@gmail.com>:

Thanks Soren,
That explains some of the results i’m getting, with water piling up
above
the surface in the edges in low-lying areas.

Can you please tell me how i can change that to constant flux or
constant
head? If constant flux, should that be in m/s units?

Constant flux can currently only be defined using sources/sinks with
unit [m^3/s], that is option q.
But i can add two new options (fn, fe) that defines the flux in
northern or eastern direction using the unit [m/s]
that will be multiplied internally with the northern or eastern face
area of the cell?

Otherwise you need to compute the flux in [m^3/s] for each cell with
r.mapcalc.

My problem though is that i dont know what a constant flux or head at
the
edges should be set to. For now the only bc i have put in there
deliberately
(beyond the default you mention) is that i have set constant head in
stream
pixels. I’ll have to let flow through at the edges but i have no idea
what

You can use the river boundary condition to specify the flux in stream
pixel.

that flow should be. Are there some ways of setting the edge conditions
such
that the gw evolution in the central areas of interest are not highly
influenced?

You can set the boundary of interest to constant head pixel and
compute the flow throw the boundary pixel using the budget option.
The resulting budget raster map shows the flow from active cell into
sources, sinks and constant heads in [m^3/s].

Best regards
Soeren


Vishal K. Mehta, PhD
Scientist
Stockholm Environment Institute - US
133 D St Suite F
Davis CA 95616
www.sei-us.org


Vishal K. Mehta, PhD
Scientist
Stockholm Environment Institute - US
133 D St Suite F
Davis CA 95616
www.sei-us.org


Vishal K. Mehta, PhD
Scientist
Stockholm Environment Institute - US
133 D St Suite F
Davis CA 95616
www.sei-us.org

On Thu, Jul 19, 2012 at 5:53 PM, Vishal Mehta <vishalm1975@gmail.com> wrote:

i'm using r.gwflow in v6.5svn, which does not have the budget parameter
option. do you know how i can get the 7 version to work in my 6.5 version?

You can check the download page at
http://grass.osgeo.org/download/

Which OS do you use?

Markus

Hi,

2012/7/19 Vishal Mehta <vishalm1975@gmail.com>:

Thanks Soren,
for your script.

i'm using r.gwflow in v6.5svn, which does not have the budget parameter
option. do you know how i can get the 7 version to work in my 6.5 version?

Unfortunately the grass7 version of r.gwflow does not run in grass6.5
and i have no plans o back port the budget feature.
So maybe you would like to switch to grass7 to compute the budget?

also, i'd like to know how all th rest if it is set up - the river_bed
parameters etc. do you have complete documentation of it? i'm trying to

You need three parameters to model the river:
1.) The water table of the river in [m], mostly derived from a river
vector map and converted into a raster map
2.) The bed of the river in [m], mostly derived from the river water
table: r.mapcalc "river_bed = river_table - 2"
3.) The leakage coefficient of the river bed in [1/s]

River table, river bed and leakage are occupying the same pixels.

Simple and stupid example:

# River with a water table of 20m and the bed at 18m with a
# leakage coefficient of 0.0001 1/s

# First convert the stream network into a raster map
v.to.rast input=streams output=streams type=line

# Then compute the water table of the river at 20m
# and the height of the bed that is 2m lower than
# the water table of the river
r.mapcalc "river_head = if(isnull(streams), null(), 20)"
r.mapcalc "river_bed = river_head - 2"

# The river leakage coefficient can be computed from the hydraulic conductivity
# of the river bed (0.0001m/s) and the thickness of the river bed (1m)
r.mapcalc "river_leakage = if(isnull(streams), null(), 0.0001/1)"

model the coupled water supply-extraction and groundwater system of a city,
so more complex real world examples of the use of r.gwflow would be really,
really useful. have you used it in a ocomplex setting perhaps for your
dissertation?

The only documentation that is available is the r.gwflow manual page
and my diploma thesis [1] (in German)
that describes the mathematical details. I never utilized r.gwflow to
compute large complex real world problems.

Best regards
Soeren

[1] http://www.hydrogeologie.tu-berlin.de/fileadmin/fg66/_hydro/Diplomarbeiten/2007_Diplomarbeit_Soeren_Gebbert.pdf

thanks again,
Vishal

On Wed, Jul 18, 2012 at 2:47 PM, Sören Gebbert
<soerengebbert@googlemail.com> wrote:

Hi Vishal,

2012/7/18 Vishal Mehta <vishalm1975@gmail.com>:
> hi Soren,
>
> my constan head boundary conditions on the edges are causing water
> tables to
> build up everywhere else. so i estimated a constant flux 0f 0.0019 m3/s
> that
> i want to apply for edge cells. this is what i am trying in order to
> impose
> a constant flux on the edges
>
> r.mapcalc "sink.init=if(row()==1 || row()==444 ||col()==1
> ||col==477,-0.0019,null())
>
> #sink.init is the constant flux on edges
> # my r.gwflow script runs at monthly time step- ihave a loop
> $month-here's
> the r.gwflow snippet
>
> r.gwflow --o -s solver=cg top=top bottom=bottom status=bc2 hc_x=k.1
> hc_y=k.1
> s=s.1 type=unconfined dt=2592000 error=0.05 phead=sim.$((prevmonth))
> r=gwnaturalms.$((month)) q=sink.init output=sim.$((month))
>
> my boundary condition map (bc2) has contant head in strea pixels. all
> else
> are calculated.
>
> do you think the above implementation will correctly impose the constant
> flux on the edges? it seems though that since this is not a boundary
> condition, how can it ensure a constant flux at edges?

Your script looks reasonable, except that the error term is much to large.
You may need to use a smaller number like 10⁻7,
otherwise your results my be wrong.

I have attached a small r.gwflow example to show you how to estimate
the constant flux at
a western boundary using the budget computation. Since the flow will
be specified
as a source term, it will be constant the whole computational time.

Maybe you can apply this method to estimate the boundary flux in your
area?

JFYI i am using r.gwflow of GRASS 7.

Best regards
Soeren

>
> Thanks for any help you can provide,
> Vishal
>
> On Mon, Jul 16, 2012 at 1:46 PM, Vishal Mehta <vishalm1975@gmail.com>
> wrote:
>>
>> Thanks Soren,
>> From you response, can you please tell me how to do the following two
>> tasks (which i dont find in the online manual for r.gwflow): the
>> remainder
>> of your comments i have figured out.
>>
>> - How can i compute the flux in [m^3/s] for each cell with r.mapcalc?
>> and
>>
>> - i have set the bc of the edges and stream cells at constant head for
>> now- how can i get the budget raster maps you mention?
>>
>> thanks again,
>> Vishal
>>
>>
>> On Sat, Jul 14, 2012 at 12:05 PM, Sören Gebbert
>> <soerengebbert@googlemail.com> wrote:
>>>
>>> Hi,
>>> sorry for the delay.
>>>
>>> 2012/7/11 Vishal Mehta <vishalm1975@gmail.com>:
>>> > Thanks Soren,
>>> > That explains some of the results i'm getting, with water piling up
>>> > above
>>> > the surface in the edges in low-lying areas.
>>> >
>>> > Can you please tell me how i can change that to constant flux or
>>> > constant
>>> > head? If constant flux, should that be in m/s units?
>>>
>>> Constant flux can currently only be defined using sources/sinks with
>>> unit [m^3/s], that is option q.
>>> But i can add two new options (fn, fe) that defines the flux in
>>> northern or eastern direction using the unit [m/s]
>>> that will be multiplied internally with the northern or eastern face
>>> area of the cell?
>>>
>>> Otherwise you need to compute the flux in [m^3/s] for each cell with
>>> r.mapcalc.
>>>
>>> >
>>> > My problem though is that i dont know what a constant flux or head
>>> > at
>>> > the
>>> > edges should be set to. For now the only bc i have put in there
>>> > deliberately
>>> > (beyond the default you mention) is that i have set constant head in
>>> > stream
>>> > pixels. I'll have to let flow through at the edges but i have no
>>> > idea
>>> > what
>>>
>>> You can use the river boundary condition to specify the flux in stream
>>> pixel.
>>>
>>> > that flow should be. Are there some ways of setting the edge
>>> > conditions
>>> > such
>>> > that the gw evolution in the central areas of interest are not
>>> > highly
>>> > influenced?
>>>
>>> You can set the boundary of interest to constant head pixel and
>>> compute the flow throw the boundary pixel using the budget option.
>>> The resulting budget raster map shows the flow from active cell into
>>> sources, sinks and constant heads in [m^3/s].
>>>
>>> Best regards
>>> Soeren
>>
>>
>>
>>
>> --
>> Vishal K. Mehta, PhD
>> Scientist
>> Stockholm Environment Institute - US
>> 133 D St Suite F
>> Davis CA 95616
>> www.sei-us.org
>
>
>
>
> --
> Vishal K. Mehta, PhD
> Scientist
> Stockholm Environment Institute - US
> 133 D St Suite F
> Davis CA 95616
> www.sei-us.org

--
Vishal K. Mehta, PhD
Scientist
Stockholm Environment Institute - US
133 D St Suite F
Davis CA 95616
www.sei-us.org

i’m using ubuntu 8.04 Markus,
V

On Thu, Jul 19, 2012 at 9:47 AM, Markus Neteler <neteler@osgeo.org> wrote:

On Thu, Jul 19, 2012 at 5:53 PM, Vishal Mehta <vishalm1975@gmail.com> wrote:

i’m using r.gwflow in v6.5svn, which does not have the budget parameter
option. do you know how i can get the 7 version to work in my 6.5 version?

You can check the download page at
http://grass.osgeo.org/download/

Which OS do you use?

Markus


Vishal K. Mehta, PhD
Scientist
Stockholm Environment Institute - US
133 D St Suite F
Davis CA 95616
www.sei-us.org

Hi Soren,

Thanks much for your example on how to use the river parameters. i’ll see about switching to Grass 7.

If you should be interested in collaborating in this kind of complex application, do let me know. i’ll send you a conference paper i’m writing soon. after that, if you find it interesting enough and have the time, we could perhaps develop it together and i can put you down as co-author if that works out…

thanks for your patience with my repeated emails.FYI i have done distributed surface hydrological modeling 10 years ago in GRASS, and eventually i’d like to do combined surface-groundwater modeling in GRASS. This is the first time i’ve attempted groundwater modeling in GRASS.

Vishal

2012/7/19 Vishal Mehta <vishalm1975@gmail.com>:

Thanks Soren,

for your script.

i’m using r.gwflow in v6.5svn, which does not have the budget parameter
option. do you know how i can get the 7 version to work in my 6.5 version?

Unfortunately the grass7 version of r.gwflow does not run in grass6.5
and i have no plans o back port the budget feature.
So maybe you would like to switch to grass7 to compute the budget?

also, i’d like to know how all th rest if it is set up - the river_bed
parameters etc. do you have complete documentation of it? i’m trying to

You need three parameters to model the river:
1.) The water table of the river in [m], mostly derived from a river
vector map and converted into a raster map
2.) The bed of the river in [m], mostly derived from the river water
table: r.mapcalc “river_bed = river_table - 2”
3.) The leakage coefficient of the river bed in [1/s]

River table, river bed and leakage are occupying the same pixels.

Simple and stupid example:

River with a water table of 20m and the bed at 18m with a

leakage coefficient of 0.0001 1/s

First convert the stream network into a raster map

v.to.rast input=streams output=streams type=line

Then compute the water table of the river at 20m

and the height of the bed that is 2m lower than

the water table of the river

r.mapcalc “river_head = if(isnull(streams), null(), 20)”
r.mapcalc “river_bed = river_head - 2”

The river leakage coefficient can be computed from the hydraulic conductivity

of the river bed (0.0001m/s) and the thickness of the river bed (1m)

r.mapcalc “river_leakage = if(isnull(streams), null(), 0.0001/1)”

model the coupled water supply-extraction and groundwater system of a city,
so more complex real world examples of the use of r.gwflow would be really,
really useful. have you used it in a ocomplex setting perhaps for your
dissertation?

The only documentation that is available is the r.gwflow manual page
and my diploma thesis [1] (in German)
that describes the mathematical details. I never utilized r.gwflow to
compute large complex real world problems.

Best regards
Soeren

[1] http://www.hydrogeologie.tu-berlin.de/fileadmin/fg66/_hydro/Diplomarbeiten/2007_Diplomarbeit_Soeren_Gebbert.pdf

thanks again,
Vishal

On Wed, Jul 18, 2012 at 2:47 PM, Sören Gebbert
<soerengebbert@googlemail.com> wrote:

Hi Vishal,

2012/7/18 Vishal Mehta <vishalm1975@gmail.com>:

hi Soren,

my constan head boundary conditions on the edges are causing water
tables to
build up everywhere else. so i estimated a constant flux 0f 0.0019 m3/s
that
i want to apply for edge cells. this is what i am trying in order to
impose
a constant flux on the edges

r.mapcalc "sink.init=if(row()==1 || row()==444 ||col()==1
||col==477,-0.0019,null())

#sink.init is the constant flux on edges

my r.gwflow script runs at monthly time step- ihave a loop

$month-here’s
the r.gwflow snippet

r.gwflow --o -s solver=cg top=top bottom=bottom status=bc2 hc_x=k.1
hc_y=k.1
s=s.1 type=unconfined dt=2592000 error=0.05 phead=sim.$((prevmonth))
r=gwnaturalms.$((month)) q=sink.init output=sim.$((month))

my boundary condition map (bc2) has contant head in strea pixels. all
else
are calculated.

do you think the above implementation will correctly impose the constant
flux on the edges? it seems though that since this is not a boundary
condition, how can it ensure a constant flux at edges?

Your script looks reasonable, except that the error term is much to large.
You may need to use a smaller number like 10⁻7,
otherwise your results my be wrong.

I have attached a small r.gwflow example to show you how to estimate
the constant flux at
a western boundary using the budget computation. Since the flow will
be specified
as a source term, it will be constant the whole computational time.

Maybe you can apply this method to estimate the boundary flux in your
area?

JFYI i am using r.gwflow of GRASS 7.

Best regards
Soeren

Thanks for any help you can provide,
Vishal

On Mon, Jul 16, 2012 at 1:46 PM, Vishal Mehta <vishalm1975@gmail.com>
wrote:

Thanks Soren,
From you response, can you please tell me how to do the following two
tasks (which i dont find in the online manual for r.gwflow): the
remainder
of your comments i have figured out.

  • How can i compute the flux in [m^3/s] for each cell with r.mapcalc?
    and

  • i have set the bc of the edges and stream cells at constant head for
    now- how can i get the budget raster maps you mention?

thanks again,
Vishal

On Sat, Jul 14, 2012 at 12:05 PM, Sören Gebbert
<soerengebbert@googlemail.com> wrote:

Hi,
sorry for the delay.

2012/7/11 Vishal Mehta <vishalm1975@gmail.com>:

Thanks Soren,
That explains some of the results i’m getting, with water piling up
above
the surface in the edges in low-lying areas.

Can you please tell me how i can change that to constant flux or
constant
head? If constant flux, should that be in m/s units?

Constant flux can currently only be defined using sources/sinks with
unit [m^3/s], that is option q.
But i can add two new options (fn, fe) that defines the flux in
northern or eastern direction using the unit [m/s]
that will be multiplied internally with the northern or eastern face
area of the cell?

Otherwise you need to compute the flux in [m^3/s] for each cell with
r.mapcalc.

My problem though is that i dont know what a constant flux or head
at
the
edges should be set to. For now the only bc i have put in there
deliberately
(beyond the default you mention) is that i have set constant head in
stream
pixels. I’ll have to let flow through at the edges but i have no
idea
what

You can use the river boundary condition to specify the flux in stream
pixel.

that flow should be. Are there some ways of setting the edge
conditions
such
that the gw evolution in the central areas of interest are not
highly
influenced?

You can set the boundary of interest to constant head pixel and
compute the flow throw the boundary pixel using the budget option.
The resulting budget raster map shows the flow from active cell into
sources, sinks and constant heads in [m^3/s].

Best regards
Soeren


Vishal K. Mehta, PhD
Scientist
Stockholm Environment Institute - US
133 D St Suite F
Davis CA 95616
www.sei-us.org


Vishal K. Mehta, PhD
Scientist
Stockholm Environment Institute - US
133 D St Suite F
Davis CA 95616
www.sei-us.org


Vishal K. Mehta, PhD
Scientist
Stockholm Environment Institute - US
133 D St Suite F
Davis CA 95616
www.sei-us.org


Vishal K. Mehta, PhD
Scientist
Stockholm Environment Institute - US
133 D St Suite F
Davis CA 95616
www.sei-us.org