2 Getting Started: Section 2.6

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

GETTING STARTED 2-1

2 GETTING STARTED

This section provides the first-time user with an introduction to 3DEC. If you are familiar with the
program but only use it occasionally, you may find this section (in particular, Section 2.6) helpful in
refreshing your memory on the mechanics of running 3DEC. Getting Started provides instructions
for program installation and start-up on your computer. It also outlines the recommended procedure
for applying 3DEC to problems in geoengineering, and includes simple examples that demonstrate
each step of this procedure. More complete information on problem solving is provided in Section 3.
3DEC is a command-driven code. This is an important distinction, especially if you are used to
using menu-driven software. As explained in Section 1.1, the command-driven structure allows
3DEC 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 3DEC, either
interactively via the keyboard or from a data file (which can be created using the built-in text editor),
in order for the code to operate. There are 90 main commands and over 400 command modifiers
(called keywords) that are recognized by 3DEC.
To the new user, it may seem an insurmountable task to wade through all of the commands to select
those necessary for a desired analysis. This difficulty is not as formidable as it first appears, if the
user recognizes that only a very few commands are actually needed to perform simple analyses. As
the user becomes more comfortable with 3DEC and uses the code regularly, more commands can
be applied and more complex analyses performed. In this section, we provide a primer on the few
basic commands the new (or occasional) user needs to perform simple 3DEC calculations. At any
time you can type ? at the 3DEC prompt to get a list of available commands or keywords. Also,
pressing <F1> in the text editor will show the manual page associated with the command at the
current line of text.
This section contains the following information.
1. A step-by-step procedure to install, load and test the operation of 3DEC on
your computer is given in Section 2.1.
2. This is followed by a tutorial example (Section 2.2) that demonstrates the use
of common input commands to execute a 3DEC model.
3. There is some information that you will need to have before creating and
running your own 3DEC model (i.e., you need to know the 3DEC terminology).
The nomenclature used for this program is described in Section 2.3.
4. The definition of a 3DEC finite-difference grid is given in Section 2.4.
5. You should also know the syntax for the 3DEC input language when running
in command-driven mode; an overview is provided in Section 2.5.
6. The mechanics of running a 3DEC model are described in separate steps;
in Section 2.6, each step is discussed separately and simple examples are
provided.

3DEC Version 5.2


2-2 User’s Guide

7. The sign conventions and systems of units used in the program appear in
Sections 2.7 and 2.8, respectively.
8. The different types of files used and created by 3DEC are described in Sec-
tion 2.9.

3DEC Version 5.2


GETTING STARTED 2-3

2.1 Installation and Start-up Procedures

2.1.1 System Requirements

To install and operate 3DEC, your computer must meet the following minimum requirements:
Processor – A processor with a minimum clock speed of 2 GHz is recommended. The speed of
calculation for a 3DEC model is directly related to the processor’s speed. Therefore, the selection
of a high-speed processor is a key factor for improving computational efficiency.
Hard Drive – At least 200 MB of hard disk space must be available to install 3DEC. Also, a
minimum of 100 MB disk space should be available for model save files.
RAM – The minimum amount of RAM required to load 3DEC is 100 MB.
Generally, the combined RAM needed by 3DEC and its model storage should leave 0.5 to 1 GB
available to Windows; otherwise, Windows starts swapping into virtual RAM (on disk) – this
swapping causes a dramatic performance loss in 3DEC. The more applications there are running
simultaneously, the smaller the 3DEC model should be.
Display – For best performance, a screen resolution of at least 1024 × 768 pixels and at least a
16-bit color palette are recommended.
Operating System – 3DEC is available as a 64-bit native Windows application. Itasca currently
supports Windows operating systems 7, 8 and 10.
Output Device – By default, plots from 3DEC are sent directly to the Windows native printer. Plots
can also be directed to bitmap formats (PNG or BMP), among other export options.
Operation on PC Networks – A network version of 3DEC is available. The network key allows
a single hardware dongle to be placed at a central location. Individual users can then run 3DEC
from any computer on the network. Network keys require a special licensing arrangement and
installation. Contact Itasca for details.

2.1.2 Installation of 3DEC

3DEC is installed from a USB flash drive and is designed specifically to operate on Microsoft
Windows systems (Windows 7, Windows 8 and Windows 10 are currently supported).
A default installation of 3DEC will install the program, its example files, and the complete 3DEC
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 USB flash drive. The installation program will guide you through
installation. The recommended method for uninstalling 3DEC is to use the Windows “Programs
and Features” applet ( START –> CONTROL PANEL –> UNINSTALL A PROGRAM ). Please note that references made

3DEC Version 5.2


2-4 User’s Guide

to files in the 3DEC manual presume the default directory structure; all data files described in the
manual are contained in these folders.
After installing the software, connect the 3DEC hardware key to the USB port on the computer
before using the code.

2.1.3 Components of 3DEC

The executable file for 3DEC is “3DEC dp520 gui 64.exe,” which is stored, by default, in the
directory “\ITASCA\3DEC520\exe64.” 3DEC is compiled with Microsoft Visual Studio 2010
and the Intel Fortran and C++ Version 12 compilers. In addition to the executable code, a set of
dynamic linked libraries (DLLs) is provided.

2.1.4 Utility Software and Graphics Devices

Several types of utility software and graphics devices that can be of great help while operating
3DEC are available.
Editors – A text editor is used to create 3DEC input data files, if you prefer not to use the built-in
editor. Any text editor that produces standard ASCII text files may be used. Be careful 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 3DEC and will cause an error. 3DEC input files must be in standard ASCII format.
Graphic Output – 3DEC supports several different types of graphics devices. By default, plots
generated with the PLOT hardcopy command (or via the File Print menu item from the main
3DEC window) will be directed to the default Windows printer.
Screen Capture – Graphics software can assist in the production/presentation of 3DEC results.
3DEC ’s MOVIE command allows graphics images to be stored and later displayed in series.

2.1.5 Memory Allocation

The total amount of memory that is available to 3DEC is only limited to the amount of memory in
the computer.
3DEC must be told how much memory to reserve when it is run. The default amount of memory
for 3DEC is 1 GB. The memory size is stored in the registry and 3DEC will always attempt to start
up with the amount of memory used the last time it was executed. If the amount of memory is more
than is available, the memory will be reduced.
There are three methods to tell 3DEC how much memory to use. The first method to control
memory allocation is through the Windows shortcut. The following command in the Target box in
the shortcut properties dialog will allocate 1000 MB of memory:
"C:\Program Files\Itasca\3dec500\exe64\3dec dp gui 64.exe" memory 1000

3DEC Version 5.2


GETTING STARTED 2-5

The second method is by 3DEC command:


CONFIG ARRAY 1000

The third method is using the configuration menu:


Tools->options->configuration->Main Array Size->1000

For a listing of the current amount of memory allocated and used by 3DEC, use the command
LIST MEMORY

Table 2.1 Maximum number of 3DEC blocks in available RAM


Available RAM Maximum number of Maximum number of
(MB) rigid blocks deformable blocks∗
1000 100,000 90,000
2000 200,000 180,000
3000 300,000 270,000
6000 600,000 540,000
* Assumes 24 translational degrees-of-freedom per block.
Maximum number of blocks will be reduced for more degrees-of-freedom.

2.1.6 Version Identification

The version number of 3DEC 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
3DEC; and
K is an integer that is incremented when minor modifications are officially re-
leased as an update to the current version.
In addition to the version number, sub-version numbers are also used to identify minor changes
to 3DEC that have been made since the official version was released. Users may access the latest
sub-version of the current version of 3DEC on our web site at http://www.itascacg.com. (Contact
Itasca for further information.) However, 3DEC with a sub-version number greater than that of

3DEC Version 5.2


2-6 User’s Guide

the officially released version should be used with caution, because not all features have been fully
tested.
By typing the command
list version

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

2.1.7 Start-up

The default installation procedure creates an “Itasca” group with icons for 3DEC. The necessary
drivers for the hardware key are installed. The 3DEC hardware key should be attached to the USB
port on your computer after the software installation is complete.
To load 3DEC, simply click the appropriate icon in the Itasca group. Use the Properties option
in Windows to identify a working directory. In fact, create as many icons as needed to identify a
number of individual project directories. Double-click the appropriate icon.
When 3DEC is executed for the first time, a dialog that requests permission to copy the data files and
other user resources to your documents folder will appear. This is done to avoid operating system
permission conflicts when attempting to open files in the “C:\program Files” folder. It is recom-
mended that you allow 3DEC to copy the example files to your “My Documents\itasca\3dec520”
folder.

2.1.8 Program Initialization

On start-up, the command line argument “call file” can be included. This will call a data file to be
executed automatically.

2.1.9 Running 3DEC

3DEC can either 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. 3DEC will execute each command as
the <Enter> key is pressed. If an error occurs, an error message will be written to the screen.
As an alternative, an input data file may be created using a text editor. 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., “.3DDAT”) will help to distinguish it from other
3DEC files (see Section 2.9).

3DEC Version 5.2


GETTING STARTED 2-7

The data file can be read into 3DEC by typing the command
call file.3ddat

on the command line, in which “FILE.3DDAT” is the user-assigned name for the data file. You
will see the data entries scroll up the screen as 3DEC reads each line.

2.1.10 Installation Tests

There is a project file (“ug getting started.3dprj”) in “My Documents\Itasca\3DEC520\datafiles\


User’s Guide” that contains all of the data files in this section. The first of these are three simple
data files (“TEST1.3DDAT,” “TEST2.3DDAT” and “TEST3.3DDAT”) that you can use to test that
3DEC is installed properly on your computer. These files test the calculation kernel, the graphics
screen plotting and the file plotting facilities for your computer.
To run these tests, click on START –> PROGRAMS –> ITASCA –> 3DEC 5.2 64-bit double precision
. 3DEC and the
3DEC start-up heading will appear on your screen.
Now click on FILE –> OPEN PROJECT and select the “\My Documents\Itasca\3DEC520\datafiles\User’s
Guide\Getting Started” directory and click “ug getting started.3dprj.”
Several data files will show up in the Project data file panel. Double-click on “TEST1.3DDAT.”
This will open the file in the built-in text editor. Take a moment to inspect the text. You will see
that commands will be displayed in bold characters. Also, press <F1> and you will see that help
pages will appear for each line. Now click on the green “run” icon in the toolbar at the top of the
GUI. This will cause the data in the file to be processed.
Several data entries should scroll up in the console panel, and a simple model will be executed for
1000 calculation steps. Example 2.1 contains the results of a successful “TEST1.3DDAT” run.
The output in this figure summarizes information on the model.
Now repeat these steps for “TEST2.3DDAT.”
A screen plot of this model should appear. The plot is a block plot of the model showing the top
block sliding down the fixed bottom block.
Now repeat for “TEST3.3DDAT,” and the plot shown in Figure 2.1 will create a plot file “Test3.bmp.”

3DEC Version 5.2


2-8 User’s Guide

Example 2.1 3DEC output from “TEST1.3DDAT”


>pri max

No. Cycles = 2000 MFREE = 27571 MTOP = 1250000 ISMAX = 249999


No. of blocks (total) 2
No. of blocks (visible) 2
No. of vertices 154
No. of zones 399

min max average total


block vol. 2.887E+02 7.113E+02 5.000E+02 1.000E+03
block mass 5.774E+05 1.423E+06 1.000E+06 2.000E+06
zone vol. 6.659E-01 6.841E+00 2.506E+00 1.000E+03
zone mass 1.332E+03 1.368E+04 5.013E+03 2.000E+06
min max average s.dev.
zone stress s11 -2.210E+04 2.365E+04 -1.479E+03 7.536E+03
s22 -1.273E+05 0.000E+00 -4.358E+04 3.975E+04
s33 -2.104E+04 1.896E+04 -5.028E+00 6.906E+03
s12 -4.905E+03 3.180E+04 8.059E+03 8.208E+03
s13 -1.111E+04 8.867E+03 1.665E+01 1.704E+03
s23 -4.386E+03 5.525E+03 1.671E+01 1.449E+03
grid-point x-vel 5.424E-01 3.478E-01
y-vel 3.139E-01 2.011E-01
z-vel 1.488E-03 3.512E-04
fx 1.613E+05 2.956E+04
fy 1.302E+06 1.299E+05
fz 2.333E+03 2.786E+02
x-dis 2.862E-01 1.833E-01
y-dis 1.753E-01 1.118E-01
z-dis 8.237E-04 1.929E-04

No. of contacts 1
No. of sub-contacts 58

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 Sections 2.1 through 2.1.8. 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 9.2 for error-reporting procedures).

3DEC Version 5.2


GETTING STARTED 2-9

E

pGre00
 
0 u0
i
0pGGG
pGrelG,lrG0p8Ge8r30

 80 

Figure 2.1 PostScript plot from “TEST3.3DDAT”

3DEC Version 5.2


2 - 10 User’s Guide

2.2 A Simple Tutorial – Use of Common Commands

This tutorial will address the fundamental steps when using 3DEC for the first time. It will help new
users become comfortable with beginning new projects and developing a simple block model. A
walk-through guide of a simple wedge failure example will be completed. Interactive controls using
both the mouse and script commands input in the 3DEC console will be explained and illustrated.
Topics:
• rigid blocks
• joints
• histories
• GUI and plot manipulation
Commands: CHANGE, CYCLE, DELETE, FIX, GRAVITY, GROUP, HIDE, JSET, PLOT, POLYHEDRON,
PROPERTY, SAVE, SEEK
FISH: none
Files: “getting started.3dprj,” “getting started.3ddat”

2.2.1 Application Data

Upon launching 3DEC, a prompt may appear, requesting the user to choose a location for all of
the data files included with the 3DEC software package. These files include the necessary data
scripts used for the example problems found in each manual, as well as any additional required files
to successfully execute the scripts (e.g., geometry sets, FISH commands, project files, etc.). This
location must be a local user-modifiable location in which files can be saved or altered. Click OK
to copy these files.

Figure 2.2 First-time execution copies files to user folder

The example files can also be found by going to Help / Examples.

3DEC Version 5.2


GETTING STARTED 2 - 11

2.2.2 Project

After copying the application data, you will be offered several startup options related to projects.
A project is simply a way to bundle together data files, FISH files, plots, etc. related to a problem
being solved with 3DEC. Select “Create New Project” from the prompt.

Figure 2.3 Project file-loading options during startup

A save prompt will now appear. Save the new project as “getting started.3dprj.”

Figure 2.4 Project file open dialog

3DEC Version 5.2


2 - 12 User’s Guide

The commands used to complete this tutorial will be saved in a data (*.3ddat) file. To create a new
data file, select File / New Item / Data File... or press <Ctrl+N>. Save the new data file as
“getting started.3ddat” in the same folder as the project file (“getting started.3dprj”).

2.2.3 Layout

The 3DEC GUI (graphical user interface) contains display panels for data files, plots, the command
console and project files. The layout of the panes in the 3DEC GUI can be customized to suit any
user’s preference. There are several predefined layout options found under the “Layout” menu,
including “Horizontal,” “Vertical,” “Single,” “Wide” and “Project” options. A 3DEC layout can
also be saved and restored by setting up the preferred layout using the mouse and dragging different
panes into place. Once the panes are in place, click “Layout” and select “Save layout....” A prompt
will appear and request a save location for the layout file. This location is necessary when restoring
saved layout preferences.
Choose Layout / Wide and your screen should appear as shown.

Figure 2.5 3DEC “Wide” layout

The newly created data file is listed under “Data Files,” on the left. The blank data file itself fills
the main pane. The command console is at the bottom, and plot controls are on the right.

3DEC Version 5.2


GETTING STARTED 2 - 13

2.2.4 Creating a Model

Now we can begin inputting commands to create the model. Commands can either by entered into
the file and then executed later, or they can be entered one by one in the console at the bottom. It
is recommended that commands be entered into the file because this will save them and allow you
to easily run the same set of commands multiple times. If you do chose to enter the commands
directly on the command line and make a mistake, you can type <undo>* and 3DEC will reprocess
all commands issued after the last RESTORE or NEW command, up to the previous command.
The following commands will clear previous model information, create the initial block and specify
the block size. We specify a single polyhedral block using the POLYHEDRON brick command.*
new
poly brick (0,80) (-30,80) (0,50)

This will create a block with the dimensions 80 × 110 × 50. Input the following commands into
the data file in order to view the block. Note that the plot will not be created until the data file is
executed.
plot create plot ’Blocks’
plot block

Execute the file by clicking on the green execute button.

Figure 2.6 3DEC run button

You will now see a plot of the single block as shown:

* See the Command Reference volume for further details. Note that command words can be abbre-
viated (see Section 2.5).

3DEC Version 5.2


2 - 14 User’s Guide

E

pGre00
 
0 u0
i
0G
pGrelGSlr-0.4p.4.S0

 40 

Figure 2.7 Initial 3DEC block plot

Plotting can also be done interactively. Close the blocks plot by clicking the “X” in the top right
corner of the “Blocks” pane. Now click File / New Item / Plot. A prompt will appear asking for
the name of the new plot. Enter “Blocks” as the name of this plot.

Figure 2.8 Plot tab rename dialog

Now, on the right side in the control panel, select the “List” tab and double-click “Block” to plot
the block.

3DEC Version 5.2


GETTING STARTED 2 - 15

Figure 2.9 Plot item selection dialog

A perspective view of the polyhedron will appear on the screen. The default view of the model is
oriented parallel to the xz-plane. Try holding down the right mouse button and moving the mouse,
to rotate the plot. The figure below illustrates a rotated view of the block.

3DEC Version 5.2


2 - 16 User’s Guide

E

pGre00
 
0 u0
i
0G
pGrelGSlr-0.4p.4.S0

 40 

Figure 2.10 3DEC block plot

At this point, there are two plots panes: “Plot01” is blank, and “Blocks” displays the block model.
Each time a PLOT command is used, a new plot pane will be created automatically unless the
keyword add is used.
Manipulating the view: Press and hold the right mouse button and drag the mouse across the plot
to rotate the model; press and hold <Shift> + right-click to pan; or press and hold <Ctrl> +
right-click to zoom in and out. Zooming can also be done by using the scroll wheel. For more
detailed instructions on view manipulation, right-click on the plot and select “Plot Control Help.”

Figure 2.11 Keyboard shortcuts

3DEC Version 5.2


GETTING STARTED 2 - 17

2.2.5 Creating the Joint Sets

Joints are introduced to the model by using the JSET command. Joints can represent actual rock
joints, or they can be used as “construction” cuts to create specific geometries. For this example, a
series of joint sets are implemented in order to create the slope and wedge. We begin by cutting the
joint horizontally in two locations using the keywords dip, dd (dip direction) and origin. CAUTION:
If no keywords are used, these properties will default to values of 0.
Click on the “getting started” tab to go back to the data file and add the following commands. Note:
for 3DEC commands with multiple keywords, you can type the command and press <F1> to get
a keyword list.
jset dip 90 dd 180 origin 0,0,0
jset dip 90 dd 180 origin 0,50,0

The dip direction is degrees clockwise from North (y). The block is cut into three (3) sections
along the y-axis. The middle block is assigned to a group named “inner block” using a RANGE
command to specify a range in y-coordinates for the block centroids. The other blocks are called
“outer blocks” to define the blocks that act as boundaries. A HIDE command is used to hide the
inner block and assign the outer-blocks group. Hidden blocks are not cut by JSET commands.
group block ’inner block’ range y 0 50
hide range group ’inner block’
group block ’outer blocks’
seek

Execute the file. Click on the “Blocks” tab to see the block plot. You will now see three blocks of
different colors. In the control panel on the right, click on the “Block” item. In “Attributes,” under
“Color By,” select “Block Group.”

3DEC Version 5.2


2 - 18 User’s Guide

Figure 2.12 Block plot item attributes dialog

The block plot will now look like this:

E

pGre00
 
0 u0
i
0G
pGrelGSlr-0.4p.4.S0

 40A 0 0 40k


0 
0 

Figure 2.13 Original block split into three blocks

3DEC Version 5.2


GETTING STARTED 2 - 19

Additional joint sets are introduced into the model and create the sliding planes for the future wedge
in both the horizontal and vertical directions. First, hide the outer blocks. Two (2) shallow-dipping
fracture planes are created, and then five (5) equally spaced high angle foliation planes are made.
hide range group ’outer blocks’
jset dip 2.5 dd 235 origin 30,0,12.5
jset dip 2.5 dd 315 origin 35,0,30
jset dip 76 dd 270 spacing 4 num 5 origin 38,0,12.5

The use of the spacing keyword specifies an average spacing distance between joints. The num
keyword defines the number of joints in the set. Execute the file and click on the “Blocks” plot tab.
If it hasn’t already happened by rerunning a data file, change the “Color By” back to “Blocks.” The
model should look similar to the figure below.

E

pGre00
 
0 u0
i
0G
pGrelGSlr-0.4p.4.S0

 40 

Figure 2.14 Joint planes added

We now hide the slope blocks and create a horizontal joint plane which will make up the base of
the slope excavation:
hide range x 30,80 y 0,50 z 0,50
jset dip 0 dd 0 origin 0,0,10
hide range z 0,10
group block ’excavate’

We assign the blocks within the excavate region to a group called “excavate.”

3DEC Version 5.2


2 - 20 User’s Guide

2.2.6 Creating the Wedge Feature

Finally, we create the joint planes that define the wedge in the slope using the following commands:
seek
hide range group ’outer blocks’
hide range z 0,10
hide range x 55,80
hide range x 0,30
jset dip 70 dd 200 origin 0,35,0
jset dip 60 dd 330 origin 50,15,50

Executing the file at this point will show the blocks with the high angle foliations and the planes
that define the wedge as shown below.

E

pGre00
 
0 u0
i
0G
pGrelGSlr-0.4p.4.e0

 40 

Figure 2.15 Wedge blocks added

3DEC Version 5.2


GETTING STARTED 2 - 21

2.2.7 Boundary Conditions

Next, the boundary blocks are immobilized. Using the FIX command and specifying the necessary
range will freeze each block’s centroid velocity at its current value. In this case, the centroid velocity
is currently zero. This will prevent any movement, thus creating boundary conditions. If you FIX a
block that is already moving, the block will continue to move at that current velocity. The base of
the model and the blocks behind the foliations are fixed in place. The outer blocks are also fixed.
The “excavate” group is deleted from the model. The outer blocks are then hidden for plotting
purposes.
seek
fix range z 0 10
fix range x 55 80
fix range group ’outer blocks’
delete range group ’excavate’
hide range group ’outer blocks’

Go back to the “Blocks” plot. Add axes to the plot by selecting the “List” tab and choosing
Misc / Axes.

Figure 2.16 Plot items list dialog

The axes can be resized by left-clicking and dragging the edges of the item. They can be moved
by left-clicking and dragging the middle of the item. The plot should now look similar to the plot
below.

3DEC Version 5.2


2 - 22 User’s Guide

E

pGre00
 
0 u0
i
0G
pGrelGSlr-0.4p.4.e0

 40 

Figure 2.17 Completed model view

2.2.8 Gravity

The GRAVITY command assigns a gravitational acceleration in the negative z-direction. In this
example, we specify a value of 10 m/sec2 . The x and y components are 0.
gravity 0 0 -10

2.2.9 Material Properties

The material properties are assigned to the blocks and joints. Block and joint properties are not
assigned directly. Instead, a block material number and a joint material number are assigned
(default is 1 in both cases). The properties of each material are then specified using the PROPERTY
command.
In this example, the mass density* of all blocks is specified to be 2,000 units (kg/m3 , in this case).
This assignment is performed by specifying the density associated with material 1. Since blocks
are assigned material 1 by default, all blocks have a density of 2,000 kg/m3 . Blocks are assumed
to be rigid; block deformability is neglected.
prop mat=1 dens=2000

* Mass density of the block material, not the unit weight, is assigned.

3DEC Version 5.2


GETTING STARTED 2 - 23

Two (2) joint material numbers are assigned and each has the same normal (jkn) and shear (jks)
stiffness, equal to 1.0 × 109 units (Pa/m, in this case).* Joint material 1 is assigned a friction angle
of 89◦ , and joint material 2 is assigned a friction angle of 0◦ .
prop jmat=1 jkn=1e9 jks=1e9 jfric=89
prop jmat=2 jkn=1e9 jks=1e9 jfric=0.0

The joint contacts between the slope blocks and the boundary blocks are assigned to joint material
2. This provides a frictionless boundary along the vertical joint planes of the boundary blocks.
Note that you must seek the outer blocks for the CHANGE command to take effect.
seek
change jmat=2 range dip 90 dd 180
hide range group ’outer blocks’

Note that different constitutive models are available for joints. In this example, a simple Mohr-
Coulomb model is used (the default).

2.2.10 Solution

The problem is ready to be solved. It is often helpful to judge material behavior by observing the
motion of specified points in the rock mass. In this problem, we monitor the z-velocity of a vertex
nearest the point x = 30, y = 30, z = 30. The command used to record this motion is
hist zvel (30,30,30)
hist type 1

Following execution of this command, the program returns information about the selected moni-
toring point. The keyword type instructs the program to print the value (in this case, the z-velocity
of the monitoring point) on the screen at specified intervals.
We then execute five hundred calculation cycles by typing
step 500

Execute the file by clicking the green execute button at the top. During execution, the current cycle
count, the calculation time, the maximum out-of-balance force,† the z-velocity of the block vertex
closest to (30,30,30) and the clock time are printed on the screen every 10 cycles. Inspection of
these values indicates that equilibrium has been achieved (velocity and unbalanced force approach
zero).
Create a new plot called “Hist1” by selecting File / New Item / Plot and entering the name at the
prompt. In the control panel, select the “List” tab and then choose Charts / History, and a blank

* See Section 3.8.2 for a discussion on how to choose joint stiffness values.

† Unbalanced force is defined in Section 2.3.

3DEC Version 5.2


2 - 24 User’s Guide

history chart will appear. Next, under the “Attributes” tab, add the “z-velocity” history by clicking
the blue “+” symbol. Note that each history is assigned an ID when it is created. Since we only
have one history, it is assigned an ID of 1. The blue “+” symbol allows you to add the history of
ID 1 to the plot.
Change the label for the y-axis by selecting Y-Axis / Label and entering “vertical velocity.”
Alternatively, you can do the same thing with the following commands:
plot create plot ’Hist1’
plot hist 1 yaxis label "Vertical Velocity"

The plot should look like this:

E

pGre008
 
0 u0
i
0SGG 
pGrelGSlr50.4p.4.50

r0l  00re--G 
i0


e e H- ls













         

e H- s

Figure 2.18 History of vertical velocity during equilibrium cycling

2.2.11 Plot Image Files

After the model has been brought to equilibrium, creating an image file of a plot of the initial
state may be useful. A plot title can be provided using the TITLE command and including a string
afterwards:
title ’Rock Slope Stability’

The title will be saved but not displayed to the plot. In order to display the title on the plot, the “Job
Title” option must be toggled on from the “Display Settings / Attributes” tab in the control panel.

3DEC Version 5.2


GETTING STARTED 2 - 25

Figure 2.19 Display setting dialog

The title will appear at the top of the plot, above the history. The properties of the title such as size,
font, style (bold, italic, bold italic) and color can be modified.
The plot can then be exported as several different file types. Navigate under File / Export
Hist1 / Bitmap, or simply right-click on the plot and select Export / Bitmap. A plot and file name
must be specified. When specifying the file name, it is important to include the file type extension.
The bitmap keyword will create a *.PNG file by default, but is capable of creating *.PNG, *.JPG,
*.BMP, *.PPM and *.XBM file types.

2.2.12 Save Initial State

It is good practice to save the initial state of the model so that it can be restarted at any time
(for example, to perform parameter studies). We save the current state to a file called “slope-
initial.3dsav” by typing
save slope-initial

The file name extension .3dsav is automatically added if no extension is given.

3DEC Version 5.2


2 - 26 User’s Guide

2.2.13 Reduce Joint Friction and Solve

The behavior of the slope can be studied by reducing the friction angle of the joints. We reduce the
friction angle to 6◦ using the following commands (either add to the file and re-execute, or simply
type the command into the console at the bottom of the 3DEC GUI):
prop jmat 1 jfric=6.0

The next step is to continue the calculations with the reduced friction for an additional 2000 cycles.
The failure can be seen on the “Blocks” plot. For plotting purposes, turn on the job title by going
to “Display Settings” under “Plot Items” in the control panel and checking the “Job Title” option
under the “Attributes” tab. This will add the job title specified previously. To add a title specific to
this plot, check on the “View Title” option and enter some text (e.g., “Wedge Failure”).
To watch the failure progress, type the following command in the console at the bottom of the screen
and press <Enter>:
cycle 2000

Upon executing the problem, the block plot will illustrate the wedge failure caused by the reduction
in the friction angle. The failure mode combines rotational failure along the foliation planes and
rotational failure of the wedge. The wedge failure dominates the failure, as shown by the block
plot. The rotational mechanism contributes to the collapse.

E
 c c 
4784c:.M !4
IFA2cMc-
 
c8 WcM
D
cI©FF
IFA2EF©EA0cUsIUsU1c

- sc5 

Figure 2.20 Wedge sliding down

3DEC Version 5.2


GETTING STARTED 2 - 27

2.2.14 Cross Section

A vertical cross-section plot taken through the model will demonstrate the rotational mechanism.
Click File / New Item / Plot and name the plot “Disp1.” In the list in the control panel, select
Blocks / Vectors / Displacement. Under the “Attributes” tab, toggle the “ColorByMag” option
on.

Figure 2.21 Displacement vectors plot-item attribute dialog

Add blocks to the plot by clicking “Block” under the “List” tab. The fill is toggled off by clicking
on the “Fill” box.

3DEC Version 5.2


2 - 28 User’s Guide

Figure 2.22 Block plot-item attribute dialog

Finally, a cutting plane is required to create the cross section. This is done by selecting Cutting
Planes / Plane under the “List” tab. Ensure that the plane is cutting the blocks vertically by ensuring
the plane is normal to the y-axis (0,1,0).

Figure 2.23 Cut plane plot-item attributes dialog

3DEC Version 5.2


GETTING STARTED 2 - 29

The resulting cross section displaying the displacement vectors:

E

pGre0k09
 
0y u0k
i
0pSGG
pGrelGSlr50.4p.4.-0

  s 
 
40 0
0
 " "40,ir7pG.
 40Gi5,--e-
,ir7pG+nGG
,iGGGG+nGG
pi5SGG+nGG
piSGGG+nGG
pipSGG+nGG
piGGGG+nGG
ri5SGG+nGG
riSGGG+nGG
ripSGG+nGG
riGGGG+nGG
5iSGGG+lGr
SiGGGG+lGr
piSGGG+lGr
GiGGGG+nGG

 
40 0
0
9 403 

Figure 2.24 Cross section on cut plane showing blocks and displacement vec-
tors

2.2.15 Conclusion

This concludes the getting started tutorial. Save the project by clicking File / Save Project. From
this point forward, you may wish to try other various 3DEC features in an attempt to stabilize the
slope. First save the final state from the previous analysis:
save slope-final

Then you can restart from the initial state by entering


restore slope-initial

There are structural elements that can be incorporated and are described in Section 3 in Theory
and Background.

3DEC Version 5.2


2 - 30 User’s Guide

2.3 Nomenclature

The nomenclature used in 3DEC is similar, for the most part, to that used in continuum stress
analysis programs. In addition, though, special terminology is used to describe the discontinuum
features in a 3DEC model. The basic definitions are given here for clarification. Figure 2.25 is
provided to illustrate 3DEC terminology:

fault discontinuity
joint discontinuity

cable
block

in-situ

horizontal

boundary

stress

zone

gridpoint
interior boundary

(excavation)

roller bottom boundary

Figure 2.25 Example of a 3DEC model (not to scale)

3DEC MODEL – The 3DEC model is created by the user to simulate a physical problem. When re-
ferring to a 3DEC model, we imply a sequence of 3DEC commands (see Section 1 in the Command
Reference) that define the problem conditions for numerical solution.

BLOCK – The block is the fundamental geometric entity for the distinct element calculation. The
3DEC model is created by either “cutting” a single block into many smaller blocks, or creating
separate blocks and joining them together. Each block is an independent entity that may be detached
from other blocks, or may interact with other blocks via surface forces. Another term for block is
polyhedron.

3DEC Version 5.2


GETTING STARTED 2 - 31

CONTACT – Each block is connected to adjacent blocks via point contacts. A contact may be
considered a boundary condition that applies external forces to each block.

SUB-CONTACT – Each contact is divided into sub-contacts for both rigid and deformable blocks.
Interaction forces between blocks are applied at sub-contacts.

DISCONTINUITY – A discontinuity is a geologic feature that separates a physical mass into distinct
parts. Discontinuities, for example, include joints, faults and fractures, and other discontinuous
features in a rock mass.
To be represented in 3DEC, a discontinuity must have a trace length scale that is approximately of
the same order as the engineering structure being analyzed. A discontinuity in 3DEC is defined by
at least one contact between blocks.

ZONE – Deformable blocks are composed of tetrahedral finite-difference zones. Mechanical


changes (e.g., stress/strain) are calculated within each zone. Mixed-discretization (m-d) zones are
special zones that are composed of two overlays of five tetrahedral subzones. m-d zones provide
accurate solutions for block plasticity analysis.

GRIDPOINT – Gridpoints are associated with the corners of the tetrahedral finite-difference zones
(or subzones of m-d zones). There are always four gridpoints associated with each zone. 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.

MODEL BOUNDARY – The model boundary is the periphery of the 3DEC model. Internal
boundaries (i.e., holes within the model) 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).

INITIAL CONDITIONS – This is the state of all variables in the model (e.g., stresses) prior to any
loading change or disturbance (e.g., excavation).

NULL BLOCK – Null blocks are blocks that represent voids (i.e., no material present) within the
model. Null blocks can be made “real” later in an analysis – for example, to simulate backfilling.
(Once a block is deleted from a model, it cannot be restored.)

BLOCK CONSTITUTIVE MODEL – The block constitutive (or material) model represents the
deformation and strength behavior prescribed to the zones of deformable blocks in a 3DEC model.
Several constitutive models are available in 3DEC to simulate different types of behavior commonly
associated with geologic materials.

JOINT CONSTITUTIVE MODEL – The joint constitutive model represents the normal and shear
interaction between blocks at their contact (sub-contact) points. The joint model includes normal

3DEC Version 5.2


2 - 32 User’s Guide

and shear elastic stiffness components, and limiting shear and tensile strength components. The
basic joint model is the Coulomb-slip model.

STRUCTURAL ELEMENT – Structural elements are one-dimensional elements that represent the
interaction of structures (such as rock bolts or cable bolts) with a rock mass. Material nonlinearity
is possible with structural elements. Geometric nonlinearity occurs as a result of the large-strain
formulation.

STEP – Because 3DEC 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 blocks in the model. 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 or CYCLE refers to
the actual timestep for the dynamic problem. Other terms for step are timestep and cycle.

STATIC SOLUTION – A static or quasi-static solution is reached in 3DEC 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 static solution stage, the model will either be at a state of force
equilibrium or 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 mode in 3DEC, and can
also be invoked with the DAMPING auto or DAMPING local command.

UNBALANCED FORCE – The unbalanced force indicates when a mechanical equilibrium state (or
the onset of joint slip or plastic flow) is reached for a static analysis. A model is in exact equilibrium
if the net nodal force vector at each block centroid or gridpoint is zero. The maximum nodal force
vector is monitored in 3DEC, and printed to the screen when the STEP or CYCLE 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; the
model is considered to be in equilibrium when the maximum unbalanced force is small compared
to the representative forces in the problem. If the unbalanced force approaches a constant nonzero
value, this probably indicates that joint slip or block 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 3DEC (see
Section 2 in Optional Features).

VERTEX – This is specifically used to describe the corners of rigid blocks. However in 3DEC, the
terms vertex and gridpoint are sometimes used interchangeably when referring to the gridpoints on
the surface of blocks. Each vertex will be connected to a gridpoint when the blocks are zoned.

3DEC Version 5.2


GETTING STARTED 2 - 33

2.4 The 3DEC Model

For most geomechanics analyses, the creation of a 3DEC model begins with a single block of a size
that spans the physical region being analyzed.* The model features are then introduced by cutting
this block into smaller blocks whose boundaries represent both the geologic structure (e.g., faults,
bedding planes, joint structure) and engineered structures (such as underground excavations and
tunnels).
All blocks in the model are defined by the x-, y-, z-coordinates of their vertices and centroid.
Contacts between blocks, as well as gridpoints within deformable blocks, are also defined by
their coordinate positions. Model generation involves cutting the model block along planes whose
positions are defined by an orientation (dip and dip direction) and one location on the plane.
All entities of the 3DEC model (i.e., blocks, vertices, contacts, gridpoints and zones) are identified
uniquely by an address number in the main data array, allocated automatically by 3DEC. These
numbers may also be used to refer to a particular entity. The numbering system is not sequential
for each entity, so the user must identify the number via a plot or printout.†
For example, Figure 2.26 illustrates a 3DEC model block of the following dimensions: 10 units
(for example, meters) in the x-direction, 10 units in the y-direction and 10 units in the z-direction.
The model block is divided into two blocks, separated by a horizontal discontinuity located through
the center of the block.
The model shown in Figure 2.26 was created with the commands listed in Example 2.2.

Example 2.2 3DEC model block divided into two blocks


new
poly brick 0,10 0,10 0,10
pl bl
pl reset
jset origin 5 5 5
prop jmat 1 jkn 1.33e7 jks 1.33e7 fric 20.0
prop mat 1 dens 2000
plot block colorby mat
plot set dip 70 dd 210

* The 3DEC model can also be generated by creating separate blocks and joining them together. This
can be useful for building multiple blocky structures, such as masonry walls or arch bridges (e.g.,
see Section 3 in Example Applications).

† In general, address numbers should be avoided, if possible, when referring to particular entities
in limiting the range of application of a command. Address numbers will likely change with
different versions of 3DEC. Other optional range phases, as listed in Section 1.1.3 in the Command
Reference, should be used whenever possible.

3DEC Version 5.2


2 - 34 User’s Guide

cyc 1
ret

E

pGre00
 
0 u0
i
0G
pGrelG,lrG0pPGePpp0

 P0 

Figure 2.26 3DEC model block divided into two blocks

The two blocks have block numbers 217 and 1233. The blocks are connected by one contact located
at the center of the adjacent faces of the two blocks. The contact number is 1739. This information
can be obtained with the commands
list block
list contact

Upon cycling, contacts are automatically decomposed into sub-contacts at which mechanical inter-
actions between blocks are calculated. Sub-contacts are created by triangulating interacting block
faces. For rigid blocks, each triangular section of the face is associated with a vertex on the face.
In this example, we issue the command
cycle 1

to create the sub-contacts. Eight sub-contacts are created; associated with each of the four vertices
defining the two contacting faces. The sub-contact numbers can be viewed with the command
list contact location

3DEC Version 5.2


GETTING STARTED 2 - 35

The two blocks may be made deformable by creating finite-difference zones in each block. The
blocks in Example 2.2 are made deformable by adding the command
gen edge 20

The two blocks are each subdivided into six zones, with each zone defined by four gridpoints. The
zone and gridpoint numbers, and the gridpoint coordinates, are printed with the command
list zone location

Note that if we take one cycle, eight sub-contacts are created (as before for the rigid blocks), but
the sub-contact numbers are different because their addresses are created after those for the zones
and gridpoints.
The address numbers also act as pointers to storage locations of all state variables in the model.
Data associated with each entity in the model are stored with that entity number. For example,
block forces, velocities and displacements for rigid blocks are stored with each block number.
For deformable blocks, vector quantities (e.g., forces, velocities, displacements) for a block are
stored with gridpoint numbers, while scalar and tensor quantities (e.g., stresses, material property
numbers) are stored with zone numbers. Contact data (such as contact force, velocity and flow
rates) are stored at sub-contact numbers. FISH can be used to access 3DEC data via the address
numbers. See Section 4 in the FISH volume for lists of the variables that can be accessed.

3DEC Version 5.2


2 - 36 User’s Guide

2.5 Command Syntax

All input commands* to 3DEC are word-oriented and consist of a primary command word followed
by one or more keyword and value, as required. Some commands accept switches (i.e., 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 that these letters,
at a minimum, be typed to recognize the command; command input is not case-sensitive. The entire
word for a command or keyword may be entered if the user so desires.
Many of the keywords are followed by a series of values that 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 on an input
line is ignored. It is useful to include comments in data files, and it is strongly recommended. 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.
For reading clarity, a long command may be split into multiple lines of text. In this case, ellipses
(. . .) or an ampersand (&) is given at the end of an input line to denote that the next line will be a
continuation of that line. 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.

3DEC Version 5.2


GETTING STARTED 2 - 37

Table 2.2 Typographical conventions


Type style Used for
BOLD 3DEC commands and FISH statements
bold 3DEC 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)

3DEC Version 5.2


2 - 38 User’s Guide

2.6 Mechanics of Using 3DEC

3DEC is based on a command-driven format. Word commands control the operation of the program.
This section provides an introduction to the basic commands a new user needs to perform simple
3DEC calculations. If you have not done so already, run the tutorial problem in Section 2.2 for an
example of command-driven analysis with 3DEC.
In order to set up a model to run a simulation with 3DEC, three fundamental components of a
problem must be specified:
(1) a distinct-element model that matches the problem geometry;
(2) constitutive behavior and material properties; and
(3) boundary and initial conditions.
The model block 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 problem state is introduced).
After these conditions are defined in 3DEC, an alteration is 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-solution program like 3DEC than for conventional implicit-
solution programs. (See the background discussion in Section 1.2.2 in Theory and Background.)
3DEC uses an explicit time-marching method to solve the algebraic equations. The solution is
reached after a series of computational steps. In 3DEC, the number of steps required to reach a
solution is controlled manually by the user. The user ultimately must determine whether the number
of steps is sufficient to reach the solved state. See Section 2.6.4 for ways in which this is done.
The general solution procedure for an explicit static* analysis with 3DEC is illustrated in Figure 2.27.
This procedure is convenient because it represents the sequence of processes that occur in the
physical environment. The basic 3DEC commands needed to perform simple analyses with this
solution procedure are described below.

* Dynamic analysis with 3DEC is discussed in Section 2 in Optional Features.

3DEC Version 5.2


GETTING STARTED 2 - 39

MODEL SETUP
(1) Generate model block, cut block to create problem
geometry
(2) Define constitutive behavior and material properties
(3) Specify boundary and initial conditions

Step to equilibrium state

Examine the Model Response

PERFORM ALTERATIONS
For Example:
Excavate material
Change boundary conditions

Step to solution

Examine the Model Response

REPEAT FOR ADDITIONAL ALTERATIONS

Figure 2.27 General solution procedure for static analysis in geomechanics

3DEC Version 5.2


2 - 40 User’s Guide

2.6.1 Model Generation

The 3DEC model is usually created by cutting the original 3DEC block into smaller blocks that
represent boundaries of physical features in the problem. The simplest block to create is brick-
shaped and is generated with the command
poly brick xl, xu yl, yu zl, zu

where (xl, xu), (yl, yu) and (zl, zu) are the lower- and upper-coordinate limits of the brick in the x-,
y- and z-directions.
The primary command used to create geologic structure (e.g., joints) is
jset

The JSET command can either create individual joints or invoke an automatic joint set generator
to create a set of joints defined by characteristic parameters (i.e., dip angle, dip direction, spacing,
spatial location and persistence).
The following example illustrates block-cutting with the JSET command. The complete description
for this command is given in Section 1 in the Command Reference. Joint generation is explained
in more detail in Section 3.2.2.

Example 2.3 Block model with three intersecting joint planes


new
poly brick -1 1 -1 1 -1 1
plot block colorby mat
pl reset
plot set dip 70 dd 200
jset dip 65 dd 270 origin 0.3, 0.0, 0.0
jset dip 40 dd 230 origin 0.0, -0.3, 0.0
jset dip 50 dd 320 origin 0.0, 0.3, 0.0
ret

The three JSET commands define three joint planes through the model. The joints are located by
their dip direction (dd), dip angle (dip), and a single point on the plane (origin). See Figure 3.5
in Section 3.2.2 for the definition of the orientations for dip direction and dip angle relative to the
3DEC model axes.
By typing the command
plot set dip 70 dd 200

a plot of the model blocks oriented relative to the model reference axes is shown in the graphics
mode:

3DEC Version 5.2


GETTING STARTED 2 - 41

E

pGre00
 
0 u0
i
0G
pGrelG,lrG0pPGePpp0

 P0 
r

Figure 2.28 Block model with three intersecting joint planes

Shapes of engineered structures must also be cut in the 3DEC block, and these must be created
before model execution begins. The JSET command can also be used to create shapes in a model.
Boundaries of excavations are created as joint planes.
An additional command, TUNNEL, is provided specifically to create tunnel shapes. The TUNNEL
command creates a tunnel whose boundary is formed by planar segments that connect the two end
faces of the tunnel, designated face A and face B. For example, a square-shaped tunnel can be
created in the Example 2.3 model by adding the commands in Example 2.4:

Example 2.4 Tunnel in jointed rock


tunnel a (-.3,-1.5,-.3) (-.3,-1.5,.3) (.3,-1.5,.3) (.3,-1.5,-.3) &
b (-.3, 1.5,-.3) (-.3, 1.5,.3) (.3, 1.5,.3) (.3, 1.5,-.3)
remove range x -0.3,0.3 y -1.5,1.5 z -0.3,0.3
plot excavate joint
ret

Four vertices define each tunnel face; the vertices for each face must be entered in the same order,
to form connecting planes between the faces. The REMOVE command is used to delete the blocks
within the tunnel region. The resulting model is shown in Figure 2.29. The excavation blocks and
the joint structure can also be plotted separately with the command (see Figure 2.30)
plot exc joint

3DEC Version 5.2


2 - 42 User’s Guide

Note that only the joints created by the JSET command are plotted in Figure 2.30. The “fictitious”
joints created when the tunnel excavation was made with the TUNNEL command are not shown.
These joints lock the adjoining blocks together so that they behave as one block. Joining blocks via
fictitious joints can also be accomplished with the JOIN command. See Section 3.2.2 for details.

E

pGre00
 
0 u0
i
0G
pGrelG,lrG0pPGePpp0

 P0 
r

Figure 2.29 Tunnel in jointed rock

3DEC Version 5.2


GETTING STARTED 2 - 43

E

pGre00
 
0 u0
i
0G
pGrelGSlpS0rr3r,3,G0J

 30d 

 d30#
00$

Figure 2.30 Tunnel in jointed rock – excavation and joint structure

2.6.2 Assigning Material Models

2.6.2.1 Block Models

Once all block-cutting is complete, material behavior models must be assigned for all of the blocks
and discontinuities in the model. By default, all blocks are rigid. In most analyses, blocks should be
made deformable. Only for cases in which stress levels are very low, or the intact material possesses
high strength and low deformability, can the rigid block assumption be applied (for example, see
the slope failure tutorial in Section 2.2).
Blocks are made deformable with the command
gen edge v

or
gen quad ndiv i1 i2 i3

The GEN (or GENERATE) command invokes an automatic mesh generator that fills each block with
tetrahedral-shaped finite difference zones. The command GEN edge v will work for blocks of any
arbitrary shape. The value v defines the average edge length of the tetrahedral zones (i.e., the
smaller the value for v, the higher the density of zones in a block). The user should be careful to
not create zones that have a high aspect ratio; a practical limit on aspect ratio is approximately 1:5
for reasonable solution accuracy.

3DEC Version 5.2


2 - 44 User’s Guide

The command GEN quad ndiv i1 i2 i3 should be used if blocks are prescribed a plastic material model.
This type of zoning provides a more accurate solution for plasticity problems (see Section 1.2.2.5
in Theory and Background for a description of this type of zoning). The GEN quad command,
however, may not work for all block shapes; if not, the GEN edge command should be used for the
remaining blocks.
There are five built-in material models for deformable blocks in 3DEC; these are described in
Section 1 in Constitutive Models. Three models are sufficient for most analyses the new user will
do. These are assigned by the commands
excavate ; null model
change cons=1; elastic model
change cons=2; Mohr-Coulomb model

The EXCAVATE command simulates the excavation or removal of material that will be replaced at
a later stage in the analysis. Blocks within the region that is excavated can be changed back into
elastic or elastic-plastic material with the FILL command. For example, if the excavation for the
tunnel model of Example 2.4 is to be filled at a later stage, the EXCAVATE command should be used
in place of the REMOVE command. If a block is deleted with the REMOVE or DELETE command, it
cannot be restored at a later stage.
The CHANGE command changes the material model assigned to a deformable block. Blocks changed
to cons=1 are assigned isotropic, elastic material behavior, while blocks changed to cons=2 are
assigned Mohr-Coulomb plasticity behavior. By default, all deformable blocks are assigned cons=1.
The models are described briefly in Table 3.2 in Section 3.7.1.
The blocks changed to cons=1 and cons=2 must have material properties assigned via the PROPERTY
mat command. Note that properties are not assigned to specific blocks, but rather to a material
number. Properties may be assigned to as many as 50 material numbers. The material numbers are
then assigned to blocks with the CHANGE mat command.
For the elastic model, the required properties are:
(1) density;
(2) bulk modulus; and
(3) shear modulus.

3DEC Version 5.2


GETTING STARTED 2 - 45

NOTE: Bulk modulus, K, and shear modulus, G, are related to Young’s modulus, E, and Poisson’s
ratio, ν, by

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) density;
(2) bulk modulus;
(3) shear modulus;
(4) friction angle;
(5) cohesion;
(6) dilation angle; and
(7) tensile strength.
If any of these properties is not assigned, its value is set to zero by default.
For both the elastic and Mohr-Coulomb models, density, bulk modulus and shear modulus must be
assigned positive values in order for 3DEC to execute.

3DEC Version 5.2


2 - 46 User’s Guide

2.6.2.2 Joint Models

In addition to block material models, a material model must also be assigned to all discontinuities
(i.e., contacts) in the model. There are two built-in constitutive models for discontinuities (summa-
rized in Table 3.3 in Section 3.7.2). The model sufficient for most analyses is the (elastic-perfectly
plastic) Coulomb slip model, which is assigned to discontinuities with the command
change jcons=1

By default, all discontinuities are assigned jcons=1.


The material models for discontinuities also have material properties assigned with the PROPERTY
jmat command. As with blocks, properties are not assigned directly to the discontinuities, but to
material numbers. The material numbers are then assigned to the discontinuities with the CHANGE
jmat command.
For the Coulomb slip model, the required properties are:
(1) normal stiffness;
(2) shear stiffness;
(3) friction angle;
(4) cohesion;
(5) dilation angle; and
(6) tensile strength.
If any of these properties is not assigned, its value is set to zero by default. Normal and shear
stiffnesses must be assigned positive values in order for 3DEC to execute. Example 2.5 demonstrates
the application of block and joint material models to the tunnel example:

Example 2.5 Assigning material models and properties


gen edge 1.0
prop mat=1 dens 2000 bulk 1.5e9 g .6e9
prop jmat=1 jkn 1e9 jks 1e9 jcoh 1e9 jten 1e9
ret

The commands in Example 2.5 are entered to assign a mass density of 2000 kg/m3 , bulk and shear
moduli of 1.5 GPa and 0.6 GPa to the deformable blocks, normal and shear stiffnesses of 1.0 GPa/m,
and cohesion and tensile strength of 1.0 GPa to the joints. Note that we assign a high cohesion and
tensile strength to the joints to prevent any slip or separation from occurring when we bring the
model to an initial force-equilibrium state.

3DEC Version 5.2


GETTING STARTED 2 - 47

2.6.3 Applying Boundary and Initial Conditions

Boundary and initial conditions must not be applied until after all block-cutting is complete and
the mesh for deformable blocks is generated. Mechanical boundary conditions are generally ap-
plied with the BOUNDARY command. This command is used to specify force, stress and velocity
(displacement) boundary conditions. Boundary forces and stresses can be applied to both rigid and
deformable blocks, but boundary velocities can only be applied to deformable blocks. (See the
commands FIX, FREE and APPLY to apply boundary conditions to rigid blocks.) Table 2.3 provides
a summary of the boundary condition commands and their effects. Refer to Section 1.3 in the
Command Reference for a complete listing of keywords to these commands.

Table 2.3 Boundary condition command summary


Command Effect
BOUNDARY stress total stress applied to rigid or deformable blocks
xload load applied in x-direction to rigid or deformable blocks
yload load applied in y-direction to rigid or deformable blocks
zload load applied in z-direction to rigid or deformable blocks
xvel x-velocity applied to deformable blocks
yvel y-velocity applied to deformable blocks
zvel z-velocity applied to deformable blocks
FIX velocities fixed for rigid or deformable blocks
FREE velocities freed for rigid or deformable blocks
APPLY xvel x-velocity applied to rigid blocks
yvel y-velocity applied to rigid blocks
zvel z-velocity applied to rigid blocks

The commands BOUNDARY xload, yload and zload apply x-, y- and z-components of force at
boundary vertices. The command BOUNDARY stress specifies components of the total stress tensor
applied at the boundary. The commands BOUNDARY xvel, yvel and zvel fix the x-, y- and z-
components of velocity at selected boundary gridpoints.
Note that by using the BOUNDARY command, a condition or constraint that will not change (unless
specifically changed by the user) is imposed.
Initial stress conditions can be specified for all zone stresses in deformable blocks, and all normal
and shear stresses along joints between rigid blocks or deformable blocks. The INSITU command
is used to initialize stresses. By using this command, initial values are assigned to stresses; these
can change while the computation proceeds.

3DEC Version 5.2


2 - 48 User’s Guide

The initial stress state can also include the effect of gravity. This is invoked with the command
gravity gx gy gz

The first value is the gravitational acceleration component in the x-direction, the second value is
that in the y-direction and the third is that in the z-direction. Gravity can be omitted from a model if
the stress variation due to gravity is small across the model compared to the in-situ stresses. Gravity
is often applied to help identify loose blocks around an opening. This is demonstrated below. If
stresses due to gravity are the same magnitude as the in-situ stresses, then a stress gradient should
be applied with the INSITU command to speed convergence to the initial equilibrium.
Boundary and initial conditions can be applied to the tunnel model, for example, with the commands
listed in Example 2.6:

Example 2.6 Applying boundary and initial conditions


bound stress 0.0,0.0,-1.0e6 0.0,0.0,0.0 range z 1
bound xvel 0.0 range x -1
bound xvel 0.0 range x 1
bound yvel 0.0 range y -1
bound yvel 0.0 range y 1
bound zvel 0.0 range z -1
grav 0,0,-10.0
insitu stress -0.5e6 -0.5e6 -1.0e6 0.0 0.0 0.0
ret

A stress boundary of 1.0 MPa is applied in the vertical direction to the top boundary. Roller boundary
conditions are assigned to the lateral boundaries, and the bottom boundary is fixed from movement
in the z-direction. A gravitational acceleration of 10 m/sec2 acts in the negative z-direction. A
zero-velocity boundary along the bottom boundary is particularly important when gravity is acting:
it prevents the model from moving. Note that stress boundaries affect all degrees of freedom. Thus,
stress boundary conditions should always be applied before velocity boundary conditions at the
same boundary corners; otherwise, the prescribed velocity constraint will be lost. Also, note that
x-, y- and z-coordinate ranges are specified for each of the four BOUNDARY commands. Care
should be taken to ensure that the boundary affected by the BOUNDARY command falls completely
within the range.
Type
list bound

to check boundary conditions.


The INSITU command initializes all stresses in the z-direction to −1.0 MPa, and to −0.5 MPa in
the x- and y-directions.

3DEC Version 5.2


GETTING STARTED 2 - 49

2.6.4 Stepping to Initial Equilibrium

The 3DEC model must be at an initial force-equilibrium state before alterations can be performed.
The boundary conditions and initial conditions may be assigned such that the model is exactly at
equilibrium initially. However, often it is necessary to calculate the initial equilibrium state under
the given boundary and initial conditions, particularly for problems with complex geometries or
multiple materials. This is done by using either the STEP or CYCLE 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 equilibrium when the net nodal force vector at each centroid of rigid
blocks, or gridpoint of deformable blocks, is zero (see Section 1.2.2.5 in Theory and Background).
The maximum nodal force vector (called the maximum “out-of-balance” or “unbalanced” force) is
monitored in 3DEC, 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 that the model is in equilibrium when the maximum unbalanced force is small
compared to the total applied 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 3DEC. The user must decide when
the model has reached equilibrium. There are several features built into 3DEC to assist with this
decision. The history of the maximum unbalanced force may be recorded with the 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 xvel 5,5,5
hist zdisp 0,0,11

The first history records x-velocity at a gridpoint location closest to (x = 5, y = 5, z = 5), while the
second records z-displacement at a location closest to (x = 0, y = 0, z = 11) in the model. After
running several hundred (or thousand) calculation steps, a history of these records may be plotted
to indicate the equilibrium condition.
By default, 3DEC performs a static analysis by applying a mechanical damping algorithm known
as adaptive global (or auto) damping. This algorithm is described in Section 1.2.3.2 in Theory and
Background. The data file in Example 2.7 illustrates the process used to reach an initial equilibrium
state:

Example 2.7 Stepping to initial equilibrium


hist unbal
hist zdis 0.3,0,0.3
hist ty 1
pl hist 1

3DEC Version 5.2


2 - 50 User’s Guide

step 500
save tun0.sav
ret

The initial unbalanced force is approximately 0.2 MN. After 500 steps, this force has dropped to
around 5 N. By plotting the two histories, it can be seen that the maximum unbalanced force has
approached zero, while the displacement has approached a constant magnitude of approximately
7.5 × 10−4 m. Type
plot hist 1
plot hist 2

to view these plots. The number following PLOT hist corresponds to the order in which the histories
are entered in the data file. Figures 2.31 and 2.32 show the unbalanced force and displacement
history plots, respectively.

E

pGre00
 
0 u0
i
0SGG
pGrelG,lrG0p:Ge:p,0 

r0i0!
 
$0% 
i0 
 ee e cl r

















         

e cl g

Figure 2.31 Maximum unbalanced force history

3DEC Version 5.2


GETTING STARTED 2 - 51

E

pGre009
 
0 u0
i
0SGG 
pGrelG,lrG0p:Ge:p,0
 
p0l&  "
0053e3
i0


e
  e nm lH



















         

e nm -

Figure 2.32 z-displacement history at (.3, 0, .3)

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. If more steps than are needed to reach equilibrium are taken, the analysis is not adversely
affected. However, the analysis will be affected if an insufficient number of steps is taken.
A 3DEC calculation can be interrupted at any time during stepping by pressing <Esc>. Often,
it 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.

2.6.5 Performing Alterations

3DEC allows model conditions to be changed at any point in the solution process. These changes
may be:
• excavation of material;
• addition or deletion of boundary loads or stresses;
• fix or free velocities of boundary corners; or
• change of material model or properties for blocks or discontinuities.
Excavation is performed with the DELETE, REMOVE or EXCAVATE command. Loads and stresses
are applied with the BOUNDARY xload, yload, zload or stress command. Boundary vertices are fixed

3DEC Version 5.2


2 - 52 User’s Guide

with the BOUNDARY xvel, yvel or zvel command. The constraint at boundaries is removed with
BOUNDARY xfree, yfree or zfree. Material models for deformable blocks and discontinuities are
changed with the CHANGE command, while properties are changed with the PROPERTY command.
It should be evident that several commands can be repeated to perform various model alterations.
For example, continue Example 2.7 from the initial equilibrium stage using the commands in
Example 2.8:

Example 2.8 Reduce the strength of the joints


rest tun0.3dsav
; reduce friction along joints
prop jmat 1 jfric 6.0 jcoh 0.0 jten 0.0
;
reset time hist disp
hist unbal
hist zdisp 0.3,-0.1,.3
hist ty 2
hide range x -0.4,0.5 y -1,-.5 z 0.3,0.8
plot create plot Blocks
plot block colorby mat disp line color cyan
plot add axes
cycle 5000
save tun1.3dsav
ret

The three joints and the excavation in this model form an isolated wedge in the roof of the excavation.
The wedge is potentially unstable, and can slide along the joint plane dipping at 65◦ . In Example 2.8
we reduce the strength of the joint structure in the model by setting the cohesion and tensile strength
to zero, and the friction angle to 6◦ .*
The failure after an additional 5000 cycles is shown by the block plot in Figure 2.33. The wedge
in the roof of the excavation has become detached from the surrounding blocks and is falling into
the excavation. Blocks in front of the unstable wedge are hidden for better viewing of the wedge.
(Hidden blocks are still present for mechanical calculations.) The instability is also indicated by
the z-displacement history plot in Figure 2.34. The history at location (0.3, −0.1, 0.3) corresponds
to one vertex on the wedge. Note that we reset the time, history records and displacement in the
model in Example 2.8, so that only the change in displacement due to the drop in joint strength is
monitored.

* Alternatively, we could start the analysis with the tunnel blocks still in place and the joint strength
set to a low value, and solve for an initial equilibrium state. Then, we could excavate the tunnel
and monitor the response.

3DEC Version 5.2


GETTING STARTED 2 - 53

E

pGre00
 
0 u0
i
0SSGG
pGrelG,lrG0p:Ge:pe0

 :0 
r

  o 
 " ":0GiG5.pp.p
 :0riree5

Figure 2.33 Sliding wedge in tunnel

E

pGre009
 
0 u0
i
0SSGG 
pGrelG,lrG0p:Ge:pe0
 
p0l&  "
00r.G3p
i0



l
  e nm l2














         

e nm H

Figure 2.34 z-displacement history at (.3, −0.1, .3)

3DEC Version 5.2


2 - 54 User’s Guide

2.6.6 Saving/Restoring Problem State

Two other commands, SAVE and RESTORE, are helpful when performing analyses in stages. At the
end of one stage (e.g., initial equilibrium), the model state can be saved by typing
save file.sav
where file.sav is a user-specified file name. The extension “.SAV” identifies this file as a saved file
(see Section 2.9). 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 the model from the beginning 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 the previous
example, the state should be saved after the initial equilibrium stage. Then, different methods can
be evaluated to stabilize the falling block.
For example, we inserted
save tun0.sav

after the STEP 500 command at the end of the data file for Example 2.7. Now we try stabilizing the
block with cable reinforcement, using the commands in Example 2.9. A single cable is installed
through the wedge and into the surrounding rock. See Section 3 in Theory and Background and
Section 1 in the Command Reference for descriptions of the STRUCT cable command and cable
parameters assigned with the PROPERTY command.

3DEC Version 5.2


GETTING STARTED 2 - 55

Example 2.9 Stabilize roof block with a cable bolt


rest tun0.3dsav
; reduce friction along joints
prop jmat 1 jfric 6.0 jcoh 0.0 jten 0.0
;
; add cable support
struct cable 0.3 0.0 0.3 0.7 0.0 0.7 prop 1 seg 4
struct prop 1 area 5e-4 e 1e9 yield 1e6 kbond 15e8 sbond 1e9
;
reset time hist disp
hist unbal
hist zdisp 0.3,-0.1,0.3
hist ty 2
hide range x -0.4,0.5 y -1,-.5 z 0.3,0.8
plot current plot Blocks
plot clear
plot block colorby mat disp line color cyan
plot add axes
plot create plot Z-Disp
plot clear
plot hist 2 xaxis label ’Step’ yaxis label ’Z-Displacement’
cycle 5000
save tun2.3dsav
ret

After the run is completed, the saved file, “TUN2.SAV,” can be restored and evaluated to study
the effect of cable reinforcement. A history of z-displacement shows that the wedge has stopped
moving after 4.3 × 10−3 m of vertical displacement.
The file “TUN0.SAV” can be restored again, and different cable locations, orientations and prop-
erties investigated. Several files can be linked together, with RESTORE tun0.sav beginning each
section, and a different file name saved after execution. Each save file can then be evaluated
separately after the entire run is completed.

3DEC Version 5.2


2 - 56 User’s Guide

E

pGre004
 
0 u0
i
0SSGG
pGrelG,lrG0p:Ge:p30


p0l&  "
00r.G3p
i0 



l
  e nm lo










         

e nm o

Figure 2.35 z-displacement history at (.3, −0.1, .3) – wedge is stable

2.6.7 Summary of Commands for Simple Analyses

The major command words described in this section are summarized in Table 2.4. These are
all that are needed to begin performing simple analyses with 3DEC. Start by running simple
tests with these commands (e.g., direct shear tests on single joints, or simple excavation stability
analyses). It may be helpful to review the detailed description of these commands in Section 1.3 in
the Command Reference. Then try adding more complexity to the model. Before running very
detailed simulations though, we recommend that you read Section 3, which provides guidance on
problem solving in general.

3DEC Version 5.2


GETTING STARTED 2 - 57

Table 2.4 Basic commands for simple analyses


Function Command
Block Model Creation POLYHEDRON
Block Cutting JSET
TUNNEL
DENSIFY
Material Model & Properties for GENERATE
Blocks and Joints CHANGE
PROPERTY
Boundary/Initial Conditions BOUNDARY
INSITU
Initial Equilibrium (with gravity) GRAVITY
STEP
Perform Alterations DELETE
CHANGE
PROPERTY
BOUNDARY
STRUCTURE cable
Monitor Model Response HISTORY
PLOT
Save/Restore Problem State SAVE
RESTORE

3DEC Version 5.2


2 - 58 User’s Guide

2.7 Sign Conventions

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

BLOCK MOTION – Positive motion is in the positive coordinate axes directions.

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

SHEAR STRESS – With reference to Figure 2.36, 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.36 are all positive. The stress tensor is
symmetric (i.e., complementary shear stresses are equal).
z

σzz

σzx σzy

σxy σxx σyz


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

σzx
σzy
σzz

Figure 2.36 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).

3DEC Version 5.2


GETTING STARTED 2 - 59

PORE PRESSURE – Fluid pore pressure is positive in compression.


DIP, DIP DIRECTION – Dip and dip direction assume that the x-direction corresponds to “East,”
the y-direction corresponds to “North,” and the z-direction corresponds 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.

3DEC Version 5.2


2 - 60 User’s Guide

2.8 Systems of Units

3DEC accepts any consistent set of engineering units. Examples of consistent sets of units for basic
parameters are shown in Table 2.5. The user should be very careful 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 are performed in 3DEC except for friction and dilation angles, which are entered
in degrees.
Table 2.5 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 .

When selecting a system of units, care should be taken to avoid calculations that approach the pre-
cision limits of the computer hardware. For Pentium-based computers, the range is approximately
10−35 to 1035 in single 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.

3DEC Version 5.2


GETTING STARTED 2 - 61

2.9 Files

There are several types of files that are either used or created by 3DEC. The files are distinguished
by their extensions, and are described below. All files may be accessed through the File Open
menu item.

PROJECT FILES
“3DEC.3DPRJ – Project files are the way 3DEC keeps track of all of the plots and all of the data,
FISH and save files that are associated with a particular model. The project file also defines the
base folder where items will be stored. It is important that a project file be created when starting
a 3DEC project. If this is not done, then files created using the command line may be stored in
unexpected locations. The current project may be restarted easily when 3DEC is restarted. This
prevents the user from having to search for the project and the associated files each time. When the
project is complete, all of the files that make up the project may be bundled into a single file for
archiving purposes.

DATA FILES
The user has a choice of running 3DEC interactively (i.e., entering 3DEC commands while in the
3DEC environment) or via a data file. The data file is a formatted ASCII text file created by the
user which contains the set of 3DEC commands that represents the problem being analyzed. In
general, creating data files is the most efficient way to use 3DEC. To use data files with 3DEC, see
the CALL command in Section 1 in the Command Reference. Data files can have any file name
and any extension. It is recommended that a common extension (e.g., “.3DDAT” for 3DEC input
commands, and “.FIS” for FISH function statements) be used to distinguish these files from other
types of files. Important note: The end of each line in a text file must be terminated by a carriage
return. If it is not, the line will not be processed. It is a good idea to put in a “ret” line, or comment,
as the last line of a data file in order to avoid this.

SAVE FILES
“3DEC.3DSAV” – This file is created by 3DEC at the user’s request when issuing the command
SAVE. The user may specify a file name by issuing the command SAVE filename, where filename is a
user-specified file name. “3DEC.3DSAV” 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
3DEC run.

LOG FILES
“3DEC.LOG” – This file is created by 3DEC 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 “3DEC.LOG,” which will appear
in the default directory after exiting 3DEC. The user may specify a different file name by issuing

3DEC Version 5.2


2 - 62 User’s Guide

the command SET log 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 providing a record of
the 3DEC work session; it also provides a document for quality-assurance purposes.

HISTORY FILES
“3DEC.HIS” – This file is created by 3DEC at the user’s request when issuing the command
HISTORY write n, where n is a history number (see the HISTORY command in Section 1 in the
Command Reference). It is a formatted ASCII file. The default name of the file is “3DEC.HIS,”
which will appear in the default directory after exiting 3DEC. The user may specify a different file
name by issuing the command SET hisfile filename. The user-supplied filename takes the place of
“3DEC.HIS.” 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.

TABLE FILES
“3DEC.TAB” – This file is created by 3DEC at the user’s request when issuing the command TABLE
n write dx, where n is the table number and dx specifies the abscissa spacing for the data points
(see the TABLE command in Section 1 in the Command Reference). It is a formatted ASCII file.
The default name of the file is “3DEC.TAB,” which will appear in the default directory after exiting
3DEC. The user may specify a different file name by adding the filename to the end of the TABLE
n write dx command. The file will consist of a single column of y-data at an even spacing of dx. If
dx = 0, the data will be the actual x,y pairs in table n.

PLOT FILES
Plot files are created at the user’s request by issuing the command PLOT bitmap filename in the
command mode, after first creating the plot. A PNG-format file will be created with the user-
specified filename when the command is issued.

3DEC Version 5.2


GETTING STARTED 2 - 63

2.10 References

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

3DEC Version 5.2


2 - 64 User’s Guide

3DEC Version 5.2

You might also like