rblock cut
command
Syntax
- rblock cut keyword ... <range>
Primary keywords:
aspect-ratio deviation fractures group group-facets group-fractures group-sides intersects-box keep-contacts length-minimum plane persistence size sliver-group sliver-intact sliver-remove
Cut the rigid blocks in the given
range
. This is accomplished by cutting the core shape with planar slices. One can either cut by a single plane or by fractures in a DFN. As the blocks are convex, a cut by a single plane or fracture can only result in two convex rigid blocks. A number of criteria are provided to determine if the rigid blocks resulting from a cut are retained; rigid blocks not meeting the criteria are deemed slivers. The presence of slivers may negatively impact performance—they should be avoided. The sliver criteria include: distance of cut points from the specified point on the cut plane, aspect ratio of the resulting blocks, minimum {area in 2D, volume in 3D} of the resulting blocks, or minimum ratio of resulting block {area in 2D; volume in 3D} to the original block {area in 2D; volume in 3D}. Slivers may either be deleted or, if a sliver is detected, the cut can be deemed unsuccessful and the original rigid block retained (see thesliver-remove
keyword). Global persistence is also added (see therblock cut persistence
keyword) so that the success of a cut may determined probabilistically.Note
- Only the core shape is cut.
- While cycling, rigid blocks can only be cut before cycle point 0 (i.e., when the timestep is calculated).
- aspect-ratio f
Specify the maximum aspect ratio of the rigid blocks resulting from a cut to produce a sliver. The default value is 100.
- deviation f1 <f2 >
Specify a deviation (in degrees) of the {dip and dip direction in 3D; dip only in 2D}. If the cut would be successful with the specified plane, the plane orientation is perturbed randomly (using a uniform distribution) with dip within f1 degrees {and dip direction within f2 degrees in 3D}. Thus, different orientation is used for each cut with the same plane. By default there is no deviation.
- fractures <s > <keyword ...>
Cut rigid blocks with fractures. If the optional DFN name s is given only fractures from the specified DFN are used. By default all cut vertices must fall within a fracture for a cut to be successful. This is equivalent to stating that the fracture must cut the entire block. The optional
throughgoing
keyword specifies that a rigid block will be cut if the fracture intersects the rigid block at all. Thus a small fracture entirely inside a rigid block may cut the block.The optional
infinite-plane
keyword specifies that each fracture is treated as an infinite plane. Fractures are processed one at a time by decreasing fracture area.- infinite-plane
Treat each fracture as an infinite plane, cutting the entire model. Cannot be given with the
throughgoing
keyword.
- throughgoing
Fractures cut rigid blocks that they intersect. Cannot be given with the
infinite-plane
keyword.
- group s <slot slot >
The group slot slot is set to the group s for the cut rigid blocks. If
slot
is not specified, then the group s is assigned to the group slot Default.
- group-facets s <slot slot >
The group slot slot is set to the group s for the facets that are cut. If
slot
is not specified, then the group s is assigned to the group slot Default.
- group-fractures <keyword ...>
Apply groups from fractures.
- group-sides s <slot slot >
The group slot slot is set to s appended with either “_above” or “_below”, depending on whether the centroid of the block is above or below the cutting plane or fracture. If
slot
is not specified, then s is assigned to the group slot Default.
- intersects-box fxmin fxmax <fymin fymax <fzmin fzmax >> (z-components are 3D ONLY)
Restrict cutting to the rigid blocks that intersect the specified box. Following specification of the extent of the box in the \(x\)-direction, if subsequent extents are omitted, then the latest specified extent is used.
- keep-contacts b
When rblocks are cut all existing contacts are deleted and new contacts may be created where previously existing contacts once existed. By default, new contact models are inserted at these new contacts based on the setting of the CMAT. When b = true, the previous contact models are retained when possible. The normal contact force is also set at the contact that is between the cut blocks.
- length-minimum f
Specify the minimum length of the rigid blocks resulting from a cut to produce a sliver. The aspect ratio computation provides a set of axes aligned with the rigid block maximum and minimum dimensions. The minimum length is the minimum dimension. The default value is 0.
- plane keyword ...
Cut all blocks in range by a single plane.
- normal vnorm
Specify the normal of the plane. By default the normal points in the positive {y-direction in 2D; z-direction in 3D}.
- point vpt
Specify a point on the plane. Be default the point on the plane is the origin.
- persistence f
Specify the persistence of the cut. If a cut is successful, a uniform random number is selected to model persistence; if this value is greater than or equal to f the cut is abandoned and the original rigid block is retained. The default value is 1.0.
- size keyword
Specify size parameters for a cut to be deemed successful.
- absolute f
Specify the absolute minimal {area in 2D; volume in 3D} of a rigid block resulting from a cut to produce a sliver. The default value is 0.0.
- sliver-group s <slot slot >
The group slot slot is set to s for the cut rigid blocks that are deemed slivers. If
slot
is not specified, then s is assigned to the group slot Default. If rblocks are kept intact (using thesliver-intact
keyword) then this group will be assigned to any intact rblocks where cuts would have created slivers.
- sliver-intact b
Specify the behavior when a sliver is encountered. The cut is deemed to produce a sliver if either: 1) the aspect ratio of one of the resulting rigid blocks is larger than the value specified with the
aspect-ratio
keyword; 2) the ratio of the {area in 2D; volume in 3D} of one of the resulting rigid blocks to the original rigid block is smaller than the value specified with thesize
relative
keywords; or 3) the {area in 2D; volume in 3D} of one of the resulting rigid blocks is smaller than the value specified with thesize
absolute
keywords. If a sliver condition is detected then, if b is true, the cut will be deemed unsuccessful and the original rblock will be kept. This keyword should not be used with thesliver-remove
keyword.
- sliver-remove b
Specify the behavior when a sliver is encountered. The cut is deemed to produce a sliver if either: 1) the aspect ratio of one of the resulting rigid blocks is larger than the value specified with the
aspect-ratio
keyword; 2) the ratio of the {area in 2D; volume in 3D} of one of the resulting rigid blocks to the original rigid block is smaller than the value specified with thesize
relative
keywords; or 3) the {area in 2D; volume in 3D} of one of the resulting rigid blocks is smaller than the value specified with thesize
absolute
keywords. If a sliver condition is detected then either the block that is a sliver may be deleted (if b is true) or the sliver may be retained (if b is false). By default slivers are removed. This keyword should not be used with thesliver-intact
keyword.
Usage Examples
Cut rigid blocks with all fractures present. Resulting rigid blocks with aspect ratio greater that 10 or size less than 0.0001 multiplied by the original block size are deemed slivers and deleted.
rblock cut fractures aspect-ratio 10 size relative 0.0001
Cut rigid blocks with the fractures in the DFN named hori
. A cut happens if a fracture intersects any portion of the rigid block.
rblock cut fractures 'hori' throughgoing
Cut rigid blocks with the fractures in the DFN named tunnel-arc
that intersect with the specified box. The resulting rigid blocks are placed in the group supportBlock
; any slivers resulting are not deleted, and are put in a group named sliver
in the slot sliver
. A cut happens if the fracture intersects any portion of the rigid block.
rblock cut fractures 'tunnel-arc' throughgoing group 'supportBlock' ...
intersects-box 1 2 -1.5 1.5 1 2 ...
sliver-remove false sliver-group 'sliver' slot 'sliver'
from “geometry.dat” in Rigid Block Model of Tunnel Excavation
Was this helpful? ... | PFC © 2021, Itasca | Updated: Feb 25, 2024 |