OpenSees Cloud
OpenSees AMI
Load Patterns and Time Series
Original Post - 10 Jan 2021 - Michael H. Scott
Visit Structural Analysis Is Simple on Substack.
In nonlinear structural analysis, loads add together, just not the load effects. So, the total mechanical load applied to a structural model can be expressed as the sum of time-varying load vectors.
\[{\bf P}(t)={\displaystyle \sum_{i=1}^N} \lambda_i(t){\bf P}_{ref,i}\]Each load vector is the product of a time-varying scalar function, \(\lambda(t)\), and a non-time-varying reference load vector, \({\bf P}_{ref}\).
The reference load vector is a pattern object in OpenSees. A Plain
load
pattern forms \({\bf P}_{ref}\) from nodal loads, member loads, and single
point (sp) constraints (if you want to impose a nodal displacement
history). A UniformExcitation
pattern forms the reference load vector
from nodal masses based on the direction of ground acceleration, i.e.,
\({\bf P}_{ref}=-{\bf m}{\boldsymbol \iota}\). You can also define a
MultipleSupport
load pattern which imposes ground motions at specified
nodes.
The scalar function \(\lambda(t)\) is a TimeSeries object in OpenSees.
Several time series are available including Path
, Sine
, Linear
, and
Constant
. You can assign gravity loads to a constant time series, or you
can ramp the gravity loads up in a linear time series then set the loads
to constant.
Ground accelerations, \(\lambda(t)=\ddot{u}_g(t)\), for a
UniformExcitation are typically defined with a Path
time series. Most
ground acceleration records are in units of g, so you have to scale
the time series by g to get length and time units that are consistent
with your model.
Note that, like a Reese’s peanut butter cup, there is no wrong way to define each load vector. You can embed the load magnitude in either \(\lambda(t)\) or \({\bf P}_{ref}\). To reach a peak base shear of 150 in a pushover analysis, both scenarios A and B below will give the same load history. Scenario A places the load magnitude in \(\lambda\) while scenario B puts the load magnitude in \({\bf P}_{ref}\).
I prefer scenario A where the reference lateral load sums to 1.0 so that the load factor, \(\lambda\), is equal to the base shear. But you can define your loads however best suits your model.