Examples • Example Applications

# Grid Generation for Intersecting Tunnels

Problem Statement

Note

View this project in FLAC3D:

1. Help ► Examples…
2. Pick “ExampleApplications”
3. Pick “IntersectingTunnels”
4. Select “IntersectingTunnels.f3prj” to load

The main data file used is shown at the end of this example. The remaining data files can be found in the project.

this could use a rewrite (particularly new figures and better indicators for BB tools) to be more illustrative of what is happening in building blocks

As demonstrated in the preceding example, FLAC3D is well-suited to simulate the behavior of an advancing tunnel excavation and support. The program can also be applied to examine the three-dimensional problem of tunnel intersections. However, the creation of model grids for intersecting tunnel simulations can be a formidable task.

This example illustrates how to build intersecting tunnels using the FLAC3D Building Blocks pane of the GUI.

Two example models are created to demonstrate this capability. The first example is a 45° intersection of two tunnels of equal size. The second example is the intersection of a small service tunnel with two parallel main tunnels.

Modeling Procedure

Intersection of Tunnels at 45°

If intersecting tunnels are the same height and shape (horseshoe-shaped), then, using Building Blocks, the geometry construction is divided in several steps.

The first step is to create the basic geometry of intersecting tunnels, with everything being flat lines.

Figure 1: Basic geometry of intersecting 45° tunnels—flat lines.

In the second step, by using curved lines (arcs and splines) and control points, shape the curved line geometry of the intersection tunnels.

Figure 2: Basic geometry of intersecting 45° tunnels—curved lines.

The third step is to fill the model space with blocks representing rock, assign groups for tunnels and rock mass, and assign zone sizes along edges for proper zoning.

Figure 3: FLAC3D grid for 45° horseshoe-shaped tunnel intersection.

The Intersection of a Service Tunnel with Two Main Tunnels

Again, the task is divided in several steps.

In the first step, intersection geometry of one main tunnel and a service tunnel is created. In this case, it is basic geometry without details of exact intersection surfaces.

Figure 4: Service tunnel basic geometry—no intersection surfaces.

The second step is to work out the proper intersection of one main tunnel and a service tunnel.

Figure 5: Proper intersection of one main tunnel and a service tunnel.

In the third step, using results of the previous step, copy the intersection of one main tunnel and a service tunnel to create a second intersection by copying/pasting the blocks (using commands from the Edit menu).

Figure 6: Copy results of step 2 to create the second intersection.

Next, connect pieces together to create one service tunnel going through two main tunnels (using and in Building Blocks).

Figure 7: One service tunnel going through two main tunnels.

The fourth step is to fill in blocks representing the rest of the model (“rock” mass) and adjust zone sizes along edges for proper zoning (also assign the group “Tunnels”, “ServiceTunnel”, and “Rock”).

Figure 8: FLAC3D grid of one service tunnel going through two main tunnels.

The data file “IntersectingTunnels.dat” contains the FLAC3D commands to create the grid for the example “Intersection of tunnels at 45°”.

The data file “ServiceTunnel.dat” contains the FLAC3D commands to create the grid for the example “The Intersection of a Service Tunnel with Two Main Tunnels”.

All of the subsequent commands that are called are results of the state record saved commands issued interactive by the Building Blocks pane.

break

Data Files

IntersectingTunnels.dat

;-------------------------------------------------------------
; Generation of tunnel intersection at 45 degree angle
;
;-------------------------------------------------------------
model new
model title 'Intersection of tunnels at 45 degrees'

; building basic topology: flat lines (and plotting it as zones in png files)
program call "GeometryTunnel45flatLines"
zone generate from-building-blocks
model save 'tunnel45-1'

; making curved lines to conform the targeted tunnel shape
; (and plotting it as zones in png files)
zone delete
program call "GeometryTunnel45CurvedLines"
zone generate from-building-blocks
model save 'tunnel45-2'

; filled  space with blocks and tune for better zoning ...
; for the static problem (more refined near tunnels)
zone delete
program call "GeometryTunnel45RefinedForZonning"
zone generate from-building-blocks
model save 'tunnel45-final'


ServiceTunnel.dat

model new
model title 'The Intersection of a Service Tunnel with Two Main Tunnels'
; first part: creates basics geometry of one main tunnel intersecting
; with service tunnel (no intersection survaces here)
program call "GeometryServiceTunnel_part1"
zone generate from-building-blocks
model save 'service-1'

; second part: deals with exact following of intersection
; of the surfaces of two tunnels
zone delete
program call "GeometryServiceTunnel_part2"
zone generate from-building-blocks
model save 'service-2'

; third part: by copy-paste
zone delete
program call "GeometryServiceTunnel_part3"
zone generate from-building-blocks
model save 'service-3'

; fourth part: by copy-paste from the second part and snapping-merge,
; completes service tunnel intersecting two main tunnels
zone delete
program call "GeometryServiceTunnel_part4"
zone generate from-building-blocks
model save 'service-4'

; Fifth part: fills the rest of the model space with blocks and
; assigns zone-sizes per edge for zoning (here also group assignment
; for main "Tunnels", "ServiceTunnel" and "Rock" mass)
zone delete
program call "GeometryServiceTunnel_part5"
zone generate from-building-blocks
model save 'service-final'