Chapter 2. Truss Structures
Chapter 2. Truss Structures
Chapter 2. Truss Structures
PC
Contents
2.7 Dynamics 33
2.7.1 Damping 34
2.7.4 Example 39
2.8 References 43
Trusses are the simplest structural elements. We discuss, in this chapter, stiffness
construction, solution procedures, large displacements and dynamics on truss elements.
Procedures remain simple for such elements and knowing them may help understanding
results. There is no need however to understand how stiffness is built and how the
resulting linear system is solved in order to use ZSOIL, and we will not go into these
details for more complicated elements. The interested reader can refer to ZSOIL help, in
particular the theory manual, for details.
The characteristics of this structure are its length L, section A and elastic modulus E.
Static equilibrium requires that we fix this structure at one end at least, and we apply a
force Fext at the other end. We now write equilibrium at the loaded end, which requires
internal and external forces to be in equilibrium:
F int F ext
EAd
and F int A E A
L
where is the stress, the strain and d is the displacement, unknown so far.
Assume now that the truss is discretized using a single 2-node element (see Fig. 2.2).
Expressing equilibrium of the deformed truss (d 1 is the displacement of node 1), yields a
system of two equations with R the unknown reaction. Writing the system of equations
in matrix form we get:
1 -1 d 0 R
k = with k = EA/l
-1 1 d1 F1
The left-hand-side matrix represents the stiffness matrix of a truss characterized by (E,
A, L) in one-dimensional space. If an imposed displacement do = D, zero or nonzero, is
given at the left end, d1 can be calculated from the second equation and then R from the
first one.
The same truss in two-dimensional space will have the following stiffness by:
1 0 -1 0 d 0x F0x
0
0 0 0 d 0y F0y
k
-1 0 1 0 d 1x F1x
0 0 0 0 d 1y F1y
Fig. 2.3 Skew truss in 2D space (c and s are the cosine and sine of angle θ)
Remark:
- A more generic approach to the formulation of the matrix equations of trusses is
of course possible, using e.g. finite elements techniques. This is however beyond
the scope of this book.
Example 2.1:
Remark:
- ZSOIL renumbers nodes and element.
_______________________________________________________________________
For element 1, which connects nodes 1 and 2, we obtain, by applying the construction
rules of the elemental stiffness matrix developed in the previous section and then
mapping it into a new matrix which has the format of the global stiffness matrix 6x6 (3
nodes x 2 dofs) (Fig. 2.4).
The same procedure can then be applied to trusses 2 and 3 and corresponding global
matrices can be summed, the global stiffness matrix results (Fig. 2.5).
Observing that both displacements of at node 1 and y displacement at node 3 are “0”,
we are left with 3 unknowns. We can remove lines and columns corresponding to known
“0” displacements from the above system. The resulting reduced linear system writes:
1 0 .5 d 2 x 0
100 0 1 .5 d 2 y 2
.5 .5 1.5 d3 x 0
This system can be solved by hand, with the following result:
d2 x 2/4
2
d 2 y e 5 2 / 4
d
3x 2 2 / 4
Nodal reactions can then be computed using the equations, abandoned earlier, which
correspond to degrees of freedom (dofs) subject to boundary conditions.
We will need, however, solution techniques which are applicable to a larger number of
unknowns.
Finite element stiffness assemblies lead to a linear system often written: Kd = F, where
K is called stiffness matrix, d the vector of nodal displacements components and F the
vector of applied forces components. Solution procedures for linear systems are
discussed in Appendices.
Consider Example 2.1 again. Open ZSOIL & select 2D/Frames only as project pre-
selection (Fig. 2.6). The role of this pre-selection is to initialize coming up input screens,
restricting them to entities relevant to the problem being solved. A wrong pre-selection
at this point can be corrected later.
Remark:
- There are no preprocessed projects; we will come back to this later.
ASSEMBLY/PREPROCESSING
Open Assembly/Preprocessing. Introduce 3 truss elements, FE Model/Truss/2
nodes-points. Specify material numbers (e.g. 1 for oblique trusses & 2 for horizontal
truss). If needed, you can modify them later, using Parameters (Fig. 2.8).
Fig. 2.8 Input of trusses and specification of materials for truss elements
Introduce fully fixed boundary conditions at the left node and a sliding boundary
condition at the right node (Fig. 2.9), specifying On node for new data, or
Update/Parameters for existing ones. Impose load at bottom node (Fig.2.10), On
node for new data, or Update/Parameters for existing one. Move to File/Exit and
click Yes when prompted if you want to save changes.
ASSEMBLY/Materials
Two materials have to be defined under Assembly/Materials, the first one for oblique
trusses (see Fig. 2.11), the second one for horizontal truss.
ANALYSIS/RUN ANALYSIS
The solution procedure is quasi- instantaneous, no need to discuss it now.
RESULTS/INFO/On node
Results confirm previous ones (Fig 2.12).
We want to analyze next the influence of a vertical movement of amplitude 0.1 m of the
boundary condition at node 3. Let’s define this analysis as a 2nd step of the previous one.
To start with, we save the previous input file under a new name
Ex_2_1_trussStruct_impDisp.inp.
At both steps we want the external load to be present, while the boundary motion should
be active only at step 2. To achieve this we associate load function number 0 (default)
- which is constant and equal to 1 - with the external load and load function number 1
with the moving boundary condition, under Assembly/Load function (Fig. 2.14).
Observe that the load function numbers are associated with the load or the boundary
conditions in the preprocessor (Fig. 2.15) and are defined as function of time under
Assembly/Load function.
Fig. 2.14 Load functions 0 - associated with the external load - and 1 - associated with
the vertical displacement of node 3
Fig. 2.15 Input of imposed displacement at node 3, at step 2 (via Load function)
Remark:
- With steps of amplitude 1 the load alone will be taken into account at step 1, load
and imposed displacement at step 2. Refinement of the time step will lead to
progressive application of the imposed displacement.
ANALYSIS/RUN ANALYSIS
As before.
RESULTS
Let’s compare stress resultants in the trusses between step 1 and 2 in order to observe
the influence of the support settlement at node 3.
Select reference and current time step under Time, screen options under Settings,
activate Info, pick one truss.
Observe that the difference of stress resultants between step 1 and 2 is zero: there is no
influence within the framework of small deformation theory.
Consider again Example 2.1, we’ll solve it now with ZSOIL, first assuming small
displacements, then large displacements, and repeating both with an E modulus reduced
by a factor of 100. Data preparation is described next.
Open the data file prepared for the small displacement problem
(Ex_2_1_trussStruct.inp), save it under a different name
Ex_2_1_trussStruct_laDisp.inp and activate large displacements as follows (see Fig.
2.17):
Results are compared for the 2 different E moduli, the first one leading to small
elongations, typically less then (L/100), the second to an elongation of approximately
(L/10). Computations are done with small and large displacement assumptions, in both
cases. Displacements at the bottom node and normal force in the oblique trusses are
reported in Table 2.1.
Input files are: Ex_2_1_trussEe6.inp, Ex_2_1_trussEe6_laDisp.inp,
Ex_2_1_trussEe4.inp, and Ex_2_1_trussEe4_laDisp.inp.
_______________________________________________________________________
Table 2.1: Example 2.1 influence of large displacements
E Sm./ La.Def . u xP u yP N
1.e6 small 3.53e 3 1.76e 2 1
1.e6 l arg e 3.53e 3 1.76e 2 1
1.e4 small 3.53e 1 1.76e0 1
1.e4 l arg e 2.48e 1 1.33e0 0.86
_______________________________________________________________________
Remarks:
- There is no influence of the large displacement formulation when the structure is
stiff, i.e. E large.
- The large displacement problem is nonlinear. The influence on N, the normal
stress resultant in oblique trusses is significant, when the structure is deformable,
i.e. E small.
- Given a set of ZSOIL data for small displacements, it is sufficient to simply
activate large displacements under the advanced option in the CONTROL screen
to get the large displacement solution. The program essentially redefines stiffness
taking the deformed configuration into account.
We analyze next the same structure subjected to a load which increases until failure is
reached. Displacement control is used in order to be able to pursue the analysis beyond
the onset of plasticity. The corresponding input is a vertical displacement imposed at
node 2, associated with a load-function which is increased linearly (Fig. 2.18) starting
from 0 and up to ∞.
Small and large displacement solutions are compared in Table 2.2 and Figure 2.19,
indicating sensitivity to displacement amplitude, which increases with the deformability
of the structure (i.e. when E is small). The material is considered to be elastic-perfectly
plastic with yield stress of 1000 kN/m2 (tensile & compressive).
Observe that yield is reached for a smaller displacement when large displacements are
taken into account; this is due to the change of orientation of oblique trusses.
Remark:
- It is worth noting that large displacements, or essentially large rotations, is a
matter of implementation of the proper theory, and does not require additional
data. What changes is the reference configuration for the computation of strain
and stress and the current stiffness. While this complicates significantly hand
calculations, it requires only activation when a computer is being used, so why
not using it all calculations? The main reason is: linear calculations are cheaper.
_______________________________________________________________________
Table 2.2: Vertical displacement at node 2 and yield force in oblique truss, small
vs. large displacements fromulations
P
E Sm./ La.Def . u yield N
1.e5 small 0.1 0.5657
1.e5 l arg e 0.099 0.5657
1.e4 small 1.e0 0.5657
1.e4 l arg e 0.92e0 0.5657
_______________________________________________________________________
2.7 Dynamics
Analyzing the system of Example 2.1 under dynamic loading is also easy. The linear
system to be solved is not any more of the static form:
Kd = F
Ma + Kd = F
Assuming that mass is concentrated at both ends of each truss, we guess that for a
single element, in the 1-dimensional case, the lumped mass matrix will correspond to
half the total mass at each end, i.e.:
1 0
M = ( AL / 2)
0 1
where ρ is the mass/unit volume, A the cross-section and L, the length of the truss.
A consistent derivation of the matrix form would lead to a consistent mass matrix, which
writes:
1/ 3 1/ 6
M = ( AL)
1/ 6 1/ 3
Using one form or the other is not completely indifferent, the 1 st form underestimates
eigenfrequencies, the 2nd overestimates them, but we will come back to this later.
Remark:
- For a skew truss the same transformations as for the stiffness matrix apply to the
mass matrix.
2.7.1 Damping
Ma + Cv + Kd = F
Rayleigh damping is the most commonly adopted form for C; it corresponds to a linear
combination of the mass and stiffness matrices:
C = 0 M + 0 K
un
ln( ) 2 ; where un is the n th peak of the oscillation ,
un 1
We can define the 2 damping coefficients by fixing the values of ξi for 2 frequencies ωi;
the corresponding ZSOIL input screen is given in Fig. 2.20 and the resulting damping for
other frequencies can be deduced, as illustrated on a diagram of the type shown in Fig.
2.21.
_______________________________________________________________________
Table 2.3: Values for ξ (can be found in the literature, e.g. [A.K. Chopra, 1995])
Combined
Stiffness proportional:
n 0 = 0; = 0 w
2
m
Mass proportional:
0 = 0; = 0
2w
w
wm wn
Fig. 2.21 Rayleigh damping: stiffness or mass- proportional, and combined
Commonly used techniques to solve the equation of motion include: direct time
integration, modal analysis, and frequency domain analysis. As only the first one fully
supports nonlinear analysis, it is the only one available in ZSOIL. Also, we consider only
one-step algorithms, which means that given the solution (acceleration an, velocity vn
and displacement dn) at tn = (n * Δt) of the equation of motion, we compute the solution
at tn+1 using only values computed at tn.
Dynamic analysis requires a new driver (Fig. 2.22) and the choice of an algorithm.
Fig. 2.22 Newmark’s algorithm for time integration: time-step and parameters input
We consider first Newmark’s family of algorithms and a SDOF system, a spring fixed at
one end with a mass at the other end. At time tn+1 the equation of motion reads:
Μ an 1 C v n 1 K dn 1 Fn 1
a, v, and d are the acceleration, the velocity and the displacement of the SDOF, and F is
the applied load, function of time; M, C, and K are the mass, the viscous damping and
the stiffness matrices, scalars in the case of a SDOF. We have therefore 1 equation and 3
unknowns, and we need 2 additional equations which are provided by Newmark’s
algorithm. These 2 equations are finite difference equations which relate a, v, and d:
t 2
dn 1 dn t v n 1 2 an 2 an 1
2
v n 1 v n t 1 an an 1
The algorithm introduces 2 parameters γ and β, which can be tuned to control stability
and accuracy. The default values are (= 0.5, = 0.25), corresponding to an implicit
algorithm, unconditionally stable and second order accurate, in which case no algorithmic
decay will be observed no matter which time-step is used, but some period elongation
will be present.
Alternatively, (= 0.5, = 0.0), not available in all versions of ZSOIL) corresponds to
an explicit algorithm characterized by conditional stability (condition: ωmaxΔt < 2), where
ωmax is the maximum frequency in the system, and also by period contraction. A more
complete discussion can be found in the documentation of ZSOIL.
Remarks:
- Notice that the dynamic problem is still linear unless material nonlinearity or large
displacements are activated.
- The static problem needs to have enough displacement boundary conditions to
remain stable, the dynamic problem does not need any of these boundary
conditions for stability, and they will be present only if they correspond to
physical reality.
L = 10 L = 10
k
m
i E N i
fi ; i i k i
2 L fi ; N i 2sin
2 m N 1 2
L
particular case: E 1; k EA / l ; E A 1, l , m Al
N 1
Err>10%
_____________________________________________________________________
2.7.4 Example
Consider again Example 2.1. We will now add a lumped mass M = 400 kg at node 2 (Fig.
2.23), and we apply an initial displacement proportional to the static loading case:
(d2 x , d2 y , d3 x ) (0.002, 0.01, 0.004) (see Fig. 2.24).
The system has 2 dynamic DOFs (d2 x , d2 y ) .and 1 DOF without associated mass, d 3x .
As DRIVER we use the default implicit Newmark (with = 0.5 and = 0.25), and Δt =
0.1 s (Fig. 2.25), notice the 2 drivers, the first one introduces a very small time step for
the system to restore equilibrium as soon as possible after imposed initial conditions
which often are not in equilibrium.
Remark:
Small and large deformation assumptions give the same result with the above data. It
will be different if a large displacement is imposed as initial condition.
_______________________________________________________________________
Exercise 2.2:
Build the stiffness corresponding to the following structure and solve the corresponding
linear system using the ZSOIL external solver (see Appendices). Compare obtained
solution with the same problem solved with ZSOIL (file Ex_2_2_trussStruct.inp).
_______________________________________________________________________
2.8 References