|
This optional feature allows the user to create joint constitutive models that are compiled as DLL
files and are linked into 3DEC during execution. This feature is included in the User Defined Models (UDM) option, and has been implemented in a fashion similar to the way user-defined zone constitutive models are implemented. The models are designed to accept the current normal and shear stresses, along with an incremental normal and shear displacement, as inputs, and return new values of the normal and shear stress.
|
|
Version 4.1 includes a version (in addition to the 32-bit version) that is operable on a 64-bit processor computer running the Windows XP X64 or Windows Vista 64-bit operating system. The 64-bit version will allow a virtually unlimited model size (17 billion GB of addressable memory). The 64-bit version is functionally equivalent to the 32-bit double precision version. Models developed in the 64-bit version will require twice the memory of the 32-bit single precision version.
|
|
The new Nodal Mixed Discretization (NMD) technique provides more accurate solutions for plasticity analyses with models composed of linear tetrahedral zones, overcoming the over-stiff behavior observed during plastic flow with this type of zone. This provides accuracy of plasticity calculations similar to those for mixed discretization, but without the geometric constraints of hexahedral blocks.
|
A "Factor of Safety" can be determined in 3DEC for any selected parameter by calculating the ratio of the selected parameter value under given conditions to the parameter value that results in failure. For example:
Note that the larger value is always divided by the smaller value (assuming that the system does not fail under the existing conditions). In this case the definition of failure must be established by the user.
The strength reduction method for determining factor of safety is implemented in 3DEC through the SOLVE fos command. This command implements an automatic search for factor of safety using a bracketing approach, as follows. First the code finds a "representative number of steps" (denoted by Nr ), which characterizes the response time of the system. Nr is found by setting the strength to a large value, making a large change to the internal stresses, and finding how many steps are necessary for the system to return to equilibrium. Then for a given factor of safety, F, Nr steps are executed. If the unbalanced force ratio is less than 10-5, then the system is in equilibrium. If the unbalanced force ratio is greater than 10-5, then another Nr steps are executed, exiting the loop if the force ratio is less than 10-5. The mean value of force ratio, averaged over the current span of Nr steps, is compared with the mean force ratio over the previous Nr steps. If the difference is less than 10%, the system is deemed to be in non-equilibrium, and the loop is exited with the new non-equilibrium F. If the above-mentioned difference is greater than 10%, blocks of Nr steps are continued until either (1) the difference is less than 10%, or (2) 6 such blocks have been executed, or (3) the force ratio is less than 10-5. The justification for case (1) is that the mean force ratio is converging to a steady value that is greater than that corresponding to equilibrium; the system must be in continuous motion.
The SOLVE fos command may be given at any stage in a 3DEC run, provided that all non-null zones contain Mohr Coulomb-based models. It is recommended that the SOLVE fos command be given at an equilibrium state of a model (to improve solution time), but this is not essential. When 3DEC is executing the SOLVE fos command, the bracketing values for F are printed continuously to the screen to monitor solution progress. Save files are produced for the last stable state and the last unstable state, so that velocity vectors, and so on, can be plotted - allowing a visualization of the failure mode. It is highly recommended that users verify that the automatic bracketing process has correctly identified both the stable and unstable models. Some modes of failure may occur without detection.
|
|
All DLL models stored in the "plugins" directory are automatically loaded at runtime. This makes
the restoration of save files easier. Strict controls have been implemented to avoid confusion between
DLL model versions.
|
In the previous version of 3DEC, the structural element liner nodes were placed in the center of the zone faces of the opening to be supported. The zone faces had to be inside the range specified when the STRUCT liner command was given. This procedure made it difficult to line tunnels of irregular cross section. It was also difficult to place liners in tunnel intersections.
The new logic places the liner nodes at the same locations as the zone face nodes. Also, there is a new range control that allows the user to set surface regions (SREGION) along the tunnel surface using multiple MARK commands with different ranges. One such range allows the surfaces between different regions or material types to be assigned an sregion. This allows the surfaces to be prepared for lining before the excavation takes place. Once the entire surface has been defined (or painted), the liners can be placed. Lining of irregular shapes and intersections is now much easier since the liners follow a pre-existing zone face geometry. 3DEC 4.1 also has the ability to plot the liner locations, liner membrane stresses, liner moment, and liner fiber stresses.
The 3DEC model in the images below shows a subway tunnel system design that uses the new liner emplacement technique to line a tunnel and central pillar. The excavation has multiple cross sections and an intersecting cross tunnel. The analysis considered both static and dynamic loading conditions.
Left: An existing subway system (running east west, the upper tunnels appearing in the figure) is to have three additional tunnels added to support a new rail line. Right: The area under consideration for dynamic analysis with 3DEC, to explore its susceptibility to seismic shock.
The least compressive stresses in the liner after excavation of the tunnels.
|
|
The new 3DEC interface features faster, OpenGL-based model rendering for rapid rotation and translation of model views. The interface provides menu-based access to tools for plotting, and interactive tools for view manipulation and range definition. Complete menu-driven access to all 3DEC file-handling operations is provided. All plot items can be selected with separately defined properties. This allows the construction of very complex plots. New tools such as cut planes, slices and cutouts, along with transparency, allow the creation of views inside the model. Expanded surface stress and displacement contours have been added.
For more, view the in-depth look at 3DEC's new user interface.
|
 Subway tunnel station with surrounding mass seen in transparent mode
|
|
Users already familiar with 3DEC's powerful, built-in programming language FISH will find that in 3DEC 4.1 a number of improvements have been made to reduce errors and ambiguity when using the language, new capabilities expand on its existing strengths, and new tools are available to assist in troubleshooting.
Local Variables
Function Arguments
Vector Types
Dynamic Arrays
Error Reporting
Command Line Debugging
Safe Mode On By Default
Optional Mode Prevents Auto-Creation of Symbols
C++ FISH Intrinsics
Local Variables
Local variables can now be created inside a FISH function. These variables exist only during the execution of the function and cannot conflict with other FISH functions the way global variables can. This capability provides much greater control of variable assigment and use, and allows for the ability to pass arguments to functions (see next).
Function Arguments
The ability to define FISH functions that accept arguments drastically reduces the need to use global variables when passing data to functions. Since arguments passed to a function are local variables, they are more protected against unexpected or unwanted change by other functions in FISH code.
Vector Types
Vectors are now available as intrinsic types, which makes handling triplet data types (such as x,y,z coordinates) easier and faster. The vector type streamlines FISH code by making it possible to return all three components at once, rather than requiring, as previously, three different functions to extract the three individual members of the vector.
Dynamic Arrays
Previously in FISH, an array was fixed and final at definition, and persisted in memory indefinitely until all model information was cleared with a NEW command. New dynamic arrays allow for the creation, deletion, and re-use of arrays, which adds greater usability while also offering better capablity to avoid memory waste.
Error Reporting
FISH runtime errors will now report the line number and file name of the source code that produced the error. This makes it much easier to find and fix bugs in executing code. FISH runtime errors will now report the line number and file name of the source code that produced the error. This makes it much easier to find and fix bugs in executing code.
Command Line Debugging
Using the command DEBUG fish (where fish is the name of a function) will put FISH into debug mode. In this mode, the code stops upon entry to the function and awaits for response from the user on how to proceed. Command line input then allows for common debugging operations: insertion of breakpoints, stepping through (or over) lines, querying for the value of FISH symbols, returning the call stack or pseudo-code objects, and more.
Safe Mode On By Default
In safe mode, FISH symbols are explicity identified to the command processor by prefixing their name with the "@" character. This character indicates that what follows is a FISH symbol, and eliminates the possibility of ambiguity (keyword/symbol naming overlap) during command processing. In previous versions, safe mode was off by default. In 3DEC 4.0, it is on. This setting may be optionally set either way using the code's "Options" dialog.
Optional Mode Prevents Auto-Creation of Symbols
Previously, FISH would automatically create a global variable out of any unrecognized string. In the new mode this behavior is prevented. For long or complicated FISH code this will prevent the possibility of an error (a typo, for instance) that would be difficult to track down and correct. When this mode is on, global variables may still be created by using the keyword global at definition.
C++ FISH Intrinsics
Users may now create, in C++, their own FISH intrinsics. The C++ code can be compiled into a dll that is automatically loaded at runtime, making the user-defined instrinsics available like any other built-in FISH intrinsic. This powerful capability provides nearly unlimited extensibility to the capabilities of FISH and makes the language an open-ended toolbox for customizing the use of 3DEC.
|
|
|
New plot types have been added to make interpreting the loads and displacements in structural elements easier. The ability to plot outer fiber stresses, membrane stresses, and maximum moments in liner elements has been added. Improved plots of cable bolt forces and displacements are included. User defined damping parameters. This new feature allows the user to control the damping parameters used for block interaction. Each type of interaction (i.i., face-face, edge-face, etc.) and material type may have different damping constants. This allows the user to control the coefficient of restitution for bouncing block type problems.
|
|
In addition to the standard per-machine license, the new network key facility allows a single hardware key to be installed on a central (server) computer for a network. 3DEC is run from any computer on the network - depending on the number of licenses available from the key. Network keys require a special licensing arrangement and installation.
|
|
A compiled help file containing the Command Reference, FISH Reference, and Verification Problems & Example Applications volumes from the 3DEC Manual is available on 3DEC's "Help" menu.
|
|