Since shell formalism only takes displacements into account, rotating boundary conditions are imposed though a DG formulation.
As for boundary condition elements, there is no material to associate to an element.
Since no material is required, the first stage consists in defining an ElementProperties:
prp = ElementProperties(typeEl) prp.put(param1, value1) prp.depend(param1, fct1, Lock1)) #facultatif ...
where
typeEl | desired type of element (for example BoundaryDgShellFirstDegreeElement ) |
param1 | name of the property associated to the element (for example STIFFMETHOD ) |
value1 | value of the corresponding property |
fct1 | function which characterizes the dependency of the property (optional: no fct if no dependency) |
Lock1 | Lock which defines the dependency variable of the property (compulsory if there is a dependency) |
DG interface element to insert on shell boundaries to provide BCs. These are 2-nodes linear lines, but they are interfering over all neighboring dofs.
By default, stresses are integrated over dim*2 integration points. The material used is dgShellMaterial.
Same as BoundaryDgShellFirstDegreeElement
, but 8-nodes second order shell element.
Same as BoundaryDgShellSecondDegreeElement
, but 9-nodes second order shell element.
Same as BoundaryDgShellNineNodeSecondDegreeElement
, but 16-nodes third order shell element.
Name | Metafor Code | Dependency |
---|---|---|
MATERIAL | Number of the material to consider | - |
STIFFMETHOD | Method used to compute the stiffness matrix = STIFF_ANALYTIC : analytic matrix (default) = STIFF_NUMERIC : numerical matrix | - |
BENDING_NPG | Number of integration points along one direction for bending solving = 2 classical solving (second order) = 3 EAS solving with 22 or 7 added modes (8 or 9-nodes second order) = 4 solving without EAS (16-nodes third order) | - |
NORMAL_PT1 | First point governing the element of the shell normal | - |
NORMAL_PT2 | First point governing the element of the shell normal | - |
Once created, the element is generated by a DgShellInteraction
:
dgBound = DgShellInteraction(number) dgBound.push(gObject1) dgBound.push(gObject2) ... dgBound.addProperty(prp) interactionset.add(dgBound) # the interaction is added in InteractionSet
or
dgBound = interactionset.add( DgShellInteraction(number) ) dgBound.push(gObject1) dgBound.push(gObject2) ... dgBound.addProperty(prp)
number | Number of the material to consider |
gObject1 , gObject2 | mesh geometric entities |
prp | Properties of the DG boundary condition elements to generate |
Generally, entities are lines or groups of nodes on a line.