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

Backgound

The LIN3DTHINAREA class creates an area Section that is represented by its thickness \(t_h\). The figure shows a representation of the Lin3DThinArea

ThinArea.png

The section properties are:

  • Geometric center from bottom left corner (point of reference): \(x_3 = \frac{t_h}{2} \).

REFERENCE:

  • MIDAS Civil User's Manual: analysis for civil structures, Area Moment of Inertia, Pages 77-78
  • MIDAS Civil User's Manual: analysis for civil structures, Effective Shear Areas, Pages 68-69

Pre-Analysis

The python Pre-Analysis in the 01-Pre_Process/Method/Attach.py file provides with an interface to populate the Entities dictionary. This file contains several functions to populate specific fields. For example, to create a Lin3DThinArea section using json format, use:

  • addSection(tag, name='Lin3DThinArea', model='Plain', attributes):

    • tag : The identifier of this section, i.e., tag > -1
    • name : Seismo-VLAB section class name
    • model : model of the section, i.e., model=plain,fiber
    • attributes : Specific properties for the created section, for example
      • 'th' : is the thickness of the area section.
      • 'theta' : is The section rotation angle about axis 1.
      • 'material' : is the material identifier the cross section is made out of.

    Example

    A LIN3DTHINAREA section can be defined using the python interface as follows:
    SVL.addSection(tag=1, name='Lin3DThinArea', model='Plain', attributes={'th': 0.25, 'material': 1})

    Application
    Please refer to the H01-ST_Lin_3DinPlanePointLoad_ElasticPStress_Shell4.py file located at 03-Validations/01-Debugging/ to see an example on how to define a Lin3DThinArea section.

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 Section, use:

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

Run-Analysis

The C++ Run-Analysis in the 02-Run_Process/03-Sections/01-Plain/Lin3DThinArea.cpp file provides the class implementation. A Lin3DThinArea section is created using the built-in json parse-structure provided in the Driver.hpp. A Lin3DThinArea is defined inside the "Sections" json field indicating its "Tag" as follows,

  • {
        "Sections": {
            "Tag": {
                "name" : "LIN3DTHINAREA",
                "model" : "PLAIN",
                "attributes": {
                    "th": double,
                    "material": int
                }
            }
        }
    }
    
    Variable Description
    Tag Unique Section object identifier.
    th The thickness of the area section.
    materialMaterial object identifier.

    Attention
    The LIN3DTHINAREA Section object is made of one Material.
    The LIN3DTHINAREA Section is assumed to be use in linearized and finite deformations.
    The stress/strain coordinates at Section::GetStrainAt() or Section::GetStressAt() must be refereed to the point of reference shown in figure.
    If stress/strain are evaluated outside the section domain, the response is zero.
    If not specified ip=10 and theta=0.0
    Example

    A LIN3DTHINAREA section of thickness 0.25, made of material 1 is defined:
    { "Sections": { "1": { "name" : "LIN3DTHINAREA", "model": "PLAIN", "attributes": { "th" : 0.25, "material": 1 } } } }