Eigen Analysis Example
Eigen Analysis Example
This example demonstrates how to perform eigenvalue analysis and plot mode shapes.
Idealized two-storey shear frame (Example 10.4 from "Dynamic of Structures" book by
Professor Anil K. Chopra) is used for this purpose. In this idealization beams are rigid in
flexure, axial deformation of beams and columns are neglected, and the effect of axial force
on the stiffness of the columns is neglected. Geometry and material characteristics of the
frame structure are shown in Figure 1. Node and element numbering is given in Figure 2.
EigenAnal_twoStoreyShearFrame.tcl
source EigenAnal_twoStoreyShearFrame7.tcl
and hit enter. To create output files (stored in directory "data") the user has to exit
OpenSees interpreter by typing "exit".
Note: geometry, mass, and material characteristics are assigned to variables that correspond
to the ones shown in Figure 1 (e.g., the height of the column is set to be 144 in. and
assigned to variable h; the value of the height can be accessed by $h).
Nodes of the structure (Figure 2) are defined using the node command:
node
node
node
node
node
node
1
2
3
4
5
6
0.
$L
0.
$L
0.
$L
0. ;
0. ;
$h ;
$h ;
[expr 2*$h];
[expr 2*$h];
The boundary conditions are defined next using single-point constraint command fix. In
this example nodes 1 and 2 are fully fixed at all three DOFs:
fix 1 1 1 1;
fix 2 1 1 1;
Masses are assigned at nodes 3, 4, 5, and 6 using mass command. Since the considered
shear frame system has only two degrees of freedom (displacements in x at the 1st and the
2nd storey), the masses have to be assigned in x direction only.
mass
mass
mass
mass
3
4
5
6
$m 0.
$m 0.
[expr
[expr
0. ;
0. ;
$m/2.] 0. 0. ;
$m/2.] 0. 0. ;
The beams and columns of the frame are defined to be elastic using elasticBeamColumn
element. In order to make beams infinitely rigid moment of inertia for beams (Ib) is set to
very high value (10e+12).
element
element
element
element
element
element
elasticBeamColumn
elasticBeamColumn
elasticBeamColumn
elasticBeamColumn
elasticBeamColumn
elasticBeamColumn
1
2
3
4
5
6
1
3
2
4
3
5
3
5
4
6
4
6
$Ac
$Ac
$Ac
$Ac
$Ab
$Ab
$Ec
$Ec
$Ec
$Ec
$E
$E
To comply with the assumptions of the shear frame (no vertical displacemnts and rotations
at nodes) end nodes of the beams are constrained to each other in the 2nd DOF (vertical
displacement) and the 3rd DOF (rotation). EqualDOF command is used to imply these
constraints.
equalDOF 3 4 2 3
equalDOF 5 6 2 3
Define recorders
For the specified number of eigenvalues (numModes) (for this example it is 2) the
eigenvectors are recorded at all nodes in all DOFs using node recorder command.
for { set k 1 } { $k <= $numModes } { incr k } {
recorder Node -file [format "modes/mode%i.out" $k] -nodeRange 1 6
-dof 1 2 3 "eigen $k"
}
$numModes];
omega {}
f {}
T {}
pi 3.141593
}
close $Periods
Record eigenvectors
To record the eigenvectors for subsequent display, the record command has to be issued
following the eigen command.
record