What's Different between FLAC and FLAC2D?
FLAC2D is different from FLAC in several important ways:
- The most apparent difference is the new user interface (UI). All Itasca Version 9 programs use the our updated common framework and UI. This permits users to seamlessly move between Itasca programs and, for FLAC2D, to easily couple to PFC2D 9.0 (now available as an Alpha demonstration version). Also, as new features and capabilities are created in one program, they can become available in all the other common-framework programs.
- FLAC2D does not use i, j space — making it easier to build, and work with, models. Grids may be structured or unstructured, but in either, case zones and gridpoints are identified by IDs, spatial location (i.e., x,y-coordinates), or group names — rather than by regular i, j indexes.
- FLAC2D commands and FISH syntax have been updated and match closely those in the current version of FLAC3D and, in many cases, they are exactly the same, absent the z-coordinate. While there will be a learning curve for FLAC users (that users in 3DEC, FLAC3D, PFC, and UDEC have already undergone), this change provides a major performance improvements (e.g., multi-threaded FISH), improved functionality, more built-in functions, and new capabilities (e.g., inline FISH). See Mapping in the Help in Transitioning section below.
- Built-in and integrated Python scripting to control and modify models. Python includes NumPy, SciPy, and PySide for powerful computing, advanced scientific graphics, and creating custom UI tiles (respectively).
- There is no Project Tree. Commands and FISH functions are stored in data files that are listed in the Project tile on the left – similar to the Project Tree in FLAC. The difference is that the data files may be called in any order. Commands generated though UI interactions (sketch sets, model pane, plotting, etc.) are still found in the Record. To save these commands as data files, view the Record tab at the bottom, right click and select “Save as Data File”. You may also copy text from the Record tab. To save these commands as data files, view the Record tab at the bottom, right click and select “Save as Data File”. You may also copy text from the Record tab and paste into a data file.
- Although FLAC has a built-in text editor, the FLAC2D built-in text editor is far more powerful and easier to work with for all your FISH scripting needs. Data files may also contain Python code; just save the data file as a *.py file to run it using Python. Python has its own space, as a Console tab, to issue code and review output.
Stress Initialization and Boundary Conditions
It is important to appreciate that, like FLAC3D, FLAC2D initializes stress from the model origin (0, 0), whereas FLAC initializes stress from the starting position of the specified range. Also, stress gradations should be specified in terms of change in stress per unit length, whereas FLAC bases the stress variations on the total length of the boundary.
For example, for a 60 m deep model domain with rock density of 2700 kg/m3 and a ko ratio of 0.5, model stresses can be initialized using the commands:
set gravity 9.81
initial syy -1589220 var 0.0, 1589220 ;(2700. * 9.81 * 60)
initial sxx -794610 var 0.0, 794610 ;(2700. * 9.81 * 60 * 0.5)
initial szz -794610 var 0.0, 794610 ;(2700. * 9.81 * 60 * 0.5)
model gravity 0 -9.81
zone initialize stress-yy 0.0 gradient 0, [2700.*9.81]
zone initialize stress-xx 0.0 gradient 0, [2700.*9.81*0.5]
zone initialize stress-zz 0.0 gradient 0, [2700.*9.81*0.5]
The square brackets above indicate an inline FISH function, which is useful for embedding calculations or FISH variables into commands.
Where stress initialization is based simply on gravitational loading, in FLAC2D the previous three commands can simply be replaced with the the following command, which will automatically accounts for any material density variation over the model domain. They keyword ratio refers to the ko ratio of horizontal to vertical stress.
zone ini-stress ratio 0.5
In FLAC, zones and gridpoints are identified by their i,j coordinates. For example, to fix the gridpoints on the left side of a model, you may give a command like fix x i=1. In FLAC2D, you must use the keyword range when identifying things. Since there is no i,j, things are commonly identified with coordinates or group names. A possible equivalent to the previous command in FLAC2D would be zone gridpoint fix velocity-x range position-x 0.
How are FLAC and FLAC2D alike?
- FLAC2D provides Sketch sets and the Model Pane, which are similar to the Geometry Builder and Virtual Grid editors in FLAC. Sketch sets allow you to import DXFs or background images, draw lines and shapes, assign groups, and specify zoning densities.
- There is a Record which tracks anything that modifies the model state, including most UI interactions. Parts of the Record may be reviewed to aid in learning commands and copied into a data file to reproduce some functionality in the future.
- Model groups, properties, and constitutive models can be assigned interactively using the Model Pane.
- You can add, import, and export material properties using a built-in materials database. The database includes an example set of soil properties.
- The common-framework uses Projects to manage any data files, plots, saved states, and the model record.
- Like FLAC, FLAC2D has a Console where any commands issued and program output (warning/error messages or data) are displayed. There are also two tabs associated with the Console to display any information lists and the model state Record.
- Generating plots in FLAC2D is similar to FLAC. You need to create a new plot and then add specific plot items to it (e.g., zones, vectors, structural elements). One difference is that there is not a long list of possible plot items to choose from. Instead, you just choose what needs to be plotted (zones, for example) and then specify a label (e.g., groups) or a contour (e.g., displacements).
What's Next for FLAC?
While FLAC has been such an important program for Itasca engineers and our clients, it has reached the end of its development life. The advent of FLAC2D ensures that Itasca will continue to provide a powerful, cost-effective, and fast two-dimensional option for analyzing engineering designs and solutions appropriate to plane-strain and axisymmetrical problems. FLAC2D will also make it easier to learn and effectively work with numerical modeling and simplify the transition to three-dimensional modeling.
As some FLAC features will not be available initially (e.g., two‐phase flow, automatic remeshing), anyone purchasing FLAC2D will be able to download and run FLAC 8.1 at no additional cost. Technical support and software bug fixes will also continue to be offered for FLAC 8.1 until one year after FLAC2D 10 is released.
FLAC/Slope 8.1 will continue to be available as freeware and will continue to be supported and maintained for the foreseeable future.
What's Next for FLAC2D?
Developing FLAC2D has been a major effort at Itasca but not everything from FLAC 8.1 will be available in FLAC2D. Although not available for the Pre-release version, Itasca anticipates that the following features will be available for the Final Release version in early 2023:
- Optimization and calculation speed improvements
- Liners (structural elements)
- Improved fluid flow logic that largely replaces FLAC 8.1's Two-Phase Flow analysis
- Updated UDMs for UBCSand, PM4Sand, and PM4Clay
- More examples, including a tutorial for automatic remeshing using FISH (for structured meshes)
- Improvements to the UI
Features to look forward in future versions of FLAC2D are:
- FLAC to FLAC2D "converto" tool to automatically translate (convert) FLAC commands and FISH scripting to FLAC2D
- Plastically (non-linear) deformable structural elements
- Automatic remeshing, for structured and unstructured grids, to avoid calculation errors in large-strain mode modeling where the mesh can become distorted
- Axisymmetry calculations for fluid, thermal, interfaces, and dynamic analyses (static mechanics available now)
- FLAC3D slice tool to run corresponding two-dimensional analysis in FLAC2D
- Simple elastic spring support (structural elements)
- Improvements to the UI
- And much more ...
FLAC2D includes a major update of the command and FISH scripting syntax from FLAC. To help you learn the new syntax and convert existing projects, an extensive set of one-to-one Maps are available. You can find these in the documentation set that is included with FLAC2D or online. Look in the documentation table of contents under FLAC (FLAC2D/FLAC3D) > Maps > Mapping Commands from Old to New FLAC2D Syntax (and > Mapping FISH from Old to New FLAC2D Syntax). For example, the command New is now Model new and the FISH function atan is now math.atan. In some cases, there will not be any equivalent syntax (e.g., the command Print Head or the FISH function jzones).
Powerful Help Tools
- Contextual Help: Press the F1 key at any time to show documentation for the current context as determined by the program. This may be an active window, a command in the console, or a selected control in the UI, for instance. Pressing F1 when the cursor is in a command — in either the Console pane or in a data file in the Editor — will open the documentation to the specific command or keyword under the cursor. You can read the documentation in the program or click the associated browser icon to read the documentation more readily in your default web browser.
- Inline Help for Intelligent command completion: Use Ctrl+Space while typing a command to see and insert the next keyword from a list of those possible at the current cursor position.
- All help and documentation is HTML based and fully searchable.
Extrude/Export FLAC Grids
As of the FLAC 8.10.154 update, it is possible to:
- Export FLAC 8.10 model grids to FLAC2D 9 grid files.
- Extrude FLAC 8.10 model grids into the page as FLAC3D 9 grid files.
- Revolve FLAC 8.10 model grids around the Y-axis, for a specified angle, and to export to FLAC3D 9 grid files.
Then simply import the generated grid file into your FLAC2D or FLAC3D project, as appropriate.
New and More Training Options
Itasca is in the process of developing and publishing more online training content on Itasca's Software Academy, our new learning management system (LMS). Itasca wants to make learning Itasca software more accessible and easier. More content will be coming for FLAC2D by Release in early 2023. Both free and paid content will be available. External teaching partners are also invited to participate in Itasca's software academy.
Need more help? Contact our Technical Support teams.