FTD 127

Download as pdf or txt
Download as pdf or txt
You are on page 1of 76

GETTING STARTED 2-1

2 GETTING STARTED

This section provides the first-time user with an introduction to FLAC 3D. Getting Started contains in-
structions for program installation and start-up on your computer. It also outlines the recommended
procedure for applying FLAC 3D to problems in geo-engineering and includes simple examples that
demonstrate each step of this procedure.
If you are familiar with the program but only use it occasionally, you may find this section (in
particular, Section 2.7) helpful in refreshing your memory on the mechanics of running FLAC 3D.
More complete information on problem solving is provided in Section 3.3.
FLAC 3D can be operated in either a command-driven or graphical, menu-driven mode.* For most
of the examples in this manual, input is entered and results are viewed using the command-driven
mode. We believe this is the clearest way for you to understand the operating procedures for FLAC 3D.
As explained previously in Section 1.1, the command-driven structure allows FLAC 3D to be a very
versatile tool for use in engineering analysis. However, this structure can present difficulties for
new, or occasional, users. Command lines must be entered as input to FLAC 3D, either interactively
via the keyboard or from a remote data file, in order for the code to operate. There are over 40 main
commands and over 400 command modifiers (called keywords) that are recognized by FLAC 3D.
Getting Started contains the following information.
1. A step-by-step procedure to install and start up FLAC 3D on your computer is given in
Section 2.1. This includes the system requirements for operating FLAC 3D, a description
of the components of the FLAC 3D program and related files, the memory allocation, utility
software and graphics devices, start-up and operation procedures, program initialization,
identification of version number and installation tests.
2. This is followed in Section 2.2 with a simple tutorial to help you become familiar with
common input commands.
3. There are a few things that you will need to know before creating and running your own
FLAC 3D model — i.e., you need to know the FLAC 3D terminology. The nomenclature
used for this program is described in Section 2.3. The definition of a FLAC 3D finite
difference grid is given in Section 2.4. You should also know the syntax for the FLAC 3D
input language; an overview is provided in Section 2.5.
4. A special feature of FLAC 3D — i.e., the capability to create, name and use objects in a
model — can greatly facilitate problem solving; this is introduced in Section 2.6.
5. The mechanics of running a FLAC 3D model are described in separate steps; in Section 2.7,
each step is discussed separately and simple examples are provided.

* The graphical user interface is only partially implemented at this time. The primary use of the
current version is in accessing plotting functions and handling files. The last section of Getting
Started (Section 2.12) is an introduction to the graphical user interface in FLAC 3D, and provides an
example that is run in the menu-driven mode.

FLAC 3D Version 3.0


2-2 User’s Guide

6. The sign conventions, systems of units and precision limits used in the program appear
in Sections 2.8, 2.9 and 2.10, respectively.
7. The different types of files used and created by FLAC 3D are described in Section 2.11.
8. An introduction to the graphical user interface is provided in Section 2.12.

FLAC 3D Version 3.0


GETTING STARTED 2-3

2.1 Installation and Start-up Procedures

2.1.1 System Requirements

To install and operate FLAC 3D, your computer must meet the following minimum requirements.
Processor — A processor with a minimum clock speed of 1 GHz is recommended. The speed of
calculation for a FLAC 3D model is directly related to the processor’s speed. Therefore, the selection
of a high-speed processor is a key factor for improving computation efficiency.
Hard Drive — At least 12 MB of hard disk space must be available to install FLAC 3D. If the online
FLAC 3D manual is copied to the hard disk, an additional 16 MB are required. (Note that, by default,
the manual will be installed on the hard drive.) Also, a minimum of 100 MB disk space should be
available for model save files.
RAM — The minimum amount of RAM required to load FLAC 3D with the GIIC is 3 MB. The
memory allocated for a FLAC 3D model is adjusted dynamically to take up the required RAM for a
model at the time the model is created (see Table 2.1).
Generally, the combined RAM needed by FLAC 3D and its model storage should leave 4 to 6
MB available to Windows; otherwise, Windows starts swapping into virtual RAM (on disk) —
this swapping causes a dramatic performance loss in FLAC 3D. The more applications running
simultaneously, the smaller the FLAC 3D model should be.
Finally, it should be noted that the Windows operating system imposes an upper limit of 2 GB RAM
on FLAC 3D models.
Display — For best performance, a screen resolution of 1024 × 768 pixels and a 16-bit color palette
is recommended.
Operating System — FLAC 3D is a 32-bit native Windows application. Any Intel-based computer
capable of running Windows 98 and upward is suitable for operation of FLAC 3D. The code will
not run on 16-bit systems such as Win 3.x. Also, computers based on the DEC Alpha Chip are not
supported by Itasca and may not execute FLAC 3D properly.
Output Device — By default, plots from FLAC 3D are sent directly to the Windows native printer.
Plots can also be directed to the Windows clipboard, or files encoded in PostScript, Enhanced
Metafile format and several bitmap formats (PCX, BMP or JPEG). See the SET plot command for
the selections of output format.
Operation on PC Networks — A network version of FLAC 3D is available. The network key allows
a single hardware dongle to be placed at a central location. Individual users can then run FLAC 3D
from any computer on the network. Network keys require a special licensing arrangement and
installation. Contact Itasca for details.

FLAC 3D Version 3.0


2-4 User’s Guide

2.1.2 Installation of FLAC 3D

FLAC 3D is installed from a CD-ROM. The installation operates under Windows 98, ME, NT, XP
and 2000. Earlier versions of Windows or other operating systems will not run the installation.
A default installation of FLAC 3D from the CD-ROM will install the program, its example files,
and the complete FLAC 3D manual. The Adobe Reader is necessary for viewing the manual; this
program is available to download for free from the Adobe Corporation (http://www.adobe.com).
To begin installation, insert the CD-ROM into the appropriate drive. If the autorun feature for
the CD drive is enabled, a menu providing options for using the CD will appear automatically. If
this menu does not appear, type “[cd drive]:\start.exe” at the command line ( START –> RUN in
Windows) to access the CD-ROM menu. The option to install FLAC 3D may be selected from this
menu.
The installation program will guide you through installation. When the installation is finished, a file
named “INSTNOTE.PDF” will be found in the program sub-folder (“FLAC3D300”) that resides
in the main installation folder. (This is the folder that is specified during the installation process
as the location to which files will be copied; by default, this is “c:\Program Files\Itasca.”) The
“INSTNOTE.PDF” file provides a listing of the directory structure that is created on installation and
a description of the actions that have been performed as part of the installation. This information
may be used, in the unlikely event it is necessary or desirable, to either manually install or manually
uninstall FLAC 3D. The recommended method for uninstalling FLAC 3D is to use the Windows
“Add/Remove Programs” applet ( START –> SETTINGS –> CONTROL PANEL –> ADD/REMOVE PROGRAMS ). Please note
that references to files made in the FLAC 3D manual presume the default directory structure described
in “INSTNOTE.PDF”; all data files described in the manual are contained in these folders.
The first time you load FLAC 3D you will be asked to enter a customer title. This two-line title will
appear on graphics screen plots and hardcopy plots. The title can be changed by using the SET
cust1 and SET cust2 commands. The customer title is stored with the configuration settings in your
computer’s system registry.
After installing the software, connect the FLAC 3D hardware key to the LPT1 or USB port on the
computer before using the code.

2.1.3 Components of FLAC 3D

The executable file for FLAC 3D is “F3300.EXE,” which is stored, by default, in the directory
“\ITASCA\FLAC3D300.” FLAC 3D is compiled with the Microsoft Visual C++ (VC++) Version
7.1 compiler. In addition to the executable code, two sets of dynamic linked libraries (DLLs) are
provided. One set of DLLs is used to access the various graphics formats in FLAC 3D. The other
set corresponds to the built-in constitutive models provided with FLAC 3D. All of these DLLs are
located in the “\ITASCA\FLAC3D300” directory.

FLAC 3D Version 3.0


GETTING STARTED 2-5

2.1.4 Utility Software and Graphics Devices

Several types of utility software and graphics devices that can be of great help while operating
FLAC 3D are available.
Editors — A text editor is used to create FLAC 3D input data files. Any text editor that produces
standard ASCII text files may be used. Care must be taken if more “advanced” word-processing
software (e.g., WordPerfect, Word) is used: this software typically encodes format descriptions
into the standard output format; these descriptions are not recognized by FLAC 3D and will cause an
error. FLAC 3D input files must be in standard ASCII format.
Graphic Output — FLAC 3D supports several different types of graphics devices. By default, plots
generated with the PLOT hardcopy command (or via the File Print View menu item from the main
FLAC 3D window) will be directed to the default Windows printer. (Note that the default printer
is changed outside FLAC 3D using the Printers folder in the My Computer object.) The Windows
printer output is also selected with the SET plot windows command.
The command PLOT clipboard directs the current plot to the Windows clipboard (no file is generated).
The image is in Enhanced Metafile format and subsequently may be pasted into another Windows
application that is compatible with that format.
The SET plot metafile command directs output to an Enhanced Metafile format file on disc, where it
can be saved for reference or later embedded in a Windows document. The SET output command
should be used to set the output filename to one with a “.EMF” extension.
Either a black-and-white or color PostScript printer may be specified with the SET plot postscript
command. The PostScript output may be written to a file for subsequent modification by a graphics
program that will read the PostScript format.
Several graphics formats (PCX, BMP or JPEG) can be accessed via the keywords pcx, bitmap, bmp
or jpg with the SET plot command. Image resolution for these bitmap formats may be set using
the SET plot <output type> size command. Also, the SET plot avi (AVI), SET plot dcx (DCX), and
MOVIE commands enable one to make movies from graphic output.
Note that the different graphic output types can also be selected from the File Output Type menu
item in the main FLAC 3D window.

2.1.5 Start-up

A default installation will create an Itasca group under Programs on the user’s Start menu in Windows.
The Itasca group contains the FLAC3D –> FLAC3D300 shortcut that may be used to start the code. Be sure
that the FLAC 3D hardware key is attached to the LPT1 or USB port on the computer before starting
the code.
A FLAC 3D window is created when FLAC 3D is loaded. A command window is also created within
the main window, and command input can then be entered directly on the command line following
the Flac3D> prompt.

FLAC 3D Version 3.0


2-6 User’s Guide

When loaded, FLAC 3D allocates memory dynamically (i.e., memory usage increases as the model
is constructed). As a rule-of-thumb, it is recommended that 4 to 6 MB RAM be available to
Windows after a complete FLAC 3D model is generated. Otherwise, Windows will start swapping
into virtual RAM — this swapping can cause a dramatic performance-loss in FLAC 3D. Also,
if other applications are running simultaneously, less RAM will be available for FLAC 3D. (The
memory-allocation system can be controlled by the SET memory command.)
After loading FLAC 3D, type
print memory system

This command will give a listing of the total memory used by the FLAC 3D model at this stage, and
the total memory allocated by the system. Repeat this command after different stages of the model
generation to monitor the memory required for the model.
The two memory numbers can vary. If you observe a performance-loss while operating FLAC 3D,
and the second number is much greater than the first, this indicates that too much memory has
been allocated for FLAC 3D. In this case, it may be necessary to exit and restart FLAC 3D in order to
recover the excess memory.
Table 2.1 summarizes the approximate amount of RAM used when creating a number of zones of
Mohr-Coulomb material. FLAC 3D can access up to 2 GB of memory (a 32-bit Windows operating
system restriction). On some 32-bit Windows server and professional editions, up to 3 GB can be
accessed with a special version of FLAC 3D (contact Itasca for details).

Table 2.1 FLAC 3D RAM usage


Number of Zones RAM Used (MB)
203 20
303 68
403 161
503 314
603 541

FLAC 3D may be run from the command line, and will support command-line arguments, which
may follow the executable name. If such arguments are present, each argument is interpreted as
either a save file or a data file. If the file is not a valid save file, then it is assumed to be a data file.
For save files, a RESTORE command is executed automatically. For data files, a CALL command is
executed automatically. Multiple arguments are called or restored in the order specified. Also, to
enable easier use of batch-file processing of multiple data files, the keyword quit can be given on
the command line, which will cause the code to execute a STOP command and exit completely.

FLAC 3D Version 3.0


GETTING STARTED 2-7

2.1.6 Version Identification

The version number of FLAC 3D follows a simple numbering system that identifies the level of
updates in the program. There are three numerical identifiers in the version number — that is,
Version I.JK

where:
I is an integer starting with 1 that identifies a major release of the code;
J is an integer that is incremented whenever a modification is made that requires
a major change to the code structure for a supplemental upgrade release of
FLAC 3D ; and
K is an integer that is incremented when minor modifications are officially re-
leased as an update to the current version.
Note that FLAC 3D Version 3.0 will restore save files from Version 2.1, but not versions earlier than
2.1. This is a result of the change from the Watcom C/C++ compiler to the Microsoft Visual C++
compiler. Existing data files should run correctly.
In addition to the version number, sub-version numbers are also used to identify minor changes to
FLAC 3D that have been made since the official version was released. Users may obtain the latest
sub-version of the current version of FLAC 3D from Itasca’s web site (www.hcitasca.com). However,
FLAC 3D with a sub-version number greater than that of the officially released version should be
used with caution, because all features have not been tested.
The version number for FLAC 3D appears in the title bar of the FLAC 3D main window. By typing
the command
print version

the complete version number, including the sub-version number, can be obtained.

2.1.7 Program Initialization

On start-up, FLAC 3D will look for the file named “FLAC3D.INI” in the current folder and then,
if not found, in the “c:\Program Files\Itasca” folder. The “FLAC3D.INI” file can contain any
FLAC 3D commands that preset attributes of the program that you may wish to apply every time
FLAC 3D is used.
If the file “FLAC3D.INI” does not exist, FLAC 3D simply continues without error. Note that some
commands in a “FLAC3D.INI” file may result in an error message if they are inappropriate for the
initial stage of a run.

FLAC 3D Version 3.0


2-8 User’s Guide

2.1.8 Running FLAC 3D

FLAC 3D can be run interactively or from an input data file in command-driven mode. If you wish
to run the code interactively, just begin typing in commands in the command window. FLAC 3D will
execute each command as the <Enter> key is pressed. If an error arises, an error message will be
displayed on the screen.
As an alternative, an input data file may be created using a text editor (see Section 2.1.4). This file
contains a set of commands just as they would be entered in the interactive mode. Although the data
file may have any name, a common identifying extension (e.g., “.DAT”) will help to distinguish it
from other FLAC 3D files (see Section 2.11).
The data file can be read into FLAC 3D by typing the command
call file.dat

on the command line in the command window, in which “FILE.DAT” is the user-assigned name
for the data file. You will see the data entries scroll up the screen as FLAC 3D reads each line.
If the called file is located in the same folder as that from which “FLAC3D.EXE” is currently
running, then only the file name need be entered with the CALL command. Otherwise, the file may
be called by specifying its complete path (e.g., c:\myfolder\file.dat). Alternatively, a file can be
called from any directory by using the File Call menu (see Section 2.12).
It is also possible to create a shortcut to FLAC 3D from a different directory. In the Windows Explorer,
navigate to “F3300.EXE” (by default, in “c:\Program Files\Itasca\FLAC3D300”). Right-click on
“F3300.EXE” and drag the file to the location where the shortcut is to be created (e.g., the directory
containing the FLAC 3D data files). When you release the right mouse button, a context menu will
appear. Select “Create Shortcut Here” and a shortcut will be created. Double-click on the shortcut
to start FLAC 3D.
In order for FLAC 3D to search for files in the shortcut directory, instead of the directory containing
“F3300.EXE,” right-click on the shortcut and select “Properties.” Delete the contents in the “Start
In” edit box. This will cause FLAC 3D to search the local folder for data files rather than the folder
in which the executable is installed.

2.1.9 Installation Tests

Three simple data files, “TEST1.DAT,” “TEST2.DAT” and “TEST3.DAT,” are included in the
“\FLAC3D300” directory so that you can test that FLAC 3D is installed properly on your computer.
These files test the calculation kernel, the graphics screen-plotting and the hardcopy plotting fa-
cilities for your computer. In order to run the third test, your computer must be connected to a
Windows printer.*

* For users who have printers connected to the LPT1 port: the FLAC 3D hardware key is transparent
to other uses of the LPT1 port; your printer can be attached directly to the key.

FLAC 3D Version 3.0


GETTING STARTED 2-9

To run these tests, load the file “TEST1.DAT” from the “\FLAC3D300” directory via the File
Call menu, or type
call test1.dat

at the Flac3D> prompt and press <Enter>.


Several data entries should scroll up the screen, and a simple model will be executed for 100
calculation steps. Example 2.1 contains the results of a successful “TEST1.DAT” run.

Example 2.1 FLAC 3D output from “TEST1.DAT”


Zone Principal Stresses ...
id Maximum Intermediate Minimum
------ ------------- ------------- -------------
1 -4.92673e+005 -4.92673e+005 -8.62177e+005

Now, load the file “TEST2.DAT” from the “\FLAC3D300” directory, or enter the command
call test2.dat

A screen plot of this model should appear. The plot is a color-rendered contour plot of displacements.
Press the <Enter> key to return to the Flac3D> prompt.
If your computer is connected to a Windows printer, load the file “TEST3.DAT” from the
“\FLAC3D300” directory, or type
call test3.dat

and the plot shown in Figure 2.1 should be sent to your printer, and the program should exit. If you
do not have a printer connected, do not load “TEST3.DAT.” Type
quit

to exit FLAC 3D.


If you are not able to reproduce the results of any or all of these three tests, you should review
the system requirements and installation steps in Section 2.1. If you are still having difficulty, we
recommend that you contact Itasca and describe the problem you have encountered and the type of
computer you are using (see Section 5.2 for error-reporting procedures).

FLAC 3D Version 3.0


2 - 10 User’s Guide

FLAC3D 3.00
Step 100 Model Perspective
09:46:41 Fri Feb 04 2005

Center: Rotation:
X: 2.000e+000 X: 17.500
Y: 2.000e+000 Y: 350.150
Z: 2.000e+000 Z: 331.520
Dist: 1.843e+001 Mag.: 1
Ang.: 22.500

Contour of Displacement Mag.


Magfac = 0.000e+000
0.0000e+000 to 2.5000e-003
2.5000e-003 to 5.0000e-003
5.0000e-003 to 7.5000e-003
7.5000e-003 to 1.0000e-002
1.0000e-002 to 1.2500e-002
1.2500e-002 to 1.5000e-002
1.5000e-002 to 1.7500e-002
1.7500e-002 to 2.0000e-002
2.0000e-002 to 2.2500e-002
2.2500e-002 to 2.5000e-002
2.5000e-002 to 2.5921e-002
Interval = 2.5e-003

Itasca Consulting Group, Inc.


Minneapolis, MN USA

Figure 2.1 Windows plot from “TEST3.DAT”

FLAC 3D Version 3.0


GETTING STARTED 2 - 11

2.2 A Simple Tutorial — Use of Common Commands

This section is provided for the new user who wishes to begin experimenting with FLAC 3D right
away. A simple example is presented to help you learn some of the basic aspects of solving problems
with FLAC 3D.
The example problem is a 2 m × 4 m trench excavated to a depth of 4 m in a soil mass. For
this tutorial, we excavate the entire trench instantaneously and monitor the resulting movement of
the material around the trench. For your convenience, the data file “TUT.DAT,” included in the
“\Tutorial\Beginner” directory, contains all the commands we are about to enter.
We run this problem interactively (i.e., by typing the commands from the keyboard, pressing
<Enter> at the end of each command line, and seeing the results directly). To begin, load FLAC 3D
by clicking the appropriate icon in the Itasca group. Your computer will load the program and display
the FLAC 3D main window containing the command window with a command line beginning with
the interactive prompt Flac3D>.
To set up the initial finite difference grid, use the GENERATE command:*
gen zone brick size 6 8 8

This command will create an initial mesh that is six zones in the x-direction, eight zones in the
y-direction and eight zones in the z-direction. For our model, the z-axis is oriented in the vertical
direction.
The model grid can be viewed by entering the plotting mode in FLAC 3D. Type the command
plot

and the Plot Base/0> prompt will appear. As long as this prompt appears, any subsequent
commands will be associated with the PLOT command. The plot view is identified as Base/0,
which is the default view.
In order to create a view containing a color-rendered surface plot of the model, along with the model
axes, type the commands shown in Example 2.2, below.

Example 2.2 Creating and using a plot view


create Trench
add surface yellow
add axes black
show

* See the command reference list in Section 1 in the Command Reference for further details. Note
that command words can be abbreviated, and that words and values can be separated by any number
of spaces and “=” signs (see Section 2.5).

FLAC 3D Version 3.0


2 - 12 User’s Guide

This creates a plot view called Trench, and adds a surface plot item (in yellow) and an axes plot
item (in black) to the view. The show keyword displays the current view (in a plot window with
the view name Trench in the title bar); creating a view automatically makes that view current. A
perspective view of the model, seen in elevation, will appear in the view window. This plot can be
rotated in the x-, y- and z-directions by pressing the <x>, <y> and <z> keys on the keyboard.
Use the <m> key to change the magnification, and the arrow keys to move the plot around. (To
reverse the rotation and magnification, hold down the <Shift> key when pressing the appropriate
key. Also, see Table 1.2 in the Command Reference for other keystrokes to manipulate the view of
the model.) A plot similar to that shown in Figure 2.2 will appear on your screen. The orientation
in the figure was achieved by reducing the magnification (<Shift-m> once) and rotating the plot
about the x- (<x> twice) and z- (<z> three times) axes.

View Title: Mesh for trench example


FLAC3D 3.00
Settings: Model Perspective
09:51:53 Fri Feb 04 2005

Center: Rotation:
X: 3.000e+000 X: 20.000
Y: 4.000e+000 Y: 0.000
Z: 4.000e+000 Z: 30.000
Dist: 2.612e+001 Mag.: 0.8
Ang.: 22.500

Surface
Magfac = 0.000e+000
Axes
Linestyle

Z
Y
X
Itasca Consulting Group, Inc.
Minneapolis, MN USA

Figure 2.2 Brick-type mesh for trench example

Note that we can specify the magnification and orientation with PLOT commands directly. The
caption of the plot shown in Figure 2.2 gives the data under the headings “Center:,” “Rotation:,”
“Dist:” and “Mag:.” So, after we interactively set up the view we want, we can transfer the data
to a data file to facilitate the comparison of like views. Let’s create another view, building on
Example 2.2 — the new commands added in Example 2.3 are in boldface for clarity. (We are
assuming that the Plot Trench> prompt in the command window is active; if not, move and
click the mouse on the command window before typing the commands in Example 2.3.)

FLAC 3D Version 3.0


GETTING STARTED 2 - 13

Example 2.3 Specifying view parameters


create Trench2
add surface yellow
add axes black
set rotation 20.0 0.0 30.0
set center 3 4 4
set dist 26.12
set magnification 0.8
show

Compare this view with that in Figure 2.2; they should be identical.
Now, we introduce some plotting features to enhance the output. The command
title ‘Tutorial Examples’

was given at the start of the series of runs to produce the plots in this section. This title appears as
a job title on all the plots. For individual plots, the command
plot set title text ’string’

will set the view title to string. For example, the command
plot set title text ‘Mesh for trench example’

creates the title shown in Figure 2.2. These titles can be positioned at the top or bottom of the
plot, or turned off completely. The PLOT command, described in Section 1.3 in the Command
Reference, lists all the options.
In order to make a hardcopy output of this plot, return to the Plot Trench2> prompt by moving
and clicking the mouse on the command window, or by pressing the <Enter> key. Then type
hard

By default, this will send the plot to the current Windows printer connected to the LPT1 port. The
output type can be changed, if desired, as discussed in Section 2.1.4.
To close plot view Trench2, type
close

Now, only view Trench is displayed.


The mesh in Figure 2.2 is 6 m × 8 m × 8 m in size, with origin (x = 0, y = 0, z = 0) at the
bottom-left corner. The dimensions, origin and mesh grading of the model can be changed with
additional keywords specified after the GENERATE command. This will be explained later in this
section.

FLAC 3D Version 3.0


2 - 14 User’s Guide

Now, give the zones a material model and properties. For this example, we use the Mohr-Coulomb
elastic-plastic model. Go back to the Flac3D> prompt in the command window and type in the
following command:
model mohr

This will specify the Mohr-Coulomb model. Every zone in the grid could conceivably have a
different material model and property. However, by not specifying a range of zones after the
MODEL command, FLAC 3D assumes that all zones are to be Mohr-Coulomb material.
Each zone is automatically subdivided into tetrahedral “sub-zones.” Two sets of five tetrahedra
are overlaid in each zone (“double-overlay”) in order to provide accurate solutions for plasticity
analyses (see Section 1 in Theory and Background for an explanation of the numerical formulation
for plasticity).
The amount of memory required to run this problem can be found by typing
print mem sav mem sys

This will give a listing of the memory statistics for the model at this state. Our problem requires
approximately 0.6 MB to save the current state, and approximately 4.2 MB is currently allocated
to run this model.
The material properties are given next with the commands
prop bulk = 1e8 shear = 0.3e8 fric = 35
prop coh = 1e10 tens = 1e10

The bulk modulus (in Pa), shear modulus, angle of internal friction, cohesion and tensile strength
are specified. You see that very high cohesion and tensile strength values are given. These are
only initial values that are used during the development of gravitational stresses within the body.
In effect, we are forcing the body to behave elastically during the development of the initial in-
situ stress state.* This prevents any plastic yield during the initial loading phase of the analysis.
The reasons for this will become obvious once you gain experience with the explicit simulation
procedure.
For this problem, loading is due to gravity. To apply gravity, use the commands
set grav 0, 0, -9.81
ini dens = 1000

A gravitation acceleration vector of 9.81 m/sec2 is applied in the negative z-direction. (Gravity is
taken as positive in a positive axis direction.) In order to develop a gravitational body force, the

* There are several ways to establish an initial stress state for an analysis. For example, an elastic
model (MODEL elastic) could initially be used to set up the virgin stresses, followed by a change to
the Mohr-Coulomb model prior to any excavation, applied loads, or other alterations to the model.
A special command, SOLVE elastic, which performs this two-step calculation automatically, is also
available.

FLAC 3D Version 3.0


GETTING STARTED 2 - 15

mass density must also be initialized. The INI command is used to initialize the mass density to
1000 kg/m3 for all zones in the model.*
Next, the boundary conditions for the problem are set. At the Flac3D> prompt, type
fix x range x -0.1 0.1
fix x range x 5.9 6.1
fix y range y -0.1 0.1
fix y range y 7.9 8.1
fix z range z -0.1 0.1

With these commands, roller boundaries are placed on five sides of the model. The boundaries
are “fixed” only in the specified direction (i.e., no displacement or velocity is allowed). The FIX
commands perform the following functions.
1. The gridpoints along the boundary planes at x = 0 and x = 6 are fixed in the x-direction.
These two planes fall within the coordinate ranges specified by the range keywords for
the first two FIX commands.
2. The gridpoints along the boundary planes at y = 0 and y = 8 are fixed in the y-direction.
These planes fall within the ranges specified for the third and fourth FIX commands.
3. The gridpoints along the bottom boundary (z = 0) are fixed in the z-direction. This plane
falls within the range for the fifth FIX command.
We wish to monitor the change in the values of selected variables in the model during the cal-
culational stepping. A HISTORY command can assist in helping us determine whether a stable
equilibrium solution or unstable collapse is occurring. We type the following commands:
hist n = 5
hist unbal
hist gp zdisp 4,4,8

We choose to monitor the change in variables every five calculation steps. (The default is every
ten steps.) The selected values are then stored in a history array at every fifth step. Two variables
are monitored: the maximum unbalanced force, and the z-displacement at gridpoint (x = 4, y =
4, z = 8). It is always a good idea to monitor the maximum unbalanced force in a model. If the
unbalanced force approaches a very small value and displacement histories become constant, this
indicates that an equilibrium state is reached.
Now, we are ready to bring the model to an initial equilibrium state. Because FLAC 3D is an explicit
dynamic code, we step the model through “time,”† allowing the kinetic energy of the mesh to damp

* Note that it is only necessary to specify density if gravitational loading is applied to a FLAC 3D model.
For static analyses not involving gravity, density is not required. (This differs from two-dimensional
FLAC.)

† calculation time — not real time

FLAC 3D Version 3.0


2 - 16 User’s Guide

out (thus providing the static solution we seek). To allow gravitational stresses to develop within
the body, we timestep the simulation to equilibrium. Here the SOLVE command is used to detect
equilibrium automatically.
Type the commands
set mech force=50
solve

The calculation process will begin, and the timestep number and maximum unbalanced force will
be displayed on the screen. When the unbalanced force falls below the limiting value (a limiting
force of 50 N is specified with the SET command), the run will stop.* The plots are updated, since
they are still visible on the screen. Shutting down the plots will cause the model to cycle faster.
For our model, the calculation stops at step 351.† On a 1 GHz Pentium computer, this calculation
only takes a few seconds.
We can verify that equilibrium is reached by examining the histories of the unbalanced force and
z-displacement. Type
plot
hist 1

for the unbalanced force history (see Figure 2.3). Press <Enter> to return to the command prompt
and then type
hist 2

for the z-displacement history (see Figure 2.4). The unbalanced force history approaches zero, and
the displacement history becomes constant; both are indicators that an equilibrium state has been
reached.
The last two plots were displayed on FLAC 3D’s base view (Base/0). Any plot items not explicitly
added to a view are displayed immediately on the base view. This has no effect on any other created
view — the base view is simply a sort of “scratch” view where plots can be examined quickly.

* The selection of solution limits is discussed later in Section 2.7.4.

† The step number at which this calculation stops may vary slightly, depending upon the precision
limits of your co-processor.

FLAC 3D Version 3.0


GETTING STARTED 2 - 17

x10^3
FLAC3D 3.00
Step 351
16:22:36 Thu Feb 03 2005
9.0
History
1 Max. Unbalanced Force
Linestyle
5.848e+001 <-> 9.810e+003
8.0
Vs.
Step
5.000e+000 <-> 3.500e+002
7.0

6.0

5.0

4.0

3.0

2.0

1.0

1.0 2.0 3.0


Itasca Consulting Group, Inc. x10^2
Minneapolis, MN USA

Figure 2.3 Maximum unbalanced force history

x10^-3
FLAC3D 3.00
Step 351
16:23:27 Thu Feb 03 2005 -0.2

History
2 Z-Displacement Gp 537 -0.4
Linestyle
-2.765e-003 <-> -2.422e-005
Vs. -0.6
Step
5.000e+000 <-> 3.500e+002
-0.8

-1.0

-1.2

-1.4

-1.6

-1.8

-2.0

-2.2

-2.4

-2.6

1.0 2.0 3.0


Itasca Consulting Group, Inc. x10^2
Minneapolis, MN USA

Figure 2.4 z-displacement history at (x = 4, y = 4, z = 8)

FLAC 3D Version 3.0


2 - 18 User’s Guide

Note that each history is numbered sequentially from 1 as it is entered via the HIST command.
Return to the Flac3D> prompt and type
print hist

for a listing of the histories and their corresponding numbers.


It is also possible to examine the gravitational stresses that have developed in the model. Here, we
will create a complex view containing a number of plot items:
plot create GravV
plot set plane dip=90 dd=0 origin=3,4,0
plot set rot 15 0 20
plot set center 2.5 4.2 4.0
plot add bound behind
plot add bcont szz plane
plot add axes
plot show

This sequence will create a view, which we have called GravV, and make it the current view. We
then set a plane for that view oriented at a dip angle of 90◦ (from the xy-plane, assuming that
negative-z is “down”), a dip direction of 0◦ (measured clockwise from the positive y-axis in the
xy-plane) and with one point on the plane at (x = 3, y = 4, z = 0). We add a wire-frame boundary
plotted behind the plane and a block contour plot of the vertical stress component, σzz , on the
plane. Finally, the model axes are added. The block contour plot, as opposed to an interpolated
contour plot, displays the value of the stress calculated at each zone centroid. The color of each
zone corresponds directly to the zone-based stress. When show is typed, the view we have created
is displayed. You should see a perspective view similar to that in Figure 2.5.

FLAC 3D Version 3.0


GETTING STARTED 2 - 19

FLAC3D 3.00
Step 351 Model Perspective
09:49:55 Fri Feb 04 2005

Center: Rotation:
X: 2.500e+000 X: 15.000
Y: 4.200e+000 Y: 0.000
Z: 4.000e+000 Z: 20.000
Dist: 3.387e+001 Mag.: 1
Ang.: 22.500

Plane Origin: Plane Orientation:


X: 3.000e+000 Dip: 90.000
Y: 4.000e+000 DD: 0.000
Z: 0.000e+000

Boundary
Plane: behind
Magfac = 0.000e+000
Linestyle
Block Contour of SZZ Stress
Plane: on
-7.3361e+004 to -7.0000e+004
-7.0000e+004 to -6.0000e+004
-6.0000e+004 to -5.0000e+004
-5.0000e+004 to -4.0000e+004
-4.0000e+004 to -3.0000e+004
-3.0000e+004 to -2.0000e+004
-2.0000e+004 to -1.0000e+004
-1.0000e+004 to -4.8902e+003
Interval = 1.0e+004
Axes
Linestyle

Y
X

Itasca Consulting Group, Inc.


Minneapolis, MN USA

Figure 2.5 Gravitational stress contours at initial equilibrium

It is wise to save the initial state so that you can restore it at any time to perform parameter studies.
To save this state, return to the Flac3D> prompt and type
save trench.sav

A save file, “TRENCH.SAV,” will be created on the default drive.


We have now created two plot views of our model. The command
plot print

will display a list of the views; the active view will be indicated with an arrow. The command
plot print view

will display details of the current view. Adding a view name or number to the above command will
produce a detailed description of that view, including all the settings and the plot items on the view.
We can change the current view from GravV to Trench with the command
plot current Trench

which will cause the view Trench to accept setting or item alterations. Any existing view may be
plotted directly, without first making it current; the command sequence is
plot show <viewname>

FLAC 3D Version 3.0


2 - 20 User’s Guide

where viewname is the selected view to be plotted. All available views are also listed as menu items
under Plot on the main menu bar when the command window is active.
Now we can excavate a trench in the soil. First, type
prop coh=1e3 tens=1e3

This will set the cohesion and tensile strength for all zones to 1000 Pa. These values for strength are
high enough to prevent failure in our initial state (i.e., unexcavated), but you should always check
for possible failure in the initial state by performing a few calculation steps. To excavate the trench,
enter
model null range x=2,4 y=2,6 z=5,10

The dimensions of the excavation region (i.e., the null material) are defined by the x-, y- and
z-coordinate range.
With a low cohesion and vertical unsupported trench walls, collapse should occur. Because we
want to examine this process realistically, the large-strain logic is specified. This is done by typing
set large

For plotting purposes, we wish to see only the change in displacements from the trench excavation,
and not from the previous gravitational loading, so we zero out the x-, y- and z-displacement
components:*
ini xdis=0 ydis=0 zdis=0

We purposely set the cohesion low enough to result in failure, so we do not want to use the SOLVE
command with a limit for out-of-balance force (which checks for equilibrium). Our simulation will
never converge to the equilibrium state. Instead, we can step through the simulation process one
timestep at a time, and plot and print the results of the collapse as it occurs. This is the real power
of the explicit method. The model is not required to converge to equilibrium at each calculation
cycle because we never have to solve a set of linear algebraic equations simultaneously, as is the
case for implicit codes, with which many engineers are familiar.
In FLAC 3D, we use the STEP command:
step 2000

FLAC 3D will now step through 2000 timesteps. (This will take less than a minute on a 1 GHz
Pentium.) Examine the calculation thus far by plotting some results. For example, repeat the
plot sequence to produce the rendered contour plot on a plane. But, this time, plot displacement
contours. Type the sequence:
plot
create DispCont

* This will not affect the calculations, since the model does not require displacement in the calculation
process. They are kept only as a convenience to the user.

FLAC 3D Version 3.0


GETTING STARTED 2 - 21

copy GravV DispCont settings


add cont disp plane behind shade on
add axes
show

A plot similar to that in Figure 2.6 should appear. We have copied the settings from the previous
view (specifically, the plane-orientation settings), since we want to produce comparable plots. We
can copy either the view contents or the view settings (or both) from one view to another, allowing
us to produce a series of similar views.

FLAC3D 3.00
Step 2351 Model Perspective
09:50:49 Fri Feb 04 2005

Center: Rotation:
X: 2.500e+000 X: 15.000
Y: 4.200e+000 Y: 0.000
Z: 4.000e+000 Z: 20.000
Dist: 3.387e+001 Mag.: 1
Ang.: 22.500
Plane Origin: Plane Orientation:
X: 3.000e+000 Dip: 90.000
Y: 4.000e+000 DD: 0.000
Z: 0.000e+000

Contour of Displacement Mag.


Plane: on behind
Magfac = 1.000e+000
0.0000e+000 to 2.5000e-002
2.5000e-002 to 5.0000e-002
5.0000e-002 to 7.5000e-002
7.5000e-002 to 1.0000e-001
1.0000e-001 to 1.2500e-001
1.2500e-001 to 1.5000e-001
1.5000e-001 to 1.7500e-001
1.7500e-001 to 2.0000e-001
2.0000e-001 to 2.2500e-001
2.2500e-001 to 2.2698e-001
Interval = 2.5e-002
Axes
Linestyle

Y
X

Itasca Consulting Group, Inc.


Minneapolis, MN USA

Figure 2.6 Displacement contours at 2000 steps after excavation

You will notice, in Figure 2.6, some mesh distortion beginning at the trench. Also, the displacement
contours indicate the extent of surface settlement that results from the excavation.*
This ends the initial tutorial. In the following sections in Getting Started, we will present other
features in FLAC 3D that can be used to add more complexity to this example, including ways to
stabilize the excavation. We recommend that you read the rest of Getting Started for a beginner’s
guide to the mechanics of using FLAC 3D. As you become more familiar with the code, turn to
Section 3.3 for additional details on problem solving with FLAC 3D.

* Note that we have made our boundaries on this problem small, in order to speed operation. Thus,
some effect of the boundaries on model results is expected.

FLAC 3D Version 3.0


2 - 22 User’s Guide

2.3 Nomenclature

FLAC 3D uses nomenclature that is consistent, in general, with that used in conventional finite
difference or finite element programs for stress analysis. The basic definitions of terms are reviewed
here for clarification. Figure 2.7 is provided to illustrate the FLAC 3D terminology.

gridpoint
structural cables
(tiebacks)
zone

model boundary

horizontal
boundary
stress

horizontal
boundary
stress

z
y
x
internal
boundaries
(excavation)

roller
bottom
boundary

Figure 2.7 Example of a FLAC 3D model

FLAC 3D MODEL — The FLAC 3D model is created by the user to simulate a physical problem.
When referring to a FLAC 3D model, the user implies a sequence of FLAC 3D commands (see Section 1
in the Command Reference) that define the problem conditions for numerical solution.

FLAC 3D Version 3.0


GETTING STARTED 2 - 23

ZONE — The finite difference zone is the smallest geometric domain within which the change in
a phenomenon (e.g., stress versus strain) is evaluated. Polyhedral zones of different shapes (e.g.,
brick, wedge, pyramid and tetrahedral-shaped zones) are used to create models, and can be viewed
upon plotting. Each polyhedral zone contains two overlaid sets of five tetrahedral sub-zones, but
the user is not normally aware of these. Another term for zone is element.
GRIDPOINT — Gridpoints are associated with the corners of the finite difference zones. There
are five, six, seven or eight gridpoints associated with each polyhedral zone, depending on the zone
shape. A set of x-, y-, z-coordinates is assigned to each gridpoint, thus specifying the exact location
of the finite difference zones. Other terms for gridpoint are nodal point and node.
FINITE DIFFERENCE GRID — The finite difference grid is an assemblage of one or more
finite difference zones across the physical region that is being analyzed. Another term for grid is
mesh. The finite difference grid also identifies the storage locations of all state variables in the
model. The procedure followed in FLAC 3D is that all the vector quantities (e.g., forces, velocities,
displacements) are stored at gridpoint locations, while all scalar and tensor quantities (e.g., stress
and material properties) are stored at zone centroid locations.
MODEL BOUNDARY — The model boundary is the periphery of the finite difference grid. Internal
boundaries (i.e., holes within the grid) are also model boundaries.
BOUNDARY CONDITION — A boundary condition is the prescription of a constraint or controlled
condition along a model boundary (e.g., a fixed displacement or force for mechanical problems,
an impermeable boundary for groundwater flow problems, adiabatic boundary for heat transfer
problems, etc.).
INITIAL CONDITIONS — This is the state of all variables in the model (e.g., stresses or pore
pressures) prior to any loading change or disturbance (e.g., excavation).
CONSTITUTIVE MODEL — The constitutive (or material) model represents the deformation
and strength behavior prescribed to the zones in a FLAC 3D model. Several constitutive models to
assimilate different types of behavior commonly associated with geologic materials are available
in FLAC 3D. Constitutive models and material properties can be assigned individually to every zone
in a FLAC 3D model.
NULL ZONE — Null zones are zones that represent voids (i.e., no material present) within the
finite difference grid.
SUB-GRID — The finite difference grid can be composed of sub-grids. Sub-grids can be used to
create regions of different shapes in the model (e.g., a dam sub-grid can be placed on a foundation
sub-grid). Sub-grids are generated separately and then moved together and attached.
ATTACHED FACES — Attached faces are grid faces of separated sub-grids that are attached or
joined together. Attached faces must be coplanar and touching, but gridpoints on each face do not
have to match. Sub-grids of different zone densities can be attached.
INTERFACE — An interface is a connection between sub-grids that can separate (e.g., slide or
open) during the calculation process. An interface can represent a physical discontinuity such as a
fault, contact plane, or interface between two different materials.

FLAC 3D Version 3.0


2 - 24 User’s Guide

RANGE — A range in a FLAC 3D model is a description of a specific volume of space. A range


delimits a volume to which a command operation will apply. A range or element of a range specified
in terms of x-, y-, z-coordinates remains fixed in space even if the model is moving — it is not
connected to the zones and gridpoints in the model. A range or element of a range specified in terms
of groups includes the space inside all the encompassed zones and is connected to the model. An
ID number can also be an element of a range, indicating that the range includes, and is connected
to, the zone, gridpoint or structural element entity with the specified ID number.
GROUP — A group in a FLAC 3D model refers to a collection of zones identified by a unique name.
Groups are used to limit the range of certain FLAC 3D commands, such as the MODEL command that
assigns material models to designated groups. Any command reference to a group name indicates
that the command is to be executed on that group of zones.
ID NUMBER — Individual elements of a FLAC 3D model are identified by identification (ID)
numbers. The following model elements have ID numbers: interfaces, gridpoints, zones, volumes,
reference points, histories, tables, plot items and structural element entities (i.e., beams, cables,
piles, shells, liners and geogrids). These are unique numbers that assist the user in identifying
specific elements in a model. The PRINT command is used to obtain the ID numbers. ID numbers
can be assigned by the user to interfaces, structural element entities, reference points, histories,
tables and plot items.
Component identification (CID) numbers are also assigned to individual elements of a structural
element entity. Unique CID numbers are created for each node, element and node/grid link that
comprises a beam, cable, pile, shell, liner or geogrid entity.
STRUCTURAL ELEMENT — Two types of structural element are available in FLAC 3D. Two-
noded, linear elements represent the behavior of beams, cables and piles. Three-noded, flat trian-
gular elements represent shells, liners and geogrids. Structural elements are used to simulate the
interaction of structural support within a soil or rock mass. Nonlinear material behavior can be
represented with the elements.
Each structural element entity (beam, cable, pile, shell, liner and geogrid) is composed of three
components: nodes; individual elements (called SELs); and node/grid links. The characteristics
of each of these components distinguishes the behavior of the beam, cable, pile, shell, liner and
geogrid entities.
STEP — Because FLAC 3D is an explicit code, the solution to a problem requires a number of com-
putational steps. During computational stepping, the information associated with the phenomenon
under investigation is propagated across the zones in the finite difference grid. A certain number
of steps is required to arrive at an equilibrium (or steady-flow) state for a static solution. Typical
problems are solved within 2000 to 4000 steps, although large complex problems can require tens
of thousands of steps to reach a steady state. When using the dynamic analysis option, STEP refers
to the actual timestep for the dynamic problem. Other terms for step are timestep and cycle.

FLAC 3D Version 3.0


GETTING STARTED 2 - 25

STATIC SOLUTION — A static or steady-state solution is reached in FLAC 3D when the rate of
change of kinetic energy in a model approaches a negligible value. This is accomplished by damping
the equations of motion. At the conclusion of the static solution stage, the model will be either at a
state of equilibrium or at a state of steady flow of material if a portion (or all) of the model is unstable
(i.e., fails) under the applied loading conditions. This is the default calculation in FLAC 3D .* Static
mechanical solutions can be coupled to transient groundwater flow or heat transfer solutions. (As
an option, fully dynamic analysis can also be performed by inhibiting the static solution damping.)
UNBALANCED FORCE — The unbalanced force indicates when a mechanical equilibrium state
(or the onset of plastic flow) is reached for a static analysis. A model is in exact equilibrium if the
net nodal-force vector at each gridpoint is zero. The maximum nodal-force vector is monitored in
FLAC 3D and printed to the screen when the STEP or SOLVE command is invoked. The maximum
nodal force vector is also called the unbalanced or out-of-balance force. The maximum unbalanced
force will never exactly reach zero for a numerical analysis, but the model is considered to be in
equilibrium when the maximum unbalanced force is small compared to the total applied forces in
the problem. If the unbalanced force approaches a constant nonzero value, this probably indicates
that failure and plastic flow are occurring within the model.
DYNAMIC SOLUTION — For a dynamic solution, the full dynamic equations of motion (including
inertial terms) are solved; the generation and dissipation of kinetic energy directly affect the solution.
Dynamic solutions are required for problems involving high frequency and short duration loads
(e.g., seismic or explosive loading). The dynamic calculation is an optional module to FLAC 3D (see
Section 3 in Optional Features).
LARGE STRAIN/SMALL STRAIN — By default, FLAC 3D operates in small-strain mode: that
is, gridpoint coordinates are not changed even if computed displacements are large (compared to
typical zone sizes). In large-strain mode, gridpoint coordinates are updated at each step according
to computed displacements. In large-strain mode, geometric nonlinearity is possible.

* The mistaken notion exists in some finite element (FE) literature that a dynamic solution method
cannot produce a true equilibrium state, compared to an FE solution, which is believed to satisfy
perfectly the set of governing equations at equilibrium. In fact, both methods only satisfy the
equations approximately, but the level of residual errors can be made as small as desired. In
FLAC 3D, the level of error is objectively quantified as the ratio of unbalanced force at a gridpoint to
the mean of the set of absolute forces acting at the gridpoint. This measure of error is very similar
to the convergence criteria used in FE solutions. In both cases, the solution process is terminated
when the error is below a desired value.

FLAC 3D Version 3.0


2 - 26 User’s Guide

2.4 The Finite Difference Grid

The finite difference grid spans the physical domain being analyzed. The smallest possible grid
that can be analyzed with FLAC 3D consists of only one zone. Most problems, however, are defined
by grids that consist of hundreds or thousands of zones.
The FLAC 3D grid is specified in terms of global x-, y- and z-coordinates. All gridpoints and zone
centroids are located by their (x,y,z) position vector. A simple cubic grid is shown in Figure 2.8.
Each gridpoint and zone are also identified by an identification number (ID). The ID number and
global coordinates for gridpoints can be found by typing
print gp position

and the zone ID numbers and global coordinates of their centroids can be found by typing
print zone

Grid generation with FLAC 3D involves adjusting and shaping the mesh to fit the shape of the physical
domain. The generation process is performed via the GENERATE command; the recommended
procedure for grid generation is discussed in Section 3.3.

FLAC3D 3.00
Settings: Model Perspective
09:54:49 Fri Feb 04 2005

Center: Rotation:
X: 5.000e+000 X: 20.000
Y: 5.000e+000 Y: 0.000
Z: 5.000e+000 Z: 30.000
Dist: 4.703e+001 Mag.: 1.1
Ang.: 22.500

Surface
Magfac = 0.000e+000
Axes
Linestyle

Y
X

Itasca Consulting Group, Inc.


Minneapolis, MN USA

Figure 2.8 Finite difference grid with 1000 zones

FLAC 3D Version 3.0


GETTING STARTED 2 - 27

2.5 Command Syntax

All input commands* to FLAC 3D are word-oriented and consist of a primary command word fol-
lowed by one or more keywords and values, as required. Some commands accept switches — that
is, keywords that modify the action of the command. Each command has the following format:
COMMAND keyword value . . . <keyword value . . . > . . .
Here, optional parameters are denoted by < >, while the ellipses ( . . . ) indicate that an arbitrary
number of such parameters may be given. The commands are typed literally on the command line.
You will note that only the first few letters are in bold type. The program requires these letters, at a
minimum, to be typed to recognize the command; command input is not case-sensitive. The entire
word for commands and keywords may be entered if the user so desires.
Many of the keywords are followed by a series of values which provide the numeric input required
by the keyword. The decimal point may be omitted from a real value, but may not appear in an
integer value.
Commands, keywords and numeric values may be separated by any number of spaces or by any of
the following delimiters:
( ) , =
A semicolon ( ; ) may be used to precede comments; anything that follows a semicolon in an input
line is ignored. It is useful, and strongly recommended, to include comments in data files. Not only
is the input documented in this way, the comments are echoed to the output as well, providing the
opportunity for quality assurance in your analysis.
A single input line, including comments, may contain up to 80 characters.
If more than 80 characters are required to describe a particular command sequence, then an amper-
sand (&) can be given at the end of an input line to denote that the next line will be a continuation
of that line. A total of 1024 characters per command sequence are allowed.
Please note that the typographical conventions listed in Table 2.2 are used throughout this manual.

* The commands and their meanings are presented in Section 1 in the Command Reference; a
summary is given in Section 1 in the Command and FISH Reference Summary.

FLAC 3D Version 3.0


2 - 28 User’s Guide

Table 2.2 Typographical conventions


Type style Used for
BOLD FLAC 3D commands and FISH statements
bold FLAC 3D keywords and FISH internal variables and functions
bold user-defined FISH variables and functions
Initial Caps menu items and buttons with the hot-keys underlined
var place-holders for variables
Press Me
button with the hot-key underlined
<A > type the key between < > (here, <A>) on the keyboard
<Shift-A> hold down the first key while pressing the second
(here, <Shift> and the <A> key)

FLAC 3D Version 3.0


GETTING STARTED 2 - 29

2.6 Named Objects

FLAC 3D gives the user the power to create, name and use objects. For example, if a number of
plot views are created, they can be given descriptive names like “TopView” or “Velocity Vectors.”
In Example 2.2, we created a new plot view, naming it “Trench” in the process. Parts of a model
can be given names such as “Excavate 1,” which can identify a volume to be removed during an
excavation sequence. While the code can certainly be run without using names for objects, the
entire process of modeling and reporting can be eased considerably by using these facilities. This
section gives some ideas of how named objects can be used, and illustrates the differences between
the types of objects in FLAC 3D.
There are two categories of named objects: first, macro objects, which are interpreted before
being seen by FLAC 3D’s command processor; and second, model objects, which are interpreted
by FLAC 3D’s command processor. Any command that is entered by the user is first passed to
the command pre-processor, where objects belonging in the first category are expanded. The pre-
processor creates a string that is then sent to the command interpreter, which directs the actions
to be performed by the code. It is at this point that objects belonging in the second category are
interpreted. Note that the names of macro and model objects are case-sensitive.

2.6.1 Macro Object

The MACRO command allows the user to create macro objects that will be expanded by the command
pre-processor. Typically, such an object contains a long, complex string that may be used repeatedly
in the model. The pre-processor compares a string of command tokens to the list of defined
macros and replaces any matching macro object with its fully expanded contents. The process
continues, including the examination of the expanded tokens, until the entire string has been checked.
Example 2.4 shows how macros could be used. Note the use of nested macros.

Example 2.4 Using macros


macro Pt0 ’p0 0 0 0’
macro Pt1 ’p1 add 10 0 0’
macro Pt2 ’p2 add 0 10 0’
macro Pt3 ’p3 add 0 0 10’
macro Model_Size ’size 4 5 6’
macro Big_Brick ’zone brick Pt0 Pt1 Pt2 Pt3 Model_Size’
.
gen Big_Brick
.
macro ’Pt0’ ’p0 15 15 15’
gen Big_Brick
.

When redefining a macro, as in the last use of the MACRO command in Example 2.4, we have to
put single quotes around the macro name (as shown). Otherwise, the pre-processor would expand

FLAC 3D Version 3.0


2 - 30 User’s Guide

the name since it has already been defined — not quite the result we intended. The pre-processor
skips over quoted strings, leaving them to the command interpreter.
This pre-processing has two effects:
(1) macro objects may be nested (but not recursively); and
(2) the macro object name is removed from the command string.
The implication of this second effect is that if a macro object has the same name as a model object
or a code command, that object or command will never be seen by the command interpreter. While
the user may elect to do something like this, it is generally inadvisable.
There is a special macro object, the ampersand (&), which indicates a line continuation. In many
cases, a single command with all its keywords and data will not fit on one input line. Exam-
ple 2.5 demonstrates how command lines could be broken. The command pre-processor locates
any ampersands, concatenates the strings on either side, and passes one long string to the command
interpreter. The maximum length of such an expanded string is 1024 characters.*

Example 2.5 Using line continuations


gen zone brick p0 0 0 0 &
p1 10 0 0 &
p2 0 10 0 &
p3 0 0 10 &
size 4 5 6

Macros cannot contain multi-line arguments. If an ampersand (&) character is used in a macro,
the command pre-processor will tag the line as having a continuation when that macro is used.
Anything on the line following the macro use will be taken as part of the current command. This
could cause difficulty and should be avoided. If you find you need multiple lines, write a FISH
function.

2.6.2 Model Object

Model objects, such as ranges in space, groups of zones in a model, or plot views, can be given user-
defined names. Those objects can then be referred to by their names, wherever the identification
of such objects is needed by the code, and are processed directly by the code when their names
are used. A routine use of the GROUP command would be to identify (i.e., name) parts of the grid
which are to be excavated at some stage in the modeling process. The null constitutive model can
then simply be applied to the zones identified by that group name. Execute Example 2.6 for a
demonstration of this.

* If this proves to be restrictive, the length of this string may be increased in later versions of FLAC 3D.

FLAC 3D Version 3.0


GETTING STARTED 2 - 31

Example 2.6 Using a named model object


gen zone brick size 6 6 6
group Tunnel range x 1 5 y 0 6 z 1 5
model mohr
.
.
model nul range group Tunnel
.

The named range and the named group are two very different model objects. The range pertains to
a specified volume of space (or range of values), whereas the group identifies a collection of finite
difference zones in the model. For example (and since geo-engineering involves digging holes),
the planet Earth can be viewed as a range (RANGE Earth . . . ) in space within which we can place
a structure (GROUP Shaft . . . ) which would be a group in our model. It does not matter where
in the range named Earth the group Shaft is placed; the range retains its geometric attributes. In
Example 2.7,* below, we have created a simple 2-layered geology with ranges named “Layer1” and
“Layer2.” We have created two macros, “Sand” and “Clay,” which define our soil properties. Our
model contains two groups: “Tunnel,” for the group which will be excavated at some point; and
“Matrix,” which represents the rest of the model around the tunnel. The macros are used to clearly
identify the type of soil we are assigning to our stratigraphy, while the intersections of our groups
with the stratigraphy ensure that the appropriate zones take on the appropriate properties. Do not
worry about the details of the commands used here; they will all be covered later in this section and
in Section 3. The commands related to naming objects are in boldface for easy identification.

Example 2.7 Illustrating the behavior of RANGE, GROUP and MACRO model objects
; generate the model geometry
gen zone radc &
dim 3 3 3 3 &
ratio 1 1 1 1.2 &
size 3 8 8 5 &
edge 10 &
p0 100 95 100 &
fill
gen zone reflect dip 90 dd 90 ori 100 100 100
gen zone reflect dip 0 dd 0 ori 100 100 100
;
; naming fixed GROUPS within the model, which will stay
; with the model as the model is moved through space
; - made to represent physical model components here...

* The file “NAMES.DAT” contains a version of Example 2.7 that will create plot views to allow the
user to see the development of this model.

FLAC 3D Version 3.0


2 - 32 User’s Guide

group Tunnel range cylinder end1 100 105 100 end2 100 95 100 radius 3
group Matrix range group Tunnel not
;
; naming RANGES that are fixed in space and unrelated
; to the model geometry - represents stratigraphy...
; (this is a two-layer system split on a horizontal plane
; through the origin)
range name Layer1 plane dip 0 dd 0 ori 0 0 0 above
range name Layer2 plane dip 0 dd 0 ori 0 0 0 below
;
; using MACROS to create soil types as defined by their
; material properties - this is completely independent of
; their location in space...
macro Sand ’bulk 1e8 shear 0.5e8 coh 0 tens 0 fric 35’
macro Clay ’bulk 1e7 shear 0.3e7 coh 1e7 tens 0 fric 0’
;
; bring the model to the axes origin...
; (change these coordinates if you want to see the grid positioned
; elsewhere within the region - remember the model is 10*10*10m)
ini x add -100 y add -100 z add -100
;
; we specify material models according to GROUP...
mo null range group Tunnel
mo mohr range group Matrix
;
; ... and soil properties (via the MACRO names) to whatever parts
; of the model coincide with our stratigraphy (defined with RANGE)...
prop Sand range Layer1
prop Clay range Layer2

2.6.3 General Advice

The user is encouraged to view objects as entities that can be used (nouns), rather than entities that
do something (verbs). For example, as shown in Example 2.8 below, if the GENERATE command is
included in the macro definition of Big Brick, it would be quite likely that Big Brick would be used
as a noun in one instance and a verb in another.

Example 2.8 Using macros


macro Pt0 ’p0 0 0 0’
macro Pt1 ’p1 add 10 0 0’
macro Pt2 ’p2 add 0 10 0’
macro Pt3 ’p3 add 0 0 10’
macro Model_Size ’size 4 5 6’

FLAC 3D Version 3.0


GETTING STARTED 2 - 33

macro Big_Brick ’gen zone brick Pt0 Pt1 Pt2 Pt3 Model_Size’
;
Big_Brick
.
.
macro ’Pt0’ ’p0 15 15 15’
gen Big_Brick ; this will cause an error
.

New commands (i.e., verbs) can be created with macros. For example, the PLOT add sequence can
be replaced by the shorter sequence PA — see Example 2.9, below. Note that we have not mixed
any nouns into this definition.

Example 2.9 Creating new commands


macro PA ’plot add’
.
.
PA history 1 ...
.

Mixing uppercase and lowercase in object names will prevent the accidental use of FLAC 3D com-
mands or keywords. Remember that macro names take precedence over range names and com-
mands.
It is possible to use a range, a group or a macro object to achieve the same result. Example 2.10
shows how each of these could be used in identifying a part of a model to which a property value
is assigned.

Example 2.10 Using different object types to do the same job


using a RANGE object ...
range name Big_Brick x = (-3,3) y = (-2,2) z = (-1,1)
model null range Big_Brick

using a GROUP object ...


group Big_Brick range x = (-3,3) y = (-2,2) z = (-1,1)
model null range group Big_Brick

using a macro object ...


macro Big_Brick ’x = (-3,3) y = (-2,2) z = (-1,1)’
model null range Big_Brick

FLAC 3D Version 3.0


2 - 34 User’s Guide

Notice that the GROUP command uses a range keyword in the creation of the group object called
“Big Brick.” The only difference between the RANGE command and the range keyword is that the
command can be issued on a line of its own, allowing the user to create a number of range objects
directly. Otherwise, a range can be used as a part of a command and named all at the same time.
Example 2.11 illustrates the different techniques. All this is aimed at providing powerful, flexible
tools for model construction.

Example 2.11 Creating named ranges


naming as a RANGE command ...
range name Big_Brick x -3 3 y -2 2 z -1 1
model elastic range Big_Brick
prop bulk 1e8 shear 1e8 range Big_Brick

using the first RANGE keyword to name the object ...


model elastic range name Big_Brick x -3 3 y -2 2 z -1 1
prop bulk 1e8 shear 1e8 range Big_Brick

Named ranges are particularly useful in plotting. Named groups should be used when a specific
collection of zones needs to be addressed, whether or not they manage to remain at their original
coordinates throughout the modeling process. Think of components of the model as groups, and
the space they occupy as ranges.

FLAC 3D Version 3.0


GETTING STARTED 2 - 35

2.7 Mechanics of Using FLAC 3D

FLAC 3D is based upon a command-driven format because most analyses require the use of data input
files. Word commands control the operation of the program. Graphical controls are available where
user-interaction is potentially more desirable, specifically in the plotting. This section provides an
introduction to the basic commands a new user needs to perform simple FLAC 3D calculations. If you
have not done so already, run the tutorial problem in Section 2.2 for an example of a command-driven
analysis with FLAC 3D.
The tutorial problem — a trench excavated in a soil with low cohesion — is used here to demonstrate
the general solution procedure. The procedure can be divided into distinct stages, as illustrated in
Figure 2.9. Each stage is discussed separately. Example commands are provided to illustrate each
analysis step.
In order to set up a model to run a simulation with FLAC 3D, three fundamental components of a
problem must be specified:
(1) a finite difference grid;
(2) constitutive behavior and material properties; and
(3) boundary and initial conditions.
The grid defines the geometry of the problem. The constitutive behavior and associated material
properties dictate the type of response the model will display upon disturbance (e.g., deformational
response due to excavation). Boundary and initial conditions define the in-situ state (i.e., the
condition before a change or disturbance in the problem state is introduced).
After these conditions are defined in FLAC 3D, the initial equilibrium state is calculated for the
model. An alteration is then made (e.g., excavate material or change boundary conditions), and
the resulting response of the model is calculated. The actual solution of the problem is different
for an explicit finite difference program like FLAC 3D than it is for conventional implicit-solution
programs. (See the background discussion in Section 1 in Theory and Background.) FLAC 3D
uses an explicit time-marching method to solve the algebraic equations. The solution is reached
after a series of computational steps. In FLAC 3D, the number of steps required to reach a solution
can be controlled automatically by the code or manually by the user. However, the user ultimately
must determine if the number of steps is sufficient to reach the solved state. The way this is done
will be covered later in Section 2.7.4.
The general solution procedure, illustrated in Figure 2.9, is convenient because it represents the
sequence of processes that occurs in the physical environment. The basic FLAC 3D commands
needed to perform simple analyses with this solution procedure are described below.

FLAC 3D Version 3.0


2 - 36 User’s Guide

Start

MODEL SETUP
1. Generate grid, deform to desired shape
2. Define constitutive behavior and material properties
3. Specify boundary and initial conditions

Step to equilibrium state

Examine
the model response
Results unsatisfactory

Model makes sense

PERFORM ALTERATIONS
for example,
● Excavate material
● Change boundary conditions

Step to solution

More tests Examine


needed the model response

Acceptable result

Yes Parameter
study needed

No

End

Figure 2.9 General solution procedure

FLAC 3D Version 3.0


GETTING STARTED 2 - 37

2.7.1 Simple Grid Generation

Grid generation is performed via the GENERATE command and associated keywords that both define
the number of zones in a model and shape the grid to fit a specified problem region.
Several primitive shapes are built into the generator to expedite mesh generation for simple problem
shapes. These include brick, wedge, pyramid and cylinder shapes. Example 2.12 illustrates the
command used in the tutorial problem to create a brick-shaped grid containing six zones in the
x-direction, eight zones in the y-direction, and eight zones in the z-direction.*

Example 2.12 Generating a simple brick element


gen zone brick size 6,8,8
plot surf

The number of zones is specified by the size keyword. Be careful when selecting the number of
zones for a model, because a balance must be struck between the accuracy required and the solution
speed. Although there are many aspects of the numerical model that affect the calculation speed,
once the basic parameters are defined, the speed varies directly as a function of the number of
elements. As a rule-of-thumb, models containing up to roughly 5000 elements will typically reach
a solution state for a given alteration in approximately 2000 to 4000 steps. On a 1 GHz Pentium
computer, the runtime for a 5000 element model to perform 4000 steps is roughly 5 minutes. Check
the speed of calculation on your computer for the specific model, to estimate the runtime required.
It is best to start with a grid that has few zones (say, 1000 to 1500) to perform simple test runs and
make refinements to the grid. Then, increase the number of zones to improve the accuracy.
In its simplest form, the GENERATE command can supply new coordinates to a grid. For example,
assume that the actual coordinates of the trench model run from -10.0 to 10.0 in the x-direction,
-10.0 to 10.0 in the y-direction, and -20.0 to 0.0 in the (vertical) z-direction. Example 2.3 shows
how this would be specified.

* If you want to try entering the command examples interactively, type NEW each time you start a
new example. This will initialize FLAC 3D without having to exit and reload the program for a new
model. Enter the PLOT mode after typing each example to view the result.

FLAC 3D Version 3.0


2 - 38 User’s Guide

Example 2.13 Using actual coordinates


gen zone brick size 6,8,8 p0 -10, -10, -20 &
p1 10, -10, -20 &
p2 -10, 10, -20 &
p3 -10, -10, 0
plot surf

In Example 2.13, p0, p1, p2 and p3 are keywords that denote four of the corners of a standard
FLAC 3D mesh (see Figure 2.10). You will notice that an ampersand (&) is given at the end of
the first line of the GEN command. This denotes that the next line is a continuation of the same
command.

p5 p7

p6 p2
p3 p4

p0 p1

Figure 2.10 Corner coordinate keywords for a standard FLAC 3D mesh shape

Only four corners are required to define a parallelepiped-shaped mesh. More corners can be specified
to define an irregular surface. Example 2.14 shows how to make a sloping surface at the top of the
mesh.

FLAC 3D Version 3.0


GETTING STARTED 2 - 39

Example 2.14 A sloping surface at the top of a mesh


gen zone brick size 6,8,8 p0 -10, -10, -20 &
p1 10, -10, -20 p2 -10, 10, -20 &
p3 -10, -10, 0 p4 10, 10, -20 &
p5 -10, 10, 10 p6 10, -10, 0 &
p7 10, 10, 10
plot surf

The coordinates corresponding to the keywords p0, p1, p2, p3, p4, p5, p6 and p7 can be located
at arbitrary points in space. However, the eight corners must have the topological sense shown in
Figure 2.10 (i.e., p0, p1, p2, p3 must form a right-handed system) to create positive zone volumes.
Non-coplanar faces are permitted, but they should be avoided if possible because a small volume
error may be introduced.
In the tutorial example, we noted that the boundaries of the model were influencing the results (see
Figure 2.6). The boundary must be placed far enough away from the excavation to reduce these
effects. A gradually graded mesh can be created in FLAC 3D to move the model boundaries farther
out without significantly increasing the number of zones. For example, the command GEN zone
radbrick creates a radially graded mesh around a brick-shaped mesh. The command in Example 2.15
creates a 3 × 5 × 5 zone brick-shaped mesh surrounded by a 7-zone radially graded mesh.

Example 2.15 Combining a regular and a radially graded mesh


gen zone radbrick &
p0 (0,0,0) p1 (10,0,0) p2 (0,10,0) p3 (0,0,10) &
size 3,5,5,7 &
ratio 1,1,1,1.5 &
dim 1 4 2 fill
plot surf

The x,y,z coordinate system in FLAC 3D is always right-handed and, as a default, the z-axis is drawn
in the vertical direction on the screen. In Example 2.14 we assumed the z-axis was pointing in the
vertical direction. However, we do not have to interpret the z-axis to mean the up direction. For
Example 2.15, we will assume that the y-axis is the vertical direction. As long as we define the
model in a right-handed system, we can create the grid in any direction we desire.
The size keyword, as used in Example 2.15, specifies the number of zones in the brick and the
number radially surrounding the brick (see Figure 2.11). The keyword ratio is given to manipulate
the grid spacing. The four values that follow ratio are geometric ratios between successive zone
sizes. The first three values are ratios for the zones in the brick, and the fourth value is the ratio
for the zones surrounding the brick. In Example 2.15 above, the ratio is 1.0 for the brick zones and
1.5 for the zones surrounding the brick. This causes each successive ring of zones surrounding the
brick to be 1.5 times larger in the radial direction. The dim keyword defines the dimensions of the

FLAC 3D Version 3.0


2 - 40 User’s Guide

brick region (i.e., 1 m × 4 m × 2 m). The fill keyword fills the brick region with zones. If fill is
omitted, no zones will be generated within the brick region.

p5 p7

p6
p3

p2
n4 p4

n3
n2

p0 n1 p1

Figure 2.11 Element numbering for a radially graded mesh around brick (size
n1 n2 n3 n4)

Several GENERATE commands can be given to create different regions of a model. For example,
the GENERATE command in Example 2.15 creates one-quarter of the trench model. Example 2.16
shows how a series of GENERATE commands can be given to create the entire model.

Example 2.16 Combining GEN commands


gen zone radbrick &
p0 (0,0,0) p1 (10,0,0) p2 (0,10,0) p3 (0,0,10) &
size 3 5 5 7 &
rat 1 1 1 1.5 &
dim 1 4 2 fill
gen zone radbrick &
p0 (0,0,0) p1 (0,0,10) p2 (0,10,0) p3 (-10,0,0) &
size 5 5 3 7 &
rat 1 1 1 1.5 &
dim 2 4 1 fill
gen zone radbrick &
p0 (0,0,0) p1 (-10,0,0) p2 (0,10,0) p3 (0,0,-10) &
size 3 5 5 7 &

FLAC 3D Version 3.0


GETTING STARTED 2 - 41

rat 1 1 1 1.5 &


dim 1 4 2 fill
gen zone radbrick &
p0 (0,0,0) p1 (0,0,-10) p2 (0,10,0) p3 (10,0,0) &
size 5 5 3 7 &
rat 1 1 1 1.5 &
dim 2 4 1 fill
plot surf lblue

Notice that size, ratio and dim all refer to local axes as defined by p0, p1, p2, p3 in Figure 2.11, not
to the global x,y,z-axes. The values will change, depending on the specification of p0, p1, p2 and
p3. The radially graded trench model is shown in Figure 2.12. Be careful that all gridpoints match
at boundaries between shapes. Errors will occur in your analysis if gridpoints of connected shapes
are not at the same locations along boundaries. Refer to Section 3 for further discussion on the
creation of meshes and the proximity tolerances of adjacent gridpoints.

FLAC3D 3.00
Settings: Model Perspective
10:46:14 Fri Feb 04 2005

Center: Rotation:
X: 0.000e+000 X: 300.000
Y: 5.000e+000 Y: 340.000
Z: 0.000e+000 Z: 0.000
Dist: 8.448e+001 Mag.: 1.1
Ang.: 22.500

Surface
Magfac = 0.000e+000

Itasca Consulting Group, Inc.


Minneapolis, MN USA

Figure 2.12 Radially graded trench model

Example 2.16 serves to illustrate the requirement of accurate mapping of adjacent elements in
FLAC 3D. There are other ways to achieve the same result shown in Figure 2.12 — since we can
take advantage of planes of symmetry. Parts of the model can be reflected about specified planes
to produce a larger model. Example 2.17 shows how this can be achieved.

FLAC 3D Version 3.0


2 - 42 User’s Guide

Example 2.17 Creating a model by reflecting elements on planes of symmetry


gen zone radbrick &
p0 (0,0,0) p1 (10,0,0) p2 (0,10,0) p3 (0,0,10) &
size 3,5,5,7 &
ratio 1,1,1,1.5 &
dim 1 4 2 fill
gen zone reflect dip 0 dd 90
gen zone reflect dip 90 dd 90
plot surf

When selecting a value for the geometric ratio, there are a number of criteria that should be con-
sidered.
• Finer meshes lead to more accurate results in that they provide a better representation of
high stress gradients.
• Accuracy increases as zone aspect ratios tend to unity.
• If different zone sizes are needed, a more gradual change from the smallest to the largest
will improve the results; abrupt changes in zone size should be avoided.
However, as the mesh is made finer and the number of zones increase, more RAM is required,
and the computation time lengthens. Improving the mesh geometry by adjusting the zone size
will certainly improve RAM efficiency and will reduce computation time. It will also take some
time to plan and set up. Moving from a “brute force” approach (i.e., single-sized elements in a
large uniform mesh) to a more elegant solution will improve RAM use and calculation speed when
dealing with a more complicated geometry. Methods to assist with grid generation are discussed in
Section 3.3.

2.7.2 Assigning Material Models

Once the grid generation is complete, one or more material models and associated properties must
be assigned to all zones in the model. This is done by using two commands: MODEL and PROPERTY.
FLAC 3D has twelve built-in material models (described in Section 2.1 in Theory and Background).
Three models are sufficient for most analyses the new user will make: MODEL null; MODEL elastic;
and MODEL mohr.
MODEL null represents material which is removed or excavated from the model. MODEL elastic
assigns isotropic elastic material behavior. MODEL mohr assigns Mohr-Coulomb plasticity behavior.
MODEL elastic and MODEL mohr require that material properties be assigned via the PROPERTY
command. For the elastic model, the required properties are bulk and shear modulus.
NOTE: Bulk modulus, K, and shear modulus, G, are related to Young’s modulus, E, and Poisson’s
ratio, ν, by the following equations.

FLAC 3D Version 3.0


GETTING STARTED 2 - 43

E
K = (2.1)
3(1 − 2ν)
E
G = (2.2)
2(1 + ν)

or

9KG
E = (2.3)
3K + G
3K − 2G
ν = (2.4)
2(3K + G)

For the Mohr-Coulomb plasticity model, the required properties are:


(1) bulk and shear moduli;
(2) friction and dilation angles;
(3) cohesion; and
(4) tensile strength.
If any of these properties are not assigned, their values are set to zero by default.
Zones may be assigned different material models. For example, an elastic model may be prescribed
for the upper half of a 10 m × 10 m × 10 m grid, and a Mohr-Coulomb model for the lower half
of the grid. Example 2.18 shows how this is done using range coordinates. Incidentally, note the
use of the MACRO command in labeling soil types. The range keyword and parameters could have
been included within the macro. However, keeping the properties and geometry separate makes
good sense; we can use the same macros to apply those material properties anywhere in our model.
We will be discussing similar naming strategies related to the geometry shortly.

FLAC 3D Version 3.0


2 - 44 User’s Guide

Example 2.18 Assigning different material models in different areas of a single grid
gen zone brick size 10,10,10
macro SiltySand ’bulk 1.5e8 shear 0.3e8’
macro ClayeyGravel ’ bulk 1.5e8 shear 0.6e8 fric 30 coh 5e6 ten 8.66e6’
; elastic in upper half of grid
model elas range z=5,10
prop SiltySand range z=5,10
; mohr-coulomb in lower half
model mohr range z=0,5
prop ClayeyGravel range z=0,5
plot block model lmagenta lgreen

Instead of using global coordinates with each range keyword, a range can be defined and named with
the RANGE command. The named range can then be used as a parameter for the range keyword.
This is demonstrated in Example 2.19, where we first identify and name a range with the RANGE
command, followed by the use of that named range in applying a material model.

Example 2.19 Creating and using a named range


gen zone radbrick &
p0 (0,0,0) p1 (10,0,0) p2 (0,10,0) p3 (0,0,10) &
size 3,5,5,7 &
ratio 1,1,1,1.5 &
dim 1 4 2 fill
gen zone reflect dip 0 dd 90
gen zone reflect dip 90 dd 90
;
; identify the trench
range name trench x=-1,1 y=0,4 z=-2,2
;
; excavate the trench
model null range trench
plot surf lblue

The trench excavation for the model shown in Figure 2.12 is plotted in Figure 2.13. Note that the
excavation can be filled by material of any constitutive model, with properties appropriate to the
model.

FLAC 3D Version 3.0


GETTING STARTED 2 - 45

FLAC3D 3.00
Settings: Model Perspective
10:47:04 Fri Feb 04 2005

Center: Rotation:
X: 0.000e+000 X: 300.000
Y: 5.000e+000 Y: 340.000
Z: 0.000e+000 Z: 0.000
Dist: 8.448e+001 Mag.: 1.1
Ang.: 22.500

Surface
Magfac = 0.000e+000

Itasca Consulting Group, Inc.


Minneapolis, MN USA

Figure 2.13 Radially graded trench model with trench excavated

2.7.3 Applying Boundary and Initial Conditions

After the grid is generated, boundary and initial conditions are applied. Boundary conditions are
normally specified with the APPLY and FIX/FREE commands, and initial conditions are assigned with
the INITIAL command. Table 2.3 provides a summary of common boundary-condition commands
and their effects. Table 2.4 provides a similar table for initial condition commands.
The boundary conditions in a numerical model consist of the values of field variables that are pre-
scribed at the boundary of the numerical grid. Note that, by using a boundary condition command,
a condition or constraint that will not change while FLAC 3D is calculating a solution (unless specifi-
cally changed by the user) is imposed. Boundaries can be either real or artificial — real boundaries
exist in the physical object being modeled, whereas artificial boundaries are introduced to enclose
the chosen number of zones.
Artificial boundaries fall into two categories: planes of symmetry and planes of truncation. A
symmetry plane takes advantage of the fact that the geometry and loading in a system are symmetrical
about one or more planes. A truncation plane is a boundary sufficiently far from the area of interest
that the behavior in that area is not greatly affected. It is important to know how far away to place
these boundaries and what errors they might precipitate in the stresses and displacements computed
for the area of interest.

FLAC 3D Version 3.0


2 - 46 User’s Guide

Table 2.3 Summary of common boundary-condition commands


COMMAND EFFECT

Gridpoint Condition:

APPLY xforce x -component of force applied at boundary gridpoints


xvelocity x -velocity applied at boundary gridpoints
yforce y -component of force applied at boundary gridpoints
yvelocity y -velocity applied at boundary gridpoints
zforce z-component of force applied at boundary gridpoints
zvelocity z-velocity applied at boundary gridpoints

Face Condition:

sxx xx -component of total stress tensor applied at boundary faces


sxy xy -component of total stress tensor applied at boundary faces
sxz xz-component of total stress tensor applied at boundary faces
syy yy -component of total stress tensor applied at boundary faces
syz yz-component of total stress tensor applied at boundary faces
szz zz-component of total stress tensor applied at boundary faces
FIX x x -velocity fixed at boundary gridpoints
y y -velocity fixed at boundary gridpoints
z z-velocity fixed at boundary gridpoints

NOTE:
1. The FREE command is used to release the constraint set by the FIX command.
2. In order to assign a fixed-displacement boundary condition, only the FIX x, FIX
y and/or FIX z commands are needed, provided that the velocity at the selected
gridpoint is zero.
3. See Section 1 in the Command Reference for a complete listing of APPLY
keywords.
4. Compressive stresses have a negative sign; see Section 2.8 for sign conventions.

FLAC 3D Version 3.0


GETTING STARTED 2 - 47

Table 2.4 Summary of common initial condition commands


COMMAND EFFECT

Gridpoint Condition:

INITIAL xdis initialize x -displacement at a gridpoint


xvel initialize x -velocity at a gridpoint
ydis initialize y -displacement at a gridpoint
yvel initialize y -velocity at a gridpoint
zdis initialize z-displacement at a gridpoint
zvel initialize z-velocity at a gridpoint

Zone Condition:

density initialize mass density for a zone


sxx initialize xx -component of total stress for a zone
sxy initialize xy -component of total stress for a zone
sxz initialize xz-component of total stress for a zone
syy initialize yy -component of total stress for a zone
syz initialize yz-component of total stress for a zone
szz initialize zz-component of total stress for a zone

By default, the boundaries in FLAC 3D are free of stress and are unconstrained. Forces or stresses
may be applied to any boundary, or portion of a boundary, by means of the APPLY command.
Individual components of the stress tensor are specified by the keywords listed in Table 2.3. For
example, a constant, compressive xx-stress component of 10 MPa can be applied to a boundary
located at x = 10 with the command
apply sxx -10e6 range x 9.9 10.1

Remember that compressive stresses are negative. The range keyword is used at the end of the
command line to specify the range of action for the APPLY command. In this case, the boundary
condition applies to any boundary faces that fall between x = 9.9 and 10.1.
A linearly varying yy-stress component can be applied with the gradient keyword — for example,
apply syy = -20e6 grad 0,0,20e5 range y -20.1,-19.9 z 0,10

With this command, a yy-stress component is applied to boundary faces located between y = -20.1
and -19.9. The yy-stress varies linearly with z from σyy = 0 at z = 10 to σyy = -20 × 106 at z = 0.

FLAC 3D Version 3.0


2 - 48 User’s Guide

When gradient is used, a value varies according to the relation

S = S (o) + gx x + gy y + gz z (2.5)

in which S (o) is the value at the global coordinate origin at (x = 0, y = 0, z = 0) and is the value
immediately following the syy keyword, and gx , gy and gz specify the variation of the value in the
x-, y- and z-directions and are the three numbers following the gradient keyword.
Displacements cannot be controlled directly in FLAC 3D. In fact, they play no part in the calculation
process. In order to apply a given displacement to a boundary, it is necessary to prescribe the
boundary’s velocity for a given number of steps. If the desired displacement is D, a velocity V
over N steps (where N = D/V) may be applied.* In practice, V should be kept small and N large,
in order to minimize shocks to the system being modeled. The APPLY command or the FIX and
INITIAL commands can be used to specify the velocities; gradients may also be specified.
The following command shows the use of the FIX command to fix the x-displacement to zero along
a boundary located at x = 0:
fix x range x -0.1 0.1

This, in effect, creates a roller boundary at which the boundary plane is fixed in the x-direction,
but free to move in the y- and z-directions. Only the FIX command is needed if the model is at
the start-up state and velocities are (by default) zero. Otherwise, it would be necessary to either
initialize velocities with the INITIAL command or use the APPLY command.
A pinned boundary condition (i.e., constrained in the x-, y- and z-directions) can be specified with
the command
fix x y z range x -0.1 0.1

For real boundaries, the choice of stress or displacement boundary conditions is usually clear. How-
ever, for artificial boundaries, such as planes of truncation, either type may be selected. Experience
has shown that, generally,
(1) a fixed boundary causes both stresses and displacements to be underestimated;
(2) a stress boundary causes both stresses and displacements to be overestimated; and
(3) the two types of boundary conditions bracket the true solution, so that it is possible to do
tests with both boundaries and get a reasonable estimate of the true solution by averaging
the two results.
Unlike the boundary condition commands, the initial condition commands assign initial values to
selected variables; these can change while the computation proceeds. For example, in geological

* Note that velocity has units of displacement per timestep for the static solution mode, and displace-
ment per unit time for the dynamic mode.

FLAC 3D Version 3.0


GETTING STARTED 2 - 49

materials, there is an in-situ state of stress in the ground before any excavation or construction is
started. By setting the initial conditions in a FLAC 3D grid, an attempt is made to reproduce this
in-situ state because it will influence the subsequent behavior of the model. (This influence is
discussed in more detail in Section 3.3.)
To prescribe an initial stress state, we use the INITIAL command — e.g.,
ini sxx -50e6 syy -40e6 szz -10e6

This assigns initial compressive stress components of


σxx = -50e6
σyy = -40e6
σzz = -10e6
to all zones in the model. All six stress components can be initialized, and a stress gradient can be
specified in the same manner as discussed above for boundary stresses.
If the initial stress state is subjected to gravitational loading, this may be added via the SET gravity
command — e.g.,
set gravity = 0, -9.81, 0

in which a gravitational acceleration vector of 9.81 m/sec2 is applied in the negative y-direction.
If gravitational loading is specified, the material mass density must also be initialized with the
command INI density.
Let us now apply the information we have covered thus far to revise the trench model presented in
Section 2.2. We can identify two planes of symmetry for this problem: one is the xy-plane; and the
other is the yz-plane through the center of the trench (see Figure 2.12). The following commands
(in Example 2.20) create the quarter-symmetry model, assign a Mohr-Coulomb material model and
properties, prescribe boundary conditions, and apply the initial stress state with gravity acting in
the positive y-direction. The model is shown in Figure 2.14.
In this example, σxx and σzz stresses and gradients are equal to half the σyy stresses and gradients.
Stresses may be initialized to any value, but you must check the stress state to ensure that it does not
violate the yield criterion (Mohr-Coulomb, in this case). The initial equilibrium state is discussed
further in the next section.

Example 2.20 Trench problem — quarter-symmetry model


gen zone radbrick &
p0 (0,0,0) p1 (10,0,0) p2 (0,10,0) p3 (0,0,10) &
size 3,5,5,7 &
ratio 1,1,1,1.5 &
dim 1 4 2 fill
mod moh
prop bulk 1e8 shear 3e8 fric 35 coh 1e3 tens 1e3
fix x range x -0.1 0.1

FLAC 3D Version 3.0


2 - 50 User’s Guide

fix z range z -0.1 0.1


fix y range y 9.9 10.1
set grav 0 10 0
ini dens 1000
ini syy 0.0 grad 0 -10000 0
ini sxx 0.0 grad 0 -5000 0
ini szz 0.0 grad 0 -5000 0
apply sxx 0.0 grad 0 -5000 0 range x 9.9 10.1
apply szz 0.0 grad 0 -5000 0 range z 9.9 10.1

FLAC3D 3.00
Settings: Model Perspective
10:50:35 Fri Feb 04 2005

Center: Rotation:
X: 5.000e+000 X: 290.000
Y: 5.000e+000 Y: 330.000
Z: 5.000e+000 Z: 0.000
Dist: 5.125e+001 Mag.: 1.2
Ang.: 22.500

Surface
Magfac = 0.000e+000

Itasca Consulting Group, Inc.


Minneapolis, MN USA

Figure 2.14 Quarter-symmetry model of trench excavation

2.7.4 Stepping to Initial Equilibrium

The FLAC 3D model must be at an initial force-equilibrium state before alterations can be performed.
For simple model geometries, the boundary conditions and initial conditions may be assigned such
that the model is exactly at equilibrium initially. However, in most cases, it is necessary to step the
model to the initial equilibrium state under the given boundary and initial conditions, particularly
for problems with complex geometries or multiple materials. This is done using either the STEP
or SOLVE command. With the STEP command, the user specifies a number of calculation steps
to perform in order to bring the model to equilibrium. The model is in perfect equilibrium when
the net nodal-force vector at each gridpoint is zero (see Section 1 in Theory and Background).
The maximum nodal-force vector (called the maximum “out-of-balance” or “unbalanced” force) is

FLAC 3D Version 3.0


GETTING STARTED 2 - 51

monitored in FLAC 3D and printed to the screen when the STEP command is invoked. In this way,
the user can assess when equilibrium has been reached.
For a numerical analysis, the out-of-balance force will never reach exactly zero. It is sufficient,
though, to say the model is in equilibrium when the maximum unbalanced force is small compared
to the representative zone forces in the problem. For example, if the maximum unbalanced force is
initially 1 MN and drops to approximately 100 N, then the model can be considered at equilibrium,
within 0.01% of the initial maximum unbalanced force.
This is an important aspect of numerical problem-solving with FLAC 3D. The user must decide when
the model has reached equilibrium. There are several features built into FLAC 3D to assist with this
decision. The history of the maximum unbalanced force may be recorded with the following
command:
hist unbal

Additionally, the history of selected variables (e.g., velocity or displacement at a gridpoint) may be
recorded. The following commands are examples:
hist gp xvel 5,4,4
hist gp zdisp 0,0,8

This first history records x-velocity at location (x = 5, y = 4, z = 4), while the second records
z-displacement at location (x = 0, y = 0, z = 8).
After running several hundred (or thousand) calculation steps, a history of these records may be
plotted to indicate the equilibrium condition. The data file in Example 2.21 illustrates this process.

Example 2.21 Stepping to initial equilibrium


gen zone brick size 6 8 8
mo elas
prop bulk 1e8 shear 0.3e8
fix x range x -0.1 0.1
fix x range x 5.9 6.1
fix y range y -0.1 0.1
fix y range y 7.9 8.1
fix z range z -0.1 0.1
apply szz -1e6 range z 7.9 8.1
hist unbal
hist gp xvel 3 4 4
hist gp zdisp 0 0 8
step 1500
; solve

The initial maximum unbalanced force is 1 MN. After 1500 steps, this force has dropped to ap-
proximately 270 N. By plotting the first history, it can be seen that the maximum unbalanced force
is approaching zero. The following command produces the plot in Figure 2.15.

FLAC 3D Version 3.0


2 - 52 User’s Guide

plot hist 1

The velocity also approaches zero, and the displacement history becomes constant; both are in-
dicators that an equilibrium state is reached. The x-velocity history plot in Figure 2.16 and z-
displacement history plot in Figure 2.17 are produced with the commands
plot hist 2
plot hist 3

x10^5
FLAC3D 3.00
Step 1500
17:00:12 Thu Feb 03 2005
9.0
History
1 Max. Unbalanced Force
Linestyle
2.576e+002 <-> 9.973e+005
Vs. 8.0
Step
1.000e+001 <-> 1.500e+003

7.0

6.0

5.0

4.0

3.0

2.0

1.0

0.2 0.4 0.6 0.8 1.0 1.2 1.4


Itasca Consulting Group, Inc. x10^3
Minneapolis, MN USA

Figure 2.15 Maximum unbalanced force history

FLAC 3D Version 3.0


GETTING STARTED 2 - 53

x10^-7
FLAC3D 3.00 0.8
Step 1500
17:05:36 Thu Feb 03 2005
0.6
History
2 X-Velocity Gp 284
Linestyle 0.4
-1.854e-007 <-> 8.141e-008
Vs.
Step 0.2
1.000e+001 <-> 1.500e+003

0.0

-0.2

-0.4

-0.6

-0.8

-1.0

-1.2

-1.4

-1.6

-1.8

0.2 0.4 0.6 0.8 1.0 1.2 1.4


Itasca Consulting Group, Inc. x10^3
Minneapolis, MN USA

Figure 2.16 x-velocity history at (x = 3, y = 4, z = 4)

x10^-2
FLAC3D 3.00
Step 1500
17:04:46 Thu Feb 03 2005

-1.5
History
3 Z-Displacement Gp 505
Linestyle
-5.712e-002 <-> -1.038e-002
Vs. -2.0
Step
1.000e+001 <-> 1.500e+003

-2.5

-3.0

-3.5

-4.0

-4.5

-5.0

-5.5

0.2 0.4 0.6 0.8 1.0 1.2 1.4


Itasca Consulting Group, Inc. x10^3
Minneapolis, MN USA

Figure 2.17 z-displacement history at (x = 0, y = 0, z = 8)

FLAC 3D Version 3.0


2 - 54 User’s Guide

The SOLVE command can be used in place of STEP if the user wishes FLAC 3D to stop automatically
when the maximum unbalanced force falls below a specified limit. Replace STEP 1500 with SOLVE
and repeat the above problem. This time, FLAC 3D should stop the calculation at step 1650. If the
plots are made again, essentially the same results as given in Figures 2.15, 2.16 and 2.17 will be
seen.
By default, a force-limit ratio controls the stepping when SOLVE is issued. When the ratio of
the maximum unbalanced force for all the gridpoints in the model divided by the average applied
gridpoint force falls below the value of 1.0 ×10−5 , then the calculation will stop. The ratio can be
changed by typing
set mech ratio = f

before giving the SOLVE command. Here f is a user-supplied value for the force-limit ratio.
For Example 2.21, the initial equilibrium stage can be achieved without stepping by simply inserting
an INITIAL command:
ini sxx=-1e6 syy=-1e6 szz=-1e6

Now, the unbalanced force is nearly zero.* Type SOLVE to confirm this. Note that, in this case, the
initial displacements in the model are automatically zero.
If we return to the trench problem, the model described by the data file (Example 2.20) should be
at a stress equilibrium state. After entering the data file, type
step 1

and you will find that the unbalanced force is approximately 7000 N. This is small relative to the
maximum gravitational force for this problem (approximately 2.7 × 105 N). There is some force
unbalance, however, because of the graded mesh. If the zones were all of equal size, the unbalanced
force would be nearly zero. However, with graded meshes, it is usually necessary to perform some
stepping to bring the model to an initial equilibrium state. Type
solve

and Example 2.20 will step to equilibrium, at an unbalanced force ratio limit of 1 ×10−5 , within
1040 steps.
In an analysis, it is very important that the model be at equilibrium before alterations are made.
Several histories should be recorded throughout a model to ensure that a large force imbalance does
not exist. It does not affect the analysis adversely if more steps than needed to reach equilibrium
are taken. However, it will affect the analysis if an insufficient number of steps is taken.
A FLAC 3D calculation can be interrupted at any time during stepping by pressing the <Esc> key.
It often is convenient to use the STEP command with a high step-number and periodically interrupt
the stepping, check the histories, and resume stepping until the equilibrium condition is reached.

* The force is not exactly zero because of the difference between single- and double-precision cal-
culations made in the code.

FLAC 3D Version 3.0


GETTING STARTED 2 - 55

2.7.5 Performing Alterations

FLAC 3D allows model conditions to be changed at any point in the solution process. These changes
may take the following forms:
• excavation of material;
• addition or deletion of gridpoint loads or stresses;
• change of material model or properties for any zone; and
• fix or free velocities for any gridpoint.
Excavation is performed with the MODEL null command. Gridpoint loads can be applied at any
gridpoint with the APPLY xforce, APPLY yforce and APPLY zforce commands. Stress alterations can
be made at model boundaries with the APPLY command, as discussed previously. Material models
and properties* are changed with the MODEL and PROPERTY commands. Gridpoint velocities are
fixed or freed via the FIX/FREE commands. It should be evident that several commands can be
repeated to perform various model alterations.
If model zones contain a plasticity model (e.g., MODEL mohr), it is possible that an alteration may
be such that force equilibrium cannot be achieved. In other words, the unbalanced forces in part
or all of the model cannot approach zero — in which case, the maximum unbalanced force will
approach a constant nonzero value, indicating that steady-state flow of material is occurring (i.e., a
portion (or all) of the model is failing).
In our trench model, Example 2.20, we define and excavate the trench and monitor the response
with the commands in Example 2.22.

Example 2.22 Excavating the trench and monitoring the response


range name trench x=0,1 y=0,4 z=0,2
model null range trench
set large
hist gp xdisp 1,0,0
; ... and then calculate the response:
step 1000

The trench fails as indicated by the plot in Figure 2.18. The displacement history at the trench wall,
Figure 2.19, also indicates failure by a continuously increasing displacement.

* If moduli (bulk or shear) are changed in a model that is in equilibrium, no immediate effect will be
observed because FLAC 3D uses tangent, rather than secant, moduli.

FLAC 3D Version 3.0


2 - 56 User’s Guide

FLAC3D 3.00
Step 1000 Model Perspective
10:56:03 Fri Feb 04 2005

Center: Rotation:
X: 5.000e+000 X: 290.000
Y: 5.000e+000 Y: 330.000
Z: 5.000e+000 Z: 0.000
Dist: 5.125e+001 Mag.: 1.2
Ang.: 22.500

Contour of Displacement Mag.


Magfac = 1.000e+000
0.0000e+000 to 1.0000e-003 Z X
1.0000e-003 to 2.0000e-003
2.0000e-003 to 3.0000e-003
3.0000e-003 to 4.0000e-003
4.0000e-003 to 5.0000e-003
5.0000e-003 to 6.0000e-003
6.0000e-003 to 6.4571e-003
Interval = 1.0e-003
Y
Axes
Linestyle

Itasca Consulting Group, Inc.


Minneapolis, MN USA

Figure 2.18 Displacement contours for trench excavation

x10^-3
FLAC3D 3.00
Step 1000
10:56:57 Fri Feb 04 2005
-0.2
History
1 X-Displacement Gp 193
Linestyle -0.4
-2.596e-003 <-> -2.171e-006
Vs.
Step -0.6
1.000e+001 <-> 1.000e+003

-0.8

-1.0

-1.2

-1.4

-1.6

-1.8

-2.0

-2.2

-2.4

0.2 0.4 0.6 0.8


Itasca Consulting Group, Inc. x10^3
Minneapolis, MN USA

Figure 2.19 Displacement history at trench wall

FLAC 3D Version 3.0


GETTING STARTED 2 - 57

2.7.6 Saving/Restoring the Problem State

Two other commands, SAVE and RESTORE, are helpful when performing analyses in stages (also
available under the File menu). At the end of one stage (e.g., initial equilibrium), the model state
can be saved (as a binary file) by typing
save file.sav
in which file is a user-specified filename. The (default) extension “.SAV” identifies this file as a
saved file (see Section 2.11). This file can be restored at a later time by typing
rest file.sav

and the model state at the point at which the model was saved will be restored. It is not necessary to
build a model from scratch every time a change is made; merely save the model before the change,
and restore it whenever a new change is to be analyzed.
For example, in our trench problem, we will excavate the trench in 2 m deep stages and save the state
at each stage, beginning with the initial equilibrium stage (“TR EQ.SAV”). We can then determine
the stage at which the trench fails and investigate the influence of support (e.g., tiebacks or soil
nails) on stabilizing the trench.
We repeat the data file given in Example 2.20, but this time we insert save files at the equilibrium
stage and at each excavation stage.

Example 2.23 Trench problem — excavation in stages and support


;---------------------------------------------------------------------
; Trench Problem
; Excavation in Stages and Support
;---------------------------------------------------------------------

gen zone radbrick &


p0 (0,0,0) p1 (10,0,0) p2 (0,10,0) p3 (0,0,10) &
size 3 5 5 7 &
rat 1 1 1 1.5 &
dim 1 4 2 fill
model mohr
prop bulk 1e8 shear .3e8 fric 35
prop coh 1e3 tens 1e3
fix x range x -0.1 0.1
fix z range z -0.1 0.1
fix y range y 9.9 10.1
set grav 0 10 0
ini dens 1000
ini syy=0.0 grad 0,-10000,0
ini sxx=0.0 grad 0,-5000,0
ini szz=0.0 grad 0,-5000,0

FLAC 3D Version 3.0


2 - 58 User’s Guide

apply sxx=0.0 grad 0,-5000,0 range x 9.9,10.1


apply szz=0.0 grad 0,-5000,0 range z 9.9,10.1
set large
hist unbal
solve
save tr_eq.sav
;
; monitor trench excavation
ini xdis=0 ydis=0 zdis=0
hist gp xdisp 1,0,0
hist gp zdisp 0,0,2
;
; excavation steps
range name exc1 x 0 1 y 0.0 0.8 z 0 2
range name exc2 x 0 1 y 0.8 1.6 z 0 2
range name exc3 x 0 1 y 1.6 2.4 z 0 2
range name exc4 x 0 1 y 2.4 3.2 z 0 2
range name exc5 x 0 1 y 3.2 4.0 z 0 2
; excavation step 1
model null range exc1
step 1000
save exc1.sav
; excavation step 2
model null range exc2
step 1000
save exc2.sav
; excavation step 3
model null range exc3
step 1000
save exc3.sav
; excavation step 4
model null range exc4
step 1000
save exc4.sav
; excavation step 5
model null range exc5
step 1000
save exc5.sav
;
; install cable support
rest exc2.sav
sel cable beg 1.0,0.4,1.5 end 5.0,0.4,1.5 nseg 4
sel cable beg 1.0,0.4,0.5 end 5.0,0.4,0.5 nseg 4
sel cable beg 1.0,1.2,1.5 end 5.0,1.2,1.5 nseg 4
sel cable beg 1.0,1.2,0.5 end 5.0,1.2,0.5 nseg 4
sel cable prop emod 2e9 ytens 1e8 xcarea 1.0 &

FLAC 3D Version 3.0


GETTING STARTED 2 - 59

gr_coh 1e10 gr_k 2e9 gr_per 1.0


model null range exc3
step 1000
save cab3.sav
sel cable beg 1.0,2.0,1.5 end 5.0,2.0,1.5 nseg 4
sel cable beg 1.0,2.0,0.5 end 5.0,2.0,0.5 nseg 4
model null range exc4
step 1000
save cab4.sav
sel cable beg 1.0,2.8,1.5 end 5.0,2.8,1.5 nseg 4
sel cable beg 1.0,2.8,0.5 end 5.0,2.8,0.5 nseg 4
model null range exc5
step 1000
save cab5.sav
plot create TrenchSupport
plot set rot 290,350,0
plot set cent 2.579,3.855,6.1
plot set mag 1.56
plot set dist 32.65
plot add cont disp out on
plot add sel cable force
plot show
ret

Upon running this example, we find that the trench fails at the third excavation stage (see the x- and
z-displacement history plot in Figure 2.20). We restart the save file at the second excavation stage
(“EXC2.SAV”), install cables and then proceed with the excavation. (See the SEL cable command
in Section 1 in the Command Reference.) This time, the trench walls are stable (see Figure 2.21).
The forces in the cables and displacements of the trench are shown in Figure 2.22.
By using save files, we can perform series of different calculations, starting from whatever stage
we desire, and investigate various problem conditions, such as spacing and properties of cable
elements.

FLAC 3D Version 3.0


2 - 60 User’s Guide

x10^-3
FLAC3D 3.00
Step 3956
11:08:50 Fri Feb 04 2005

History
2 X-Displacement Gp 193 -1.0
Linestyle
-7.429e-003 <-> -1.617e-006
3 Z-Displacement Gp 1
Linestyle
-9.845e-004 <-> -3.292e-006
-2.0
Vs.
Step
9.600e+002 <-> 3.950e+003

-3.0

-4.0

-5.0

-6.0

-7.0

-8.0
1.0 2.0 3.0
Itasca Consulting Group, Inc. x10^3
Minneapolis, MN USA

Figure 2.20 Displacement histories indicating failure at the third excavation


stage

x10^-3
FLAC3D 3.00
Step 5956
11:10:12 Fri Feb 04 2005

History
2 X-Displacement Gp 193 -1.0
Linestyle
-9.648e-004 <-> -1.617e-006
3 Z-Displacement Gp 1
Linestyle
-2.961e-004 <-> -3.292e-006
-2.0
Vs.
Step
9.600e+002 <-> 5.950e+003

-3.0

-4.0

-5.0

-6.0

-7.0

-8.0
1.0 2.0 3.0 4.0 5.0
Itasca Consulting Group, Inc. x10^3
Minneapolis, MN USA

Figure 2.21 Displacement histories indicating trench is stable with cable sup-
port

FLAC 3D Version 3.0


GETTING STARTED 2 - 61

FLAC3D 3.00
Step 5956 Model Perspective
11:01:23 Fri Feb 04 2005

Center: Rotation:
X: 2.947e+000 X: 290.000
Y: 4.272e+000 Y: 350.000
Z: 5.631e+000 Z: 0.000
Dist: 4.409e+001 Mag.: 2.15
Ang.: 22.500

Contour of Displacement Mag.


Magfac = 1.000e+000
1.5284e-005 to 2.0000e-004
2.0000e-004 to 4.0000e-004
4.0000e-004 to 6.0000e-004
6.0000e-004 to 8.0000e-004
8.0000e-004 to 1.0000e-003
1.0000e-003 to 1.2000e-003
1.2000e-003 to 1.4000e-003
1.4000e-003 to 1.4500e-003
Interval = 2.0e-004
cable Axial Force
Magfac = 1.000e+000
tension
compression

Maximum = 8.872e+003

Itasca Consulting Group, Inc.


Minneapolis, MN USA

Figure 2.22 Forces in cables and displacement contours around trench exca-
vation

2.7.7 Summary of Commands for Simple Analysis

The major command words described in Section 2.7 are summarized in Table 2.5. This table also
illustrates the recommended command sequence for creating and running a model. These commands
are all that are needed to begin performing simple analyses with FLAC 3D. Start by running simple
tests with these commands (e.g., uniaxial and confined compression tests or simple excavation-
stability analyses). It may be helpful to review the detailed description of these commands in
Section 1 in the Command Reference. Then try adding more complexity to the model. Before
attempting very detailed simulations, we recommend that you read Section 3.3, which provides
guidance on problem solving in general.

FLAC 3D Version 3.0


2 - 62 User’s Guide

Table 2.5 Basic commands for simple analyses


FUNCTION COMMAND
Grid generator GEN
Material model and properties MODEL
PROPERTY
Boundary/initial conditions APPLY
FIX
INITIAL
(with gravity) SET gravity
Initial equilibrium STEP
SOLVE
Perform alterations MODEL
PROPERTY
APPLY
FIX
FREE
(with support) SEL cable
Save/restore problem state SAVE
RESTORE

FLAC 3D Version 3.0


GETTING STARTED 2 - 63

2.8 Sign Conventions

The following sign conventions are used in FLAC 3D, and must be kept in mind when entering input
or evaluating results.

DIRECT STRESS — Positive stresses indicate tension; negative stresses indicate compression.

SHEAR STRESS — With reference to Figure 2.23, a positive shear-stress points in the positive
direction of the coordinate axis of the second subscript if it acts on a surface with an outward
normal in the positive direction. Conversely, if the outward normal of the surface is in the negative
direction, then the positive shear-stress points in the negative direction of the coordinate axis of
the second subscript. The shear stresses shown in Figure 2.23 are all positive. The stress tensor is
symmetric — i.e., complementary shear stresses are equal.

σzz

σzx σzy

σxy σxx σyz


σyx
σyy σyx σxz σyy
σxz
σxy
σyz
y
σxx

σzx
σzy
σzz

Figure 2.23 Sign convention for positive stress-components

DIRECT STRAIN — Positive strain indicates extension; negative strain indicates compression.

SHEAR STRAIN — Shear strain follows the convention of shear stress (see above).

PRESSURE — A positive pressure will act normal to, and in a direction toward, the surface of a
body (i.e., push). A negative pressure will act normal to, and in a direction away from, the surface
of a body (i.e., pull). Figure 2.24 illustrates this convention.

FLAC 3D Version 3.0


2 - 64 User’s Guide

a b

Figure 2.24 Mechanical pressure: (a) positive; (b) negative

PORE PRESSURE — Fluid pore pressure is positive in compression. Negative pore pressure
indicates fluid tension.
DIP, DIP DIRECTION — Dip and dip direction assume that the x-direction corresponds to “East,”
y-direction to “North,” and z-direction to “Up.” The dip angle is measured in the negative z-
direction from the global xy-plane. The dip direction angle is measured in the global xy-plane,
clockwise from the positive y-axis. The x-, y- and z-components of vector quantities, such as
forces, displacements and velocities, are positive when pointing in the directions of the positive x-,
y- and z-coordinate space.

FLAC 3D Version 3.0


GETTING STARTED 2 - 65

2.9 Systems of Units

FLAC 3D accepts any consistent set of engineering units. Examples of consistent sets of units for
basic parameters are shown in Tables 2.6 and 2.7. The user should apply great care when converting
from one system of units to another. An excellent reference on the subject of units and conversion
between the Imperial and SI systems can be found in the Journal of Petroleum Technology (December
1977). No conversions except for friction and dilation angles, which are entered in degrees, are
performed in FLAC 3D.
Table 2.6 Systems of units — mechanical parameters
SI Imperial

Length m m m cm ft in
Density kg/m3 103 kg/m3 106 kg/m3 106 g/cm3 slugs/ft3 snails/in3
Force N kN MN Mdynes lbf lbf
Stress Pa kPa MPa bar lbf /ft2 psi
Gravity m/sec2 m/sec2 m/sec2 cm/s2 ft/sec2 in/sec2

where 1 bar = 106 dynes/cm2 = 105 N/m2 = 105 Pa;


1 atm = 1.013 bars = 14.7 psi = 2116 lbf /ft2 = 1.01325 × 105 Pa;
1 slug = 1 lbf - s2 /ft = 14.59 kg;
1 snail = 1 lbf -s2 /in; and
1 gravity = 9.81 m/s2 = 981 cm/s2 = 32.17 ft/s2 .

Table 2.7 Systems of units — groundwater flow parameters


SI Imperial
Water Bulk Modulus Pa bar lbf/ft2 psi
Water Density kg/m3 106 g/cm3 slugs/ft3 snails/in3
Permeability m3 sec/kg 10−6 cm sec/g ft3 sec/slug in3 sec/snail
Intrinsic Permeability m2 cm2 ft2 in2
Hydraulic Conductivity m/sec cm/sec ft/sec in/sec

NOTE: FLAC 3D permeability ≡ intrinsic permeability (in cm2 ) × 9.9 × 10−2


(in SI units) ≡ hydraulic conductivity (in cm/sec) × 1.02 × 10−6
FLAC 3D permeability is the mobility coefficient (coefficient of pore pressure
term in Darcy’s law).
Systems of units for parameters associated with structural elements and heat transfer are given in
Section 1 in Structural Elements and Section 1 in Optional Features, respectively.

FLAC 3D Version 3.0


2 - 66 User’s Guide

2.10 Precision Limits

When selecting a system of units, care should be taken to avoid calculations that approach the preci-
sion limits of the computer hardware. For 80386/387-based computers, the range is approximately
10−300 to 10300 in double-precision. If numbers exceed these limits, it is likely that the program
will crash or, at least, produce artifacts in the model that may be difficult to identify or detect.

FLAC 3D Version 3.0


GETTING STARTED 2 - 67

2.11 Files

There are six types of files that are either used or created by FLAC 3D. The files are distinguished
by their extensions and are described below.

INITIALIZATION FILE
“FLAC3D.INI” — This is a formatted ASCII file, created by the user, that FLAC 3D will auto-
matically access upon start-up or when a NEW command is issued. FLAC 3D searches for the file
“FLAC3D.INI” in the directory in which the code is executed and, if not found, in the directory
pointed to by the ITASCA environment variable. The file may contain any valid FLAC 3D com-
mand(s) (see Section 1 in the Command Reference). Although this file does not need to exist (i.e.,
no errors will result if it is absent), it is normally used to change default options in FLAC 3D to those
preferred by the individual user each time a new analysis is run (see Section 2.1.7).

DATA FILES
The user has a choice of running FLAC 3D interactively (i.e., entering FLAC 3D commands while in
the FLAC 3D environment) or via a data file (also called a “batch file”). The data file is a formatted
ASCII file created by the user which contains the set of FLAC 3D commands that represents the
problem being analyzed. In general, creating data files is the most efficient way to use FLAC 3D.
To use data files with FLAC 3D, see the CALL command in Section 1 in the Command Reference.
Data files can have any filename and any extension. It is recommended that a common extension
(e.g., “.DAT” for FLAC 3D input commands, and “.FIS” for FISH function statements) be used to
distinguish these files from other types of files.

SAVE FILES
“FLAC3D.SAV” — This file is created by FLAC 3D at the user’s request when issuing the command
SAVE. The default file name is “FLAC3D.SAV,” which will appear in the default directory when
quitting FLAC 3D. The user may specify a different file name by issuing the command SAVE filename,
where filename is a user-specified file name. “FLAC3D.SAV” is a binary file containing the values
of all state variables and user-defined conditions. The primary reason for creating save files is
to allow one to investigate the effect of parameter variations without having to rerun a problem
completely. A save file can be restored and the analysis continued at a subsequent time (see the
RESTORE command in Section 1 in the Command Reference). Normally, it is good practice to
create several save files during a FLAC 3D run.

LOG FILES
“FLAC3D.LOG” — This file is created by FLAC 3D at the user’s request when issuing the command
SET log on. It is a formatted ASCII file. The default name of the file is “FLAC3D.LOG,” which
will appear in the default directory after quitting FLAC 3D. The user may specify a different file
name by issuing the command SET logfile filename, where filename is a user-supplied file name.
The command may be issued interactively or be part of a data file. Subsequent to the SET log on
command, all text appearing on the screen will be copied to the log file. The log file is useful in

FLAC 3D Version 3.0


2 - 68 User’s Guide

providing a record of the FLAC 3D work session; it also provides a document for quality-assurance
purposes.

HISTORY FILES
“FLAC3D.HIS” — This file is created by FLAC 3D at the user’s request when issuing the command
HISTORY write n, where n is a history number (see the HISTORY command, Section 1 in the Com-
mand Reference). It is a formatted ASCII file. The default name of the file is “FLAC3D.HIS,”
which will appear in the default directory after quitting FLAC 3D. The user may specify a different
file name by issuing the keyword phrase file myfile.his at the end of the HISTORY write command.
The command may be issued interactively or be part of a data file. A record of the history values is
written to the file, which can be examined using any text editor that can access formatted ASCII files.
Alternatively, the file may be processed by a commercial graph-plotting or spreadsheet package.

PLOT FILES
Plot files are created at the user’s request by issuing the command PLOT hardcopy in the command
mode, or by pressing the File Print menu item from the main FLAC 3D window. In both cases,
a plot will be directed to the current Windows printer. The user may specify a plot file-name by
giving the command SET output myfile.ps, where “MYFILE.PS” is a user-specified filename. Other
graphics output options are described in Section 2.1.4.

MOVIE FILES
DCX Movie — This file is created by FLAC 3D at the user’s request when issuing the commands
SET movie dcx and MOVIE. Its purpose is to capture graphics images for playback as a movie using
the movie utility supplied with the Itasca software product (“MOVIE.EXE,” located in “c:\Program
Files\Itasca\Shared\Utility). The default file name is “FLAC3D.DCX,” which will appear in the
default directory when quitting FLAC 3D. The user may specify a different file name by issuing the
command SET movie file filename, where filename takes the place of “FLAC3D.DCX.” A DCX file
format is used for the movie file when SET movie dcx is specified. DCX files are a collection of
PCX files and include an index to the PCX files. A DCX file can contain up to 1024 PCX images.
See the MOVIE and SET movie commands in Section 1 in the Command Reference.
AVI Movie — This file is created by FLAC 3D at the user’s request when issuing the commands SET
movie avi and MOVIE. Its purpose is to capture graphics images for playback as a movie using the
standard Windows Media Player. The default file name is “FLAC3D.AVI,” which will appear in
the default directory when quitting FLAC 3D. The user may specify a different file name by issuing
the command SET movie file filename, where filename takes the place of “FLAC3D.AVI.” The AVI
file format is used for the movie file when SET movie avi is specified. See the MOVIE and SET movie
commands in Section 1 in the Command Reference.

FISH I/O FILES


A user-written FISH function may create, write and read files (see Section 2.7.2 in the FISH
volume) of two forms. If the binary form is selected, the exact binary representation of a FISH

FLAC 3D Version 3.0


GETTING STARTED 2 - 69

variable is stored on file. If the ASCII form is selected, numeric or character data may be written,
or read from, a file. The latter form is a useful way to process ASCII data in a non-standard way
on file.

FLAC 3D Version 3.0


2 - 70 User’s Guide

2.12 Introducing the FLAC 3D Graphical User Interface

This section is intended to provide a brief introduction to the use of the FLAC 3D Graphical User
Interface, or GUI. The primary use of the GUI at this time is in accessing the powerful plotting
functions in FLAC 3D, and in file handling. The GUI allows the user to switch directly from keyboard
(command-line) control to mouse control of FLAC 3D. It is assumed that a mouse is attached to the
computer, and that both the hardware and software components of the mouse are working correctly.
When FLAC 3D is loaded, the main FLAC 3D window will appear (Figure 2.25). The code name
and current version number are printed in the title bar at the top of the window, and a menu bar
is positioned just below the title bar. A bar with the Flac3D> prompt is in a command line
window located at the bottom of the main window; any FLAC 3D commands can be entered here.
The command window echoes all the input to, and output from, FLAC 3D. Moving the mouse
should result in the cursor moving around the main window; various components should become
highlighted as the mouse pointer moves over them and the mouse button is clicked.

FLAC3D program title bar — FLAC3D program window


drag to move window main menu bar maximize
minimize close

resize elements — flashing cursor command line


all borders and indicates text entry
corners are active point

Figure 2.25 The FLAC 3D main window

FLAC 3D Version 3.0


GETTING STARTED 2 - 71

The underlined letters on the menu items represent hot-keys — press <Alt-key> to activate a main
menu item. Once a main menu item is selected and its drop-down menu appears, as in Figure 2.26,
that drop-down menu has the keyboard focus. Pressing the hot-key for any item on the drop-down
menu on its own (i.e., without pressing <Alt>) will select that item. This is true for all the
drop-down menus. Pressing <Esc> clears the menu.

underscore indicates hot key main menu bar

ellipsis indicates a dialog box will follow on item selection

arrow indicates a drop down menu will follow on item selection

tick mark indicates currently selected option

“uppermost” panel is currently active

bars highlight new selection activity

flashing cursor indicates text entry point

Figure 2.26 The menu items

From the freshly started main window, try pressing


Alt-F
C

to get the dialog box enabling the selection of a data file. Single-clicks with the mouse on the File
and then the Call menu options will produce the same result. Your screen should display a dialog
box similar to that shown in Figure 2.27.

FLAC 3D Version 3.0


2 - 72 User’s Guide

current directory name displayed go up one create a new folder


selector is used to change directory directory level in this directory

show file details


(i.e., name, size, type)

current
directory
contents

currently
selected
file

pressing “Open”
will call the
currently selected
file to FLAC3D

extension selector — file name edit box


lists options for types
of files to show in the
current directory

Figure 2.27 The File / Call dialog box

Looking at the File / Call dialog box, we see a list box containing files and sub-directories within
the FLAC 3D directory. With the mouse, clicking on a list name will either open the sub-directory
or cause the file to be chosen for calling into FLAC 3D. For example, we wish to open the data
file “TRENCH1.DAT” that is located in the “\Tutorial\Beginner” directory. Double-click on the
“Tutorial” directory name in the list box, and then double-click on the “Beginner” directory name.
Pick the file “TRENCH1.DAT” from the list; then click on the Open button to process the data file.
Pressing <Esc> will remove the dialog box from the screen. The <Tab> key will move the cursor
between the edit fields.
The data file is opened and read, just as if we were entering the file with the CALL command. We
can view a plot of our model while the model itself is still under construction. As any change that
affects the current plot is made to the model, the plot is updated. Run the example and watch for
the prompts at the bottom of the screen. Figure 2.28 shows the results at one particular position in
the run.

FLAC 3D Version 3.0


GETTING STARTED 2 - 73

view name in the title bar

plot caption
drag divider to resize

main
window

plot
window

command
line window

flashing cursor indicates text entry point

Figure 2.28 A plot window

We are simply examining the construction sequence in our model to see that we have things working
in the right order. A tiny error during the copying of lines in the data-file creation has corrupted the
excavation sequence. To correct it, open the file “TRENCH1.DAT” in your favorite editor, change
the comment symbols as shown in Example 2.24 below, and save the edited file.

Example 2.24 Using comments during model testing


change this ...
model null range region Exc1 ;swap the comment marker at the
;model null range region Exc2 ;start of these two lines

to look like this ...


;model null range region Exc1 ;swap the comment marker at the
model null range region Exc2 ;start of these two lines

Call “TRENCH1.DAT” again to see whether the excavation now works.


Clicking the mouse button on a plot window will open the plot menu for that view. The plot menu
bar replaces the main menu bar below the title bar. Moving the mouse pointer over a selectable
button in the plot menu and clicking the mouse causes a drop-down menu to open. For example,
by clicking on Plotitems in the plot menu, a menu will open with options to add or modify plot
items on the active plot view.

FLAC 3D Version 3.0


2 - 74 User’s Guide

The interactive plotting control keys are available to a plot window that has focus. Try pressing the
<m> key — one of two things will happen: if the plot window has focus, the plot image will be
magnified; if the command window has focus, an “m” will appear on the command line. A mouse
click on an area will pull the focus to that area. Pressing <Enter> will shift the focus from a plot
window to the command window.
Any FLAC 3D command can be entered at the command line to modify the currently active plot.
Click on the command line to give it focus and type
plot modi 1 range group Soil not

followed by the <Enter> key. The current plot window is updated automatically every time a
command that affects the view contained in that plot window is issued.
The above modification can also be made from the plot menu by clicking on the Plotitems menu
item, then the 1Block Group menu item, and then the Modify menu item. This will open a Block
Group dialog box. To remove a block group from the plot, click on the EditRange button, and this
will open a Get Range dialog box. The soil group can be removed from the plot by clicking on the
Add
button, then by double-clicking on the Group range element, clicking the Soil group and finally
clicking the Not item. Click Ok twice to view the change.
Example 2.25 contains a complete listing of “TRENCH1.DAT” as used in this tutorial.

Example 2.25 The GUI tutorial file “TRENCH1.DAT”


;-----------------------------------------------
; FLAC3D tutorial - use of the GUI
;-----------------------------------------------
new
; create a general view of the model --------
; position the command window
mainwin pos 0.3 0.63 size 0.6 0.35
; create and position a plot window
plot create Trench
plot set back white
plot set dis 50
plot set rot 288 329 0
plot set center 5 5 5
plot set cap size 25
plot set window pos 0.19 0.02 size 0.62 0.61
plot add block group lcyan lred lgreen orange lmagenta white shade on
plot add vol yell yell yell
plot add axes black
plot show
;
; generate the mesh ------------
gen zone radbrick p0 (0,0,0) p1 (10,0,0) p2 (0,10,0) p3 (0,0,10) &

FLAC 3D Version 3.0


GETTING STARTED 2 - 75

size 4,10,6,7 ratio 1,1,1,1.5 dim 2 5 3 fill


pause key ; Create the model grid
gen sur brick ver 0 0 0 ver 1.5 0 0 ver 0 1.5 0 ver 0 0 2.5
; Define trench volumes
pause key ; This is trench volume 1
gen sur brick ver 0 1.5 0 ver 1.5 1.5 0 ver 0 3.0 0 ver 0 1.5 2.5
pause key ; This is trench volume 2
gen sur brick ver 0 3.0 0 ver 1.5 3.0 0 ver 0 4.5 0 ver 0 3.0 2.5
pause key ; This is trench volume 3
gen sur brick ver 0 4.5 0 ver 1.5 4.5 0 ver 0 5.0 0 ver 0 4.5 2.5
pause key ; This is trench volume 4
plot sub 2
group Soil lcyan
; Give the different groups of the model unique names
pause key ; The entire model group is named Soil
group Wall lred range x 0 2 y 0 5 z 0 3 &
vol 1 not vol 2 not vol 3 not vol 4 not
pause key ; A group around the trench is named Wall
group Floor lgreen range vol 4
pause key ; The bottom of the trench is named Floor
group Exc3 orange range vol 3
pause key ; The group of volume 3 zones is named Exc3
group Exc2 lmag range vol 2
pause key ; The group of volume 2 zones is named Exc2
group Exc1 white range vol 1
pause key ; The group of volume 1 zones is named Exc1
; Use MODEL NULL to excavate volumes
model null range group Exc1
pause key ; Excavate Volume 1
model null range group Exc1 ;swap the comment marker at the
;model null range group Exc2 ;start of these two lines
pause key ; Excavate Volume 2
model null range group Exc3
pause key ; Excavate Volume 3
model null range group Floor
pause key ; Excavate Floor
model mo range group Floor
;Place fill in Floor

FLAC 3D Version 3.0


2 - 76 User’s Guide

2.13 References

Journal of Petroleum Technology. “The SI Metric System of Units and SPE’s Tentative Metric
Standard,” pp. 1575-1616 (December 1977).

FLAC 3D Version 3.0

You might also like