Abstract
In this article, we propose a fast method to solve large-scale three-dimensional topology optimization problems subject to buckling constraints. Buckling analysis entails the solution of a generalized eigenvalue problem. For problems with large degrees of freedom, the current numerical methods tend to be memory-hungry, leading to high computational costs. First, a low-memory assembly-free linear buckling analysis method is proposed. Specifically, this method is based on the voxelization model, an assembly-free version of the deflated conjugate gradient is used to accelerate the iteration solution of linear systems of equations, where neither the stiffness matrix nor the deflation matrix is assembled, and the parallelization of matrix–vector multiplication is achieved by the congruency of voxels. Due to the particularity of the stress stiffness matrix in the buckling analysis, the inverse iteration is used to solve the general eigenvalue problem, which can reduce the operations of stress stiffness matrix considerably. Based on the efficient buckling analysis method, we extend the level-set method for buckling constraints in a semi-analytical manner. Several numerical experiments demonstrate that the proposed method can solve large-scale three-dimensional buckling analysis and topology optimization against buckling constraints effectively.
Introduction
Buckling is the sudden failure of a structural member to carry compressive load. 1 Buckling analysis has important applications in aerospace, civil engineering, mechanical engineering, and other fields. Linear buckling analysis (also known as eigenvalue buckling analyses) is a classical engineering method for determining the buckling load of structures.2,3 Linear buckling analysis is included in most finite element analysis (FEA) softwares today and can be applied to very large structural models with millions of elements, for example, the buckling behavior of complex composites structures is analyzed by Ansys.4,5 But they tend to be memory-hungry, leading to high computational costs for problems with large degrees of freedom (DOFs). The high computational costs might be acceptable for buckling analysis but it will be exacerbated in applications in buckling-constrained topology optimization, where one must solve buckling problems repeatedly. This is one of the bottlenecks and restricts the development of buckling topology optimization: while the theory of topology optimization has reached a high level of maturity, large-scale three-dimensional (3D) optimization involving millions of DOF is one of the challenges that remain today, it can take hours, or even days to complete; FEA software like HyperWorks can only use two-dimensional (2D) elements with nonzero thickness for buckling-constrained topology optimization.
One of the established methods for solving the generalized buckling eigenvalue problem is the block Lanczos algorithm6,7 that requires repeated solution of a linear system of equations where the matrix is a linear combination of
Other algorithms for solving eigenvalue problem include “locally optimal block preconditioned conjugate gradient,”“Davidson-Jacobi,” and so on that have been demonstrated to be competitive for large-scale eigenvalue problem in Arbenz et al. 6 One such algorithm is the subspace-augmented Rayleigh–Ritz conjugate gradient (RCG) that exploits the assembly-free aspect presented for solving linear systems. 9 While RCG is efficient for large-scale modal analysis, as discussed in Suresh and Yadav, 10 it cannot be applied here effectively for reasons described later in the next section.
In addition to finite element method (FEM) method, there are some other effective numerical methods that can be used for buckling analysis. Meshfree method is used for buckling analysis of Reissner–Mindlin plates by Bui et al. 11 Valizadeh et al.12,13 studied the buckling of orthotropic plates and the thermal buckling of functionally graded material plates numerically by isogeometric analysis. Yu et al. 14 utilize extended isogeometric analysis to solve the thermal buckling analysis of functionally graded plates with internal defects. Liu et al. 15 analyzed buckling failure of cracked composite functionally graded plates by extended finite element method (XFEM).
Topology optimization is a systematic method of generating designs to meet specific engineering requirements. In many of these applications, buckling failure must be accounted for during topology optimization, 16 leading to a buckling-constrained topology optimization problem. Different topology optimization methods have been proposed to solve such problems, including solid isotropic material with penalization (SIMP), evolutionary, and level-set.
SIMP uses pseudo-densities assigned to elements, and they vary between 0 and 1. These pseudo-densities are then used as continuous relaxation parameter. 17 However, when continuous relaxation method is used in the context of buckling modes, undesirable numerical effects are observed; 18 Pedersen 19 and Neves et al. 20 discuss the spurious modes computed in continuous relaxation method. They consider assigning zero stiffness to such elements to overcome these issues, but this will result in inconsistencies in the model. The variability in densities from element to element also causes ill-conditioning of the stiffness matrices.21,22 Additionally, for stress-related analysis, the accuracy over gray elements is poor.
As an alternative to SIMP, a free material optimization (FMO) was proposed in Browne et al. 23 FMO considers the entire stiffness tensor as a continuous design variable. The sensitivity computation for compliance and stress field becomes more expensive. A binary programming method is discussed in Allaire and Jouve, 24 where the bottleneck is in computing the derivatives of buckling constraints.
The other strategy for solving topology optimization relies on defining the evolving topology through a level-set. 25 Level-set allows the domain to be well defined at all times, thus overcoming the issue of ill-conditioned stiffness matrices. Numerous examples are provided in the literature to illustrate the effectiveness of the level-set–based methods.26–28
In this article, a simple inverse iteration driven, assembly-free deflated conjugate gradient method for solving linear buckling problem is proposed. Then, we extend the level-set method for buckling-constraint topology optimization in a semi-analytical manner, and the buckling load sensitivity is computed in an adjoint method. Finally, numerical results are presented to illustrate the proposed method, followed by conclusions and open issues.
Assembly-free buckling analysis
The linear buckling behavior of a structure is governed by the following general eigenvalue problem
where
FEA of linear buckling is typically carried out in two stages. In the first stage, the structural member is subject to a unit load. A finite element mesh of the domain is constructed, and the corresponding static linear elasticity problem is posed and solved, which equivalents to solving a linear system of equations
Here
In the present article, an accelerated buckling FEA is developed by implementing and merging three distinct but complementary concepts: voxelization, assembly-free deflation, and inverse iteration. Based on the above infrastructure, fine-grained parallelization is achieved in this article on multi-core CPUs using OpenMP.
Voxelization
Voxelization is a special form of spatial discretization where the geometry is approximated via uniform hexahedral elements or “voxels.” The voxelization process is straightforward and is discussed in Hughes et al. 30 The most important benefits of voxelization are meshing-robustness and low memory footprint, especially in combination with assembly-free analysis. This ensures a faster sparse matrix-vector multiplication (SpMV) through parallel implementation on multi-core architectures. The voxelization of a complex geometry is illustrated in Figure 1; it has over 300,000 elements. Fortunately, even such a large-sized problem is easily handled via the proposed method.

Voxelization of rocker.
Assembly-free deflation for static analysis
Assembly-free FEA was proposed by Hughes and others in 1983, 31 but has resurfaced due to the surge in fine-grained parallelization. The basic concept here is that the stiffness matrix is never assembled; instead, the fundamental matrix operations such as the SpMV are performed in an assembly-free elemental level as
Assembly-free SpMV is particularly advantageous if memory footprint can be reduced by storing limited data. Exploiting element congruency helps reduce memory footprint. 9 Second, assembly-free iterative analysis is effective only if an assembly-free acceleration/preconditioning can be exploited; here, we rely on assembly-free deflation.
Deflation is a powerful acceleration technique for conjugate gradient 32 and is more amenable to an assembly-free implementation than classic preconditioners such as incomplete Cholesky. The particular method of deflation exploited in this article is based on rigid-body agglomeration discussed in Ipsen 33 The rigid-body agglomeration has a simple assembly-free implementation and offers significant advantage in parallel computing. 9
The first step in assembly-free buckling analysis (AFBA) is solving equation (2). This is accomplished here using the deflated conjugate gradient method discussed in Yadav and Suresh. 9 Deflated conjugate gradient uses several different agglomeration groups to accelerate the solver. The solution of equation (2) generates the displacement and stress fields.
Inverse iteration for buckling analysis
As discussed in the literature review, the generalized eigenvalue problem for buckling is similar to modal analysis. Therefore, based on the earlier work,
10
we attempted to use RCG algorithm that requires repeated operations
This draws attention toward another method known as inverse iteration. 34 The basic principle is to carry out
and to use the solution repeatedly. The number of
The algorithm of using inverse iteration to solve equation (5) is described as follows:
Initialize
Set
Compute
Solve
Update
Compute
If ||
Once the algorithm converges to a mode shape
The number of iterations required to converge to the mode shape is far smaller than RCG as the numerical error is primarily eliminated in the linear solution in Step 4. The numerical results illustrate the advantage of using assembly-free inverse iteration with deflated conjugate gradient for buckling analysis. An efficient buckling analysis creates an opportunity to apply buckling constraints during topology optimization. We discuss the formulation in the next section.
Topology optimization
Buckling load factor sensitivity
The element sensitivity is the expected change in buckling load factor when an element is deleted from the mesh. We use discrete variable
Calculating the sensitivities of the buckling load is rather tedious. It seems that the similarity to eigenfrequency optimization can be used. However, in contrast to the mass matrix sensitivity for eigenfrequency analysis, the stress stiffness sensitivity
The stress stiffness matrix is an implicit function of the displacement field. That is
Then the total derivative of the stress stiffness matrix is
For the second term on the right-hand side of equation (8), we have
In order to get the full derivative of displacement
Since the design-dependent force is not considered and the external loads are independent on
The left-hand side of above equation is of dimension
where four elements represent four surrounding elements around one specific node with perturbed displacement
For one of the four elements, each stress tensor in stress stiffness matrix is the first-order function of
where
It is noted that those
For the sensitivity of each element, the inverse global stiffness matrix is involved. In order to get one complete sensitivity field, equation (12) needs to be solved for
A better way to compute the sensitivities of the buckling load is by adding adjoint variables and constraint functions. By choosing the adjoint variables correctly, it is possible to replace the complicated parts of the sensitivity equation by expressions that are easier to calculate. In order to get the sensitivity with respect to
where the adjoint
Then, take derivative of equation (18), we get
Since equation (1), the first term in equation (19) is equal to 0. Now the adjoint
After factoring out and rearranging, we have
where the calculation of
Then, equation (19) can be simplified as
Thus, the sensitivity can be shown as
To get a complete sensitivity field, equation (21) only need to be solved once, which makes the adjoint method much faster.
Level-set
A straightforward approach to exploit element sensitivity is to use the information to delete elements with lower sensitivity values. However, this method would lead to same issues of creating checker board pattern and instability in the mesh. However, sensitivity field can be used as a level-set 35 that traces the Pareto curve governing compliance and volume fractions. The Pareto-optimal designs can result in better conditioned stiffness matrices, and consequently faster iterative convergence. The objective of this article is to generalize this to buckling-constrained topology optimization problem.
Given the sensitivity field
This will determine the set of points with sensitivity values greater than an arbitrary value of
Once convergence has been achieved for the desired volume fraction, one can move forward with the next step of volume reduction, repeating the above process.
Algorithm
A buckling-constrained topology optimization problem must account for buckling failure during topology optimization
where Ω is the domain of objective topology,
Typically, the sensitivity field
In other words, if the current buckling load factor is much greater than the minimum allowed, then less weightage is applied on the corresponding sensitivity field. By controlling the allowable critical buckling load, we show that a dynamic tradeoff can be maintained. The complete algorithm is described in the following:
The allowable domain is initialized and discretized.
The initial FEA requires a static solve and a buckling modal analysis by solving equations (1) and (2). Hence, FEA would refer to solving both equations.
Based on the FEA, sensitivity field for the objective (compliance) and buckling is computed. Based on proximity to imposed constraints, weight parameters (multipliers) are computed as described in Yang and Chen. 37
The desired volume fraction is used to determine the cutting manifold.
If the relative compliance change is smaller than 1%, it is assumed that the process step converged and then we go on to Step 6. If the parameter has not yet converged, a smaller volume fraction decrement Δ
FEA is used to compute the constraint parameter.
If constraints are met, we return to Step 3 and repeat the process. Else, the volume fraction decrement Δ
If the volume fraction decrement is too small, the algorithm terminates, else algorithm returns to Step 4. For the numerical examples at the next section, the volume fraction decrement Δ
Figure 2 illustrates the algorithm described above.

Proposed algorithm.
Numerical results
In this section, we compare the results of buckling analysis using the proposed method, against those obtained through SolidWorks. The material properties for all examples are those of steel with
Buckling of a rectangle beam
The first example is that of a beam of 1 m in length, and 100 mm by 10 mm cross-section. The beam is fixed at one end, and a compressive unit load is applied at the other. The classic fixed-free Euler-beam analysis yields a critical load of
The results obtained through the proposed AFBA and those obtained from SolidWorks and Hyperworks using the same number of DOFs are illustrated in Figure 3. Both AFBA and SolidWorks methods converge to a critical load of 4344 N; the critical load got from Hyperworks is 4372 N. Note that we do not expect 3D FEA results to converge to the exact Euler-buckling result in equation (27); however, we do expect similar results.

Predicted critical load using proposed AFBA, SolidWorks, and Hyperworks.
The real advantage of AFBA is in speed. Figure 4 illustrates the computing time for AFBA versus SolidWorks and Hyperworks. The quadratic growth in computation in SolidWorks and Hyperworks can be attributed to the quadratic growth in memory consumption with increasing DOFs.

Computing time for AFBA, SolidWorks, and Hyperworks.
Buckling analysis of cylindrical column
To illustrate the potential deficiency of AFBA, we consider an example of a circular cylinder of 1 m in length and a radius of 10 mm. The classic fixed-free Euler-beam analysis yields a critical load of
The predicted buckling loads are illustrated in Figure 5. AFBA method converges to a critical load of 4195 N, SolidWorks is 4081 N, and Hyperworks is 4041 N. The difference can be attributed to the voxelization in AFBA. Local stress variation in the voxelized meshes is an issue that will be addressed in the future.

Accuracy plot for cylindrical column.
However, for topology optimization, the relative magnitudes of the sensitivities is more important than the accuracy. Furthermore, in topology optimization, the domain must necessarily be discretized using a large number of elements, and thus, speed becomes an important issue.
The time taken to solve the problem follows a similar trend as illustrated in Figure 6. Thus, if one can tolerate a few percent error, the voxelized AFBA method can be significantly faster.

Computing time versus DOF for cylindrical column.
Buckling analysis of an L-shaped plate
Figure 7 shows an L-shaped plate and its dimensions. The thickness of the plate is 2 mm. The top of the plate is clamped, and a unit upward force is added on the left edge.

L-shaped plate.
The results for the critical buckling load computed with 300,000 DOF are show in Table 1. The error in the solution is 0.5%. Since the computing time is related to the DOF of the model, the time comparison of this example is similar to that of the first two examples. With the increase of the DOF of the model, this proposed method shows the obvious advantage of the computing speed.
Predicted critical buckling load for L-shaped plate.
Buckling analysis of a curved plate
In this example, we consider a curved plate under compression load as shown in Figure 8. The dimensions of the plate are 100 × 100 × 3 mm, and the radius of curvature is 100 mm.

Curved plate.
The results for the critical buckling load computed with 400,000 DOFs are shown in Table 2. Here, we observe a 2.3% error in the solution. The proposed method utilized the voxelization; the downside of voxelization is that the stresses tend to be less accurate, since the voxelization cannot conform to the geometry completely, especially for rounded and curved structures. Linear buckling analysis is based on the linear elasticity theory of small displacement and small strain. The critical buckling load predicted by linear buckling analysis is not precise, which is usually higher than the actual value, especially for plate and shell. Usually, the linear buckling analysis is not used to get the precise buckling load, but used to get an approximate value quickly for the nonlinear buckling analysis. In this case, the speed is more important than accuracy; thus, if one can tolerate a few percent errors, the voxelized AFBA method can be significantly faster.
Predicted critical buckling load for curved plate.
Optimizing a thin column
We now consider minimizing the volume of a thin column with compressive load, as illustrated in Figure 9. Specifically, the objective is to solve the topology optimization problem

Thin column with compressive load.
In other words, the maximum allowable compliance
The structure was voxelized with 500,000 DOF, and the time taken for buckling analysis was 46 s. As the SF is increased in equation (29), the buckling constraint begins to dominate, resulting in topologies illustrated in Figure 10.

Stiff designs with different safety factors: (a) no buckling constraint, (b) SF = 1.1, (c) SF = 1.5, and (d) SF = 2.
Furthermore, as the SF is increased, the optimization terminates at a higher volume fraction (see Table 3), as expected.
Minimizing volume for stiff structure.
SF: safety factor; FEA: finite element analysis.
Clutch rest pedal
We now consider some practical problems. Figure 11 shows a pedal box of a high-performance vehicle; the weights of the parts on this vehicle must be reduced as much as possible. The left side of the pedal box is a clutch rest pedal.

(a) Pedal box, (b) stress field, and (c) buckling mode.
The design requirement is to withstand the maximum load of 700 N. The FEA analysis result is shown in Figure 11(b) and (c). After the FEA analysis, the maximum stress is 398 MPa. As the material is high-strength aluminum alloy, and the yield strength is 435 MPa, the original design appears to meet the strength requirement. However, after the buckling analysis through the proposed AFBA method, the critical buckling load is 634 N, which means that when the maximum load is added, the pedal will fail because of buckling.
So the pedal needs to be optimized under the buckling constraint. The initial design domain is shown in Figure 12(a), and its volume is

Optimized with buckling constraint: (a) initial design domain and (b) optimized result.
The voxelized structure has 220,000 DOF, and the optimization time is 37 min. The optimized result is shown in Figure 12(b). The finial volume fraction of the result is 81%, which is smaller than the original design, but the critical buckling load is higher. Topology optimization can provide a conceptual design at the initial stage of the design. Topology optimization optimized the material distribution, which can be a reference for the further detailed design.
Camber link
Figure 13(a) shows a camber link of a multi-link suspension on the vehicle. The thickness of the upper edge is 20 mm, and the thickness of the lower rib is 5 mm. Buckling is one of the failure reasons of the camber link, and it needs to be considered carefully.

(a) Camber link and (b) buckling mode.
First, the buckling analysis is performed by AFBA, as shown in Figure 13(b). The left hole is fixed, and a unit pressing force is added at the right hole. After the buckling analysis, the critical buckling load is 14,500 N, and the computing time is 29 s with 167,000 DOF. When the critical buckling load of 14,500 N is added to the camber link, the maximum stress is 419 MPa, which is lower than the yield strength (620 MPa). The camber link will fail because of buckling, as the buckling will happen before the yield. So the camber link needs a topology optimization for buckling problem.
The initial design domain is shown in Figure 14(a). The thickness of the camber link is increased to make more design space. The maximum allowable compliance is five times the initial values. The design requirement load is 20,000 N. The topology problem is

Optimized with buckling constraint: (a) initial design domain and (b) optimized result.
The optimized topology is shown in Figure 14(b). The voxelized structure has 350,000 DOF, and the optimization time is 27 min. The finial volume fraction is 50%, so the optimized structure is same weight as the original design but has a higher critical buckling load which can satisfy the practical design requirements.
Conclusion and future work
The main contribution of the article is an efficient method for large-scale buckling-constrained topology optimization problems. We propose an assembly-free method for linear buckling analysis by merging four distinct but complementary concepts: voxelization, assembly-free FEA, deflated conjugate gradient, and parallelization. In this method, the congruency of voxels is exploited to reduce the memory footprint and offers significant advantage in parallel computing, deflation is used to accelerate the iteration solution of linear systems of equations, and neither the stiffness matrix nor the deflation matrix is assembled. The resulting implementation is simple and well suited for parallelization. Combining the buckling analysis method with the level-set method, the topology optimization against buckling constraint can be solved efficiently. Future work will focus on post-buckling analysis that is critical for topology optimization.
Footnotes
Academic Editor: Jianqiao Ye
Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.
Funding
The author(s) received no financial support for the research, authorship, and/or publication of this article.
