1-1-1 First Generation of Performance-Based Methods (up to FEMA P695)

1-1-2 Second Generation of Performance-Based Methods (Starting from FEMA P58)

1-2 The Necessity of Nonlinear Structural Analysis

1-2-1 In Performance Evaluation

1-2-2 In Developing Prescriptive Design Methods

1-3 The Necessity of an Open-Source Finite Element Framework

2- A Look Inside OpenSees

2-1 What is Finite Element Analysis (FEA)?

2-1-1 Linear Matrix Analysis

2-1-2 Nonlinear Matrix Analysis

2-1-3 Microscopic Elements

2-1-4 Macroscopic Elements

2-2 Exploring OpenSees Capabilities

2-2-1 Overview of Tools

2-2-1-1 Components of a Standard Structural Analysis Software

2-2-1-2 An Overview of OpenSees Features

2-2-2 Environments Simulated by OpenSees

2-2-2-1 Macroscale Structures (Building Frames, Industrial Structures, Bridges, Towers, etc.)

2-2-2-2 Microscale Structures (Structural Members and Connections, Dams, etc.)

2-2-2-3 Large-scale Substructure (Winkler Springs)

2-2-2-4 Microscale Substructure (Soil-Pile-Foundation)

2-2-2-5 Fluid and Two-Phase Environments

2-2-3 Environmental Conditions Simulable in OpenSees

2-2-3-1 Static Loads

2-2-3-2 Dynamic Loads

2-2-3-2-1 Wind Load
2-2-3-2-2 Seismic Excitation
2-2-3-2-3 Explosion-Induced Excitation

2-2-3-3 Fire Effects

2-2-3-3-1 Heat Transfer
2-2-3-3-2 Mechanical Effects (Thermomechanics)

2-2-4 OpenSees Analysis Algorithms

2-2-5 Extendability of OpenSees

2-3 Technical Support of OpenSees

2-4 Comparative Review of OpenSees

2-4-1 OpenSees vs SAP and ETABS

2-4-2 OpenSees vs PERFORM3D

2-4-3 OpenSees vs ABAQUS

3- OpenSees Training

3-1 Download and Install OpenSees

3-2 Building the First Model

3-2-1 Modeling and Analysis Process

3-2-2 Definition of Global and Local Coordinate Systems

3-2-3 Unit System

3-2-4 Defining Nodes

3-2-5 Defining Elements (Elastic State)

3-2-6 Defining Boundary Conditions

3-2-7 Defining Recorders

3-2-8 Linear Static Analysis

3-2-9 Reviewing Outputs

3-2-10 Downloading the Simple Model File

3-3 Modeling a Steel Moment Frame Using the Fiber Method

3-3-1 Theory of Modeling Using Distributed Plasticity

3-3-1-1 Eliminating Rigid Body Rotation Using Zero-Length Elements

3-3-1-2 Representing Nonlinear Material Behavior Using Fiber Sections

3-3-1-3 Displacement-Based Beam-Column Element

3-3-1-4 Force-Based Beam-Column Element

3-3-1-5 Applying Rigid Body Rotation Using Geometric Transformation

3-3-2 Structural Specifications

3-3-3 Definition of Nonlinear Materials and Cross-Sections

3-3-4 Definition of Nodes, Elements, and Boundary Conditions

3-3-5 Geometry Review of the Model with CADSees Software

3-3-6 Vibration Mode Analysis (Eigenvalues)

3-3-6-1 Theory of Vibration Modes

3-3-6-2 Calculating and Assigning Mass

3-3-6-3 Extracting Frequencies and Mode Shapes

3-3-7 Gravity Load Analysis

3-3-7-1 Loading Theory for Nonlinear Analysis

3-3-7-2 Theory of the loadControl Integrator

3-3-7-3 Gravitational Loading of the Model

3-3-7-4 Analysis Settings

3-3-7-5 Running the Analysis and Reading Results

3-3-7-6 Download the Load-Control Static Analysis File

3-3-8 Pushover Analysis

3-3-8-1 Theory of the displacementControl Integrator

3-3-8-2 Theory of Pushover Analysis

3-3-8-3 Model Loading

3-3-8-4 Analysis Settings

3-3-8-4-1 Theory of Stiffness Matrix Storage Method
3-3-8-4-2 Theory of Degree of Freedom Counting Method
3-3-8-4-3 Theory of Boundary Condition Application Method
3-3-8-4-4 Theory of Nonlinear Solution Algorithm and Convergence Test

3-3-8-5 Running the Analysis and Reading the Results

3-3-8-6 Comparison of Results: Force-Based Element vs. Displacement-Based Element

3-3-8-7 Comparison of Results: Different Lateral Load Patterns

3-3-9 Nonlinear Time History Analysis

3-3-9-1 Modal Dynamic Analysis Theory

3-3-9-2 Theory of Direct Integration Dynamic Analysis

3-3-9-3 Theory of Dynamic Analysis with Uniform Excitation

3-3-9-4 Theory and Application of Dynamic Analysis with Multi-Point Excitation

3-3-9-5 Definition of Rayleigh Damping

3-3-9-6 Perform Analysis and Review Results

3-3-10 Selection, Download, and Scaling of Accelerograms

3-3-10-1 Accelerogram Scaling According to Standard 2800

3-3-10-2 Accelerogram Scaling According to ASCE 7

3-3-10-3 Introduction to Uncertainty and Advanced Scaling Methods

3-3-11 Download Fiber-Frame Model

3-4 Modeling of Reinforced Concrete Moment Frame Using the Fiber Method

3-4-1 Structural Specifications

3-4-2 Definition of Nonlinear Concrete Materials

3-4-3 Application of Confinement Effects

3-4-4 Definition of Rectangular Reinforced Concrete Section

3-4-5 Modal Analysis of Cracked Structure

3-4-6 Push-Over Analysis of Structure and Review of Results

3-4-7 Dynamic Analysis of Structure

3-4-8 Download Reinforced Concrete Fiber-Frame Model

3-5 General Stages of Structural Modeling

3-5-1 Identification of Nonlinear Behavior Factors

3-5-2 Modeling of Structural Members

3-5-2-1 Identification of Member Behavior

3-5-2-2 Selection of Modeling Method

3-5-2-3 Initial Model Construction and Analysis

3-5-2-4 Validation and Finalization

3-5-2-5 Download of Bending Member Modeling File

3-5-3 Modeling of Structure

3-5-3-1 Selection or Design of Structure

3-5-3-2 Expansion of Member Model to Structural Model

3-5-3-3 Initial Model Analysis and Review

3-5-3-4 Download Frame Model File

3-5-4 Sensitivity Analysis of Model

3-5-4-1 Selection of Input Variables and Output (Response)

3-5-4-2 Construction of Sample Models

3-5-4-3 Analysis and Review of Response Variations

3-5-5 Additional Evaluations

4- Advanced OpenSees Training

4-1 Practical Overview of Nonlinear Analysis Principles in OpenSees (Course Code 31000)

4-2 Structural Modeling Methods

4-2-1 Member Modeling Methods

4-2-1-1 Bending Member Modeling

4-2-1-1-1 Steel Bending Member Modeling (Course Code 32111)
4-2-1-1-2 Reinforced Concrete Bending Member Modeling (Course Code 32112)
4-2-1-1-3 Reinforced Concrete Strengthened Member Modeling (Course Code 32113)

4-2-1-2 Bending-Shear Member Modeling (Course Code 32120)

4-2-1-3 Axial Member (Buckling) Modeling (Course Code 32130)

4-2-1-4 Reinforced Concrete Shear Wall Modeling (Course Code 32114)

4-2-1-5 Steel Shear Wall Modeling (Course Code 32115)

4-2-1-6 Seismic Isolator Modeling

4-2-1-6-1 Elastomeric Isolator Modeling (with Lead Core) (Course Code 32161)
4-2-1-6-2 Frictional Isolator Modeling (Course Code 32162)
4-2-1-6-3 Pendulum Friction Isolator Modeling (Course Code 32163)

4-2-1-7 Damping Devices and Energy Dissipation Modeling

4-2-1-7-1 Frictional Damper Modeling (Course Code 32171)
4-2-1-7-2 Yielding Damper Modeling (Course Code 32172)
4-2-1-7-3 Viscous Damper Modeling (Course Code 32173)
4-2-1-7-4 Hybrid Damper Modeling (Course Code 32174)

4-2-2 Composite Structure Modeling Methods

4-2-2-1 2D Moment Frame Modeling (Course Code 32210)

4-2-2-2 3D Moment Frame Modeling (Course Code 32220)

4-2-2-3 Bracing System Modeling (Course Code 32230)

4-2-2-4 Steel Shear Wall System Modeling (Course Code 32240)

4-2-2-5 Reinforced Concrete Shear Wall System Modeling (Course Code 32250)

4-2-2-6 Frame + Damper Systems Modeling (Course Code 32260)

4-2-2-7 Frame + Isolator Systems Modeling (Course Code 32270)

4-2-2-8 Space Frame Modeling (Course Code 32280)

4-3 Structural Analysis Methods

4-3-1 Modal Push-Over Analysis (Course Code 33100)

4-3-2 Adaptive Time-Dependent Push-Over Analysis (Course Code 33200)

4-3-3 Cloud and Multi-Stripe Dynamic Analysis (Course Code 33300)

4-3-4 Progressive Collapse Analysis

4-3-4-1 Progressive Collapse Under Gravity Loads (Course Code 33410)

4-3-4-2 Progressive Collapse Under Seismic Loads (Course Code 33420)

4-3-4-3 Progressive Collapse Due to Fire (Course Code 33430)

4-3-5 Incremental Dynamic Analysis (IDA)

4-3-5-1 IDA with Simple Algorithm (Course Code 33510)

4-3-5-2 IDA with Hunt-Fill Algorithm in TCL (Course Code 33520)

4-3-5-3 IDA with Hunt-Fill Algorithm in MATLAB (Course Code 33530)

4-3-5-4 IDA with Hunt-Fill Algorithm in Python (Course Code 33540)

4-3-5-5 Parallel Processing IDA in TCL (Course Code 33550)

4-3-5-6 Parallel Processing IDA in MATLAB (Course Code 33560)

4-3-5-7 Parallel Processing IDA in Python (Course Code 33570)

4-3-5-8 Truncated Parallel Processing IDA in MATLAB (Course Code 33580)

4-3-6 Evaluation of Energy Dissipation Mechanisms (Course Code 33600)

4-4 Parametric (Smart) Modeling Methods

4-4-1 Parametric Modeling with TCL

4-4-1-1 2D Moment Frame Parametric Modeling (Course Code 34110)

4-4-1-2 3D Moment Frame Parametric Modeling (Course Code 34120)

4-4-1-3 Bracing System Parametric Modeling (Course Code 34130)

4-4-1-4 Steel Shear Wall Parametric Modeling (Course Code 34140)

4-4-1-5 Reinforced Concrete Shear Wall Parametric Modeling (Course Code 34150)

4-4-2 Parametric Modeling with Python

4-4-2-1 2D Moment Frame Parametric Modeling in Python

4-4-2-2 3D Moment Frame Parametric Modeling (Course Code 34220)

4-4-2-3 Bracing System Parametric Modeling (Course Code 34230)

4-4-2-4 Steel Shear Wall Parametric Modeling (Course Code 34240)

4-4-2-5 Reinforced Concrete Shear Wall Parametric Modeling (Course Code 34250)

5- Performance Evaluation of Structures Using OpenSees

5-1 Uncertainty and Performance Evaluation Fundamentals (Course Code 41000)

5-2 Performance Evaluation Based on FEMA P695 (Course Code 42000)

5-3 Performance Evaluation Based on FEMA P58 (Course Code 43000)

5-4 Reliability Evaluation with OpenSees

5-4-1 Fundamentals and Methods of Probabilistic Response Evaluation (Course Code 44100)

5-4-2 Reliability Based on FORM and FOSM Gradients (Course Code 44200)

5-4-3 Reliability Based on Monte Carlo Simulation (Course Code 44300)

5-4-4 Reliability Based on Monte Carlo Simulation and Response Surface Method (Course Code 44400)

5-5 Response Spectrum Extraction with MATLAB and OpenSees

5-5-1 Linear Response Spectrum Extraction (Course Code 45100)

5-5-2 Nonlinear Response Spectrum Extraction (Course Code 45200)

6- Structural Optimization Training with OpenSees

6-1 Preliminary Optimization

6-1-1 Preliminary Optimization in MATLAB (Course Code 51100)

6-1-2 Preliminary Optimization in Python (Course Code 51200)

6-2 Advanced Optimization

6-2-1 Advanced Optimization in MATLAB (Course Code 52100)

6-2-2 Advanced Optimization in Python (Course Code 52200)

7- Artificial Intelligence Training with OpenSees

8- Customization of OpenSees

8-1 Source Management via GitHub (Course Code 61000)

8-2 Compiling and Debugging in Visual Studio (Course Code 62000)

8-3 Understanding Class Structures (Course Code 63000)

8-4 Adding Commands in TCL (Course Code 64000)

8-5 Adding Commands in Python (Course Code 65000)

8-6 Adding Uniaxial Materials (Course Code 66000)

8-7 Adding Elements

8-7-1 Adding Simple Elements like Truss (Course Code 67100)

8-7-2 Adding Complex Elements such as forceBeamColumn (Course Code 67200)

8-8 Adding Recorders

8-8-1 Mechanism for Retrieving and Recording Responses from Materials, Nodes, and Elements (Course Code 68100)

8-8-2 Adding a Recorder for Response History (Node, Element, Drift) (Course Code 68200)

8-8-3 Adding a Recorder for Maximum Response Envelope and Residual Response (Course Code 68300)

8-8-4 Adding a Conditional Response Recorder (Course Code 68400)

9- Beyond OpenSees

9-1 Overview of TCL Programming (Course Code 81000)

9-2 Overview of Python Programming (Course Code 82000)

9-3 Overview of Object-Oriented Programming and C++ Basics (Course Code 83000)

9-4 Overview of MATLAB Programming (Course Code 84000)

9-5 Displacement-Based Design of Isolation and Energy Dissipation Systems According to ASCE 7 (Course Code 85000)

9-6 Design of Steel Shear Wall Systems (Course Code 86000)

9-7 Design Based on Nonlinear Response Spectrum and Equivalent Elastic Spectrum (Course Code 87000)