Seismo-VLAB  1.3
An Open-Source Finite Element Software for Meso-Scale Simulations

Background

The DynamicAnalysis keyword creates an analysis that computes \(U(t)\), \(\dot{U}(t)\) and \(\ddot{U}(t)\) at each time step satisfying:

\[ \textbf{M} \, \ddot{U}(t) + \textbf{C} \, \dot{U}(t) + {\rm{F}}(U,t) = {\rm R}(t) \]

REFERENCE:

  • Bathe K. Jurgen, "Finite Element Procedures", Chapter 9, Prentice-Hall, 1996.

Pre-Analysis

The python Pre-Analysis in the 01-Pre_Process/Method/Attach.py file provides with an interface to create a StaticAnalysis. We use the addAnalysis() as follows:

  • addAnalysis(tag, attributes):
    • tag : The identifier of this analysis, i.e., tag > -1
    • attributes : Specific properties for the created analysis, for example
      • 'name' : The analysis's name
      • 'nt' : The integrator's time step

Example

A DYNAMIC ANALYSIS can be defined using the python interface as follows:
SVL.addAnalysis(tag=1, attributes={'name': 'Dynamic', 'nt': 901})

Application Please refer to any python file located at 03-Validations/01-Debugging/ that starts with DY abbreviation.

On the contrary, the 01-Pre_Process/Method/Remove.py file provides with an interface to depopulate the Entities dictionary. For example, to remove an already define Analysis, use:

  • delAnalysis(tag):
    • tag : The identifier of the analysis to be removed, i.e., tag > -1

Run-Analysis

The C++ Run-Analysis in the 02-Run_Process/08-Analysis/02-Dynamic/DynamicAnalysis.cpp file provides the class implementation. A StaticAnalysis is created using the built-in json parse-structure provided in the Driver.hpp and is defined inside the "Simulations" json field indicating its "Tag" as follows,

  • {
        "Simulations": {
            "Tag": {
                "combo": int,
                "attributes": {
                    "analysis": {
                        "name": "DYNAMIC",
                        "nt": int
                    }
                }
            }
        }
    }
    
    Variable Description
    combo The LoadCombo identifier to which the Analysis will be performed.
    nt The number of time step to be performed.