SFrame
Theory
Manual
Table of Contents
Introduction 
6 
Nomenclature 
8 
Analysis procedures 
12 
Linear static analysis 
12 
Analysis description 
13 
Implementation details 
14 
Freevibration analysis 
15 
Analysis description 
15 
Implementation details 
16 
Stressed freevibration analysis 
21 
Analysis description 
22 
Implementation details 
23 
Linear dynamic analysis 
23 
Analysis description 
23 
Implementation details of Newmark algorithm 
25 
Implementation details of adaptive timestep size algorithm 
27 
Selection of constant timestep size 
28 
Selection of minimum and maximum timestep sizes 
29 
Pdelta analysis 
29 
Analysis description 
29 
Implementation details 
31 
Linear buckling analysis 
31 
Analysis description 
31 
Implementation details 
34 
Buckling  Stressed Free Vibration  Pdelta 
34 
Response spectrum analysis 
35 
Analysis description 
36 
Implementation details 
40 
Nonlinear static analysis 
43 
Analysis description 
43 
Implementation details 
43 
NewtonRaphson Method 
45 
Convergence Criteria 
45 
Other procedures 
48 
Skyline storage scheme 
48 
Mesh optimization 
51 
Application of boundary conditions 
52 
Constraints (coupled degrees of freedom) 
54 
Damping effects 
57 
Checking for nonstructural degrees of freedom 
59 
Graph interpolation 
59 
Lumped mass VS. consistent mass formulations 
60 
Number of elements required 
61 
Friday 28 April 2000 – 14:40
Element library 
62 
_{3}_{D} _{B}_{e}_{a}_{m} 
64 
Stiffness, geometric stiffness, and mass matrices 
65 
_{3}_{D} _{T}_{h}_{i}_{n} _{S}_{h}_{e}_{l}_{l} 
68 
Stiffness and mass matrices 
68 
Plate elements 
68 
Membrane elements 
68 
Aspect ratio 
69 
_{3}_{D} _{T}_{r}_{u}_{s}_{s} 
69 
Stiffness and mass matrices 
69 
Twonoded spring 
70 
Stiffness matrix 
71 
Tensiononly members 
71 
Compressiononly members 
71 
Spring element 
72 
Stiffness matrix 
72 
_{H}_{o}_{o}_{k} _{e}_{l}_{e}_{m}_{e}_{n}_{t} 
72 
_{G}_{a}_{p} _{e}_{l}_{e}_{m}_{e}_{n}_{t} 
73 
Unit conversion factors 
74 
Memory requirements 
78 
Dynamic memory allocation requirements (RAM) 
78 
Storage requirements 
78 
References 
80 
Friday 28 April 2000 – 14:40
Friday 28 April 2000 – 14:40
_{1}
Introduction
This document describes the theoretical and computational aspects of the SFrame finiteelement analysis engine. It is hoped that this information will enable the user to make full use of SFrame’s capabilities while being aware of its limitations.
D:\softek docs\book\Theory\Theory.csc.fm
Friday 28 April 2000 – 14:43
_{2}
Nomenclature
Following is a list of the symbols used throughout this manual.
A crosssectional area.
A
s
i shear area normal to direction i.
c generalized damping.
^{c} cr
critical generalized damping.
E Young’s modulus.
^{F}
i Dominant modal base shear in i ^{t}^{h} direction.
G shear modulus.
J jerk or torsional moment of inertia.
ˆ
J normalized jerk.
^{J} cr
critical jerk.
k generalized stiffness.
L element length.
m generalized mass.
e element mass.
^{m}
ˆ
m modal mass.
j
% M
^{P}
^{R}
^{S}
percent of total mass participating in j ^{t}^{h} direction.
e axial load (positive for a tensile load).
i RSA Base Shear in i ^{t}^{h} direction.
i Scaling factor in i ^{t}^{h} direction.
t time.
^{T} i
Code base shear in i ^{t}^{h} direction.
x generalized displacement.
^{w}
h half bandwidth.
α, β 
Rayleigh damping parameters. 
α, δ 
Newmark parameters. 
∆t 
time step. 
D:\softek docs\book\Theory\Theory.csc.fm
)
θ phase angle.
λ
^{λ} cr
load factor or shift factor or scale factor. critical load factor.
j
µ modal participation factor in j ^{t}^{h} direction.
ξ damping ratio (
ω circular natural frequency.
c ⁄
^{c} cr
)
ω shifted circular natural frequency.
Ω frequency of disturbing force.
[A]
[c]
a square matrix.
_{s} system modal damping matrix.
[C]
[C]
ˆ
_{e} element damping matrix.
_{s} system damping matrix.
[ D ] 
a diagonal matrix. 

[k] 
_{s} 
system modal stiffness matrix. 
[K] 
_{e} 
element stiffness matrix. 
[K] 
_{s} 
system stiffness matrix. 
[
^{K} r
] reduced system stiffness matrix.
[ K
] _{s}
[
^{K} eq
]
[
[
[
^{K}
g
^{K}
g
^{]}
^{]}
^{K} go
e
s
^{]} s
[L]
[m] _{s}
a shifted system stiffness matrix.
equivalent system stiffness matrix.
element geometric stiffness matrix.
system geometric stiffness matrix.
system geometric stiffness matrix at reference loading.
a lower matrix.
system modal mass matrix.
[M] 
_{e} 
element mass matrix. 

[M] 
_{s} 
system mass matrix. 

[ 
M 
r 
] 
reduced system mass matrix. 
Friday 28 April 2000 – 14:43
ˆ
[ ] _{s}
a system matrix after the application of boundary conditions.
{a} 
a vector. 

{b} 
a vector. 

{F} _{e} 
element internal load vector. 

{F} _{s} 
system internal load vector. 

^{j} {I} 
unit vector in j ^{t}^{h} direction expanded to system dimension. 

{J} 
system jerk vector. 

{R} _{e} 
element applied equivalent load vector. 

{R} _{s} 
system applied load vector. 

{R} _{s} _{i} 
system applied load vector for i ^{t}^{h} load 

case/combination. 

{ 
R 
equivalent load vector. 
{W} _{s}
j
{w}
max
i
{w} _{i}
max
{W} ^{m}^{a}^{x}
{X} _{e}
{X} _{s}
·
{
{
{
X
·
X
X ··
}
}
}
e
s
e
X ··
{
{Z} _{s}
·
{
}
s
Z
}
s
relative system displacement vector.
maximum relative displacement contribution of
mode i due to ground motion in the j ^{t}^{h} direction.
maximum relative displacement contribution of mode i due to ground motion.
maximum relative displacement due to ground
motion
element displacement vector.
system displacement vector.
element velocity vector.
system velocity vector.
element acceleration vector.
system acceleration vector.
ground displacement vector.
ground velocity vector.
D:\softek docs\book\Theory\Theory.csc.fm
{ Z ··
ˆ
} s
{ } _{s}
{η} _{s}
·
{ η
} s
ground acceleration vector.
a system vector after the application of boundary conditions.
generalized system displacement vector.
generalized system velocity vector.
{ η ·· 
} 
s 
generalized system acceleration vector. 
[Λ] 
natural frequencies and eigenvalues matrix (diagonal). 

[Φ] 
modeshapes or eigenvectors matrix. 

{φ} 
mode shape or eigenvector or buckling mode. 

{ψ} 
normalized mode shape or eigenvector. 

[Ψ] 
normalized modal matrix or eigenvectors matrix. 
numdir
num1Delm number of 1D elements (beams, trusses, etc.)
number of ground motion directions.
num2Delm 
number of 2D elements (shells, plates, etc.) 
numelm 
number of elements. 
numbc 
number of boundary conditions (constrained 
numdof 
degrees of freedom). number of degrees of freedom in structure. 
numitrvec 
number of iteration vectors. 
numldcas 
number of load cases. 
numldcmb 
number of load combinations. 
numnatfrq 
number of natural frequencies. 
numnod 
number of nodes. 
numRSAldcasnumber of RSA load cases.
numtimstp 
number of time steps. 
tstval 
test value. 
RMS 
root mean square. 
Friday 28 April 2000 – 14:43
_{3} Analysis procedures
This section briefly describes the theoretical basis of the various analysis procedures available in SFrame. SFrame uses the displacement method of the finiteelement method. In this method, the structure to be analyzed is approximated by an assembly of structural regions (elements) connected at a finite number of points (nodes) to ensure that the displacements are continuous. Once the equilibrium equations for each element are known
{F} _{e}
=
{R} _{e}
(1)
then their contribution to the behavior of the overall structure can be accounted for by assembly of the element equations (Eq. 1) using standard matrix procedures
numelm
∑
=
e
1
(
{F}
e
=
{R}
e
)
to yield the system equations
{F} _{s}
=
{R} _{s}
(2)
(3)
where the internal load vector, for linear analysis, is defined as
linear static analysis
{F} _{s}
=
[K] _{s} {X} _{s}
linear dynamic analysis
{F} _{s}
=
[M] _{s} { X ··
}
s
+
[C]
s
{
·
X
}
s
+ [K] _{s} {X} _{s}
nonlinear static analysis
{F} _{s} –
{R}
s
= {0}
(4)
(5)
(6)
Linear static
analysis
The purpose of the static analysis is to determine the displacements and stresses due to timeindependent loading conditions under the following assumptions:
D:\softek docs\book\Theory\Theory.csc.fm
1. Stiffness effects and applied loads do not depend on time.
2. Inertial and damping effects are ignored.
3. Static acceleration fields, such as gravity, may be included (i.e. dead loads).
4. Time independent loads, displacements, pressures and temperature effects may be applied.
_{A}_{n}_{a}_{l}_{y}_{s}_{i}_{s} _{d}_{e}_{s}_{c}_{r}_{i}_{p}_{t}_{i}_{o}_{n}
The system equilibrium equations for the linear static analysis are
[K] _{s} {X} _{s}
=
where the system load vector
{R} _{s}
1. Applied nodal loads.
{R} _{s}
(7)
includes the contributions of:
2. Loading due to static acceleration fields (such as gravity).
3. Element thermal/pressure loads.
The system stiffness matrix will have a degeneracy equal in number to the rigidbody modes of the structure. On application of adequate boundary conditions, rigidbody modes and the degeneracy of the stiffness matrix are removed and hence, the solution of the system of equations becomes possible (see Application of boundary conditions on page 52 for a discussion on the application of boundary conditions). The system of equilibrium equations after the application of the boundary conditions becomes
ˆ 
ˆ 

[ 
K ] _{s} {X} _{s} 
= 
{ R 
} 
s 
(8) 
and a unique solution
displacements are obtained, the element stresses and nodal forces may be computed. For the elements at the boundaries these nodal forces will be in equilibrium with the reaction forces.
{X} _{s}
may be obtained. Once the nodal
Friday 28 April 2000 – 14:43
Implementation
details
SFrame uses a skyline implementation (see Skyline storage scheme on page 48 for a discussion on the skyline storage scheme) of the Crout reduction (Bathe (1982), Gerald (1980), Press et. al. (1990)) to factorize the system stiffness matrix to
ˆ 
ˆ 
][L] ^{T} 

[ K 
] s 
= 
[L] 
[ 
D 
(9) 
The stiffness matrix factorization, a computationally intensive process, is performed only once during a linear static analysis regardless of the number of load cases and load combinations. Therefore, for each load case and/or load combination i, SFrame needs only forward reduce and back substitute for the corresponding system load vector, i.e.
[L]
[
ˆ
D
][L] ^{T}
=
ˆ
{ R
^{}}
s i
(10)
During matrix factorization, the skyline solver performs the following checks:
1. If a pivot is less than zero (system matrix is negative definite), then it issues the SL001 exception. In such a case, the Crout factorization can not be performed, therefore, it will abort the factorization.
2. If a pivot is identically zero (system matrix is positive semi definite), then it issues the SL003 exception, it replaces the zero pivot with a very small pivot and continues the factorization.
3. If a pivot is greater than zero but less than tstval, then it issues the SL002 exception. In such a case, the system matrix may be illconditioned and results may be meaningless. The Crout factorization will continue. The user should ensure that the results from the analysis are physically plausible. The value of the test variable tstval is calculated as follows:
tst(dv)al
=
Max
( ,
7.888 ×10
–31
(
ftr1 ftr2
)maxpvt
)
(11)
D:\softek docs\book\Theory\Theory.csc.fm
where
maxpvt
ftr1
ftr2
maximum pivot encountered.
1 ×10
–13
(default)
1 ×10
–23
(used if support settlements are present
in the model)
Freevibration
analysis
The purpose of the freevibration analysis is to determine the natural frequencies and corresponding mode shapes of vibration. This information is needed for instance for seismic analysis. The following assumptions are made:
1. Stiffness and inertial effects of the structure are time independent and hence the freevibration motion is simple harmonic.
2. Damping effects are ignored.
3. No forces, displacements, pressures or temperature effects are applied to the structure.
_{A}_{n}_{a}_{l}_{y}_{s}_{i}_{s} _{d}_{e}_{s}_{c}_{r}_{i}_{p}_{t}_{i}_{o}_{n}
The equilibrium equations for the freevibration analysis are
[M] _{s} { X ·· } _{s} + [K] _{s} {X} _{s} = {0}
(12)
In a freevibration analysis the motion is simple harmonic and may be expressed as
{X} _{s} = {}φ
sin(ωt + θ)
(13)
The acceleration vector may be obtained by taking the second time derivative of Eq. 13
{ X ··
} s
=
–ω
2
{}φ
sin(ωt + θ)
(14)
Substituting Eqs. 13 and 14 into Eq. 12 yields the following expression
–ω ^{2} [M] _{s} {}φ
sin(ωt + θ)
+
[K]
s
{}φ
sin(ωt + θ)
= {0}
(15)
Friday 28 April 2000 – 14:43
which may be rewritten as
(
[K]
s
–
ω
2
[M]
s
)φ{
}
= {0}
(16)
since the sine term is arbitrary and is not equal to zero at all times. Using Cramer’s rule (Anton (1977)), the solution of the above equation can be shown to be of the form
{φ}
_{=}  {0}
[K] _{s} – ω ^{2} [M] _{s}
(17)
Hence, a nontrivial solution is possible only when the determinant vanishes, i.e.
[K] _{s} –
^{2}
ω
[M]
_{s}
=
0
(18)
which is the basic statement for free vibration problems. The above equation is the frequency equation of the system and its solution, after applying the necessary boundary conditions (see Application of boundary conditions on page 52 for a discussion on the application of boundary conditions), corresponds to the solution of the general eigenvalue problem
Implementation
details
ˆ
]
( –
[
K
s
ω
2
i
[M]
s
)φ
{
i
}
for the numdof eigenpairs
ω _{i} ,
{
φ
i
}
= 
{0} 
(19) 
(20) 
There are numerous methods for solving the general eigenvalue problem stated in Eq. 19. For small systems (a few hundred degrees of freedom) some of the most popular methods include the Jacobi, Given’s and Householder methods (Petyt (1990)). For larger systems, methods of reducing the number of degrees of freedom have been developed and are described by Bathe (1982) and Petyt (1990). However, for very large systems aforementioned methods are inefficient. The eigenvalue solver used in SFrame is the skyline implementation (see Skyline storage scheme on page 48 for a discussion on the skyline storage scheme) of the Subspace Iteration method (Bathe
(1982)).
D:\softek docs\book\Theory\Theory.csc.fm
Subspace iteration is a very effective method of determining the numnatfrq lowest eigenvalues and corresponding eigenvectors of Eq. 19 simultaneously. The subspace iteration procedure is as follows:
1. The number of eigenpairs (numnatfrq) to be extracted is set to the userspecified number of eigenvalues. Note that numnatfrq will normally be much smaller than the number of degrees of freedom (i.e. numnatfrq << numdof). If this condition is not met, the solver may issue the SI004 and/or JD001 exceptions. For the current implementation of the subspace iteration, it is recommended that numnatfrq be below 100. For the case when the model is using the consistent mass formulation (i.e. a nonzero density has been specified for all the elements in the structure), the user may easily calculate the structure’s number of degrees of freedom by the following equation:
numdof
=
6
numnod – numbc
(21)
However, in the case where lumped masses are used to model the inertia of the structure, the number of degrees of freedom is equal to the number of lumped masses times the degrees of freedom per lumped mass present in the structure.
2. Select a starting matrix
[A] _{1}
of dimension (numdof x
numitrvec) where numitrvec > numnatfrq and is given by
numitrvec
=
Min(2
numnatfrq, numnatfrq + 8)
(22)
The columns of matrix
first column of the product
[A] _{1}
are determined as follows: The
[M] _{s} [A] _{1}
[M] _{s}
consists of the diagonal . The other columns in
terms of the system mass matrix
[M] _{s} [A] _{1}
are unit vectors each with unit entries at the position
where
terms of the system stiffness and mass matrices respectively.
of the smallest ratio
^{K} ii
⁄
^{M} ii
^{K} ii
and
^{M} ii
are the diagonal
3. Perform the following operations:
(i)
For i = 1, 2, equation
solve for the reduced matrix
ˆ
[ K
]
s
[
^{A} r
^{]} i + 1
=
[M] _{s} [A] _{i}
[
^{A} r
^{]} i + 1
from
(23)
Friday 28 April 2000 – 14:43
Above system of equations is solved using the skyline solver described in Implementation details on page 14.
(ii) Calculate the reduced stiffness and mass matrices
[
[
^{K} r
^{M} r
^{]} i + 1
^{]} i + 1
=
=
[
[
A
r
^{A} r
] ^{T}
i + 1
ˆ
[ K
]
s
[
] ^{T} _{i} _{+} _{1} [M] _{s}
^{A} r
^{]} i + 1
[
A _{r}
^{]} i + 1
(24)
(25)
(iii)Solve the reduced general eigenvalue problem
[
^{K} r
] _{i} _{+} _{1} [Φ] _{i} _{+} _{1}
=
[
M
r
]Φ[
]
i + 1
[Λ]
(26)
For numnatfrq eigenvalues
^{[}^{Λ}^{]} i + 1
and eigenvectors
^{[}^{Φ}^{]} i + 1
. This reduced eigenvalue problem may be solved
by any of the many methods available for the solution of the general eigenvalue problem. Noting that the reduced
, diagonal form as the number of subspace iterations increases, the generalized Jacobi method is the most effective choice.
stiffness and mass matrices (
[
^{K} r
]
[
M
r
]
) tend toward a
(iv)Calculate an improved approximation to the eigenvectors of the original system using
^{[}^{A}^{]} i + i
=
[
A
r
] _{i} _{+} _{1} [Φ] _{i} _{+} _{1}
(27)
The eigenvalues
to the lowest eigenvalues and eigenvectors of Eq. 19 as
^{[}^{Λ}^{]} i + 1
and eigenvectors
^{[}^{Φ}^{]} i + 1
converge
i → ∞
. Convergency is achieved and this process is
terminated when the userspecified tolerance is met for all numnatfrq eigenvalues. It should be noted that the tolerance with which the lower eigenvalues are extracted is smaller than the tolerance with which the higher eigenvalues are extracted. A userspecified tolerance of 0.001 is generally recommended. If convergence is not achieved within the userspecified maximum number of iterations, the solver will issue the SI001 exception. The recommended userspecified number of iterations is around 12.
4. Use the Sturm Sequence check (Jennings (1977)) to verify that no eigenvalues have been missed.
Shifting Procedure
Above procedure for extracting the natural frequencies and mode shapes of vibration will fail if the system stiffness matrix
ˆ 

[ K 
] 
s 
is singular. This case arises with notfullysupported 
D:\softek docs\book\Theory\Theory.csc.fm
)
)
structures commonly found in space applications. In order to allow the user to perform a freevibration analysis of such structures, SFrame uses the shifting procedure (Bathe (1982)).
In the solution of Eq. 19, SFrame performs a shift calculating
λ
on
[
ˆ
K
]
s
by
[
K
] _{s}
=
[
ˆ
K
]
s
– λ[M] _{s}
(28)
and then it considers the eigenvalue problem
(
[ K ]
s
–
ϖ
2
i
[M]
s
)φ
{
i
}
=
0
(29)
which yields the same eigenvectors
eigenvalue problem of Eq. 19 with its eigenvalues related to those of Eq. 19 by
{
φ
i
}
as the original
ϖ
2
i
=
ω
2
i
–λ
(30)
The shift factor entered by the user, is used to calculate the amount of shifting using the following relation
λ
=
shift
factor
ˆ
K
RMS
(

)
RMS
[
]
s
)
(
[M]
s
(31)
where RMS([ ]) is the rootmeansquare of the diagonal components of the corresponding matrix. Typically, a shift factor of magnitude around unity is recommended for problems with rigidbody motion.
Closely packed
eigenvalues
Mode shape
normalization
When the user suspects that the eigenvalues of a system are closely packed, then he/she should run several analyses using progressively smaller tolerance and larger number of iterations to ensure that no eigenvalues have been missed. In addition, shifting may be used to accelerate the convergence of closely packed eigenvalues.
If the value of one of the elements of a mode shape vector assigned a specified value, then the remaining elements are determined uniquely. The process of scaling a natural mode so
{
φ
i
}
is
Friday 28 April 2000 – 14:43
that each of its elements has a unique value is called normalization, and the resulting modal vectors are called normal modes (Craig (1981)).
Denoting by
amplitude unique, and assuming
is, an arbitrary modal vector corresponding to in the form
{
ψ
i
}
a mode that has been scaled to make its
{
ψ
i
}
^{ω} i
to be “dimensionless”, that
can be written
{φ} _{i}
=
λ _{i} {ψ} _{i}
where
^{λ} i
is a scaling factor whose units are such that
{ψ} _{i} ^{T} [M] _{s} {ψ} _{i}
has the dimensions of mass. ^{(}^{a}^{)}
(32)
SFrame scales mode shapes so that the generalized mass defined by
^{m}
i
=
{ψ} _{i} ^{T} [M] _{s} {ψ} _{i}
has the value of unity. ^{(}^{b}^{)}
(33)
The generalized stiffness for the i ^{t}^{h} mode is defined as
^{k}
i
=
{ψ} _{i} ^{T} [M] _{s} {ψ} _{i}
(34)
In the case where the mode shapes are normalized with respect to the mass matrix (Eq. 33), generalized stiffnesses are given by
^{k} i
=
2
^{ω} i
(35)
(a) 
{ψ} _{i} The reason for this particular definition of dimensionless is that vectors may 
contain a mixture of types of coordinates, for example, translations and rotations. 

Thus, it would not be possible to simultaneously make all components of {ψ} _{i} 

dimensionless in the usual sense of the word. 

(b) 
{ψ} _{i} As previously noted, it is convenient to scale , so that the product 
{ψ} _{i} ^{T} [M] _{s} {ψ} _{i}
has the units of mass, therefore,
m _{i}
=
1Kg (or 1 Slug).
D:\softek docs\book\Theory\Theory.csc.fm
In addition to the natural frequencies and mode shapes of vibration, SFrame computes for each mode i the modal
participation factors(
global directions ( j = X, Y, Z ) defined, respectively, as
j µ i ) and modal masses (
j
ˆ
m i ) in the three
j µ –{ψ} ^{T} [M] {I}
_{=} 
^{j}
i
{ψ} ^{T} [M]ψ{
}
j ˆ
m
i
2
(
{ψ}
T
^{j}
[M] {I}
)
_{=} 
{ψ} ^{T} [M]ψ{
}
(36)
(37)
where
expanded to the system dimension. For instance
^{j}
{I}
is a unit vector in the j ^{t}^{h} global direction which is
Y
{I}
is given by
010000
010000
010000
(38)
Since SFrame scales the mode shapes with respect to the mass matrix, the expressions for the modal participation factors and modal masses simplify to
j
j
µ
i
=
^{j}
–{ψ} ^{T} [M] {I}
ˆ T
m
i
=
( {ψ}
[M] ^{j}
{I}
) ^{2}
(39)
(40)
Using the modal masses, SFrame also computes the percentage of the mass in each of the three global directions (j = X, Y, Z) using the following expression
^{j}
% M
numnatfrq
∑
=
i
1
j
ˆ
m
i
_{=} 
^{j}
[M] {I}
(41)
Stressed free vibration analysis
The purpose of the stressed freevibration analysis is to determine the natural frequencies and corresponding mode shapes of vibration while taking into consideration membrane effects due to timeindependent loads under the following assumptions:
1. Stiffness and inertial effects of the structure are constant.
Friday 28 April 2000 – 14:43
2. Damping effects are ignored.
3. No timedependent forces, displacements, pressures, or temperature effects are applied to the structure.
4. Timeindependent forces, displacements, pressures, or temperature effects may be applied to the structure.
_{A}_{n}_{a}_{l}_{y}_{s}_{i}_{s} _{d}_{e}_{s}_{c}_{r}_{i}_{p}_{t}_{i}_{o}_{n}
The stressed freevibration analysis requires a two phase analysis procedure. In the first phase, the system equilibrium equations
for the linear static analysis (Eq. 7) are used to solve for the for the userselected load case or load combination. Once the
nodal displacements are obtained, the element membrane forces are calculated and used to form the element geometric stiffness
matrices
to reduce the stiffness of an element, while tensile membrane forces cause a corresponding increase of stiffness. In the second phase of the analysis, the equilibrium equations for the stressed freevibration analysis are considered, namely
{X} _{s}
[
^{K} g
^{]}
e
. In general, compressive membrane forces tend
[M] _{s} { X ··
}
s
+ [
[K]
s
+ [
^{K} g
^{]}
s
]{X} _{s} = {0}
(42)
where the system geometric stiffness matrix
assembly of the element geometric stiffness matrices
standard matrix procedures. The geometric stiffness matrix represents the effect of membrane forces on the stiffness of the elements. Hence, by including it in the equilibrium equations 42, we are in essence including the effects of the membrane forces on the stiffness of the structure. Following the same procedure as in Analysis description on page 15, it can be shown that the frequency equation of the stressed system is
[
^{K} g
^{]}
s
is obtained by
[
^{K} g
^{]}
e
using
[
[K]
s
+ [
^{K} g
]]ω
–
^{2}
_{i}
[M]
_{s}
=
0
(43)
and its solution, after applying the necessary boundary conditions (see Application of boundary conditions on page 52 for a discussion on the application of boundary conditions), corresponds to the solution of the general eigenvalue problem
(
[
[
ˆ
K
]
s +
[
^{K} g
]
s
]ω
–
i
2
[M]
s
)φ
{
i }
=
0
(44)
D:\softek docs\book\Theory\Theory.csc.fm
Implementation
details
for the numdof eigenpairs
ω _{i} ,
{
φ
i
}
(45)
In general, the eigenvalues
oscillation) decrease in the presence of compressive membrane forces, whereas they increase in the presence of tensile membrane forces. In the case where the structure is critically loaded, the lowest eigenvalue becomes zero. This is due to the singularity of the stiffness matrix induced by the geometric stiffness matrix. This is in fact one of the methods used to predict buckling loads by frequency measurements for varying membrane loads. Further details are provided on the methods for determining buckling loads in Linear buckling analysis on page 31.
^{ω} i
(hence the natural frequencies of
The implementation of the stressed freevibration analysis is a combination of the descriptions in Implementation details on page 14 and Implementation details on page 16. In the current
version of SFrame, the geometric stiffness matrices
beams and shells are formed.
[
^{K} g
^{]} e
of
Linear dynamic analysis
The purpose of the linear dynamic analysis is to determine the response of a structure to arbitrarily timevarying loads under the following assumptions:
1. Stiffness and inertial effects of the structure do not depend on time.
2. Initial conditions are known.
3. No gyroscopic or Coriolis effects are included
_{A}_{n}_{a}_{l}_{y}_{s}_{i}_{s} _{d}_{e}_{s}_{c}_{r}_{i}_{p}_{t}_{i}_{o}_{n}
The system equilibrium equations for the linear dynamic analysis are
[M] _{s} { X ··
} s
+
[C]
s
{
·
X
}
s
+ [K] _{s} {X} _{s}
=
{R} _{s}
(46)
The above system of equations is a system of linear second order differential equations with constant coefficients. Three categories of methods exist for the solution of such system of equations:
Friday 28 April 2000 – 14:43
direct explicit, direct implicit, and indirect. Direct methods do not require any transformation of the system equilibrium equations prior to solution. Indirect methods require the transformation of the system equilibrium equations to a more convenient form prior to solution (Modal Analysis). Direct methods enforce equilibrium which includes the external forces,
inertia forces ( ) and damping forces ( ) at discreet
[C] _{s} { X
}
s
[M] _{s} { X ·· } _{s}
·
time intervals. Methods that consider equilibrium at time
classified as explicit (Central Difference), whereas methods that
t are
t + ∆t
consider equilibrium at time
(Newmark, Wilson, Linear Acceleration). SFrame uses the Newmark time integration method for the solution of Eq. 46. The cost of dynamic analysis is proportional to the number of steps in the analysis. Therefore, the choice of the step size becomes very important. This point will be discussed further in the following sections. Dropping the subscript s from all system vectors for brevity, the difference equations suggested by Newmark may be expressed as
are classified as implicit
and
·
{ X
} t + ∆t
=
{X}
t
+
∆t
(
(1 – δ)
{
X ··
}
t
+
δ
{
X ··
}
t + ∆t
)
(47)
^{{}^{X}^{}} t + ∆t
=
{X}
t
+
∆t
{
·
X
}
t
+ ∆t ^{2}
1
 – α
2
{
··
X
}
t
+
α
{
X ··
}
t + ∆t
(48)
If the values of 1/2 and 1/6 are used for
then above equations reduce to the equations used in the linear acceleration method. First we consider the system of second order differential equations at time t = t+∆t
δ
and
α
, respectively,
[M] _{s} { X ··
} t + ∆t
+
[C]
s
{
·
X
}
t + ∆t
+ [K] _{s} {X} _{t} _{+} _{∆}_{t}
=
^{{}^{R}^{}} t + ∆t
(49)
from which we intent to solve for the displacement
so, we must first obtain expressions for
terms of quantities at time t and obtain
^{{}^{X}^{}} t + ∆t
{
·
X
} t + ∆t
. To do
in
{ X ··
} t + ∆t
and
^{{}^{X}^{}} t + ∆t
only. From Eq. 48 we
{ X ··
} t + ∆t
=
 (
α∆t ^{2}
1
{X}
t + ∆t
–
{X}
t
1
) –  {
α∆t
·
X }
t –
1
 – 1
2α
{ X ··
} t
(50)
D:\softek docs\book\Theory\Theory.csc.fm
which upon substitution in Eq. 47 yields
·
{ X
} t + ∆t
=
{
·
X
}
t
+
∆t
(
(1 – δ)
{
X ··
}
t
+
δ
{
X ··
}
t + ∆t
)
(51)
Substituting Eqs. 50 and 51 into the system of equations 49 and rearranging, we obtain
where
and
{
^{R} eq
^{}} t
=
[
[
^{K} eq
^{]} s ^{{}^{Y}^{}} t + ∆t
=
^{K} eq
^{]} s
=
1
[M]
α∆t
2
{R}
t
+ ∆t
+ {
s
+
δ
[C]
α∆t
s
^{R} eq
^{}} t
+ [K] _{s}
[M]
s
{X}
α∆t
2
1
t
[C] _{s}
δ
{X}
α∆t
t
+
+
 {
α∆t
1
·
X
}
δ
 – 1
α
t
{
+
·
X
1
 – 1
2α
}
t
+ ∆t
{
··
X
}
t
δ
 – 1
2α
+
{
··
X
}
t
(52)
(53)
(54)
The system of equations in 52 can then be solved to obtain the displacements at t = t+∆t. Having done that, Eqs. 50 and 51 may be used to obtain the velocities and accelerations at time t = t+∆t. Since equilibrium is considered at t = t+∆t, the Newmark method is an implicit timeintegration method.
Implementation details of Newmark algorithm
Preliminary
calculations
This section describes the Newmark algorithm as implemented in SFrame.
1. Form the system matrices and apply appropriate boundary
ˆ 
ˆ 

conditions to obtain 
[ M 
] s 
and 
[ K 
] s 
. 
2. Select values for the Rayleigh damping parameters
α
and
β
(see Damping effects on page 57 for more details), and form
the system damping matrix
ˆ
[ C
] s
=
α
[
ˆ
M
]
s
+ β
[
ˆ
K
] s
(55)
Damping effects on page 57 gives details on how to select the
damping parameters
.
α
and
β
Friday 28 April 2000 – 14:43
3. Select values for the Newmark parameters α and δ. If no physical damping is present in the structure (i.e. Rayleigh
damping parameters
0.5050 should be used respectively. Otherwise, the values 0.25 and 0.50 should be used instead.
α
and
β
are zero) the values 0.2525 and
4. Select a small enough timestep ∆t. In general the value 0.00001 s should be used for the initial timestep size of the variable timestep algorithm. In the case of the constant timestep algorithm, the timestep size should be selected using the guidelines given in Selection of constant timestep size on page 28.
5. For the variable timestep algorithm, select a value for the J _{c}_{r} parameter. A description of this parameter is given in Implementation details of adaptive timestep size algorithm on page 27.
6. For the variable timestep algorithm, select values for the minimum and maximum timestep sizes using the guidelines of Selection of minimum and maximum timestep sizes on page 29.
7. Using the initial displacement and velocity vectors, determine the initial accelerations using equilibrium at time
For each timestep
1.
^{t} o
Form
[
ˆ
[ M
^{K} eq
^{]} s
] s
{ X ··
^{}}
t o
2. Factorize
[
[
^{K} eq
^{K} eq
^{]} s
^{]} s
=
=
{R}
t
o
–
1
 [
α∆t
2
ˆ
M
[
^{K} eq
^{]} s
=
]
[
s
ˆ
K
]
+
s
{X}
t
δ
 [
α∆t
– [
o
ˆ
C
]
s
ˆ
C
] s
·
{ X
ˆ
+ [ K
] s
[L][D][L] ^{T}
^{}}
t o
(56)
(57)
(58)
D:\softek docs\book\Theory\Theory.csc.fm
3.
Form
{ ^{R} eq
{
^{}} t
^{R} eq
=
^{}} t
[
ˆ
M ]
s
1
{X}
α∆t
2
t
ˆ
[ C
] s
δ
{X}
α∆t
+
1
 {
α∆t
·
X }
t +
1
 – 1
2α
t +
 δ – 1
α
{
·
X }
t + ∆t
{
··
X
t
}
 δ – 1
2α
+
{
··
X }
t
(59)
4. Backsubstitute and forward reduce for the displacements at t = t+∆t
[L][D][L] ^{T} {X} _{t} _{+} _{∆}_{t}
=
{
ˆ
R
}
t + ∆t
+ {
^{R} eq
^{}} t
(60)
5. Solve for the accelerations and velocities at t = t+∆t using Eqs. 50 and 51 respectively.
6. For the variable timestep size algorithm, adapt the timestep size according to the procedure described in Implementation details of
Much more than documents.
Discover everything Scribd has to offer, including books and audiobooks from major publishers.
Cancel anytime.