1 Introduction

Structural vibration control is an important consideration in dynamic system design (Housner et al. 1997). Many passive and active vibration control methods (Preumont 1997; Mead and Meador 1998) have been proposed in past decades. The most famous passive vibration control device is the damped vibration absorber (DVA) (Korenev and Reznikov 1993). The DVA design is usually performed in the frequency domain by finding the DVA parameters to minimize a peak response in a frequency range (Pennestrı 1998; Ozer and Royston 2005; Asami et al. 2002).

In time domain, there is a classic problem formulation of passive structural vibration control that deals with the dynamic system disturbed by initial conditions. The objective is to find design parameters of the damped vibration system that minimize the performance index in the form of time integral of the quadratic function of state variables (displacement and velocities, e.g., see Eq. (5)). This performance index can be evaluated by Lyapunov’s second method (Kalman and Bertram 1960).

Based on the Lyapunov equation, the evaluation of performance indices are simplified into matrix quadratic forms and do not require the time domain integration. Parameter optimization problems with a quadratic performance index have been solved by this method (Ogata and Yang 1970). Wang et al. (1984) applied the Lyapunov equation to solve the transient response optimization problem of linear vibrating systems excited by initial conditions. In their work, the Lyapunov equation was expanded to a set of linear equations and direct sensitivity was carried out by use of the same system of linear equations. The computational effectiveness of the method is illustrated by applying it to the classical vibration absorber and to a cantilever beam carrying an absorber at its midpoint. Du (2008) applied the Lyapunov equation to obtain the optimum configuration of dynamic vibration absorber (i.e., DVA) attached to an undamped or damped primary structure. The performance index includes two types of controls, i.e., velocity and displacement controls of the primary mass. With the help of the Kronecker product and matrix column expansion, the closed-form solutions of optimum parameters for undamped primary structure are finally presented.

The Lyapunov equation is also used in other fields of optimal design. Marano et al. (2007, 2010) apply the Lyapunov equation to deal with the optimum design of vibration absorbers utilized to reduce undesirable vibrational effects which are originated in linear structures by seismic excitations. Rüdinger (2006) uses the Lyapunov equation to consider a tuned mass damper with a nonlinear power law viscous damper excited by white noise. The system is analyzed by statistical linearization and stochastic simulation with the objective of minimizing the standard deviation of the response.

In the above mentioned optimal design studies, a direct sensitivity analysis method or finite difference method is used to obtain the sensitivities. This practice works well for optimal selection of a few parameters. However, some optimization problems, such as gradient-based topology optimization, typically involve hundreds or thousands of design variables (Bendsoe and Sigmund 2003). For this type of problem, direct sensitivity analysis would be unacceptably slow. Thus, a more efficient adjoint variable method (AVM) (Van Keulen et al. 2005; Jensen et al. 2014) is indispensable.

In this paper, we consider one case of passive control optimization problem, that is, to minimize an integrated quadratic performance measure for damped vibrating structures subjected to initial conditions. The optimum location of damped spring supports for vibration control is solved as a topology optimization problem (Díaaz and Kikuchi 1992; Molter et al. 2013; Kang et al. 2009; Zhang and Kang 2013). The goal of this paper is to present an adjoint sensitivity analysis method considering the above mentioned objective function based on Lyapunov’s second function. Furthermore, when applied to a problem modeled by the finite element method (FEM) model reduction is necessary to reduce the size of Lyapunov equations to further reduce the computing time. The general formulation for both full and reduced order models will be developed. The sensitivity results from both the full model and reduced model are validated by the results computed by finite difference method. The accuracy and efficiency of the proposed method are demonstrated by two examples of beams and plate with damped spring supports. The results indicate the potential of application of the proposed method to topology optimization under the special time domain criterion.

2 Application of Lyapunov’s second method to optimize transient response of mechanical systems

Consider a viscously damped linear vibration system governed by the equation:

$$ \mathbf{M}\ddot{\mathbf{u}}+\mathbf{C}\dot{\mathbf{u}}+\mathbf{K}\mathbf{u}=\mathbf{0} $$
(1)

where M (N × N) is the mass matrix, C (N × N) is the damping matrix, K (N × N) is the stiffness matrix, and u (N × 1) is displacement vector. N is the structural degree of freedoms.

Assume the system is excited by initial displacements or velocities. The design problem is to find parameters in M, K and C matrices to minimize a performance index in the form

$$ J={\displaystyle {\int}_0^Tq\left(\mathbf{u},\dot{\mathbf{u}}\right)dt} $$
(2)

where, \( q\left(u,\dot{u}\right)={\mathbf{u}}^T{\mathbf{Q}}_u\mathbf{u}+{\dot{\mathbf{u}}}^T{\mathbf{Q}}_{\dot{u}}\dot{\mathbf{u}} \) is a quadratic function of u and \( \dot{\mathbf{u}} \). Transient dynamic responses have to be computed to evaluate the objective function. Direct or adjoint methods can be applied to evaluate the response sensitivity of the performance. Alternatively, if we replace the upper bound of integration to infinite, we can use Lyapunov’s second method to evaluate the performance without performing transient dynamic response analysis.

To apply Lyapunov’s second method to this system, it is necessary to rewrite Eq. (1) in the state space form

$$ \dot{\mathbf{X}}=\mathbf{AX} $$
(3)
$$ \mathbf{A}=\left[\begin{array}{ll}\mathbf{O}\hfill & \mathbf{I}\hfill \\ {}-{\mathbf{M}}^{-1}\mathbf{K}\hfill & -{\mathbf{M}}^{-1}\mathbf{C}\hfill \end{array}\right]\mathbf{X}=\left[\begin{array}{l}\mathbf{u}\hfill \\ {}\dot{\mathbf{u}}\hfill \end{array}\right] $$
(4)

The matrix A is (2 N × 2 N). The vector X is (2 N × 1). Structural design parameters such as mass density, damping ratio and spring stiffness are contained in the matrix A. The optimization problem is to choose these parameters to minimize the performance measure J defined by

$$ J={\displaystyle {\int}_0^{\infty }{\mathbf{X}}^T\mathbf{Q}}\mathbf{X}dt $$
(5)

for a given initial excitation X (0). In Eq. (5), Q (2 N × 2 N) is a positive semi-definite symmetric weighting matrix and t denotes time. According to Lyapunov theory of stability, for an asymptotically stable system, there exists a symmetric positive semi-definite matrix P (2 N × 2 N) satisfying

$$ {\mathbf{A}}^T\mathbf{P}+\mathbf{P}\mathbf{A}=-\mathbf{Q} $$
(6)

Equation (6) is the well-known Lyapunov equation. Note that the unknown matrix P consists of 2 N × 2 N entries and have N×(2 N + 1)/2 unknowns because of its symmetry. Premultiply and postmultiply Eq. (6) by X T and X respectively, we get

$$ {\mathbf{X}}^T{\mathbf{A}}^T\mathbf{P}\mathbf{X}+{\mathbf{X}}^T\mathbf{P}\mathbf{AX}=-{\mathbf{X}}^T\mathbf{Q}\mathbf{X} $$
(7)

With the help of (3), (7) can be further simplified as

$$ {\dot{\mathbf{X}}}^T\mathbf{P}\mathbf{X}+{\mathbf{X}}^T\mathbf{P}\dot{\mathbf{X}}=\frac{d}{dt}\left({\mathbf{X}}^T\mathbf{P}\mathbf{X}\right)=-{\mathbf{X}}^T\mathbf{Q}\mathbf{X} $$
(8)

Accordingly, (5) can be expressed as

$$ J=-{\displaystyle {\int}_0^{\infty}\frac{d}{dt}\left({\mathbf{X}}^T\mathbf{P}\mathbf{X}\right)}dt=\mathbf{X}{(0)}^T\mathbf{P}\mathbf{X}(0)-\mathbf{X}{\left(\infty \right)}^T\mathbf{P}\mathbf{X}\left(\infty \right) $$
(9)

If the system is asymptotically stable, then, X(∞) ; Denote the initial states as X (0)  =  {u 0v 0} where u 0 and v 0 are the initial displacement and velocity, respectively. Then (9) can be further simplified as

$$ J=\mathbf{X}{(0)}^T\mathbf{P}\mathbf{X}(0) $$
(10)

That is to say, to minimize J in (5) is equivalent to minimize X(0)T PX(0), where X(0) is the initial state vector and the unknown symmetric matrix P can be obtained by solving Eq. (6). Note that for the system to be asymptotically stable, all the eigenvalues of the damped system must have negative real part.

Application of the Lyapunov method for transient dynamic optimization of a mechanical system was originally presented by Wang et al. (1984). In that work, Eq. (6) was expanded to a set of linear equations for the elements in matrix P, the solutions are then used in (10) to evaluate the objective function. Direct sensitivity was also carried out by using the same system of linear equations to get the sensitivity matrix.

3 Sensitivity analysis scheme

To apply gradient-based optimization method to solve the above optimization problem, sensitivity (gradient) of the objective functions with respect to the design variables is needed. Both direct and adjoint methods will be developed in the following subsections.

3.1 Direct method

The direct analysis scheme to obtain the sensitivity of the objective function in (10) with respect to the design variable has been proposed by Wang et al. (1984) for the case X (0) independent of design variables. In general, the sensitivity can be expressed as

$$ \frac{\partial J}{\partial {d}_k}=\frac{\partial \mathbf{X}{(0)}^T}{\partial {d}_k}\mathbf{P}\mathbf{X}(0)+\mathbf{X}{(0)}^T\frac{\partial \mathbf{P}}{\partial {d}_k}\mathbf{X}(0)+\mathbf{X}{(0)}^T\mathbf{P}\frac{\partial \mathbf{X}(0)}{\partial {d}_k} $$
(11)

where d k is the kth design variable. For the case X (0) independent of design variables, (11) can be further simplified as

$$ \frac{\partial J}{\partial {d}_k}=\mathbf{X}{(0)}^T\frac{\partial \mathbf{P}}{\partial {d}_k}\mathbf{X}(0) $$
(12)

By differentiation Eq. (6) with respect to a design variable and rearrangement of the involved terms, we have

$$ {\mathbf{A}}^T\frac{\partial \mathbf{P}}{\partial {d}_k}+\frac{\partial \mathbf{P}}{\partial {d}_k}\mathbf{A}=-\left(\frac{\partial {\mathbf{A}}^T}{\partial {d}_k}\mathbf{P}+\mathbf{P}\frac{\partial \mathbf{A}}{\partial {d}_k}+\frac{\partial \mathbf{Q}}{\partial {d}_k}\right) $$
(13)

In comparison of Eq. (6), it can be seen that the term \( \frac{\partial \mathbf{P}}{\partial {d}_k} \) can be obtained by solving the Lyapunov matrix Eq. (6) with a different right hand matrix in Eq. (13). The direct method of sensitivity analysis involves the solution of Eq. (13) for each design variable.

However, if an optimization problem has n design parameters, the direct sensitivity analysis scheme needs to solve n + 1 Lyapunov matrix equations to obtain the sensitivities of all design parameters. Note that each Lyapunov equation has N×(2 N + 1)/2 unknowns. This sensitivity solution process will be computational costly when the problems have large number of design parameters and large structural degree of freedoms. Thus, a more efficient adjoint method is needed.

3.2 Adjoint method

In this section, we propose a sensitivity analysis scheme derived from adjoint method. The new method just needs to solve the Lyapunov function twice to obtain the sensitivities with respect to all the design variables.

For ease of presentation of the new sensitivity analysis scheme, we adopt Du’s approach (2008) of using Kronecker product and column expansion to expand the Lyapunov equation as a system of linear equation. The column expansion of matrix V is defined as a vector that stacks all columns of this V matrix. For example, for the 3 × 3 matrix V

$$ \mathbf{V}=\left[\begin{array}{ccc}\hfill {V}_{11}\hfill & \hfill {V}_{12}\hfill & \hfill {V}_{13}\hfill \\ {}\hfill {V}_{21}\hfill & \hfill {V}_{22}\hfill & \hfill {V}_{23}\hfill \\ {}\hfill {V}_{31}\hfill & \hfill {V}_{32}\hfill & \hfill {V}_{33}\hfill \end{array}\right] $$
(14)

the column expansion cs (V) of V is

$$ \overline{\mathbf{V}}=cs\left(\mathbf{V}\right)={\left[\begin{array}{ccccccccc}\hfill {V}_{11}\hfill & \hfill {V}_{12}\hfill & \hfill {V}_{13}\hfill & \hfill {V}_{21}\hfill & \hfill {V}_{22}\hfill & \hfill {V}_{23}\hfill & \hfill {V}_{31}\hfill & \hfill {V}_{32}\hfill & \hfill {V}_{33}\hfill \end{array}\right]}^T $$
(15)

Note that cs (V) is a 9 × 1 vector. If matrix V is symmetric, there are just 6 independent variables in vector cs (V). The operator cs (*) refers to the expansion operation. For an N-dof system, using the Kronecker product, Eq. (6) can be written as

$$ \mathbf{G}\overline{\mathbf{P}}=-\overline{\mathbf{Q}} $$
(16)

where \( \overline{\mathbf{P}}=cs\left(\mathbf{P}\right),\;\overline{\mathbf{Q}}=cs\left(\mathbf{Q}\right) \) and the matrix G can be obtained from the matrix A by Kronecker product. That is

$$ \mathbf{G}=\left({\mathbf{A}}^T\otimes \mathbf{E}+\mathbf{E}\otimes {\mathbf{A}}^T\right) $$
(17)

E (2 N × 2 N) is an identity matrix with the same size of A. Now, by direct calculation, the objective function in (10) can be written as

$$ J={\overline{\mathbf{S}}}^T\overline{\mathbf{P}} $$
(18)

where

$$ \overline{\mathbf{S}}=cs\left(\mathbf{S}\right),\;\mathbf{S}=\mathbf{X}(0)\mathbf{X}{(0)}^T $$
(19)

S also is a positive semi-definite symmetric matrix as matrix Q. From (18), the second item of the right hand of (11) can be expressed as

$$ \mathbf{X}{(0)}^T\frac{\partial \mathbf{P}}{\partial {d}_k}\mathbf{X}(0)={\overline{\mathbf{S}}}^T\frac{\partial \overline{\mathbf{P}}}{\partial {d}_k} $$
(20)

where \( \frac{\partial \overline{\mathbf{P}}}{\partial {d}_k}=cs\left(\frac{\partial \mathbf{P}}{\partial {d}_k}\right) \). From Eq. (16), the term \( \frac{\partial \overline{\mathbf{P}}}{\partial {d}_k} \) can be obtained by solving the following equation

$$ \frac{\partial \mathbf{G}}{\partial {d}_k}\overline{\mathbf{P}}+\mathbf{G}\frac{\partial \overline{\mathbf{P}}}{\partial {d}_k}+\frac{\partial \overline{\mathbf{Q}}}{\partial {d}_k}=\mathbf{0} $$
(21)

So formally we get

$$ \frac{\partial \overline{\mathbf{P}}}{\partial {d}_k}=-{\mathbf{G}}^{-1}\left(\frac{\partial \mathbf{G}}{\partial {d}_k}\overline{\mathbf{P}}+\frac{\partial \overline{\mathbf{Q}}}{\partial {d}_k}\right) $$
(22)

Thus (20) can be expressed as

$$ \frac{\partial J}{\partial {d}_k}=\mathbf{X}{(0)}^T\frac{\partial \mathbf{P}}{\partial {d}_k}\mathbf{X}(0)=-{\overline{\mathbf{S}}}^T{\mathbf{G}}^{-1}\left(\frac{\partial \mathbf{G}}{\partial {d}_k}\overline{\mathbf{P}}+\frac{\partial \overline{\mathbf{Q}}}{\partial {d}_k}\right) $$
(23)

The right hand of (23) can be rewritten as

$$ \frac{\partial J}{\partial {d}_k}=\mathbf{X}{(0)}^T\frac{\partial \mathbf{P}}{\partial {d}_k}\mathbf{X}(0)={\overline{\boldsymbol{\uplambda}}}^T{\overline{\mathbf{D}}}^k $$
(24)

where

$$ {\overline{\boldsymbol{\uplambda}}}^T=-{\overline{\mathbf{S}}}^T{\mathbf{G}}^{-1} $$
(25)
$$ {\overline{\mathbf{D}}}^k=\left(\frac{\partial \overline{\mathbf{Q}}}{\partial {d}_k}+\frac{\partial \mathbf{G}}{\partial {d}_k}\overline{\mathbf{P}}\right) $$
(26)

Note that \( \overline{\boldsymbol{\uplambda}} \) and \( {\overline{\mathbf{D}}}^k \) are the column expansion of matrices λ and D k, respectively, and \( \overline{\boldsymbol{\uplambda}} \) can be computed from the following equation

$$ {\mathbf{G}}^T\overline{\boldsymbol{\uplambda}}=-\overline{\mathbf{S}}\kern1em or\kern1em {\left({\mathbf{A}}^T\otimes \mathbf{E}+\mathbf{E}\otimes {\mathbf{A}}^T\right)}^Tcs\left(\boldsymbol{\uplambda} \right)=-cs\left(\mathbf{S}\right) $$
(27)

Equation (27) can be transformed to Lyapunov matrix equation form as

$$ \mathbf{A}\boldsymbol{\uplambda } +\boldsymbol{\uplambda} {\mathbf{A}}^T+\mathbf{S}=0 $$
(28)

It is interesting to note that \( \overline{\boldsymbol{\uplambda}} \) is the adjoint vector for the required sensitivity analysis. The adjoint matrix λ, can be obtained by solving Lyapunov matrix Eq. (28). Vector \( {\overline{\mathbf{D}}}^k \) can be also computed in matrix form as

$$ {\mathbf{D}}^k=\frac{\partial \mathbf{Q}}{\partial {d}_k}+\frac{\partial {\mathbf{A}}^T}{\partial {d}_k}\mathbf{P}+\mathbf{P}\frac{\partial \mathbf{A}}{\partial {d}_k},\;{\overline{\mathbf{D}}}^k=cs\left({\mathbf{D}}^k\right) $$
(29)

Note that expression (29) looks similar to Lyapunov equation, but it is not an equation and does not need to be solved. Finally, the sensitivity of the objective function with respect to the design variable in (11) can be expressed as

$$ \frac{\partial J}{\partial {d}_k}=\frac{\partial \mathbf{X}{(0)}^T}{\partial {d}_k}\mathbf{P}\mathbf{X}(0)+\mathbf{X}{(0)}^T\mathbf{P}\frac{\partial \mathbf{X}(0)}{\partial {d}_k}+{\displaystyle \sum_{i=1}^{2N}{\displaystyle \sum_{j=1}^{2N}{\lambda}_{ij}{D}_{ij}^k}} $$
(30)

For the case X (0) independent of design variables, the (30) can simplified as

$$ \frac{\partial J}{\partial {d}_k}={\displaystyle \sum_{i=1}^{2N}{\displaystyle \sum_{j=1}^{2N}{\lambda}_{ij}{D}_{ij}^k}} $$
(31)

In this paper, the solutions of Lyapunov equations are obtained by Matlab solver function lyap (). The vectors \( \left(\overline{\mathbf{P}},\;\overline{\mathbf{Q}},\;\overline{\mathbf{S}}\right) \) obtained by the expansion operation and matrices (G) obtained by Kronecker product appear only in the mathematical derivation process. They are not used in numerical implementation. Thus, we do not consider the symmetry of matrices P and Q in mathematical derivation process.

The following steps are the solution procedure of using the adjoint sensitivity analysis scheme to obtain the sensitivities of multi design variables (the number of design variables is n):

  1. 1.

    Define the number of design variables n, the current design variables d. Set the initial condition X (0) and the weighting matrix Q. Obtain the structural stiffness matrix K, structural mass matrix M, damping matrix C of the current design.

  2. 2.

    Construct the matrix A by (4) and solve a Lyapunov matrix equation to obtain P by (6)

  3. 3.

    Construct the matrix S by (19) and solve a Lyapunov matrix equation to obtain λ by (28)

  4. 4.

    For k = 1,2,…n,

    Obtain the sensitivity of A, Q and X (0) with respect to the kth design variable. And obtain D k by (29)

Obtain the sensitivity of the objective function with respect to the kth design variable by (30)

No matter how many design parameters, the new sensitivity analysis scheme just needs to solve the Lyapunov equation twice, ie. Equations (6) and (28). With the consideration of high cost of solving the Lyapunov equation, the new adjoint scheme is much more efficient than the direct method for multi-design-parameters problems.

4 Application of the model reduction method (Guyan method)

When the analysis model has a large numbers of DOFs, the solution of Lyapunov matrix equation is computationally costly, which will makes the computing time of optimization process increase significantly. For example, for a 1,000-dof system, the number of unknowns in P is 2,001,000. In other words, although the adjoint method reduces the number of Lyapunov matrix equations to be solved for sensitivity analysis, the huge size of matrix in Lyapunov equation is still a bottleneck for our method. Different model reduction method (Guyan 1965; Irons 1965; Wang et al. 2013) can be used to address this bottleneck problem. For example, Wang et al. (1984) used the assumed modes method to reduce the beam model to 3-dof. We will use a classic method, Guyan reduction, in this paper. The sensitivity analysis scheme for the system with other reduction methods will be similar with the scheme for the system with Guyan reduction.

4.1 Guyan reduction method

By Guyan reduction method, the government dynamic equation of the reduced model considers only the master DOFs, and thus the dimension of the equation is reduced to number of the master DOFs. Let u (N × 1) denote the displacement vector of the model, u m (M × 1) the displacement vector of the master DOFs and u s ((N-M) × 1) the displacement vector of the slave DOFs. N is the number of the all DOFs, and M is the number of master DOFs. In Guyan method, the structural displacement vector u is partitioned as

$$ \mathbf{u}=\left(\begin{array}{c}\hfill {\mathbf{u}}_m\hfill \\ {}\hfill {\mathbf{u}}_s\hfill \end{array}\right) $$
(32)

where the subscript s refers to slave DOFs, and the subscript m denotes master DOFs.

The relationship between these two vectors can be expressed as u s  = − K − 1 ss K sm u m , consequently,

$$ \mathbf{u}=\mathbf{T}{\mathbf{u}}_m $$
(33)
$$ \mathbf{T}=\left[\begin{array}{c}\hfill \mathbf{I}\hfill \\ {}\hfill -{\mathbf{K}}_{ss}^{-1}{\mathbf{K}}_{sm}\hfill \end{array}\right] $$
(34)

where, I is a M × M identity matrix, T is a N × M transformation matrix. K ss and K sm are submatrices in the partitioned stiffness matrix K.

Using the transformation matrix T, stiffness matrix K re (M × M), damping matrix C re (M × M) and mass matrix M re (M × M) of the reduced model can be obtained by

$$ {\mathbf{M}}_{re}={\mathbf{T}}^T\mathbf{M}\mathbf{T},\;{\mathbf{C}}_{re}={\mathbf{T}}^T\mathbf{C}\mathbf{T},\;{\mathbf{K}}_{re}={\mathbf{T}}^T\mathbf{K}\mathbf{T} $$
(35)

The dynamic governing equation of the reduced model is

$$ {\mathbf{M}}_{re}{\ddot{\mathbf{u}}}_m+{\mathbf{C}}_{re}{\dot{\mathbf{u}}}_m+{\mathbf{K}}_{re}{\mathbf{U}}_m=\mathbf{0} $$
(36)

4.2 Adjoint sensitivity analysis algorithm for the reduced system with Guyan reduction

The relationship of the initial conditions of the full model and the reduced model can be expressed as

$$ {\mathbf{u}}_0=\mathbf{T}{\mathbf{u}}_{re,0},\;{\mathbf{v}}_0=\mathbf{T}{\mathbf{v}}_{re,0} $$
(37)

where u re,0 and v re,0 are the initial displacement and velocity of the reduced model, respectively. Notice that, u re,0 and v re,0 cannot be solved directly from (37) because T is not a square matrix, is obtained by using the generalized inverse matrix method as

$$ {\mathbf{u}}_{re,0}={\mathbf{M}}_{re}^{-1}{\mathbf{T}}^T\mathbf{M}{\mathbf{u}}_0,\;{\mathbf{v}}_{re,0}={\mathbf{M}}_{re}^{-1}{\mathbf{T}}^T\mathbf{M}{\mathbf{v}}_0 $$
(38)

By using the transformation relation (33) the objective function in (5) can be expressed as

$$ J={\displaystyle {\int}_0^{\infty }{{\mathbf{X}}_{re}}^T{\mathbf{Q}}_{re}{\mathbf{X}}_{re}dt} $$
(39)

where, \( {\mathbf{X}}_{re}=\left\{\begin{array}{c}\hfill {\mathbf{u}}_{re}\hfill \\ {}\hfill {\mathbf{v}}_{re}\hfill \end{array}\right\} \). And Q re can be obtained by

$$ {\mathbf{Q}}_{re}={\mathbf{t}}^T\mathbf{Q}\mathbf{t} $$
(40)

Where, \( \mathbf{t}=\left[\begin{array}{cc}\hfill \mathbf{T}\hfill & \hfill \mathbf{0}\vdots \hfill \\ {}\hfill \mathbf{0}\hfill & \hfill \mathbf{T}\hfill \end{array}\right] \). 0 is a null matrix, which has same dimension with the matrix T. The objective function of the matrix product form (10) can be written as

$$ J={\mathbf{X}}_{re}^T(0){\mathbf{P}}_{re}{\mathbf{X}}_{re}(0) $$
(41)

P re is obtained by solving the Lyapunov equation of the reduced model, A T re P re  + P re A re  = − Q re . The sensitivity of the objective function is then given by

$$ \frac{\partial J}{\partial {d}_k}=\frac{\partial {\mathbf{X}}_{re}{(0)}^T}{\partial {d}_k}{\mathbf{P}}_{re}{\mathbf{X}}_{re}(0)+{\mathbf{X}}_{re}{(0)}^T\frac{\partial {\mathbf{P}}_{re}}{\partial {d}_k}{\mathbf{X}}_{re}(0)+{\mathbf{X}}_{re}{(0)}^T{\mathbf{P}}_{re}\frac{\partial {\mathbf{X}}_{re}(0)}{\partial {d}_k} $$
(42)

The detailed derivation of the sensitivity analysis scheme of the reduced model and the involved approximation is shown in the appendix. The solution process of using the adjoint sensitivity analysis scheme with Guyan reduction is summarized below:

  1. 1.

    Give the initial states X (0), weighting matrix Q, obtain the stiffness matrix K, mass matrix M, damping matrix C.

  2. 2.

    Obtain the T by (34)

  3. 3.

    Obtain M re , C re , K re , Q re , u re,0 and v re,0 by (35), (38) and (40), respectively.

  4. 4.

    Obtain the matrix A re and solve a Lyapunov function to obtain P re by

    $$ {\mathbf{A}}_{re}^T{\mathbf{P}}_{re}+{\mathbf{P}}_{re}{\mathbf{A}}_{re}+{\mathbf{Q}}_{re}=0 $$
    (43)
  5. 5.

    Obtain the matrix S re and solve a Lyapunov function to obtain λ re by

    $$ {\mathbf{S}}_{re}={\mathbf{X}}_{re}(0){\mathbf{X}}_{re}{(0)}^T $$
    (44)
    $$ {\mathbf{A}}_{re}\boldsymbol{\uplambda} +\boldsymbol{\uplambda} {\mathbf{A}}_{re}^T+{\mathbf{S}}_{re}=0 $$
    (45)
  6. 6.

    For k = 1, 2, 3,…, n,

Obtain the sensitivities of T, A re and Q re with respect to kth design parameter. And Obtain D k by

$$ {\mathbf{D}}^k=\frac{\partial {\mathbf{Q}}_{re}}{\partial {d}_k}+\frac{\partial {\mathbf{A}}_{re}^T}{\partial {d}_k}{\mathbf{P}}_{re}+{\mathbf{P}}_{re}\frac{\partial {\mathbf{A}}_{re}}{\partial {d}_k} $$
(46)

Obtain the sensitivity of X re,0 by

$$ \frac{\partial {\mathbf{X}}_{re,0}}{\partial {d}_k}={\left[\begin{array}{cc}\hfill \frac{\partial {\mathbf{u}}_{re,0}}{\partial {d}_k}\hfill & \hfill \frac{\partial {\mathbf{v}}_{re,0}}{\partial {d}_k}\hfill \end{array}\right]}^T $$
(47)

where

$$ \frac{\partial {\mathbf{u}}_{re,0}}{\partial {d}_k}={\mathbf{M}}_{re}^{-1}{\mathbf{T}}^T\mathbf{M}\frac{\partial \mathbf{T}}{\partial {d}_k}{\mathbf{u}}_{re,0}-{\mathbf{M}}_{re}^{-1}{\mathbf{T}}^T\mathbf{M}\frac{\partial {\mathbf{u}}_0}{\partial {d}_k} $$
(48)
$$ \frac{\partial {\mathbf{v}}_{re,0}}{\partial {d}_k}={\mathbf{M}}_{re}^{-1}{\mathbf{T}}^T\mathbf{M}\frac{\partial \mathbf{T}}{\partial {d}_k}{\mathbf{v}}_{re,0}-{\mathbf{M}}_{re}^{-1}{\mathbf{T}}^T\mathbf{M}\frac{\partial {\mathbf{v}}_0}{\partial {d}_k} $$
(49)

Obtain the derivative of the objective function with respect to kth design parameter by

$$ \frac{\partial J}{\partial {d}_k}=\frac{\partial {\mathbf{X}}_{re}{(0)}^T}{\partial {d}_k}{\mathbf{P}}_{re}{\mathbf{X}}_{re}(0)+{\displaystyle \sum_{i=1}^{2M}{\displaystyle \sum_{j=1}^{2M}{\lambda}_{ij}{D}_{ij}^k}}+{\mathbf{X}}_{re}{(0)}^T{\mathbf{P}}_{re}\frac{\partial {\mathbf{X}}_{re}{(0)}^T}{\partial {d}_k} $$
(50)

4.3 Direct sensitivity analysis algorithm for system with guyan reduction

The solution process of direct method for reduced model is similar to the adjoint method for reduced model. The difference is that the second term of (42) is solved by direct method. Thus, the direct method for reduced model needs to solve n + 1 Lyapunov equations, where n is the number of design parameters.

Through Guyan reduction, the computing time of the solution of Lyapunov matrix equation can be greatly reduced. If the performance index J involves a small number of structural nodal responses, the scale of the reduced model can be decreased significantly by Guyan reduction. However, the best selection scheme of master DOFs is not easy to decide, especially for complex structures.

5 Numerical examples

Two examples are presented in this section. The first example is used to demonstrate the accuracy and efficiency of the proposed methods. The optimal support location is solved as a topology optimization problem in the second example.

To distinguish the methods used in the following paragraphs, the direct method and adjoint method presented in Section 3 are called direct variable method for full model (DVMF) and adjoint variable method for full model (AVMF), respectively. Similarly, the direct method and adjoint method mentioned in section 4 are called direct variable method for reduced model (DVMR) and adjoint variable method for reduced model (AVMR), respectively.

5.1 Example 1

In this example, we consider a clamped-free beam (3 m × 0.02 m × 0.02 m) attached with several identical damped springs (along Y direction). The beam material is linear elastic with the elastic modulus 2.1 × 1011 Pa and mass density 7850Kg/m3. The spring stiffness k s is to be determined (N/m), and the damping coefficient is 103 N · s/m. Figure 1 shows the beam model used in this example. Specially, the beam is uniformly meshed into 50 2-node beam elements. Each node has 2 DOFs (lateral displacement and rotation about Z-axis). Five equally spaced damped spring supports are considered. The initial displacements and velocities of all nodes are zero and 10 m/s respectively. The stiffness k of each spring is chosen as the design variable. Thus, there are 5 design variables.

Fig. 1
figure 1

The beam model with 5 damped springs

5.1.1 Comparison of adjoint method and direct method for the full model

Firstly, we compare the sensitivity results from three methods, central difference method, AVMF and DVMF to validate the proposed AVMF. In this paper, all the results of the central difference method are computed using the full model.

The objective function is

$$ J={\displaystyle \sum_{i=1}^R{\displaystyle {\int}_0^{\infty }{y}_i^2dt}} $$
(51)

where y i is the Y-direction displacement of the ith node of the beam, R is the total number of the free nodes of the beam.

The sensitivity results of the objective function with respect to k of each spring at k = 1.0 × 105 N/m from central difference method, AVMF and DVMF are shown in Fig. 2 and are represented by the crosses, squares and rounds, respectively. The results show that the AVMF and DVMF obtain identical results with the central difference method. The step size study found that 100 N/m step size for k s  = 1.0 × 105 N/m was the best.

Fig. 2
figure 2

Sensitivity results of the stiffness k of each spring from three methods

Next, we compare the CPU time of the solution process of one Lyapunov equation for the models with different numbers of DOFs, which corresponds to different mesh density. The CPU time results are summarized in Fig. 3. In this paper, all the CPU time results shown in tables are the average values of CPU time of 10 repeated analyses. The computer used in this paper is i7-3770 3.4GHz, Windows 7.

Fig. 3
figure 3

CPU time of solution process of Lyapunov equation vs. number of DOFs

The Fig. 3 shows that the CPU time of the solution process of Lyapunov equation increases rapidly when increasing the number of DOFs. Thus, if a problem has a larger numbers of DOFs, the solution process of Lyapunov equation will make the sensitivity analysis process unacceptably slow. For the 1000 DOFs case, the CPU time is 54.12 s and the memory space for solver lyap () is about 0.239 GB. If the problem can be transformed to a reduced space which has 1000 or less DOFs, most PCs have enough memory to perform the sensitivity analysis.

Now, we compare the CPU time of direct method (DVMF) and adjoint method (AVMF). First, we compare CPU time of DVMF and AVMF of the models with different numbers of DOFs. Other conditions are the same as previous ones. The CPU time results of the two methods are summarized in Table 1. T A is the CPU time of the sensitivity analysis process of AVMF, and T D is the CPU time of the sensitivity analysis process of DVMF. As there are 5 design variables, the DVMF needs to solve 6 Lyapunov equations, and the AVMF needs to solve 2 Lyapunov equations. Thus, for the same model, the total CPU time of solution process of Lyapunov equations of AVMF is 33 % of DVMF.

Table 1 CPU time of two methods vs. number of DOFs in the model

The results show that total CPU time of the sensitivity analysis process of AVMF is less than DVMF, especially when the problem has large number of DOFs. When increasing the number of DOFs, the ratio T A /T D tends to be 33 %, which shows that the total CPU time of solution process of Lyapunov equations is the major part of sensitivity analysis process for the model with large number of DOFs.

Next, we consider the effect of different numbers of design variables. We use several models with different numbers (5, 10, 20 and 50) of damped springs, the spring stiffness (k s  = 1.0 × 105 N/m) of which are design variables to compare CPU time of DVMF and AVMF under different numbers of design variables. The distribution of N s damped springs is shown in Fig. 4. Set beam element size to be 0.01 m (the number of DOFs of the analysis model is 600), and other conditions stay the same as previous ones.

Fig. 4
figure 4

The beam model with N s damped springs

The results of computing time of different methods are summarized in Fig. 5. The results show that total CPU time of the sensitivity analysis process of AVMF is much less than DVMF in all the cases, especially when the problem has large number of design variables. Thus, for a problem with large numbers of DOFs and design parameters, the AVMF is strongly recommended.

Fig. 5
figure 5

CPU time of two methods vs. number of design variables

5.1.2 Comparison of adjoint method and direct method for reduced model

In this section, we apply both the adjoint method (AVMR) and the direct method for reduced model (DVMR). The same beam example with damped spring supports mentioned above is used. The model used has 300 elements (600 dofs) with 50 damped spring supports. Other conditions are same as previous ones. To construct the reduced model, the Y-direction freedoms of the translational dof of 10 nodes are chosen as the master DOFs to reduce the number of DOFs of the analysis model by Guyan method. The locations of the nodes are 0.3 m, 0.6 m, 0.9 m, 1.2 m, 1.5 m, 1.8 m, 2.1 m, 2.4 m, 2.7 m and 3.0 m, respectively (from the left hand side of the beam).

First, we compare the sensitivity results from AVMR, DVMR and central difference method (use full model) to verify AVMR and DVMR. Thus, there are just 10 DOFs in the reduced model.

The sensitivity results of the objective function with respect to k s of each spring at k s  = 1.0 × 105 N/m computed by three methods (i.e., central difference method, AVMR and DVMR) are shown in Fig. 6, and are represented by crosses, squares and circles, respectively. The central difference method is solved through full model, and AVMR and DVMR are solved using the reduced model. The results show that AVMR and DVMR give almost identical results with the central difference method.

Fig. 6
figure 6

Sensitivity results of the stiffness k of each spring from three methods

The CPU time of sensitivity analysis of AVMF and DVMF using full model (600 DOFs) and AVMR and DVMR using reduced model (10 DOFs) is summarized in Table 2.

Table 2 The CPU time of the four methods

The results show that the CPU time decreases significantly by using the reduced model. The computing time reduces about 88.96 % and 99.18 %, respectively comparing with AVMF and DVMF.

5.2 Example 2

Topology optimization problems always have large numbers of design parameters. We construct a topology optimization problem to test the new sensitivity analysis methods. In this example, we consider a 1 m × 1 m × 0.01 m plate attached with several identical damped springs (k s  = 106 N/m, c s  = 100 N · s/m). One edge of the plate is clamped and other three edges are free. The material of the plate is linear elastic with elastic modulus 2.1 × 1011 Pa, Poisson ratio 0.3, and mass density 7850Kg/m3. The initial velocity of Z direction of all the free nodes of plate is 10 m/s. The design problem is to decide the optimized location of H damped springs to minimize a criterion defined below. This problem is formulated as a topology optimization problem. By introducing an artificial density variable to describe the spatial distribution of the damped springs and using interpolation model of SIMP to obtain 0–1 design. Specifically, an identical potential damped spring (along Z direction) is placed between every free nodes and the ground.

Set a virtual density ρ i  ∈ [ρ min, 1] to every spring as the design variable. We introduce an artificial relation between density (ρ i ) and the parameters of the damped springs.

$$ {K}_i={\rho}_i^l{K}_0,\;{C}_i={\rho}_i^l{C}_0 $$
(52)

where l is the penalty parameter. In this example, l is chosen as 1.2. The analysis model is shown in Fig. 5, where the nodes are the potential locations of the damped springs as shown in Fig. 7a. The purple lines are the dumped springs and the blue square elements are the 4-node square plate elements (shell63 in Ansys). Each node of the element has 3 DOFs, u z , θ x and θ y . The element size of the plate is 0.1 m (there are 110 free nodes). The analysis model has 330 DOFs and 110 design parameters. The topology optimization problem can be expressed as

Fig. 7
figure 7

Analysis model in topology optimization: a top view; b side view; c 3D view

$$ \begin{array}{l}\begin{array}{cc}\hfill \min \hfill & \hfill J={\displaystyle \sum_{i=1}^{110}{\displaystyle {\int}_0^{\infty }{z}_i^2dt}}\hfill \end{array}\hfill \\ {}\begin{array}{cc}\hfill const.\hfill & \hfill {\displaystyle \sum_{i=1}^M{\rho}_i}=H\hfill \end{array}\hfill \\ {}0<{\rho}_{\min}\le {\rho}_i\le 1\hfill \end{array} $$
(53)

where H specifies the material volume available for the damped springs. Here we assume each spring, if any, uses material volume 1, H will be the number of damped springs in the final optimum design. z i is the Z-direction displacement of the ith node of the plate. The objective function concerns the Z-direction displacements of all the 110 free nodes.

The results show that AVMF and DVMF give results close to the finite difference method, no more than 0.05 % difference for Δρ = 0.01.

Next, we apply Guyan reduction method to the analysis model and apply AVMR and DVMR to obtain the sensitivity results. We use three schemes of master DOFs to obtain the reduced model. The three selection schemes are shown in Fig. 8, where u z of the nodes covered by white squares are the master DOFs.

Fig. 8
figure 8

Three schemes of master freedoms: a Model 1 (5 nodes); b Model 2 (55 nodes); c Model 3 (110 nodes)

The sensitivity results of 5 design parameters from AVMR (the results from DVMR are almost same with those from AVMR) of the four reduced-order models are summarized in Table 3 and compared with the results from finite difference method using full model. J mdoel 1 , J mdoel 2 and J mdoel 3 are the sensitivity results obtained by AVMR using model 1, 2 and 3, respectively. The results show that the sensitivities obtained by model 3 are almost identical with the results from finite difference method using full model, and the accuracy of the results obtained by the other three models is relatively lower comparing with the former. Thus, in this example, the scheme 3 of master DOFs is the most reasonable choice to obtain the reduced model.

Table 3 The sensitivities of 5 design parameters from different models

The CPU time of solving processes of different methods is summarized in Table 4. The computing time of AVMR is shortest, and DVMF is most time consuming. This example shows that when the reduced model still contains 100 or more DOFs, the adjoint method for reduced model remains the best choice to obtain the sensitivities considering the time cost.

Table 4 CPU time of sensitivity analysis of all the four methods

Finally, we use the four sensitivity analysis schemes to solve the topology optimization described in (63). H is set to 2. Figure 9 shows that optimization using different sensitivity analysis methods have almost identical iteration history and obtain same optimized design. The CPU time of solving processes of topology optimization problem using different sensitivity analysis methods is summarized in Table 5. The CPU time of optimization process using AVMR is far less than the CPU time of other three optimization processes.

Fig. 9
figure 9

Iteration histories of the objective function of optimization process using four sensitivity analysis methods: a DVMF; b AVMF; c DVMR; d AVMR

Table 5 CPU time of optimization processes using different sensitivity analysis methods

6 Conclusion

In this paper, we propose a new sensitivity analysis scheme of Lyapunov’s method. The new method is derived by using adjoint variable method, where one just needs to solve Lyapunov equation twice to obtain the sensitivities of all design parameters. To further reduce the computational burden of solving the Lyapunov equation we use Guyan reduction method to reduce the number of DOFs of the analysis model. The associated adjoint sensitivity scheme of the reduced model is also developed. For problems with large number of DOFs, the time cost of the sensitivity analysis is reduced significantly by using the reduced model together with the adjoint sensitivity analysis. Two numerical examples demonstrate the accuracy and efficiency of the proposed method. The proposed method can be used to perform topology optimization using time domain criterion. The research results will be reported in a future paper.