FLAC3D - Optional features


The dynamic analysis option permits three-dimensional, fully dynamic analysis with FLAC3D. The calculation is based on the explicit finite difference scheme to solve the full equations of motion, using lumped gridpoint masses derived from the real density of surrounding zones (rather than fictitious masses used for static solution). This formulation can be coupled to the structural element model, thus permitting analysis of soilstructure interaction brought about by ground shaking. The dynamic feature can also be coupled to the groundwater flow model. This allows, for example, analyses involving time-dependent pore pressure change associated with liquefaction. The dynamic model can likewise be coupled to the optional thermal model in order to calculate the combined effect of thermal and dynamic loading. The dynamic option extends FLAC3D's analysis capability to a wide range of dynamic problems in disciplines such as earthquake engineering, seismology and mine rockbursts.

Side and corner free-field boundaries in a FLAC3D model

Grid for earth dam and foundation


The creep option can be used to simulate the behavior of materials that exhibit creep - i.e., time-dependent material behavior. Eight creep models have been implemented in FLAC3D. These are:

  • a classical viscoelastic model;
  • a Burger’s substance viscoelastic model;
  • a two-component power law;
  • a reference creep formulation (the WIPP model) for nuclear-waste isolation studies;
  • a Burger-creep viscoplastic model combining the Burger's creep model and the Mohr-Coulomb model;
  • a power-law viscoplastic model combining the two-component power law and the Mohr-Coulomb model;
  • a WIPP-creep viscoplastic model combining the WIPP model and the Drucker-Prager model; and
  • a crushed-salt constitutive model.

The models are presented in order of increasing complexity. The first model is the classical formulation known as the Maxwell substance, and the second is the classical formulation for a Burger’s substance. The third model can be used for mining applications (e.g., salt or potash mining), and the fourth model is commonly used in thermomechanical analyses associated with studies for the underground isolation of nuclear waste in salt. The fifth model expands on the second model and also includes a Mohr-Coulomb component. The sixth model is a variation of the third model and includes a Mohr-Coulomb component. The seventh model is a variation of the fourth model and includes a Drucker-Prager plasticity component. The eighth model is also a variation of the fourth and includes volumetric and deviatoric compaction behavior.

In addition, it is also possible for users to write their own creep constitutive models using the DLL user-defined models option.

Plastic state at steady state

Contours of strength parameter kshear for rapid-loading case


The thermal option of FLAC3D incorporates both conduction and advection models. The conduction models allow simulation of transient heat conduction in materials, and the development of thermally induced displacements and stresses. The advection model takes the transport of heat by convection into account; it can simulate temperature-dependent fluid density and thermal advection in the fluid. This thermal option has the following specific features.

  • Four thermal material models are available: isotropic conduction, anisotropic conduction, isotropic conduction/advection, and the null thermal model.
  • As in the standard version of FLAC3D, different zones may have different models and properties.
  • Any of the mechanical models may be used with the thermal model.
  • Temperature, flux, convective and adiabatic boundary conditions may be prescribed.
  • Heat sources may be inserted into the material as either point sources or volume sources. These sources may decay exponentially with time.
  • Both explicit- and implicit-solution algorithms are available.
  • The thermal option provides for one-way coupling to the mechanical stress and porepressure calculations through the thermal expansion coefficients.
  • Temperatures can be accessed via FISH for users to define temperature-dependent properties.

FLAC3D grid for heating of a hollow cylinder

C++ Plug-Ins

The C++ Plug-ins option makes it possible for users to develop, customize, and "plug-in" their own distinct units of program functionality or behavior in a way that is powerful, clean, and fast. The C++ programming language uses an object-oriented approach to program structure that confers distinct benefits and efficiencies when it comes to program modularity. The Visual Studio 2010 (v. 10) development environment is required (more is is needed for FISH intrinsics, see below). This option assumes a relatively advanced understanding of programming and a solid knowledge of the C++ language. A good introduction to programming in C++ is provided by Stevens (1994). For FLAC3D, there are two pre-defined areas of C++ -based code customization: Constitutive Models, and FISH intrinsics.

C++ Constitutive Models

User-defined constitutive models can be written in C++ and compiled as DLL (dynamic link library) files to be loaded whenever needed in a FLAC3D simulation. Source files for all FLAC3D's built-in C++ models are provided to users for reference. The same C++ source code may be used to compile the DLLs for use with other Itasca codes. New DLL models also may be obtained from the Itasca web site devoted specifically to model development and exchange: http://www.itasca-udm.com.

C++ FISH Intrinsics

The user may create FISH intrinsics and load them at runtime. The FISH intrinsic is written in C++and is compiled as a DLL file (dynamic link library) that can be loaded whenever it is needed. The FISH intrinsic uses a C++ interface that provides access to the internal structure of FISH, as well as the data of FLAC3D. When loaded, this intrinsic behaves exactly the same as any of the predefined FISH intrinsics (e.g., cos, z head, etc.) — however, it will run anywhere from 10 to 100 times faster. This capability requires the QT Visual Studio Add-In (in addition to Visual Studio 2010).

Stevens, A. Teach Yourself C++, 4th Ed. New York: MIS Press, 1994.