Water flowing in rock dam: seepage flow ######################################## Tutorial 6 and 7 will present the modelling to solve hydraulic fracture on a dam model in both finite element method (FEM) and finite-discrete element method (FDEM). .. figure:: ../../images/Desmos/Hydro.png :alt: Geometry of a Dam Model :align: center Figure 1: Geometry of a Dam Model ================================== 1 Main Steps ================================== #. Initialize the model. #. Create the geometry and the mesh #. Assign material properties. #. Create the group #. assign boundary conditions. #. Set the outputs. ================================== 2 Codes ================================== .. warning:: Please note that, all the setting in the example is based on the developer's computer. You may need to change these details based on your own environment. To start with programming, create a new empty input file or copy it from the existing examples (later add the ``.of`` extension). Begin writing the following commands: ------------------------------------------------------------------- 2.1 Initialize the model ------------------------------------------------------------------- 1. Create a new run and clean up the old memories. .. literalinclude:: examples/HydroSeepage/runme.of :lines: 39 2. Set up the folder name to save your results. Here the folder name is set to be “result”. .. literalinclude:: examples/HydroSeepage/runme.of :lines: 43 3. Set the number of cores to be used for running this model. .. literalinclude:: examples/HydroSeepage/runme.of :lines: 47 ------------------------------------------------------------------- 2.2 Create the geometry and the mesh ------------------------------------------------------------------- 1. See Figure 1 for the dam model and draw the corresponding geometry. .. literalinclude:: examples/HydroSeepage/runme.of :lines: 50 2. Set the mesh size of the geometry. .. literalinclude:: examples/HydroSeepage/runme.of :lines: 52-53 ------------------------------------------------------------------- 2.3 Assign Material Properties ------------------------------------------------------------------- +---------------------------------------------+------------------------+ | Parameter | Value | +=============================================+========================+ | **Continuum Triangular Elements** | | +---------------------------------------------+------------------------+ | model | elastic | +---------------------------------------------+------------------------+ | density (:math:`kg/m^3`) | 2700 | +---------------------------------------------+------------------------+ | E (Pa) | 5e8 | +---------------------------------------------+------------------------+ | :math:`\nu` | 0.2 | +---------------------------------------------+------------------------+ | | | +---------------------------------------------+------------------------+ | **Contact Material Properties** | | +---------------------------------------------+------------------------+ | model | MC | +---------------------------------------------+------------------------+ | friction | 0.5 | +---------------------------------------------+------------------------+ | **Hydraulic Properties** | | +---------------------------------------------+------------------------+ | permeability | 2e-8 | +---------------------------------------------+------------------------+ | Biot_K (Pa) | 22-9 | +---------------------------------------------+------------------------+ | Biot_c | 0.1 | +---------------------------------------------+------------------------+ | prosity | 0.2 | +---------------------------------------------+------------------------+ 1. Set the material properties. In this example, the matrix is assiged as elastic material and thethe contact uses Mohr-Coulomb slip by default. In this porous flow example, the cohesive interfaces are ignored. .. literalinclude:: examples/HydroSeepage/runme.of :lines: 56-57 2. Set the hydraulic properties. .. literalinclude:: examples/HydroSeepage/runme.of :lines: 60 ------------------------------------------------------------------- 2.4 Create Groups and Assign Boundary Conditions ------------------------------------------------------------------- 1. Group the nodes to prepare for the next step. .. literalinclude:: examples/HydroSeepage/runme.of :lines: 65-68 2. Assign the nodal boundaries. Fix the bottom of the model. .. literalinclude:: examples/HydroSeepage/runme.of :lines: 72 3. Assign the water level based on Figure 1. Water at the 0.0 m from the top of the dam on the left side of the dam and 3.0 m deep from the top of the dam on the right side of the dam. p0 is the initial water pressure on the boundary and head is the water level. .. literalinclude:: examples/HydroSeepage/runme.of :lines: 73-74 ------------------------------------------------------------------- 2.5 Set the Outputs ------------------------------------------------------------------- 1. Set the output interval to be every 6000 steps and output all fields variables and fracture variables. .. literalinclude:: examples/HydroSeepage/runme.of :lines: 78-80 2. In this model, only hydro module is considered in the calculation. The mechanical module is turned off and the coupling between mechanical and hydro is overlooked. The pressure-induced deformation is not considered in this example. .. literalinclude:: examples/HydroSeepage/runme.of :lines: 86 3. Timestep for hydraulic calculation can be fixed to 1e-5 in this example. .. literalinclude:: examples/HydroSeepage/runme.of :lines: 88 4. The program will run 60000 steps in total to terminate the modelling. It will output 10 files for reference. .. literalinclude:: examples/HydroSeepage/runme.of :lines: 90 5. Finalize the model and clear all the temporary memories. .. literalinclude:: examples/HydroSeepage/runme.of :lines: 92 6. Save the notepad and double click the .of file to run the program. ================================== 3 Run the Program ================================== Hydro module and matrix flow module are on to model the hydro seepage. .. figure:: ../../images/Command/Hydro_Fracture_Modulus.PNG :alt: Applied Modules :align: center Figure 2: Applied Modules Hydro material information are included in the modeling. .. figure:: ../../images/Command/Hydro_Fracture_Material.PNG :alt: Hydro Materials :align: center Figure 3: Hydro Materials Hydro boundary conditions. .. figure:: ../../images/Command/Hydro_BC.PNG :alt: Hydro Boundary Conditions :align: center Figure 4: Hydro Boundary Conditions ================================== 4 Results ================================== Fluid pressure of seepage. .. figure:: ../../images/Result/Seepage_Viridis.gif :alt: Hydro Seepage :align: center Figure 5: Hydro Seepage ================================== 5 Full Script ================================== - `Hydro_Seepage.of`_ (click to download from GitHub) .. _Hydro_Seepage.of: https://github.com/OpenFDEM-geomechanics/Examples/blob/main/HydroSeepage/runme.of .. literalinclude:: examples/HydroSeepage/runme.of :lines: 37-92 .. raw:: html