Sunteți pe pagina 1din 54

TWO-PHASE FLOW 2-1

2 TWO-PHASE FLOW

2.1 Introduction

The two-phase flow option in FLAC allows numerical modeling of the flow of two immiscible fluids
through porous media. The formulation applies to problems, such as those encountered in reservoir
simulation, in which a fluid displaces another, and simultaneous flow of the two fluids takes place
in the porous medium with no mass transfer between them. The formulation is not suitable for
describing piston-like processes in which a sharp interface between the two fluids moves at the
average speed of fluid flow. A description of the concepts involved in the mathematical description
of multi-phase flow may be found in reference books such as Fundamentals of Numerical Reservoir
Simulation (Peaceman 1977). Some of these concepts are addressed below.
In two-phase flow, the void space is completely filled by the two fluids. One of the fluids (the wetting
fluid, identified by the subscript w) wets the porous medium more than the other (the non-wetting
fluid, identified by subscript g or nw). As a result, the pressure in the non-wetting fluid will be higher
than the pressure in the wetting fluid. The pressure difference Pg − Pw is the capillary pressure
Pc , which is a function of saturation, Sw . Darcy’s law is used to describe the flow of each fluid.
The effective intrinsic permeability in the law is given as a fraction of the single-fluid (or saturated)
intrinsic permeability. The fractions (or relative permeabilities) are functions of saturation, Sw . In
the FLAC implementation, the curves for capillary pressure and relative permeabilities are built-in
empirical laws of the van Genuchten form (van Genuchten 1980).
The flow modeling with FLAC may be done by itself or in parallel with the mechanical modeling.
In the latter case, the solid grains forming the matrix are assumed to be incompressible (equivalent
to the Biot coefficient equal to one for single phase flow). The following features of the fluids/solid
interaction are captured using the built-in logic:
• Changes in effective stress cause volumetric strain to occur (the effective stress increment
for two-phase flow is the Terzaghi effective stress increment, with pore pressure increment
replaced by mean, saturation-weighted, fluid pressure increments – see, e.g., Dangla
1999).
• Volumetric deformation causes changes in fluid pressures.
• Bishop effective stress is used in the detection of yield in constitutive models involving
plasticity (see, e.g., Hutter et al. 1999).
Volumetric deformations induce changes in porosity, which in turn impact permeability and the
capillary pressure curve parameters. These dependencies are not accounted for automatically in
the code. However, the user can implement them using appropriate FISH functions. (FISH access
is provided to most of the two-phase flow parameters and fluid properties.)
The following characteristics are provided:
1. The fluid transport laws correspond to both isotropic and anisotropic permeability.

FLAC Version 6.0


2-2 Fluid-Mechanical Interaction

2. Different zones may have different fluid-flow properties.


3. Fluid pressure, flux and impermeable boundary conditions may be prescribed for both
fluids.
4. Fluid sources may be inserted into the material as either point sources (INTERIOR dis-
charge, INTERIOR nwdischarge) or volume sources (INTERIOR well, INTERIOR nwwell).
These sources correspond to either a prescribed inflow or outflow of fluid, and may vary
with time.
5. Any of the mechanical models may be used with the two-phase flow logic.
Note that the two-phase flow calculation is available in axisymmetry, but only one-way (fluid-to-
mechanical) coupling is provided. Also, coupling of two-phase flow to the thermal logic is not
provided in this version of the code.
The remainder of this section is divided into four parts:
1. The mathematical formulation for two-phase flow and coupled fluid flow-mechanical
processes is given in Section 2.2.
2. The numerical formulation used in the FLAC implementation of the two-phase flow logic
is described in Section 2.3.
3. Section 2.4 lists the additional FLAC commands and FISH access for two-phase flow
analysis.
4. Example problems are contained in Section 2.5.*

* The data files listed in this chapter are created in one of two ways: either by typing in the commands
in a text editor, or by generating the model in the GIIC and exporting the file using the File / Export
Record menu item. The files are stored in the directory “ITASCA\FLAC600\FLUID\2-TwoPhase”
with the extension “.DAT.” A project file is also provided for each example. In order to run an
example and compare the results to plots in this volume, open a project file in the GIIC by clicking
on the File / Open Project menu item and selecting the project file name (with extension “.PRJ”).
Click on the Project Options icon at the top of the Project Tree Record, select Rebuild unsaved
states, and the example data file will be run and plots created.

FLAC Version 6.0


TWO-PHASE FLOW 2-3

2.2 Mathematical Formulation

2.2.1 Governing Equations

The two-phase flow logic in FLAC embodies the following laws.


Transport Laws
Wetting and non-wetting fluid transport are described by Darcy’s law:


qiw = −kijw κrw (Pw − ρw gk xk ) (2.1)
∂xj

g μw g ∂
qi = −kijw κr (Pg − ρg gk xk ) (2.2)
μg ∂xj

where kij is saturated mobility coefficient (which is a tensor), κr is relative permeability for the
fluid (which is a function of saturation Sw ), μ is dynamic viscosity, P is pore pressure, ρ is fluid
density and g is gravity. Note that the mobility coefficient (or FLAC permeability) is defined as the
ratio of intrinsic permeability to dynamic viscosity.
Relative Permeability Laws
Relative permeabilities are related to saturation Sw by empirical laws of the van Genuchten form
(van Genuchten 1980) – see, e.g., Figure 2.1:

   2
1/a a
κrw = Seb 1 − 1 − Se (2.3)

 
g 1/a 2a
κr = (1 − Se )c 1 − Se (2.4)

In those laws, a, b and c are constant parameters and Se is the effective saturation.
The effective saturation is defined as

Sw − Srw
Se = (2.5)
1 − Srw

where Srw is residual wetting fluid saturation (the residual saturation, which remains in spite of high
capillary pressures, is referred to as “connate” in the case of water).

FLAC Version 6.0


2-4 Fluid-Mechanical Interaction

JOB TITLE : .

FLAC (Version 6.00)

LEGEND

17-Jan-08 14:10
step 0 1.000

Table Plot
non-wetting fluid
0.800
wetting fluid

0.600

0.400

0.200

1 2 3 4 5 6 7 8 9 10

-01
(10 )
Itasca Consulting Group, Inc.
Minneapolis, Minnesota USA

g
Figure 2.1 Relative permeabilities, κrw , κr , vs effective saturation, Se

Capillary Pressure Law


The capillary pressure law relates the difference in fluid pore pressures to saturation:

Pg − Pw = Pc (Sw ) (2.6)

In FLAC, this empirical law is of the van Genuchten form (see Figure 2.2):

 1−a
−1/a
Pc (Sw ) = P0 Se −1 (2.7)

FLAC Version 6.0


TWO-PHASE FLOW 2-5

JOB TITLE : .

FLAC (Version 6.00)


01
(10 )
LEGEND

17-Jan-08 14:10 1.400


step 0

Table Plot 1.200


Capillary pressure curve

1.000

0.800

0.600

0.400

0.200

1 2 3 4 5 6 7 8 9 10

-01
(10 )
Itasca Consulting Group, Inc.
Minneapolis, Minnesota USA

Figure 2.2 Capillary pressure, Pc , vs effective saturation, Se

The parameter P0 is larger for finer material, and its dependency on material properties may be
assessed using the Leverett scaling law (see, e.g., Nikolaevskij 1990, p. 414). This law, derived
using dimensional analysis, has the form

σ
P0 = √ (2.8)
κ/n

where σ is surface tension (a property of the matrix), κ is intrinsic permeability and n is porosity.
The “alpha coefficient” is sometimes introduced in the literature in place of P0 . The relation between
those two scaling parameters is

ρw g
P0 = (2.9)
α

where ρw is wetting fluid density and g is gravity.


Saturation
The two fluids completely fill the pore space, and we have

Sw + Sg = 1 (2.10)

FLAC Version 6.0


2-6 Fluid-Mechanical Interaction

Fluid Balance Laws


For slightly compressible fluids, the balance relations are:

∂ζw ∂q w
= − i + qvw (2.11)
∂t ∂xi

g
∂ζg ∂q
= − i + qvg (2.12)
∂t ∂xi

where ζ is the variation of fluid content (variation of fluid volume per unit volume of porous
material), and qv is the volumetric fluid source intensity.
Fluid Constitutive Laws
The constitutive laws for the fluids are:

 
∂Pw Kw ∂ζw ∂Sw ∂
Sw = −n − Sw (2.13)
∂t n ∂t ∂t ∂t

 
∂Pg Kg ∂ζg ∂Sg ∂
Sg = −n − Sg (2.14)
∂t n ∂t ∂t ∂t

where Kw , Kg are fluid bulk moduli, and  is volumetric strain.


Finally, after substitution of Eq. (2.11) in Eq. (2.13), Eq. (2.12) in Eq. (2.14), and some rearrange-
ment of terms, we obtain:

   
Sw ∂Pw ∂Sw ∂qiw ∂
n + =− + Sw (2.15)
Kw ∂t ∂t ∂xi ∂t

   g

Sg ∂Pg ∂Sg ∂qi ∂
n + =− + Sg (2.16)
Kg ∂t ∂t ∂xi ∂t

In a fluid-only calculation, the term ∂


∂t is omitted, and Eqs. (2.6), (2.10), (2.15) and (2.16) form a
nonlinear system of four equations which needs to be solved for the four unknowns, Pw , Pg , Sw
and Sg .
The additional equations for a coupled fluid-mechanical calculation, adapted for two-phase flow
analysis, are:

FLAC Version 6.0


TWO-PHASE FLOW 2-7

Balance of Momentum
The balance equation is

∂σij d u̇i
+ ρgi = ρ (2.17)
∂xj dt

where ρ is bulk density and u̇ is velocity. For two-phase flow calculations, we have

ρ = ρd + n(Sw ρw + Sg ρg ) (2.18)

where ρw , ρg are fluid densities, and ρd is the matrix dry density.


Mechanical Constitutive Laws
The incremental constitutive response for the porous solid has the form

σ  ij = H (σij , ij , κ) (2.19)

where σ  ij is the change in effective stress, H is the functional form of the constitutive law, and
κ is a history parameter. For two-phase flow, the change in effective stress is defined as

σ  ij = σij + P δij (2.20)

where (see Dangla 1999)

P = Sw Pw + Sg Pg (2.21)

As may be seen from this formulation, provided the total stress remains constant, deformation will
only occur if a change of pore pressure takes place. For constitutive models involving plasticity,
Bishop effective stress is used to detect failure. This effective stress is defined as σij + P̄ δij , with
P̄ = Sw Pw + Sg Pg .
Compatibility Equation
The relation between strain rate and velocity gradient is given as usual. It is listed here for com-
pleteness:

 
1 ∂ u̇i ∂ u̇j
˙ij = + (2.22)
2 ∂xj ∂xi

FLAC Version 6.0


2-8 Fluid-Mechanical Interaction

2.2.2 Boundary and Initial Conditions

In FLAC, initial values of saturation Sw and wetting pore pressure Pw must be specified. The initial
value of non-wetting pore pressure is derived internally from the capillary pressure law.
Pore pressure or flux boundary conditions may be specified for each fluid. If no condition is specified
for one of the fluids, the boundary acts as impermeable for that fluid. A seepage condition may
also be imposed. In this case, the non-wetting pressure is ambient (value zero) and the boundary
remains impermeable to the wetting fluid as long as the pressure Pw is less than ambiant.

FLAC Version 6.0


TWO-PHASE FLOW 2-9

2.3 Numerical Formulation

The fluid balance equations (Eqs. (2.15) and (2.16)) are solved in FLAC using a discretization and
finite-difference method which follow the general scheme presented in Section 1. That section
should be consulted whenever reference is made to the triangles that make up FLAC ’s quadrilateral
elements, and to the derivation of the element fluid “stiffness matrix.”
In the two-phase flow calculation, two pore pressures (Pw , Pg ) and one value of the saturation (Sw )
are defined at each node. It is assumed that these quantities vary linearly within a triangle. The
numerical scheme rests on a nodal formulation of the fluid continuity equations. The nodal flow
contributions are calculated on a zone basis, using an upstream weighting technique. The resulting
system of ordinary differential equations is solved using an explicit formulation in time.

2.3.1 Nodal Formulation of the Fluid Balance Laws

For a finite volume V , the balance laws take the form:

Sw 1
Pw + Sw = − [Qw t + Sw V ] (2.23)
Kw nV

Sg 1

Pg + Sg = − Qg t + Sg V (2.24)
Kg nV

where V is nodal volume, and Q is nodal flow rate.


The incremental forms of Eqs. (2.6) and (2.10) are:

Pg − Pw = Pc  Sw (2.25)

Sw + Sg = 0 (2.26)

where Pc  stands for the derivative of Pc (Sw ) with respect to Sw .


These latter relations may be used to eliminate Pg and Sg from Eqs. (2.23) and (2.24). This
gives, after some rearrangement of terms:

Sw 1
Pw + Sw = − [Qw t + Sw V ] (2.27)
Kw nV

Sg Sg Pc  1

Pw + − 1 Sw = − Qg t + Sg V (2.28)
Kg Kg nV

FLAC Version 6.0


2 - 10 Fluid-Mechanical Interaction

Finally, solving for Pw and Sw , we obtain

   
t Sg Pc  V Sg Pc 
Pw = − Qw 1 − + Qg − β Sw 1 − + Sg (2.29)
nV D Kg nV D Kg

   
t Sg Sw V 1 1
Sw = − Qw − Qg −β Sw Sg − (2.30)
nV D Kg Kw nV D Kg Kw

where, by definition,

Sw Sg Sw Sg Pc 
D= + − (2.31)
Kw Kg Kw Kg

and the undrained coefficient β (introduced for numerical convenience) is a constant, equal to one
for mechanical coupling and zero for a stand-alone fluid flow calculation.
Differentiation of Eq. (2.7) with respect to Sw gives, using Eq. (2.5),

1−a  
−1/a 1/a −a
Sg Pc  = −P0 (1 − Se )Se 1 − Se (2.32)
a

As may be seen from this expression, although the derivative of the capillary curve has a vertical
tangent at Sw = 1, the term Sg Pc  , which appears in Eqs. (2.29) to (2.31), is finite and goes to zero
at full saturation.
In the FLAC explicit numerical scheme, the new nodal wetting pore pressure and saturation at t + t
are evaluated from those at time, t, by adding the increments Eqs. (2.29) and (2.30), evaluated from
known quantities at time, t. The new value of Pg at the node is derived from new values of Pw and
Sw , using the capillary pressure law Eq. (2.6).

FLAC Version 6.0


TWO-PHASE FLOW 2 - 11

2.3.2 Nodal Flow Rate

The zone contributions to nodal flow rates Qw and Qg are calculated in FLAC using the element
wetting-fluid “stiffness matrix,” [Mw ]. The components of this matrix are the same as those which
would have been calculated for saturated flow of the wetting fluid (see Section 1.3.1 for a reference
on its derivation).
For two-phase flow, the nodal volumetric flow rates in a zone Qw , Qg are related to nodal pore
pressures Pw , Pg by the matrix expressions:

Qw = κ̂rw [Mw ]{Pw − ρw xi gi } (2.33)

g μw
Qg = κ̂r [Mw ]{Pg − ρg xi gi } (2.34)
μg

where κ̂r is relative permeability for the zone. In FLAC, an upstream weighting technique is used,
whereby the average saturation at inflow nodes in the zone is used in combination with Eqs. (2.3)
– (2.5) to evaluate the zone relative permeabilities.

2.3.3 Timestep

In a two-phase flow calculation, the stable timestep for numerical stability is calculated on the
basis of fluid diffusivity (even in coupled simulations). It is taken as the minimum value of stable
timesteps that would be used for saturated flow of the wetting and non-wetting fluid, respectively
(see Section 1.3.5 for reference to critical timestep determination for saturated flow). An estimation
of the timestep magnitude may be obtained using the formula


1 1
t = L2z n min , (2.35)
kw Kw kg Kg

where Lz is the smallest zone size in the simulation, and kg is the saturated mobility coefficient for
the non-wetting fluid (kg = kw μw /μg ).
The effect of increased mechanical stiffness is incorporated in quasi-static analysis in the density-
scaling scheme already in FLAC; the apparent mechanical bulk modulus of a zone is modified by
the presence of fluids:

Sw Kw + Sg Kg
K := K + (2.36)
n

where n is the porosity of the zone.

FLAC Version 6.0


2 - 12 Fluid-Mechanical Interaction

2.3.4 Mechanical Coupling

In the FLAC formulation, changes in effective stress induce deformation. Any of the built-in
constitutive models can be used in conjunction with a two-phase fluid flow calculation to model this
effect. The constitutive model calculates an effective stress change using a law of the functional
form Eq. (2.19). The corresponding total stress change is then derived from Eq. (2.20). The mean
zone pressure in this formula is evaluated from Eq. (2.21), using mean zone values for saturations
and pressure increments.
In transient fluid-mechanical calculations, volumetric deformations generate pore pressures and
saturation changes. This additional coupling effect is taken into consideration by incorporation of
the second terms in Eqs. (2.30) and (2.31) in the numerical scheme. The nodal contributions of
those terms are calculated after distribution of zone volumetric strains to the nodes.

FLAC Version 6.0


TWO-PHASE FLOW 2 - 13

2.4 FLAC Commands and FISH Access

As a naming convention in FLAC commands and FISH variables related to two-phase flow, we use
the subscript w for the wetting fluid, and nw or 2 for the non-wetting fluid. The main commands
available to assist in a FLAC simulation are listed in the Section 1 in the Command Reference; the
additional commands specifically related to two-phase flow are listed in this section.

2.4.1 FLAC Configuration

Two-phase flow calculation is performed in CONFIG tpflow only. Please note that CONFIG gw and
CONFIG tpflow cannot be used simultaneously. Also, coupling with the thermal logic is not provided
in this version of the FLAC, so CONFIG thermal should not be used with CONFIG tpflow.

2.4.2 Initialization

The variables listed in Tables 2.1 and 2.2 can be initialized in CONFIG tpflow, using the INITIAL
command.

Table 2.1 Gridpoint variables (initialization)


INITIAL keyword
pp w pore pressure
nwpp nw pore pressure *
saturation w saturation
fmodulus w fluid modulus
f2modulus nw fluid modulus
vga van Genuchten a
vgpcw van Genuchten b
vgpcnw van Genuchten c
vgp0 van Genuchten PO
rsat residual saturation Srw

* This command is only used at fixed nwpp nodes. The quantity is initialized automatically by the
code at nodes where nwpp is not fixed.

FLAC Version 6.0


2 - 14 Fluid-Mechanical Interaction

Table 2.2 Zone variables (initialization)


INITIAL keyword
wk11 w sat. mobility coeff. k11
wk12 w sat. mobility coeff. k12
wk22 w sat. mobility coeff. k22
wpermeability w isotropic mobility coeff. *
poro porosity
udcoe undrained coeff. β **
visrat viscosity ratio ***

* This command initializes k11 and k22 at the given value, and k12 to zero.
** This coefficient, which is 1 by default, can be initialized to 0 to prevent generation of pore
pressure by volumetric straining.
*** The ratio is for wetting over non-wetting fluid dynamic viscosity.
Please note the difference between groundwater-flow mode and two-phase flow mode.
In CONFIG gw we use:
PROPERTY porosity
PROPERTY k11
PROPERTY k12
PROPERTY permeability
In CONFIG tpflow we use:
INITIAL porosity
INITIAL wk11
INITIAL wk12
INITIAL wpermeability
In both configurations, the “permeability” input is the value of the wetting fluid mobility coefficient
(coefficient of pore pressure in Darcy’s law) at full saturation. The effective mobility is obtained
by multiplication of the wetting fluid input value with a relative mobility law built into the code. In
CONFIG tpflow, and for the non-wetting fluid, this relation is multiplied by the viscosity ratio (an
input value equal to wetting fluid over non-wetting fluid viscosity).

FLAC Version 6.0


TWO-PHASE FLOW 2 - 15

The wetting and non-wetting fluid density can be initialized using the commands:
WATER density value
WATER nwdensity value
The minimum value of relative saturation (used to cap the capillary pressure) can be changed to a
value larger than the default value of 10−5 , using the command
WATER secap value

2.4.3 Printing

In CONFIG tpflow mode, the variables listed in Tables 2.3 and 2.4 can be printed using the PRINT
command.

Table 2.3 Gridpoint variables


PRINT keyword
gpp w pore pressure
nwpp nw pore pressure
saturation w saturation
fmodulus w fluid modulus
f2modulus nw fluid modulus
vga van Genuchten a
vgpcw van Genuchten b
vgpcnw van Genuchten c
vgp0 van Genuchten P0
rsat residual saturation Srw

FLAC Version 6.0


2 - 16 Fluid-Mechanical Interaction

Table 2.4 Zone variables


PRINT keyword
pp average zone pore pressure *
zpp id. *
wk11 w sat. mobility coeff. k11
wk12 w sat. mobility coeff. k12
wk22 w sat. mobility coeff. k22
wpermeability w isotropic mobility coeff.
poro porosity
udcoe undrained coeff. β **
visrat viscosity ratio ***

* Defined as Pw Sw + Pg Sg .
** Coefficient of pore pressure increment generated by volumetric straining, which can take the
value 0 or 1.
*** Wetting over non-wetting dynamic fluid viscosity.

2.4.4 Boundary Conditions

Pore pressures can be fixed or freed using the commands:


FIX/FREE pp
FIX/FREE nwpp
A seepage boundary condition can be fixed/freed using the command
FIX/FREE seepage
At a seepage boundary, the non-wetting fluid pressure is atmospheric (value zero). The boundary
is impermeable to the wetting fluid as long as the wetting pressure is negative; the non-wetting pore
pressure is set to zero at boundary nodes where the condition is not met.
Wells, pore pressure or discharge can be applied for the wetting fluid, using the commands:
INTERIOR well value
APPLY discharge value
APPLY pp value

FLAC Version 6.0


TWO-PHASE FLOW 2 - 17

The equivalent commands for the non-wetting fluid are:


INTERIOR nwwell value
APPLY nwdischarge value
APPLY nwpp value
A history can also be applied to the well, discharge or pore pressure. Any new APPLY command
for a fluid will overwrite the old condition for that fluid.

2.4.5 Plotting

Contours of wetting and non-wetting pore pressure, saturation and fluid modulus can be plotted
using
PLOT pp
PLOT nwpp
PLOT sat
PLOT fmod
Flow vectors can be plotted for wetting and non-wetting fluids using the commands
PLOT flow
PLOT nwflow

FLAC Version 6.0


2 - 18 Fluid-Mechanical Interaction

2.4.6 FISH Variables

FISH access is provided for the variables listed in Tables 2.5 and 2.6.

Table 2.5 Gridpoint variables (FISH access)


gpp w-fluid gpp
nwgpp nw-fluid gpp
fmod w-fluid modulus
f2mod nw-fluid modulus
sat w-fluid saturation
rsat w-fluid residual saturation
vga van Genuchten coeff. a
vgpcw van Genuchten coeff. b
vgpcnw van Genuchten coeff. c
vgp0 van Genuchten pressure PO
gflow w-fluid nodal flow rate READ only
g2flow nw-fluid nodal flow rate READ only

Table 2.6 Zone variables (FISH access)


pp zone pp * READ only
wk11 w sat mobility coeff. k11
wk12 w sat mobility coeff. k12
wk22 w sat mobility coeff. k22
poro2 porosity
rsat w-fluid residual saturation
visrat viscosity ratio (wet/non-wet)
udcoe undrained coeff. β

* Zone pore pressure is calculated as Sw Pw + Sg Pg

FLAC Version 6.0


TWO-PHASE FLOW 2 - 19

2.4.7 Miscellaneous Comments

Please note:
1. The van Genuchten properties are automatically restricted to the following ranges:
vga : between 0.1 and 1.0
vgpcw : ≥ 0
vgpcnw : ≥ 0
vgp0 : ≥ 0
Also, the residual saturation cannot exceed 0.9, and the initial saturation Sw must be
larger than the residual value.

2. By default, the minimum value of relative saturation for the wetting fluid is taken as 10−5
for evaluation of capillary pressure and its derivative. This minimum value can be reset
to a larger value by using the command
WATER secap value
3. The flow ratio is calculated for the wetting fluid only.

4. Non-wetting bulk modulus cannot be zero; the default value is 10−3 × wetting bulk
modulus.
5. Two-phase flow logic is not implemented for axisymmetry or dynamic analysis.
6. The timestep is taken as the minimum value of the two stable timesteps calculated for
saturated flow of the wetting and non-wetting fluids.

FLAC Version 6.0


2 - 20 Fluid-Mechanical Interaction

2.5 Example Problems

Several examples which illustrate the modeling capabilities of the two-phase flow logic in FLAC
are presented in this section.

2.5.1 Saturation and Drainage of a Caisson

This one-dimensional example involves simulation of infiltration in a large caisson, and drainage by
gravity following complete saturation. The geometry, properties, initial and boundary conditions
correspond to those of the Test “Problem 1,” published by Forsyth et al. (1995). The caisson
is 6 m high and 3 m wide. The water saturation is initially Sw = 0.303 throughout the caisson.
Infiltration takes place at the rate of 2.315 m/s (or 0.2 m/day) at the top of the caisson until full
saturation is reached. Subsequently, drainage by gravity is allowed to take place at the bottom
of the caisson for a period of 100 days. The material properties used in the simulation are those
of Bandelier Tuff (the information given in parentheses below is used to derive FLAC property
values from those published in Forsyth’s paper). The saturated mobility coefficient is isotropic,
with k w = 2.92×10−10 m2 /(Pa-s) (this corresponds to an intrinsic permeability of 2.95×10−13 m2
and a dynamic viscosity of 1.01 × 10−3 Pa-s). The porosity is 0.33 and the residual saturation is
zero. The van Genuchten parameters are P0 = 0.699 × 104 Pa (this value is derived from Eq. (2.9),
using ρw g = 104 Pa/m and α = 1.43 1/m), a = 0.336 (with the equivalence a = 1 − 1/β, this
corresponds to a value of β = 1.506), b = 0.5 and c = 0.5.
A column of 20 zones is used in the FLAC simulation. A seepage condition is assigned at the
bottom of the caisson where air pressure is fixed at zero. The air bulk modulus is given a low value,
three orders of magnitude smaller than the water bulk modulus.
Figure 2.3 shows the water saturation profile over the caisson height at 1.16, 4.16 and 7.16 days.
After complete saturation, the infiltration rate is set to zero and bottom drainage is simulated for a
total period of 100 days, the predicted water content profile (porosity times water saturation) at 1,
4, 20 and 100 days is given in Figure 2.4.

FLAC Version 6.0


TWO-PHASE FLOW 2 - 21

JOB TITLE : .

FLAC (Version 6.00)

LEGEND

17-Jan-08 8:50
6.000
step 0

Table Plot
lbound 5.000
saturation t=1.16d
saturation t=4.16d
4.000
saturation t=7.16d
ubound
3.000

2.000

1.000

2 4 6 8 10

-01
(10 )
Itasca Consulting Group, Inc.
Minneapolis, MN 55401

Figure 2.3 Saturation profiles during infiltration

JOB TITLE : .

FLAC (Version 6.00)

LEGEND

18-Jan-08 14:56
6.000
step 0

Table Plot
lbound 5.000
water content t=1d
water content t=4d
4.000
water content t=20d
water content t=100d
ubound 3.000

2.000

1.000

10 15 20 25 30

-02
(10 )
Itasca Consulting Group, Inc.
Minneapolis, MN 55401

Figure 2.4 Profile of water content during drainage

FLAC Version 6.0


2 - 22 Fluid-Mechanical Interaction

Example 2.1 Saturation and drainage of a caisson


title
Saturation and Drainage of a Caisson
config tpflow
grid 1 20
gen 0 0 0 6 0.3 6 0.3 0
mo e
prop density 1 bu 2 sh 1
def setup
c_vgp0 = 1e2/0.0143
c_vga = 1.0 - 1.0/1.506
c_inisat= 0.303
c_q = 0.2/(24*60.0*60.0)
c_iperm = 2.95e-13
c_vis = 1.01e-3
c_perm = c_iperm/c_vis
c_inip = -c_vgp0 * (c_inisatˆ(-1.0/c_vga)-1.0)ˆ(1.0-c_vga)
c_igp = igp
c_jgp = jgp
end
setup

ini wperm=c_perm visrat=1. poro=0.33 rsat=0.0


ini vga=c_vga vgpcw=0.5 vgpcnw=0.5 vgp0=c_vgp0
ini fmod=1e6 f2mod=1e3 udcoe=0.
; --- initial conditions ---
ini pp=c_inip
ini sat=c_inisat
set gravity 10
water density 1e3 nwdensity 0.0
; --- boundary conditions ---
apply discharge c_q j=c_jgp
fix nwpp j=1
fix seepage j=1 ;boundary is impermeable until sat is 1
; pp is set to 0 thereafter
set mech off flow on
set step 10000000 ncw 100
solve age 1e5
save caisa.sav
solve age 3.6e5
save caisb.sav
solve age 6.2e5
save caisc.sav
solve age 8e5

FLAC Version 6.0


TWO-PHASE FLOW 2 - 23

save caisd.sav
apply remove j=c_jgp
set gwtime 0.0
solve age 86.4e3 ; 1 day
save caise.sav
solve age 345.6e3 ; 4 day
save caisf.sav
solve age 1.728e6 ; 20 day
save caisg.sav
solve age 8.640e6 ; 100 day
save caish.sav
;
; create plots
res caisa.sav
ca caisson_log.fis
set filename = ’satl.log’
set tabin=1
log_satl
set filename = ’sata.log’
set tabin=2
log_sat
;
new
res caisb.sav
ca caisson_log.fis
set filename = ’satb.log’
set tabin=3
log_sat
;
new
res caisc.sav
ca caisson_log.fis
set filename = ’satc.log’
set tabin=4
log_sat
set filename = ’satu.log’
set tabin=5
log_satu
;
new
res caise.sav
ca caisson_log.fis
set filename = ’wcl.log’
set tabin=6
log_wcl
set filename = ’wca.log’

FLAC Version 6.0


2 - 24 Fluid-Mechanical Interaction

set tabin=7
log_wc
;
new
res caisf.sav
ca caisson_log.fis
set filename = ’wcb.log’
set tabin=8
log_wc
;
new
res caisg.sav
ca caisson_log.fis
set filename = ’wcc.log’
set tabin=9
log_wc
;
new
res caish.sav
ca caisson_log.fis
set filename = ’wcd.log’
set tabin=10
log_wc
set filename = ’wcu.log’
set tabin=11
log_wcu
;
new
gr 1 1
set echo off
ca satl.log
ca sata.log
ca satb.log
ca satc.log
ca satu.log
ca wcl.log
ca wca.log
ca wcb.log
ca wcc.log
ca wcd.log
ca wcu.log
set echo on
label table 1
lbound
label table 2
saturation t=1.16d

FLAC Version 6.0


TWO-PHASE FLOW 2 - 25

label table 3
saturation t=4.16d
label table 4
saturation t=7.16d
label table 5
ubound
label table 6
lbound
label table 7
water content t=1d
label table 8
water content t=4d
label table 9
water content t=20d
label table 10
water content t=100d
label table 11
ubound

plot hold table 1 l 2 l 3 l 4 l 5 l &


alias ’saturation front’ label
plot hold table 6 l 7 l 8 l 9 l 10 l 11 l &
alias ’water content’ label
ret

2.5.2 Capillary Infiltration in a Dry Caisson

This numerical simulation analyzes the flow of water, driven by capillary suction in a dry caisson
filled with porous material. The caisson is 30 m wide and 20 m high, the porosity is 0.4, the initial
saturation is 1%, and the residual saturation is zero. The top, left-hand side of the caisson is in
contact with water along a 3 m inlet, and the right side is exposed to air at atmospheric pressure.
The effect of gravity is neglected in this simulation, which is designed to test the ability of FLAC
to model fluid flow driven by capillarity.

The mobility coefficient k w is isotropic; its value is 10−9 m2 /(Pa-s) for this example. The relative
permeability and capillary laws are shown in Figures 2.5 and 2.6. They correspond to the van
Genuchten parameters P0 = 8 × 105 , a = 0.5, b = 0.5 and c = 0.333.

FLAC Version 6.0


2 - 26 Fluid-Mechanical Interaction

JOB TITLE : .

FLAC (Version 6.00)

LEGEND

17-Jan-08 11:48
step 0 1.000

Table Plot
non-wetting fluid
0.800
wetting fluid

0.600

0.400

0.200

1 2 3 4 5 6 7 8 9 10

-01
(10 )
Itasca Consulting Group, Inc.
Minneapolis, Minnesota USA

Figure 2.5 Relative permeability laws

JOB TITLE : .

FLAC (Version 6.00)


02
(10 )
LEGEND

0.900
17-Jan-08 11:48
step 0
0.800
Table Plot
Capillary pressure curve 0.700

0.600

0.500

0.400

0.300

0.200

0.100

1 2 3 4 5 6 7 8 9 10

-01
(10 )
Itasca Consulting Group, Inc.
Minneapolis, Minnesota USA

Figure 2.6 Capillary pressure law, Pc /P0

FLAC Version 6.0


TWO-PHASE FLOW 2 - 27

A grid of 20 by 20 zones is used in the FLAC simulation. A seepage condition is assigned on the
right side of the model, and saturation is fixed (at one) at the water inlet (top, left side of the model).
A low bulk modulus (1.39 × 105 Pa) and high viscosity ratio (55) are used to model the air phase.
Figure 2.7 shows the evolution of saturation at monitoring points indicated in Figure 2.8, for the
first 140 seconds after the caisson is placed in contact with water. Contours of saturation and flow
vectors at the end of the simulation are given in Figure 2.9.

JOB TITLE : .

FLAC (Version 6.00)

LEGEND
1.000
17-Jan-08 8:57
step 2527778
0.900
Flow Time 1.4000E+02
0.800
HISTORY PLOT
Y-axis :
0.700
1 _sat1 (FISH)
2 _sat2 (FISH) 0.600
3 _sat3 (FISH)
4 _sat4 (FISH) 0.500
5 _sat5 (FISH)
0.400
6 _sat6 (FISH)
X-axis : 0.300
10 Groundwater flow time
0.200

0.100

2 4 6 8 10 12

01
(10 )
Itasca Consulting Group, Inc.
Minneapolis, MN 55401

Figure 2.7 Saturation histories

FLAC Version 6.0


2 - 28 Fluid-Mechanical Interaction

JOB TITLE : . (*10^1)

FLAC (Version 6.00)

2.250
LEGEND

17-Jan-08 8:57
step 2527778
Flow Time 1.4000E+02 1.750

-1.667E+00 <x< 3.167E+01


-6.667E+00 <y< 2.667E+01

Grid plot
1.250

0 1E 1
Marked Gridpoints

0.750

0.250

-0.250

Itasca Consulting Group, Inc.


Minneapolis, MN 55401
0.250 0.750 1.250 1.750 2.250 2.750
(*10^1)

Figure 2.8 FLAC grid and monitoring points

JOB TITLE : . (*10^1)

FLAC (Version 6.00)

2.250
LEGEND

17-Jan-08 8:58
step 2527778
Flow Time 1.4000E+02 1.750

-1.667E+00 <x< 3.167E+01


-6.667E+00 <y< 2.667E+01

Saturation contours
1.250
0.00E+00
2.00E-01
4.00E-01
6.00E-01
8.00E-01 0.750
1.00E+00
Contour interval= 1.00E-01
Boundary plot

0 1E 1 0.250

Flow vectors
max vector = 9.194E-02

0 2E -1 -0.250

Itasca Consulting Group, Inc.


Minneapolis, MN 55401
0.250 0.750 1.250 1.750 2.250 2.750
(*10^1)

Figure 2.9 Saturation contours and flow vectors at 140 seconds

FLAC Version 6.0


TWO-PHASE FLOW 2 - 29

Example 2.2 Capillary infiltration in a caisson


title
Capillary infiltration in a caisson
config tpflow
grid 20 20
gen 0 0 0 20 30 20 30 0
mo e
prop density 1 bu 2 sh 1

def setup
c_vgp0 = 8e5 ; P_0
c_vga = 1-1./2. ; a
c_inisat= 0.01 ; initial saturation
c_iperm = 1e-9 ; intrinsic permeability
c_vis = 1e-3 ; water viscosity at 20 degree in Pa*s
c_perm = c_iperm/c_vis ; water saturated mobility coefficient
c_nwpp = 1e5 ; initial air pressure
; (=atmospheric pressure)
; initial water pressure
c_inip = c_nwpp-c_vgp0 * (c_inisatˆ(-1.0/c_vga)-1.0)ˆ(1.0-c_vga)
end
setup
; --- properties ---
ini wk11=c_perm wk12=0. wk22=c_perm ; water mobility coefficient(isotropic)
ini poro 0.4 ; porosity
ini fmod 2e9 f2mod 1.39e5 ; water/air bulk modulus

ini visrat 55 ; viscosity ratio water/air


ini udcoe 0. ; coupling coefficient (not used)
; van Genuchten parameters a, b, c, P_0
ini vga=c_vga vgpcw 0.5 vgpcnw 0.333 vgp0 c_vgp0
ini rsat 0.0 ; residual water saturation
water dens 0 ; no density
set grav 0 ; no gravity
; --- initial conditions ---
ini pp c_inip ; water pore pressure
ini sat c_inisat ; water saturation

; --- boundary conditions ---


ini pp 0 i 1 j 18,21 ; left boundary inlet
fix pp i 1 j 18,21
fix sat i 1 j 18,21
fix seepage i 21 ; right boundary outlet
; --- boundary conditions ---

FLAC Version 6.0


2 - 30 Fluid-Mechanical Interaction

set mech off flow on


set step 1000000000
; --- fish functions ---
def _sat1
_sat1=sat(1,19)
_sat2=sat(3,18)
_sat3=sat(5,17)
_sat4=sat(7,16)
_sat5=sat(9,15)
_sat6=sat(11,14)
_sat7=sat(13,13)
_sat8=sat(15,12)
_sat9=sat(17,11)
end
hist _sat1
hist _sat2
hist _sat3
hist _sat4
hist _sat5
hist _sat6
hist _sat7
hist _sat8
hist _sat9
hist gwtime

hist nstep 1000

solve age 140


save capi.sav
;
mark i=1,1 j=19,19
mark i=3,3 j=18,18
mark i=5,5 j=17,17
mark i=7,7 j=16,16
mark i=9,9 j=15,15
mark i=11,11 j=14,14

plot hold his 1 l 2 l 3 l 4 l 5 l 6 l vs 10


plot hold grid fix mark
plot hold sat fill flow

FLAC Version 6.0


TWO-PHASE FLOW 2 - 31

2.5.3 Seepage through an Embankment

This example studies water seepage through an embankment resting on an impermeable base.
The geometry and boundary conditions for this problem can be compared to those considered in
Section 10 in the Verifications volume. The width of the embankment is 9 m, and its height is
6 m. Initially, the water table is located 1.2 m above the impermeable base. The water level is then
raised to a height of 6 m on the upstream face of the embankment, and the numerical simulation is
carried out until steady-state conditions are reached.
The following material properties are used:
mobility coeff. (k w ) 10−10 m2 /(Pa-s)
porosity (n) 0.3
water density (ρw ) 1000 kg/m3
water bulk modulus (Kw ) 1000 Pa
gravity (g) 10 m/sec2
The laws adopted for relative permeability and capillary pressure are shown in Figures 2.10 and
2.11. They correspond to the van Genuchten parameter values a = 0.336, b = 0.5, c = 0.5 and
P0 = 0.699 × 104 .

JOB TITLE : .

FLAC (Version 6.00)

LEGEND

17-Jan-08 14:10
step 0 1.000

Table Plot
non-wetting fluid
0.800
wetting fluid

0.600

0.400

0.200

1 2 3 4 5 6 7 8 9 10

-01
(10 )
Itasca Consulting Group, Inc.
Minneapolis, Minnesota USA

Figure 2.10 Relative permeability laws

FLAC Version 6.0


2 - 32 Fluid-Mechanical Interaction

JOB TITLE : .

FLAC (Version 6.00)


01
(10 )
LEGEND

17-Jan-08 14:10 1.400


step 0

Table Plot 1.200


Capillary pressure curve

1.000

0.800

0.600

0.400

0.200

1 2 3 4 5 6 7 8 9 10

-01
(10 )
Itasca Consulting Group, Inc.
Minneapolis, Minnesota USA

Figure 2.11 Capillary pressure law, Pc /P0

A grid of 30 by 20 elements is used to simulate the embankment. Initial water pressure and saturation
are imposed using a FISH function (the values correspond to steady-state conditions with water
level at y = 1.2 m and zero air pressure in the unsaturated zone). The water level is raised to a height
of 6 m on the upstream face, and a seepage condition is declared on the downstream face. A low
modulus, three orders of magnitude smaller than the water modulus, is assigned to the air phase.
The simulation is carried out to steady-state using the SOLVE command.
Figure 2.12 shows the steady-state contours of water pore pressure and flow vectors. A close-up of
the seepage face is given in Figure 2.13. For the particular set of properties used in the simulation,
the numerical value of the seepage length is found to be in agreement with the analytical value for
single phase flow (no capillary pressure) derived by Polubarinova-Kochina (see, e.g., Harr (1991),
pp. 206-207), and indicated by the solid line on the figure.

FLAC Version 6.0


TWO-PHASE FLOW 2 - 33

JOB TITLE : .

FLAC (Version 6.00)

LEGEND

6.000
17-Jan-08 8:25
step 55556
Flow Time 3.0000E+09
-5.000E-01 <x< 9.500E+00
-2.000E+00 <y< 8.000E+00

Pore pressure contours 4.000

-2.00E+04
-1.00E+04
0.00E+00
1.00E+04
2.00E+04
3.00E+04 2.000
4.00E+04
5.00E+04
6.00E+04

Contour interval= 1.00E+04


Flow vectors
0.000
max vector = 1.373E-06

0 2E -6

Itasca Consulting Group, Inc.


Minneapolis, MN 55401
1.000 3.000 5.000 7.000 9.000

Figure 2.12 Contour of pore pressure and flow vectors

JOB TITLE : .

FLAC (Version 6.00)


3.750

LEGEND
3.250

17-Jan-08 8:26
step 55556
Flow Time 3.0000E+09 2.750
6.125E+00 <x< 1.088E+01
-6.550E-01 <y< 4.101E+00
2.250
Pore pressure contours
-1.00E+04
-5.00E+03
0.00E+00 1.750

5.00E+03
seepage face
1.00E+04 (analytical)
1.50E+04 1.250
2.00E+04
2.50E+04
3.00E+04
0.750

Contour interval= 5.00E+03


Flow vectors
max vector = 1.373E-06 0.250

0 2E -6
-0.250

Itasca Consulting Group, Inc.


Minneapolis, MN 55401
0.650 0.700 0.750 0.800 0.850 0.900 0.950 1.000 1.050
(*10^1)

Figure 2.13 Flow vectors and seepage face

FLAC Version 6.0


2 - 34 Fluid-Mechanical Interaction

Example 2.3 Seepage through an embankment


title
Seepage through an embankment
config tpflow
g 30 20
def ini_h2
h1 = 6. ; upstream water level
h2 = 1.2 ; downstream water level
bl = 9. ; embankment width
ck = 1e-10 ; saturated mobility coefficient
rs = 0. ; residual saturation
va = 1.0 - 1.0/1.506 ; van Genuchten a
p0=1.e4/1.43 ; reference capillary pressure
rw = 1e3 ; water density
gr = 10. ; gravity
end
ini_h2
gen 0 0 0 h1 bl h1 bl 0
mo el
; --- Properties ---
ini por .3 wperm=ck visrat 1 rsat 0 den 2000
water den=rw nwden 0
ini fmod 1e3 f2mod 1 udcoe 0
ini vga=va vgpcw=0.5 vgpcnw=0.5 vgp0=p0 rsat=rs
; --- Initial conditions ---
; (water level at y=h2)
def ini_state
n = 1.0/(1.0-va)
loop jj (6,jgp)
pw = (h2-y(1,jj)) * rw * gr
pc = -pw
se = ((pc/p0)ˆn + 1.0)ˆ(-va)
sw = se * (1.0 - rs) + rs
loop ii (1,igp)
gpp(ii,jj) = pw
sat(ii,jj) = sw
end_loop
end_loop
end
ini_state
ini sat 1 i 1 31 j 1 5
ini pp 1.2e4 var 0 -1.2e4 i 1 31 j 1 5
; --- Boundary conditions ---
fix nwpp j=31

FLAC Version 6.0


TWO-PHASE FLOW 2 - 35

fix pp i 1 j 1 5
fix sat i 1 j 1 5
fix pp i 31 j 1 5
fix sat i 31 j 1 5
; --- Settings ---
set flow on mech off
set grav=gr
; --- raise upstream water level ---
ini pp 6e4 var 0 -6e4 i 1 j 1 21
fix pp i=1 j 1 21
fix sat i=1 j 1 21
fix seepage i 31 j 6 21
; --- fish function ---
def qin
valin = 0.0
valout = 0.0
loop jj (1,21)
valin = valin + gflow(1,jj)
if and(flags(igp,jj),262144) # 0 then
if gpp(igp,jj) = 0.0 then
; seepage node
valout = valout - gflow(igp,jj)
endif
else
; fixed pp node
valout = valout - gflow(igp,jj)
endif
end_loop
qin = valin
qout = valout
end
; --- histories ---
his ns 1000
his gwtime
his qin
his qout
; --- Step to steady-state ---
set step 200000
set ncw 1000
solve age 3e9
save emb2.sav
; --- View plots ---
plot hold pp fill int 10000 flow
win 6.5 10.5 -.25 3.75
label plot 1 (9.25,1.50)
seepage face

FLAC Version 6.0


2 - 36 Fluid-Mechanical Interaction

label plot 2 (9.25,1.40)


(analytical)
label arrow 3 (9,1.2) (9,1.8)

plot hold pp fill label lm flow


ret

2.5.4 Unsaturated Flow around a Drift

Under unsaturated conditions, underground excavation can serve as an obstacle to the flow. This
example analyzes unsaturated seepage flow around a system of horizontal drifts located 60 m apart,
and situated 30 m below ground level. The diameter of the drifts is 5 m. Surface water is infiltrating
at a steady rate, q0 , of 2 × 10−8 m/s. The phreatic surface level is at a depth of 60 m. The purpose
of the simulation is to determine the saturation distribution around the drifts when steady-state
conditions are reached.
The laws adopted for relative permeability and capillary pressure correspond to the van Genuchten
parameters a = 0.630, b = 0.5, c = 0.5 and P0 = 103 . The saturated mobility coefficient is
homogeneous and isotropic; the value is 1.042 × 10−10 m2 /(Pa-s). The porosity is 5 × 10−4 , the
residual saturation is zero, and the initial saturation is 0.42.
By symmetry, half of a drift is considered for this problem. A radial grid of 1250 zones is used
in the FLAC simulation. A flux boundary condition is applied at the top of the model (ground
level), a constant pressure is assigned at the bottom of the grid (phreatic surface), and a seepage
condition is declared at the drift boundary. The lateral boundaries are impermeable to water flow
(symmetry conditions). The initial saturation corresponds to one-dimensional gravity flow with
constant specific discharge, q0 . The air phase pressure is fixed at the value zero in this simulation.
Figure 2.14 shows the steady-state contours of saturation for the simulation. Pore pressure contours
and flow vectors are given in Figure 2.15. As may be seen on the plots, water is deflected from
the drift roof, and “drip lobes” are formed in which saturation and flow velocity are increased
(compared to the initial steady situation). A dry shadow is formed, sheltered by the cavity. These
features are described in the context of Richard’s equation (see Philip and Knight 1989) and a
relative permeability exponential law.

FLAC Version 6.0


TWO-PHASE FLOW 2 - 37

JOB TITLE : .

FLAC (Version 6.00)


4.000

LEGEND

17-Jan-08 9:39
2.000
step 77813
Flow Time 3.0000E+05
1.803E-02 <x< 1.449E+01
-9.038E+00 <y< 5.432E+00
0.000
Boundary plot

0 2E 0
Saturation contours -2.000
0.00E+00
2.00E-01
4.00E-01
6.00E-01 -4.000
8.00E-01
1.00E+00
Contour interval= 1.00E-01

-6.000

-8.000

Itasca Consulting Group, Inc.


Minneapolis, MN 55401
0.100 0.300 0.500 0.700 0.900 1.100 1.300
(*10^1)

Figure 2.14 Contours of saturation

JOB TITLE : . (*10^1)

FLAC (Version 6.00) 0.500

LEGEND

17-Jan-08 9:37
step 77813 0.000
Flow Time 3.0000E+05
-5.558E-01 <x< 2.447E+01
-1.856E+01 <y< 6.462E+00

Boundary plot

-0.500
0 5E 0
Pore pressure contours
-5.00E+03
-4.00E+03
-3.00E+03
-2.00E+03
-1.000
-1.00E+03
0.00E+00

Contour interval= 1.00E+03


Flow vectors
max vector = 1.142E-07
-1.500

0 2E -7

Itasca Consulting Group, Inc.


Minneapolis, MN 55401
0.250 0.750 1.250 1.750 2.250
(*10^1)

Figure 2.15 Pore pressure contours and flow vectors

FLAC Version 6.0


2 - 38 Fluid-Mechanical Interaction

Example 2.4 Unsaturated flow around a drift


title
Unsaturated flow to a drift
def setup
; --- input data ---
; - geometry -
d_radius = 2.5
d_spacing = 30.0
n_radial = 25
n_theta = 25 ; number of zones on 90 degree (must be even)
; - fluid flow -
c_vgp0 = 1e4/10.
c_vga = 1.0 - 1.0/2.7
c_inisat = 0.42
c_rsat = 0.0
c_poro = 5e-4
c_se = (c_inisat-c_rsat)/(1.0-c_rsat)
c_q = 2e-8
c_perm = 1.042e-6/1e4

c_inip = -c_vgp0 * (c_seˆ(-1.0/c_vga)-1.0)ˆ(1.0-c_vga)


; --- derived data ---
v_rmul = d_spacing/d_radius
nx = n_radial
ny = (n_theta/2)*4
ib = nx + 1
it = ib
j1b = 1
j2b = (ny/4) + 1
j1t = 3*(ny/4) + 1
j2t = ny + 1
end
setup
config tpflow
; --- geometry ---
grid nx ny
mo el
call hhole.fis
set rmin=d_radius rmul=v_rmul gratio 1.1
hhole
;plot grid hold
; --- fluid properties ---
ini wk11=c_perm wk12=0. wk22=c_perm
ini poro=c_poro rsat=c_rsat

FLAC Version 6.0


TWO-PHASE FLOW 2 - 39

ini vga=c_vga vgpcw=0.5 vgpcnw=0.5 vgp0=c_vgp0


ini visrat 1. udcoe 0.
ini fmod 1e4 f2mod 1e1
; --- initial conditions ---
ini pp =c_inip
ini sat=c_inisat
water density 1e3
; --- boundary conditions ---
ini nwpp 0
fix nwpp
; --- (top boundary) ---
ini nwpp 0 i=it j=j1t,j2t
fix nwpp i=it j=j1t,j2t
apply discharge c_q i=it j=j1t,j2t
; --- (drift boundary) ---
fix seepage i=1
fix nwpp i=1
; --- (bottom boundary) ---
ini pp 0 i=ib j=j1b,j2b
fix pp i=ib j=j1b,j2b
ini nwpp 0 i=ib j=j1b,j2b
fix nwpp i=ib j=j1b,j2b
ini sat 1 i=ib j=j1b,j2b
; --- fish function ---
def perc_drift_seep
; seepage occurs on a FIX SEEPAGE boundary when the pp of wetting
; fluid reaches the value 0.0
val = 0.0
ii = 1
loop jj (1,jgp)
if and(flags(ii,jj),262144) # 0 then
if gpp(ii,jj) = 0.0 then
; toto=out(’ seepage point: i= ’+string(ii)+’ j= ’+string(jj))
val = val - gflow(ii,jj)
endif
endif
end_loop
perc_drift_seep = 100.0 * val/(c_q * d_radius)
drift_seep = val
top_seep = c_q * d_spacing
val = 0.0
ii = ib
loop jj (j1b,j2b)
val = val - gflow(ii,jj)
end_loop
bottom_seep = val

FLAC Version 6.0


2 - 40 Fluid-Mechanical Interaction

bd_seep = val + drift_seep


end

set grav=10 flow=on mech=off


set sratio=0.0 step 500000000
hist ns 500
hist gwtime
hist perc_drift_seep
hist drift_seep
hist top_seep
hist bottom_seep
hist bd_seep
set ncw 500
solve age 3e5
save drift.sav
win -1 17.5 -14.5 4
plot hold sat fill
plot hold pp fill flow bl
ret

FLAC Version 6.0


TWO-PHASE FLOW 2 - 41

2.5.5 Deformation Caused by Filling of a Caisson

This academic example studies the mechanical deformation caused by infiltration of water in a
caisson filled with porous material. The caisson is 6 m wide and 6 m high. Initially, the bottom part
of the caisson is fully saturated with water over a height h2 = 2 m, and steady-state conditions prevail.
The top of the caisson is then exposed to a constant flux of water (flow rate q = 2.3 × 10−6 m/s) on
a span of 1 m located at the center. During the experiment, the water level is kept at the initial height
on the lateral sides of the caisson. The evolution of saturation and soil deformation is monitored
for a total of 18 × 105 s.
The mobility coefficient k w is 10−10 m2 /(Pa-s) and the porosity is 0.3. The laws adopted for relative
permeability and capillary pressure correspond to the van Genuchten parameter values a = 0.34,
b = 0.5, c = 0.5 and P0 = 7000. The porous material has an elastic behavior, the dry bulk modulus
is 108 Pa, the shear modulus is 0.3 × 108 Pa and the dry soil density is 1500 kg/m3 .
By symmetry, half of the caisson is considered in the numerical simulation. A grid of 12 by 24
elements is used to simulate the porous material. The mechanical boundary conditions correspond
zero normal displacement at the lateral and bottom sides of the caisson. Lateral displacements are
also restricted at the bottom of the model. A low bulk modulus (three orders of magnitude smaller
than the modulus used for water) is assigned to the air phase. Initial pore pressure and saturation
are assigned using a FISH function. They correspond to the steady state conditions with water level
at h2 , and zero air pressure in the unsaturated region. The initial stresses, in equilibrium under
gravity, and consistent with the initial saturation distribution, are also calculated and assigned to
the model using a FISH function. The numerical simulation is carried out for a total of 18 × 105 s,
with intermediate results at five additional times.
Figures 2.18 to 2.29 show the saturation contours, water flow vectors and deformations taking place
during the filling process.

FLAC Version 6.0


2 - 42 Fluid-Mechanical Interaction

JOB TITLE : .

FLAC (Version 6.00)

6.000
LEGEND

21-Jan-08 16:29
step 0 5.000
-2.500E+00 <x< 5.500E+00
-1.000E+00 <y< 7.000E+00

Saturation contours 4.000


3.00E-01
4.00E-01
5.00E-01
6.00E-01 3.000
7.00E-01
8.00E-01
9.00E-01
1.00E+00 2.000

Contour interval= 1.00E-01


Flow vectors
1.000
* vectors of zero length *
Grid plot

0 2E 0
0.000

Itasca Consulting Group, Inc.


Minneapolis, MN 55401
-2.000 -1.000 0.000 1.000 2.000 3.000 4.000 5.000

Figure 2.16 Saturation contours

JOB TITLE : .

FLAC (Version 6.00)

6.000
LEGEND

17-Jan-08 9:13
step 0 5.000
-2.500E+00 <x< 5.500E+00
-1.000E+00 <y< 7.000E+00

Boundary plot 4.000

0 2E 0
Grid plot
3.000

0 2E 0

2.000

1.000

0.000

Itasca Consulting Group, Inc.


Minneapolis, MN 55401
-2.000 -1.000 0.000 1.000 2.000 3.000 4.000 5.000

Figure 2.17 FLAC grid

FLAC Version 6.0


TWO-PHASE FLOW 2 - 43

JOB TITLE : .

FLAC (Version 6.00)

6.000
LEGEND

21-Jan-08 16:29
step 5333 5.000
Flow Time 2.0002E+05
-2.500E+00 <x< 5.500E+00
-1.000E+00 <y< 7.000E+00
4.000
Saturation contours
3.00E-01
4.00E-01
5.00E-01 3.000
6.00E-01
7.00E-01
8.00E-01
9.00E-01 2.000
1.00E+00

Contour interval= 1.00E-01


Flow vectors 1.000

max vector = 1.880E-06

0 5E -6
0.000
Grid plot

0 Consulting Group,
Itasca 2EInc.
0
Minneapolis, MN 55401
-2.000 -1.000 0.000 1.000 2.000 3.000 4.000 5.000

Figure 2.18 Saturation contours and flow vectors t = 2 × 105 s

JOB TITLE : .

FLAC (Version 6.00)

6.000
LEGEND

17-Jan-08 9:14
step 5333 5.000
Flow Time 2.0002E+05
-2.500E+00 <x< 5.500E+00
-1.000E+00 <y< 7.000E+00
4.000
Exaggerated Grid Distortion
Magnification = 1.799E+03
Max Disp = 8.464E-05
3.000

2.000

1.000

0.000

Itasca Consulting Group, Inc.


Minneapolis, MN 55401
-2.000 -1.000 0.000 1.000 2.000 3.000 4.000 5.000

Figure 2.19 Magnified grid t = 2 × 105 s

FLAC Version 6.0


2 - 44 Fluid-Mechanical Interaction

JOB TITLE : .

FLAC (Version 6.00)

6.000
LEGEND

21-Jan-08 16:29
step 10637 5.000
Flow Time 4.0001E+05
-2.500E+00 <x< 5.500E+00
-1.000E+00 <y< 7.000E+00
4.000
Saturation contours
3.00E-01
4.00E-01
5.00E-01 3.000
6.00E-01
7.00E-01
8.00E-01
9.00E-01 2.000
1.00E+00

Contour interval= 1.00E-01


Flow vectors 1.000

max vector = 1.888E-06

0 5E -6
0.000
Grid plot

0 Consulting Group,
Itasca 2EInc.
0
Minneapolis, MN 55401
-2.000 -1.000 0.000 1.000 2.000 3.000 4.000 5.000

Figure 2.20 Saturation contours and flow vectors t = 4 × 105 s

JOB TITLE : .

FLAC (Version 6.00)

6.000
LEGEND

17-Jan-08 9:15
step 10637 5.000
Flow Time 4.0001E+05
-2.500E+00 <x< 5.500E+00
-1.000E+00 <y< 7.000E+00
4.000
Exaggerated Grid Distortion
Magnification = 1.799E+03
Max Disp = 1.128E-04
3.000

2.000

1.000

0.000

Itasca Consulting Group, Inc.


Minneapolis, MN 55401
-2.000 -1.000 0.000 1.000 2.000 3.000 4.000 5.000

Figure 2.21 Magnified grid t = 4 × 105 s

FLAC Version 6.0


TWO-PHASE FLOW 2 - 45

JOB TITLE : .

FLAC (Version 6.00)

6.000
LEGEND

21-Jan-08 16:28
step 15771 5.000
Flow Time 6.0004E+05
-2.500E+00 <x< 5.500E+00
-1.000E+00 <y< 7.000E+00
4.000
Saturation contours
3.00E-01
4.00E-01
5.00E-01 3.000
6.00E-01
7.00E-01
8.00E-01
9.00E-01 2.000
1.00E+00

Contour interval= 1.00E-01


Flow vectors 1.000

max vector = 1.889E-06

0 5E -6
0.000
Grid plot

0 Consulting Group,
Itasca 2EInc.
0
Minneapolis, MN 55401
-2.000 -1.000 0.000 1.000 2.000 3.000 4.000 5.000

Figure 2.22 Saturation contours and flow vectors t = 6 × 105 s

JOB TITLE : .

FLAC (Version 6.00)

6.000
LEGEND

17-Jan-08 9:16
step 15771 5.000
Flow Time 6.0004E+05
-2.500E+00 <x< 5.500E+00
-1.000E+00 <y< 7.000E+00
4.000
Exaggerated Grid Distortion
Magnification = 1.799E+03
Max Disp = 1.381E-04
3.000

2.000

1.000

0.000

Itasca Consulting Group, Inc.


Minneapolis, MN 55401
-2.000 -1.000 0.000 1.000 2.000 3.000 4.000 5.000

Figure 2.23 Magnified grid t = 6 × 105 s

FLAC Version 6.0


2 - 46 Fluid-Mechanical Interaction

JOB TITLE : .

FLAC (Version 6.00)

6.000
LEGEND

21-Jan-08 16:27
step 20787 5.000
Flow Time 8.0002E+05
-2.500E+00 <x< 5.500E+00
-1.000E+00 <y< 7.000E+00
4.000
Saturation contours
3.00E-01
4.00E-01
5.00E-01 3.000
6.00E-01
7.00E-01
8.00E-01
9.00E-01 2.000
1.00E+00

Contour interval= 1.00E-01


Flow vectors 1.000

max vector = 1.890E-06

0 5E -6
0.000
Grid plot

0 Consulting Group,
Itasca 2EInc.
0
Minneapolis, MN 55401
-2.000 -1.000 0.000 1.000 2.000 3.000 4.000 5.000

Figure 2.24 Saturation contours and flow vectors t = 8 × 105 s

JOB TITLE : .

FLAC (Version 6.00)

6.000
LEGEND

17-Jan-08 9:18
step 20787 5.000
Flow Time 8.0002E+05
-2.500E+00 <x< 5.500E+00
-1.000E+00 <y< 7.000E+00
4.000
Exaggerated Grid Distortion
Magnification = 1.799E+03
Max Disp = 1.895E-04
3.000

2.000

1.000

0.000

Itasca Consulting Group, Inc.


Minneapolis, MN 55401
-2.000 -1.000 0.000 1.000 2.000 3.000 4.000 5.000

Figure 2.25 Magnified grid t = 8 × 105 s

FLAC Version 6.0


TWO-PHASE FLOW 2 - 47

JOB TITLE : .

FLAC (Version 6.00)

6.000
LEGEND

21-Jan-08 16:27
step 29851 5.000
Flow Time 1.2001E+06
-2.500E+00 <x< 5.500E+00
-1.000E+00 <y< 7.000E+00
4.000
Saturation contours
3.00E-01
4.00E-01
5.00E-01 3.000
6.00E-01
7.00E-01
8.00E-01
9.00E-01 2.000
1.00E+00

Contour interval= 1.00E-01


Flow vectors 1.000

max vector = 1.891E-06

0 5E -6
0.000
Grid plot

0 Consulting Group,
Itasca 2EInc.
0
Minneapolis, MN 55401
-2.000 -1.000 0.000 1.000 2.000 3.000 4.000 5.000

Figure 2.26 Saturation contours and flow vectors t = 12 × 105 s

JOB TITLE : .

FLAC (Version 6.00)

6.000
LEGEND

17-Jan-08 9:18
step 29851 5.000
Flow Time 1.2001E+06
-2.500E+00 <x< 5.500E+00
-1.000E+00 <y< 7.000E+00
4.000
Exaggerated Grid Distortion
Magnification = 1.799E+03
Max Disp = 2.767E-04
3.000

2.000

1.000

0.000

Itasca Consulting Group, Inc.


Minneapolis, MN 55401
-2.000 -1.000 0.000 1.000 2.000 3.000 4.000 5.000

Figure 2.27 Magnified grid t = 12 × 105 s

FLAC Version 6.0


2 - 48 Fluid-Mechanical Interaction

JOB TITLE : .

FLAC (Version 6.00)

6.000
LEGEND

21-Jan-08 16:28
step 41895 5.000
Flow Time 1.8000E+06
-2.500E+00 <x< 5.500E+00
-1.000E+00 <y< 7.000E+00
4.000
Saturation contours
4.00E-01
5.00E-01
6.00E-01 3.000
7.00E-01
8.00E-01
9.00E-01
1.00E+00 2.000

Contour interval= 1.00E-01


Flow vectors
1.000
max vector = 1.892E-06

0 5E -6
Grid plot 0.000

0 2E 0
Itasca Consulting Group, Inc.
Minneapolis, MN 55401
-2.000 -1.000 0.000 1.000 2.000 3.000 4.000 5.000

Figure 2.28 Saturation contours and flow vectors t = 18 × 105 s

JOB TITLE : .

FLAC (Version 6.00)

6.000
LEGEND

17-Jan-08 9:20
step 41895 5.000
Flow Time 1.8000E+06
-2.500E+00 <x< 5.500E+00
-1.000E+00 <y< 7.000E+00
4.000
Exaggerated Grid Distortion
Magnification = 1.799E+03
Max Disp = 3.035E-04
3.000

2.000

1.000

0.000

Itasca Consulting Group, Inc.


Minneapolis, MN 55401
-2.000 -1.000 0.000 1.000 2.000 3.000 4.000 5.000

Figure 2.29 Magnified grid t = 18 × 105 s

FLAC Version 6.0


TWO-PHASE FLOW 2 - 49

Example 2.5 Deformation caused by filling of a caisson


config tpflow ex 1
title
Deformation caused by filling of a caisson
grid 12,24
m e
prop s=.3e8 b=1e8 d=1500
gen 0,0 0,6 3,6 3,0
def setup
va = 0.34
p0 = 7000
rs = 0.0
c_q = 0.2/(24.*60.*60.)
h2 = 2.
c_igp = igp
c_jgp = jgp
end
setup

ini wperm 1e-10 por .3 udcoe 0 visrat 1


water den 1000 nwden 0
ini fmod 1e6 f2mod 1e3
ini vga=va vgpcw=0.5 vgpcnw=0.5 vgp0=p0 rsat=rs
; displacement boundary conditions
fix x i=1
fix x i=c_igp
fix x y j=1
; apply gravity
set grav=10
; initial conditions
; (water level at y=h2)
def ini_pps
n = 1.0/(1.0-va)
loop jj (9,jgp)
pw = (h2-y(1,jj)) * 1.e4
pc = -pw
se = ((pc/p0)ˆn + 1.0)ˆ(-va)
sw = se * (1.0 - rs) + rs
loop ii (1,igp)
gpp(ii,jj) = pw
sat(ii,jj) = sw
end_loop
end_loop
end

FLAC Version 6.0


2 - 50 Fluid-Mechanical Interaction

ini_pps
ini sat 1 i 1 13 j 1 8
ini pp 2e4 var 0 -2e4 i 1 13 j 1 8
ini nwpp 0 j=c_jgp
fix nwpp j=c_jgp
fix pp i=13 j=1,8
fix sat i=13 j=1,8
def ini_str
rowup = 0.0
valup = 0.0
loop jj (1,jzones)
j1 = jgp - jj
myzsat = (sat(1,j1)+sat(2,j1)+sat(1,j1+1)+sat(2,j1+1))*0.25
thisrow = (1500. + 0.3 * myzsat * 1000.) * 10. * 0.25
val = valup + (rowup + thisrow) * 0.5
loop ii (1,izones)
sxx(ii,j1) = -val
syy(ii,j1) = -val
szz(ii,j1) = -val
end_loop
valup = val
rowup = thisrow
end_loop
end
ini_str
save cuve0.sav
; remplissage
ini udcoe 1
apply discharge c_q i=1,3 j=c_jgp
set gwtime 0
solve auto on age 2e5
save cuvea.sav
solve auto on age 4e5
save cuveb.sav
solve auto on age 6e5
save cuvec.sav
solve auto on age 8e5
save cuved.sav
solve auto on age 10e5
save cuvee.sav
solve auto on age 12e5
save cuvef.sav
solve auto on age 14e5
save cuveg.sav
solve auto on age 16e5
save cuveh.sav

FLAC Version 6.0


TWO-PHASE FLOW 2 - 51

solve auto on age 18e5


save cuvei.sav

;generate plots
res cuve0.sav
title
Deformation caused by filling of a caisson t=0s
plot hold sat fill
plot hold grid
;
new
res cuvea.sav
title
Deformation caused by filling of a caisson t=2e5s
plot hold sat fill flow bl
plot hold grid mag
;
new
res cuveb.sav
title
Deformation caused by filling of a caisson t=4e5s
plot hold sat fill flow bl
plot hold grid mag
;
new
res cuvec.sav
title
Deformation caused by filling of a caisson t=6e5s
plot hold sat fill flow bl
plot hold grid mag

new
res cuved.sav
title
Deformation caused by filling of a caisson t=8e5s
plot hold sat fill flow bl
plot hold grid mag
;
new
res cuvef.sav
title
Deformation caused by filling of a caisson t=12e5s
plot hold sat fill flow bl
plot hold grid mag
;
new

FLAC Version 6.0


2 - 52 Fluid-Mechanical Interaction

res cuvei.sav
title
Deformation caused by filling of a caisson t=18e5s
plot hold sat fill flow bl
plot hold grid mag
ret

FLAC Version 6.0


TWO-PHASE FLOW 2 - 53

2.6 References

Dangla, P. Approches Energetique et Numerique des Milieux Poreux Non Satures. Memoire
d’habilitation a diriger des recherches. Ecole Nationale des Ponts et Chaussees. Ecole Normale
Superieure de Cachan. Universite de Marne-la-Valee, 1999.
Forsyth, P. A., Y. S. Wu and K. Pruess. “Robust Numerical Methods for Saturated-Unsaturated
Flow with Dry Initial Conditions in Heterogeneous Media,” in Advances in Water Resources,
Vol. 18, pp. 25-38. Elsevier Science Limited (1995).
Harr, M. E. Groundwater and Seepage. Dover, 1991.
Hutter, K., L. Laloui and L. Vulliet. “Thermodynamically Based Mixture Models of Saturated and
Unsaturated Soils,” in Mechanics of Cohesive-Frictional Materials, Vol. 4, Issue no 4, pp. 295-338.
F. Darve and R. de Borst, eds. Wiley, 1999.
Nikolaevskij, V. N. Mechanics of Porous and Fractured Media. Series in Theoretical and Applied
Mechanics. R. K. T. Hsieh, ed. World Scientific, 1990.
Peaceman, D. W. Fundamentals of Numerical Reservoir Simulation. Developments in Petroleum
Science, 6. Elsevier, 1977.
Philip, J. R., J. H. Knight and R. T. Waechter. “Unsaturated Seepage and Subterranean Holes: Con-
spectus, and Exclusion Problem for Circular Cylindrical Cavities,” in Water Resources Research,
Vol. 25, No. 1, pp. 16-28, January 1989.
van Genuchten, M. Th., “A Closed Form Equation for Predicting the Hydraulic Conductivity of
Unsaturated Soils,” in Soil Sc. Soc. Am. J., Vol. 44, pp. 892-898, 1980.

FLAC Version 6.0


2 - 54 Fluid-Mechanical Interaction

FLAC Version 6.0

S-ar putea să vă placă și