4. Linear time-invariant systems with one degree of freedom#
A single-degree-of-freedom system (SDOF, figure below) can be described by an inhomogeneous second-order ordinary differential equation:
where \(f(t)\) is the excitation force. The solution of the inhomogeneous equation is of the form:
where \(x_{h}\) is the homogeneous solution and \(x_{p}\) the particular solution.
Free response (homogeneous solution)#
If there is no excitation force, \(f(t)=0\), the homogeneous solution is obtained from:
We use the ansatz for the solution \(x_{h}(t)\):
where the displacement amplitude \(X_{h}\) and the eigenvalue \(\lambda\) are unknown (and must be determined). We insert the ansatz into the differential equation:
We rearrange the expression:
We determine the nontrivial (\(X_{h}\,\mathrm{e}^{\lambda \,t}\neq0\)) solution on the basis of the characteristic equation:
The solution of the characteristic equation is:
where \(\lambda_{1,2}\) are the eigenvalues of the system (in general a complex number).
Depending on the ratio between the inertial, elastic and damping forces, the solution is:
overdamped: if the damping forces dominate over the inertial and elastic forces (\(c^2\geq 4\,k\,m\)),
critically damped: if the damping forces are equal to the inertial and elastic forces (\(c^2=4\,k\,m\)),
underdamped: if the inertial and elastic forces dominate over the damping forces (\(c^2\leq 4\,k\,m\)).
In the case of an overdamped and a critically damped system, the solution is in real form and the motion is not oscillatory.
In this book we focus on the underdamped case, when the complex eigenvalues are conjugate pairs. The mass \(m\), the damping \(c\) and the stiffness \(k\) define the undamped natural angular frequency (also resonant frequency, natural frequency):
Here it is important to recall (see the basic courses on dynamics and mechanical vibrations) that in linear systems a preload does not change the natural frequency.
Damping can be defined with the help of the damping ratio:
where:
is the critical damping.
With the help of the undamped natural frequency \(\omega_0\) and the damping ratio \(\delta\), we can rewrite the homogeneous differential equation into the standard form:
Furthermore, we insert \(\omega_0\) and \(\delta\) into the expression for the eigenvalues:
where:
is called the damped natural angular frequency (it is correctly denoted by \(\omega_{0,d}\), but here, for the sake of the notation in the code below, we use the short form).
We insert the derived eigenvalues into the ansatz for the homogeneous solution \(x_{h}(t)\). Since we have two eigenvalues, the general solution is a linear combination of both:
where the constants \(X_{h,1}\) and \(X_{h,2}\) depend on the initial conditions.
For the impulse response, we will build on the initial conditions where the system is released from equilibrium with a non-zero velocity:
The solution of the initial conditions represents the so-called impulse response function.
Impulse response function#
Note
Impulse response function:
The response is composed of the envelope \({\dot x_0}/{\omega_{d}}\,\exp(-\delta\, \omega_0\,t)\) and the oscillating part \(\sin(\omega_{d}\,t)\), see the figure below.
Harmonic excitation#
We continue with the solution of the equation of motion for the case of harmonic excitation:
where \(F\) is the force amplitude (in general a complex value) and \(\omega\) the angular frequency of the excitation.
We determine the particular solution \(x_p(t)\) from the equation:
by assuming a harmonic response:
where \(X_{p}\) is the unknown complex amplitude of the particular component (sometimes also called a phasor). We continue with the derivation:
The nontrivial solution requires \(\mathrm{e}^{ \mathrm{i}\,\omega\,t}\neq 0\), and therefore we look for the solution on the basis of the equation:
which leads to the determination of the ratio between the response \(X_p\) and the excitation \(F\), which we also call the frequency response function \(\alpha(\omega)\):
If we factor out \(1/k\), then use \(\omega_0^2=k/m\), \(c=\delta\,c_c\), \(c_c=2\sqrt{k\,m}\) and additionally introduce the frequency ratio \(r=\omega/\omega_0\), we derive:
In what follows, we show the derived expression graphically.
The particular solution is therefore:
Transient response and steady-state response#
First we determined the homogeneous solution \(x_{h}(t)\), which represents the transient response to some initial disturbance. The particular solution \(x_{p}(t)\) represents the solution to a stationary harmonic disturbance. The general solution is determined by the sum of both (figure below).
Frequency response function#
First we will focus solely on the particular solution (but we will no longer use the subscript \(p\)):
Since the above expression represents the frequency response, it is called the frequency response function (FRF; see The relation between the frequency response function and the impulse response function for a description of how the FRF is obtained from the homogeneous solution).
Note
Frequency response function:
Using the undamped natural angular frequency \(\omega_0^2=k/m\), the damping ratio \(\delta=c/(2\,\sqrt{k\,m})\) and the frequency ratio, also called the relative frequency, \(r=\omega/\omega_0\), we obtain the frequency response in standard form:
\(\alpha(\omega)\) is called the frequency response function, or more precisely the dimensional frequency response function. In contrast to \(\alpha(\omega)\), \(H_0(\omega)\) is defined as:
and in some sources (e.g. Géradin and Rixen [2015]) it is called the nondimensional frequency response function. In the expression above, the static deflection \(X_0\) due to the static force \(F\) is defined as:
Note
The harmonic response \(X(\omega)\) can be defined with the nondimensional frequency response function as:
or:
With the help of the frequency response function, the steady-state response under harmonic excitation with \(\omega_f\) can be described as:
Different forms of the FRF#
The dimensional FRF makes sense, since the static deflection \(X_0\) is difficult to measure and, often, the excitation force and the response acceleration are measured. Instead of acceleration, we also often measure velocity and displacement. Consequently, there are different forms of the frequency response function:
Note
where \(\dot{X}(\omega)\) and \(\ddot{X}(\omega)\) denote the complex amplitudes of velocity and acceleration in the frequency domain. The response of the different forms of FRF is shown in the figure below:
receptance: below resonance it converges to the static inverse of the stiffness \(1/k\), while above resonance it converges quadratically to zero,
mobility: below resonance it converges linearly to zero, above resonance it converges linearly to zero,
accelerance: below resonance it converges quadratically to zero, above resonance it converges to the inverse of the mass \(1/m\).
Note
The inverse of accelerance is the dynamic mass (\(F/\ddot{X}\)), the inverse of mobility is the mechanical impedance (\( F/\dot{X}\)) and the inverse of receptance is the dynamic stiffness (\(F/X\)).
Properties of a linear time-invariant system#
The differential equation for a single-degree-of-freedom system connects the excitation (input) with the response (output):
A system is linear if it has the properties of additivity:
and scaling (also homogeneity):
If the system is linear, we can use the principle of superposition:
Another important property is time invariance:
Response to periodic excitation#
Writing the excitation with Fourier series#
According to Fourier series in exponential (complex) form, we can write the periodic excitation \(f(t)\) as:
where \(\omega_{p}\) is the fundamental angular frequency of the periodic excitation:
and the Fourier (complex) coefficients \(c_n\) for \(n\in \mathbb{Z}\) are defined as:
where \(c_0\) is the average value of \(f(t)\). It also holds that \(c_{-n}=c_n^*\), where \({}^*\) denotes the complex conjugate.
Note
Since the principle of superposition holds, we can decompose the excitation into an arbitrary number of components; here we decompose the excitation into the individual terms of the Fourier series; the Fourier coefficient \(c_n\) thus defines one harmonic component.
Writing the response with the help of Fourier series#
Here we continue with the computation of the solution for each harmonic component of the excitation separately (see Frequency response function):
where \(c_n\) is defined above for periodic excitation by a force.
Once we have determined \(X_n\), we can compute the response of this harmonic component in time:
and we return to the principle of superposition and sum the responses:
Generalization of periodic excitation to arbitrary excitation#
The Fourier transform represents a generalization of Fourier series to non-periodic data as well. The derivations that we made for periodic excitation with the help of Fourier series can thus be generalized.
Note
The Fourier transform of the excitation for the transition into the frequency domain:
decomposes the excitation into harmonic components \(F(\omega)\), which we then solve for the individual angular frequencies \(\omega\):
and then we make the transition back into the time domain:
Excitation by a unit impulse#
Let us now consider the excitation of a single-mass system by a unit impulse \(f_1(t)=\delta(t-\tau)\), where \(\delta(t)\) is the Dirac delta function (see the chapter The Dirac delta function):
The single-mass system is at rest at time \(\tau^-\), and an infinitesimal time later, \(\tau^+\), it has, because of the unit impulse \(\Delta I_1\), the velocity:
After the unit impulse, \(t\ge \tau\), the force \(f_1(t)\) is zero and the system responds according to the homogeneous solution with zero initial displacement \(x=0\) and \(\dot{x}=\dot{x}_0\) (see the chapter Impulse response function):
where \(h(t-\tau)\) is the impulse response function.
The response to a unit impulse of a causal system depends only on past (and present) excitation, not on future excitation. All systems in this book are considered causal.
Generalization of the unit excitation to arbitrary excitation#
A general excitation force (figure below) can be seen as a superposition of unit impulses multiplied by a certain constant.
Each infinitely short impulse would cause a response according to the impulse response function \(h(t-\tau)\), multiplied by the amplitude of the impulse \(f(\tau)\,\Delta\tau\). For linear systems, we sum such responses according to the principle of superposition:
Because of the infinitesimally small time steps \(\Delta \tau\to0\), the sum passes into an integral:
We call the above expression the convolution integral, the superposition integral or convolution (sometimes also the Duhamel integral).
Since the impulse response function \(h(t-\tau)=0\) for \(t<\tau\), the lower limit of the integral can be extended to \(-\infty\):
Furthermore, if we change the integration variable to \(\tau_1=t-\tau\) (consequently: \(\textrm{d} \tau_1=-\textrm{d} \tau\)), the limits of integration change to: \(-\infty\to+ \infty\) and \(t\to 0\):
It follows that we can summarize a property called the commutativity of convolution:
or in short form:
where \(*\) denotes convolution. The example below shows excitation by a step function of height \(A\) and length \(B\).
import sympy as sym
t, ω_0, ω_d, d_x_0, δ, A, B, τ = sym.symbols('t, \\omega_0, \\omega_d, d_x_0, \\delta, A, B, \\tau', real=True)
π = sym.pi
data = {ω_0: 1, d_x_0: 1, δ: 0.1, A: 2., B: 10.}
ω_d = ω_0 * sym.sqrt(1-δ**2)
envelope = d_x_0/ω_d * sym.exp(-δ*ω_0*t)
h = envelope * sym.sin(ω_d*t)*sym.Heaviside(t)
f = A*(sym.Heaviside(t)-sym.Heaviside(t-B))
fh = (f.subs(t, τ)*h.subs(t, t-τ)).subs(data)
fh = sym.integrate(fh, (τ, 0, t))
p1 = sym.plot(h.subs(data), (t,-5,50), line_color='C0', xlabel='$t$ [s]', ylabel='', title='Time domain',
label='$h(t)$', show=False)
p2 = sym.plot(f.subs(data), (t,-5,50), line_color='C1',
label=f'$f(t)$, $A=${A.subs(data):3.1f}, $B=${B.subs(data):3.1f}', show=False)
p3 = sym.plot(fh, (t,-5,50), line_color='C2',
label='$f(t)*h(t)$', show=False)
p1.extend(p2)
p1.extend(p3)
p1.legend = True
p1.show()
And here is a slightly more detailed figure:
import numpy as np
import sympy as sym
t, ω_0, ω_d, d_x_0, δ, A, B, τ, t0 = sym.symbols('t, \\omega_0, \\omega_d, d_x_0, \\delta, A, B, \\tau, t0', real=True)
π = sym.pi
data = {ω_0: 2, d_x_0: 1, δ: 0.2, A: 0.5, B: 10., t0: 5}
ω_d = ω_0 * sym.sqrt(1-δ**2)
envelope = d_x_0/ω_d * sym.exp(-δ*ω_0*t)
h = envelope * sym.sin(ω_d*t)*sym.Heaviside(t)
f = A*(sym.Heaviside(t)-sym.Heaviside(t-B))
fh = (f.subs(t, τ)*h.subs(t, t-τ)).subs(data)
fh = sym.integrate(fh, (τ, -0, t))
x_array = np.linspace(0, data[t0], 100)
f_array = sym.lambdify(τ, f.subs(t, τ).subs(t, t0).subs(data)*h.subs(t, t-τ).subs(t, t0).subs(data))(x_array)
p1 = sym.plot(h.subs(t, t-τ).subs(t, t0).subs(data), (τ,-2,5), line_color='C0',
xlabel='$t$ [s]', ylabel='', title='Time domain',
label='$h(t-\\tau)$', show=False,
fill={'x': x_array,
'y1': f_array,
'color':'red', 'alpha':0.5})
p2 = sym.plot(f.subs(t, τ).subs(t, t0).subs(data), (τ,-2,5), line_color='C1',
label=f'$f(\\tau)$, $A=${A.subs(data):3.1f}, $B=${B.subs(data):3.1f}', show=False)
p5 = sym.plot_parametric((t0,fh.subs(t, t0)), (t0,4.95,5.05), line_color='r',
label=r'Value $\int_{-\infty}^{t='+str(data[t0])+r'\,s} f(\tau)\,h(t-\tau)\,\text{d}\tau$', show=False)
p3 = sym.plot(f.subs(t, τ).subs(t, t0).subs(data)*h.subs(t, t-τ).subs(t, t0).subs(data), (τ,-2,5), line_color='C5',
label=f'Integrand: $f(\\tau)\\,h(t-\\tau)$, $A=${A.subs(data):3.1f}, $B=${B.subs(data):3.1f}', show=False)
p4 = sym.plot(fh, (t,-1,8), line_color='C2',
label='$f(t)*h(t)$', show=False, nr_of_points=200)
p1.extend(p2)
p1.extend(p3)
p1.extend(p4)
p1.extend(p5)
p1.legend = True
p1.show()
From the figure above we can see why \(h(\tau)\) is sometimes called the dynamic memory of the system; \(h(t-\tau)\) ensures that the solution at time \(t\) is influenced by what happens up to time \(t\) (see the integrand \(f(\tau)\,h(t-\tau)\) above). For the same reason, \(\tau\) is called the memory variable.
Note
If the system is non-causal and the response also depends on future excitation, the limits of integration are extended and the commutative property of convolution is:
The relation between the frequency response function and the impulse response function#
In the previous chapters, the frequency response function \(\alpha(\omega)\) and the impulse response function \(h(t)\) were presented; the first is defined in the frequency domain, the second in the time domain. In this chapter we will prove that \(h(t)\) and \(\alpha(\omega)\) form a Fourier transform pair.
The Fourier transform of the unit impulse \(f_1(t)=\delta(t)\):
Consequently, the unit impulse excites all frequencies equally.
The unit impulse, via the frequency response function \(\alpha(\omega)\), leads to the response \(X_1(\omega)\):
To make the transition into the time domain, we use the inverse Fourier transform:
On the other hand, the response \(x_1(t)\) to the unit impulse is also defined by the impulse response function \(x_1(t)=h(t)\), from which the following note follows.
Note
The impulse response function and the frequency response function are a Fourier pair:
Note: a Fourier pair denotes two variables, one in the time domain and the other in the frequency domain, which are connected via the Fourier transform.