LE2dFrm_w2ndOrdFF
Purpose
2d LE frame element with moderate deformations under linear or NL geometry
Synopsis
ElemResp = LE2dFrm_w2ndOrdFF (action,el_no,xyz,ElemData,ElemState)
Description
LE2dFRM_w2NDORDFF 2d LE frame element with moderate deformations under linear or NL geometry
ELEMRESP = LE2dFRM_w2NDORDFF (ACTION,EL_NO,XYZ,ELEMDATA,ELEMSTATE)
response of 2d linear elastic frame element under moderate deformations using
force interpolation functions in the basic system (force formulation);
Reference: Neuenhofer/Filippou, ASCE, JSE, June 1998, pp. 704-711;
the element accounts for linear and nonlinear geometry for the nodal dof transformations;
depending on the value of the character variable ACTION the function returns information
in data structure ELEMRESP for the element with number EL_NO, end node coordinates XYZ,
and material and loading properties in the data structure ELEMDATA.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
When the character variable ACTION has one of the following values,
the function performs the listed operations and returns the results in ELEMRESP:
ACTION = 'size': report size of element arrays
'chec': check element property data for omissions and assign default values
'defo': report function handle for deformed shape
'init': initialize element history variables
'forc': report element resisting forces
'stif': report element stiffness matrix and resisting forces
'mass': report lumped mass vector and consistent mass matrix
'post': report post-processing information
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The data structure ELEMRESP stands for the following data object(s) for each ACTION:
ELEMRESP = ARSZ for action = 'size'
ELEMRESP = ELEMDATA for action = 'chec'
ELEMRESP = FunHandle for action = 'defo'
ELEMRESP = ELEMSTATE for action = 'init'
ELEMRESP = ELEMSTATE for action = 'stif'
ELEMRESP = ELEMSTATE for action = 'forc'
ELEMRESP = ELEMMASS for action = 'mass'
ELEMRESP = ELEMPOST for action = 'post'
ELEMRESP is empty for unsupported keywords
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ARSZ is an Boolean array of size NDF x NEN,
where NDF = number of DOFs/node, NEN = number of nodes,
with unit values corresponding to the active element DOFs
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ELEMDATA is a data structure with element property information in fields
Geom = character variable for geometric transformation of node variables
(linear, PDelta or corotational) (default=linear)
A = cross sectional area
E = modulus of elasticity
I = moment of inertia
w = uniform element load ( w(1) = longitudinal, w(2) = transverse )
JntOff = rigid joint offsets in global X and Y at element ends;
column 1 for node i, column 2 for node j
IntTyp = function name for element integration
nIP = number of integration points
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ELEMSTATE is a data structure with the current element state; it has the fields
u = vector of total element displacements in global reference
Du = vector of element displacement increments from last convergence
DDu = vector of element displacement increments from last iteration
ke = element stiffness matrix in global reference; updated under ACTION = 'stif'
p = element resisting force vector in global reference; updated under ACTION = 'stif' or 'forc'
Past = element history variables at last converged state
Pres = current element history variables
lamda = row vector of current load factor(s)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ELEMPOST is a data structure with element response information for post-processing in fields
v = element deformations
q = element basic forces
Sec{i}.e = section deformations at integration point i
Sec{i}.s = section forces at integration point i
Cross-Reference Information
This function calls:
- ElementLoading determines current distributed element load value
- ExtrReshu extracts displacements and increments from State and reshapes into array
- ElmLenOr element length and x-axis orientation (direction cosines)
- GeomTran_2dFrm kinematic matrices and deformations for a 2-node 2d frame element
- kg_2dFrm geometric stiffness matrix for 2-node 2d frame element for different options
- Lagrange Lagrange interpolation polynomials in interval -1<xi<1