Dynamic 2D Effective Stress Analysis of Slope
Example posted by: Christopher McGann, University of Washington
THIS PAGE IS UNDER CONSTRUCTION
This article describes the OpenSees implementation of an effective stress analysis of a slope which is subject to a seismic event. The slope is modeled in two-dimensions and it is assumed that the slope is underlain by an elastic half-space. The free-field response of the soil is considered through the use of massive columns of soil with periodic boundary conditions located at both ends of the model. Nine-node quadrilateral elements with both displacement and pore pressure degrees of freedom enable the model to track changes in pore pressure and effective stress during the course of the analysis. A Lysmer-Kuhlemeyer (1969) dashpot is utilized to account for the finite rigidity of the underlying elastic medium.
This article also discusses the use of the tool GiD as a means for post-process visualization of the results of the analysis. Files are provided which convert the recorded output from OpenSees into a format which can be read by GiD and the processes behind this are briefly discussed. The pre-processing capabilities of GiD, and the application of these capabilities to the generation of the input file for this example, are discussed in a separate example, GiD ProblemTypes for 2D Slope Analysis Input File Generation. The GiD tool can be downloaded from http://gid.cimne.upc.es/download.
Note: Some of the details of this analysis are shared with the Effective Stress Site Response Analysis of a Layered Soil Column example posted in the Practical Examples area of this manual. The user is referred to that example for further information on details which may be omitted or quickly explained here.
Provided with this article are several files. Files which are required for the analysis are indicated. The files include:
- The example input file, slopeAnalysis2Deff.tcl (required for analysis)
- The velocity time history of the selected earthquake record, velocityHistory.out (required for analysis)
- A series of Matlab scripts (flaviaWriter.m, dispFlavia.m, porePressFlavia.m, ppRatioFlavia.m, stressFlavia.m) which can be used to reformat the recorded displacement, pore pressure, and stress data into a file which can be read by GiD for post-process visulization. Non-Matlab users may find the process represented by these files useful in creating an alternative means for accomplishing this reformatting.
- A Matlab script, processMotion.m, which takes a particular acceleration time history, in this case the file GilroyNo1EW.out, and converts it into a velocity time history through numerical integration using the trapezoidal rule.
All of the files mentioned above can be downloaded by clicking here.
To run this example, the user must download the input file, slopeAnalysis2Deff.tcl, and the velocity time history file, velocityHistory.out, and place them in a single directory. Once this has been done, the user can then run the analysis. The additional files described above are not essential to the analysis. They are provided to demonstrate how to use the GiD tool to visualize results from this type of analysis.
Model Description
The analysis discussed in this article is for the site shown in Fig. 1 above. There are several layers of cohesive and cohesionless material which make up this site, and the site is partially submerged below a body of water. The groundwater table in the portion of the site away from Puget Sound is assumed to have a constant elevation. The entire site is underlain by an elastic half-space, allowing some of the energy imparted by the seismic event to be removed from the site in a manner consistent with the existence of layer of bedrock below the slope site. The elastic half-space is modeled using a Lysmer-Kuhlemeyer (1969) dashpot in a similar manner to that used in the effective and total stress site response examples posted in the Practical Examples section of this manual.
Mesh Geometry
The input file for this example analysis, slopeAnalysis2Deff.tcl, was generated using the GiD problemtype UWnineQuad2Dup.gid, which is provided and discussed in a separate example, GiD ProblemTypes for 2D Slope Analysis Input File Generation. Using this problemtype, it is possible to create the mesh geometry visually in GiD, and export this information, along with additional conditions such as nodal fixities and material assignments, into an input file which can be read by OpenSees. Further details into this process can be found in the GiD ProblemTypes for 2D Slope Analysis Input File Generation example.
The mesh created for this example using GiD as a pre-processor is shown in Fig. 2. The use of the GiD tool greatly simplifies mesh-generation for 2D problems as compared to creating the nodes using loops inside the input file. The benefit is especially evident when mesh modifications or refinement are necessary.
The formulation of the nine-node quadrilateral elements used in this example necessitates care in the number of degrees of freedom which are currently in the domain when defining certain aspects of the model. The corner nodes of the elements must be created in a domain which considers three degrees of freedom, while the interior nodes of the elements must be created in a domain which considers only two degrees of freedom. This is also true of the fixities, masses, and loads applied to these two sets of nodes. Further discussion on the nine-node quadrilateral elements is available in the example, Effective Stress Site Response Analysis of a Layered Soil Column.
Boundary Conditions
The nodes at the base of the mesh are fixed against vertical translation only. The technique used to model the underlying elastic half-space necessitates that these nodes be left free to displace in the horizontal direction, however, the nodes on the base of the model are all given equalDOF for horizontal displacements. The pore pressure degree of freedom is fixed for all nodes on the upper boundary of the model and/or above the groundwater table. Fixing this degree of freedom creates a drainage path for the water in the adjacent elements and restricts the pore pressure in these locations to zero. These two sets of boundary conditions are the only fixities applied to the model.
In the horizontal direction, the model only represents a small section of a presumably infinite (or at least very large) soil domain. To ensure that free-field conditions exist at the horizontal boundaries of the model, the elements in these locations (the free-field columns indicated in Fig. 1) are given increased thickness to ensure that they are significantly more massive than the elements in the interior of the mesh, and the displacement degrees of freedom for the nodes on either side of these columns are tied together using equalDOF to create periodic boundary conditions. When the horizontal excitation is applied to the model, the reaction of these massive columns should be the free-field response. To ensure that the critical portions of the model, such as the slope in this example, are not affected by the horizontal boundaries, the free-field columns must be located sufficiently far away from the critical regions.
Material and Element Definitions
The soil constitutive behavior is modeled using the PressureDependMultiYield02 nDMaterial object for the cohesionless material and the PressureIndependMultiYield nDMaterial object for the cohesive material.
Note: The mass density input values for the material objects should be total mass densities, i.e. above the groundwater table, the mass density should reflect dry or moist conditions, and below the groundwater table, the mass density should be the saturated value. For elements with free pore pressure degrees of freedom (those below the water table), the 9_4_QuadUP element computes the effective mass density using the input value from the material object and the fluid mass density specified during the element generation.
Included with the material definitions for each soil layer are additional parameters which are used by the 9_4_QuadUP element. These include the element thickness, the horizontal and vertical body forces on the element, the undrained bulk modulus, and the horizontal and vertical permeabilities. Each layer of soil is given appropriate values for these parameters. The elements in the free-field columns are given increased thickness here.
Note: Gravity must be incorporated into an analysis using the 9_4_QuadUP element in a manner which differs from that used for the standard four node quad element. With the four node quad element, gravity is typically considered through the use of body forces which represent the unit weight of the soil. In the case of the nine node quad element, the body forces should not be the unit weights, instead they should have magnitudes equal to the components of gravity only.
The 9_4_QuadUP element should be defined in the following manner:
element 9_4_QuadUP eleID nodei j k l m n p q r thickness matID uBulk fMass hPerm vPerm hBody vBody
where uBulk is the undrained bulk modulus, fMass is the fluid mass density, hPerm and vPerm are the horizontal and vertical permeabilites, and hBody and vBody are the horizontal and vertical body forces. The nodal connectivity pattern matches that shown in Fig. 3. The creators of the 9_4_QuadUP element recommend an undrained bulk modulus which is equal to the bulk modulus of the fluid (2.2e6 kPa for water) divided by the porosity of the soil layer. In this example, the fluid is water, therefore, the fluid mass density for each layer is set to 1.0 Mg/m^3.
The permeabilities for all of the elements are initially set to 1.0 m/s to ensure that hydrostatic conditions exist after the application of gravity in the model. If the permeability of a particular layer is too low, it may take many gravity analysis steps in order to reach hydrostatic pressure conditions. Prior to the application of the ground motion, the permeabilities of each soil layer are updated using the updateParameter command to their respective assigned values so pore pressure generation during the horizontal excitation is captured appropriately. The usage of the updateParameter command seems to differ from that documented here. Parameter tags must be defined for each permeability parameter (horizontal and vertical) for each element. Then these tags can be used to update the corresponding parameters.
An example of the parameter update process for two elements is provided here: