1 Introduction

Structural topology optimization aims to find an optimal material distribution in a design domain under given boundary conditions. There have been significant advances in the past decades and topology optimization has emerged as a powerful tool for generating innovative designs in various engineering fields such as microelectrical systems, photonic crystals, fluidics, and acoustic. In the popular element-based density method (Bendsøe and Sigmund 1999; Rozvany et al. 1992), the design domain is discretized into finite elements, each of which is assigned a design variable (e.g., density) that is optimized. The optimization process results in different values for the design variables that define the optimal structure similar to the way pixels define a gray-scale image. To obtain a more well-defined design, a finer discretization is needed, requiring more computational power. Despite the rapid increase in computer performance, the need for efficient approaches to obtain high resolution designs still remains, especially for three-dimensional applications.

Numerous efforts to overcome the challenge of the computational cost of finite element analysis that incorporates topology optimization have been documented in the literature. One approach is to use parallel computing to expedite the finite element analysis (FEA) (Aage et al. 2014; Aage and Lazarov 2013; Borrvall and Petersson 2001; Evgrafov et al. 2008; Kim et al. 2004). Others use fast iterative solvers and nested solution approaches (Amir et al. 2010, 2014; Mello et al. 2010; Wang et al. 2007), space reduction (Evgrafov 2014), approximate reanalysis (Amir et al. 2009), and adaptive mesh refinement (Costa and Alves 2003; Kim et al. 2003; Stainko 2006) to reduce the total number of finite elements and/or the number of finite element analyses. There have also been efforts to employ graphics processing units (GPUs) (Challis et al. 2014; Schmidt and Schulz 2012) to overcome the computational cost challenge. All the above-mentioned studies use the traditional element-based topology optimization approach where the same discretization is used for both the finite element mesh and the design variable set. There have been some efforts to separate the design optimization and the analysis model using adaptive scheme (Guest and Smith Genut 2010; Maute and Ramm 1995). In other recent studies, methods for improving topology optimization resolution by separating the design and the analysis models in a multiresolution framework have been proposed (Nguyen et al. 2010a, 2012) and demonstrated in large-scale applications including reliability-based design and topology optimization (Nguyen et al. 2010b, 2010c, 2011), geometrical design of thermoelectric generators (Takezawa and Kitamura 2012), biomechanics problems (Sutradhar et al. 2010), interactive topology optimization applications on handheld devices (Aage et al. 2013), and piezocomposite energy harvesting devices (Vatanabe et al. 2012).

Additionally, various analysis methods have been investigated for topology optimization, among them are the meshless method, the boundary element method, the finite volume method, and the isogeometric method. However, the finite element method (FEM) has been most preferred so far. Traditionally, each finite element is assumed to have a constant material density that is represented by a design variable, resulting in the so-called element-based density method. To increase the analysis fidelity as well as the resolution of the topology optimization results, one refines the finite element mesh, i.e., using h-refinement or the h-version FEM. The h-version FEM is so well suited for the element-based topology optimization approach that the two are often thought of as an integral method. As a result, the majority of studies in topology optimization employ the h-version FEM for the analysis. However, the p-version of the finite element method has its own advantages in analysis and is becoming more and more popular especially in front-end design tools such as Creo (Toogood and Zecher 2013). The p-version FEM has been well developed in the past decades and applied in a variety of engineering problems ranging from linear to nonlinear, static to dynamic in both two- and three-dimensional applications of computational mechanics. The discussion on advantages and disadvantages of the p-version finite element analysis can be found in (Szabo and Babuska 1991). In contrast to the h-version FEM, the p-version FEM keeps the finite element mesh unchanged while increasing the polynomial order of shape functions to achieve higher analysis accuracy. With the p-version FEM, the traditional way of assigning a density to each finite element is not an effective approach since refinement of the analyses does not improve the resolution of the results. As the polynomial order increases, the resolution of the results does not change to take advantage of the higher analysis accuracy.

There have been some efforts to use high-order elements for topology optimization reported in the literature (Diaz and Sigmund 1995; Jog and Haber 1996; Nguyen et al. 2013; Parvizian et al. 2012; Sigmund and Petersson 1998). Higher-order elements have been used as a means to alleviate the checker board problem (Diaz and Sigmund 1995), which is caused by the fact that the analysis using first-order elements within an h-version FEM is not accurate enough for the geometry description using an associated element-based topology optimization approach. To avoid the checkerboard problem, using second-order elements is usually sufficient. However, in practice, it is more computationally efficient to use a filter (Bruns and Tortorelli 2001; Guest et al. 2004; Sigmund 2007) together with first-order elements to avoid the checkerboard problem. Moreover, filter also provides a means for length scale control which resolves the mesh dependency problem. In contrast, the p-version FEM has its own advantages in analysis and has gained widespread use. Recent efforts have been made to perform topology optimization with higher-order elements (Parvizian et al. 2012), where separate material and displacement discretizations (Nguyen et al. 2010a) for topology optimization have been used with the so-called finite cell method (Düster et al. 2008) for analysis. In terms of method, there are two main differences. First, the work by Parvizian et al. (2012) uses a heuristic update scheme while the multiresolution approach employs a mathematical programming method. The heuristic update scheme in Parvizian et al. (2012) adjusts a factor α at each material point based on the ratio of the stress and a stress limit. The factor α is later used to determine if the material point is solid (α = 1) or void (α = 0). As the above problem statement lacks the formal objective and constraint functions, the approach may not directly apply to common topology optimization problems such as minimum compliance or compliant mechanism problems. Second, Parvizian et al. (2012) use a fictitious domain method for finite element analysis, while the multiresolution approach (Nguyen et al. 2010a) uses the more widely recognized conforming mesh finite element method. In the Finite Cell Method (Parvizian et al. 2012), the original structure domain is embedded in a geometrically larger fictitious domain of a simpler shape. The embedded domain is then discretized with Cartesian meshes and analyzed with a high-order approximation. Although in (Parvizian et al. 2012), the high-order approximation is developed for the fictitious domain, the high-order element can be used for a conforming finite element mesh. In (Parvizian et al. 2012), a polynomial order of 4 or higher is required to obtain good results, while the multiresolution procedure works well for lower polynomial orders. In addition, Parvizian et al. (2012) only show 2D applications, while the current study demonstrates the multiresolution approach in both 2D and 3D applications.

In this paper, the use of p-version FEM for topology optimization with a conventional mathematical programming framework is investigated and a method that allows flexible resolution for topology optimization and takes advantage of the p-version FEM for generating higher resolution results is proposed. The remainder of the paper is structured as follows: Section 2 reviews the p-version FEM; Section 3 discusses the design and the analysis model in topology optimization; Section 4 introduces the multiresolution topology optimization approach (MTOP) for the p-version FEM; Section 5 presents numerical studies; Section 6 provides additional examples, and finally Section 7 concludes the paper.

2 The p-version of the finite element method

The p-version of the finite element method is well developed and documented (Düster et al. 2001; Szabó et al. 2004; Szabo and Babuska 1991). This section provides a summary of key aspects relevant to the proposed method for the completeness of the paper. The p-version FEM reduces approximation error inherent in finite element analysis approaches by progressively increasing the polynomial degree of element shape functions. An important difference of the p-version FEM from the classical h-version FEM is in the use of the hierarchical shape functions that have orthogonality properties. The shape functions for the p-version FEM are constructed using Legendre polynomials (Szabo and Babuska 1991), which form a hierarchical set. However, the proposed method can be used with standard higher-order finite elements, in which the shape functions are constructed from Lagrange polynomials (Cook 2007). The procedure to construct the stiffness matrix and the load vector from the shape functions is similar to the standard finite element method (Cook 2007; Szabo and Babuska 1991).

2.1 Hierarchical shape functions for one-dimensional problems

To illustrate relevant components of the p-version FEM, one-dimensional shape functions are presented below; in p-version FEM, two- and three-dimensional shape functions are typically based on one-dimensional hierarchical shape functions. Let ξ be the coordinate in one-dimensional standard space Ω q st  = [(−1, 1)]. The shape functions for one-dimensional space are classified into two categories: nodal and internal shape functions. The nodal shape functions are similar to standard FEM shape functions:

$$ {N}_1\left(\xi \right)=\frac{1}{2}\left(1-\xi \right) $$
(1)
$$ {N}_2\left(\xi \right)=\frac{1}{2}\left(1+\xi \right) $$
(2)

where N 1 and N 2 correspond to node 1 and node 2 located at ξ = −1 and ξ = 1, respectively. The internal shape functions for an element of order p ≥ 2, are as follows:

$$ {N}_i\left(\xi \right)={\phi}_{i-1}\left(\xi \right),\kern0.5em i=3,4,\dots, \mathrm{p}+1 $$
(3)

with

$$ {\phi}_j\left(\xi \right)=\sqrt{\frac{2 j-1}{2}}{\displaystyle {\int}_{-1}^{\xi}{P}_{j-1}(t) dt}=\frac{1}{\sqrt{2\left(2 j-1\right)}}\left({P}_j\left(\xi \right)-{P}_{j-2}\left(\xi \right)\right) $$
(4)

where P k (ξ) is the Legendre polynomials:

$$ {P}_k\left(\xi \right)=\frac{1}{2^k k!}\frac{d^k}{d{\xi}^k}{\left({\xi}^2-1\right)}^k $$
(5)

These internal shape functions have the following property which is inherited from the orthogonality of the Legendre polynomials:

$$ {\displaystyle {\int}_{-1}^1\frac{d{ N}_i\left(\xi \right)}{ d\xi}\frac{d{ N}_j\left(\xi \right)}{ d\xi} d\xi}={\delta}_{i j},\kern0.75em i, j\ge 3 $$
(6)

This hierarchical property of the shape functions improves the efficiency and accuracy relating to stiffness matrix computation. Index i in (3) indicates the polynomial degree of the shape function. For element of order p, there will be (p + 1) shape functions (e.g., the highest value of i is (p + 1)).

2.2 Hierarchical shape functions for two-dimensional problems

Shape functions in two-dimensional space are constructed based on the above-mentioned one-dimensional hierarchical shape functions. The shape functions for quadrilateral elements are presented here, and other two-dimension elements, such as triangular elements, can be found in (Szabo and Babuska 1991). Consider a standard quadrilateral element, denoted as Ω q st  = [(−1, 1) × (−1, 1)] and shown in Fig. 1a. Similar to the one-dimensional problems, the shape functions of quadrilateral elements are classified into nodal, edge and internal shape functions.

Fig. 1
figure 1

Elements in standard space: (a) Quadrilateral with nodes, edges, and polynomial degrees and (b) Hexahedron with nodes, edges, faces, and polynomial degrees

The nodal shape functions are the same as shape functions of the standard FEM:

$$ {N}_{1,1}^{N_i}\left(\xi, \eta \right)=\frac{1}{4}\left(1+{\xi}_i\xi \right)\left(1+{\eta}_i\eta \right),\kern0.5em i=1,\dots, 4 $$
(7)

where (ξi′ηi) are the coordinates of the i-th node of the reference element. These nodal shape functions are similar to the standard bi-linear shape functions for isoparametric quadrilateral element.

The edge and internal shape functions differ from conventional FEM. For example, the edge shape function for edge E1 in Fig. 1a is defined as follows:

$$ {N}_{i,1}^{E_i}\left(\xi, \eta \right)=\frac{1}{2}\left(1+\eta \right){\phi}_i\left(\xi \right),\kern0.5em i\ge 2 $$
(8)

In which, ϕ i (ξ) is defined by (4).

The internal shape functions are defined for each element locally. These shape functions vanish at all the edges.

$$ {N}_{i, j}^{\mathrm{int}}\left(\xi, \eta \right)={\phi}_i\left(\xi \right){\phi}_j\left(\xi \right),\kern0.5em i, j\ge 2 $$
(9)

where the indices i and j of the shape functions denote the polynomial degrees in the local directions ξ and η, respectively. Figure 2 shows plots of shape functions for quadrilateral element in the trunk space (Szabo and Babuska 1991) with p = 1 to p = 8, where polynomial degree p ξ and p η in directions ξ and η, respectively, are set equal to p. These shape functions are plotted according to the nodal and edge numbering convention shown in Fig. 1a.

Fig. 2
figure 2

Hierarchical shape functions of quadrilateral element in the trunk space for polynomial degree p = 1 to p = 8 (after (Szabo and Babuska 1991))

2.3 Hierarchical shape functions for three-dimensional problems

Similar to the 2D quadrilateral element, the hierarchical shape functions are introduced for hexahedral element in Fig. 1b. These shape functions are classified into four groups: nodal, edge, face and internal shape functions. The nodal shape functions are similar to the standard FEM tri-linear shape functions:

$$ {N}_{1,1,1}^{N_i}\left(\xi, \eta, \zeta \right)=\frac{1}{8}\left(1+{\xi}_i\xi \right)\left(1+{\eta}_i\eta \right)\left(1+{\zeta}_i\zeta \right),\kern0.5em i=1,\dots, 8 $$
(10)

The edge shape functions are non-zero at an edge and vanish at other edges. For example, the edge shape function for the edge E1 is defined as follows:

$$ {N}_{i,1,1}^{E_1}\left(\xi, \eta, \zeta \right)=\frac{1}{4}\left(1-\xi \right)\left(1-\zeta \right){\phi}_i\left(\eta \right),\kern0.5em i\ge 2 $$
(11)

Similarly, the face shape functions are non-zero at a face and vanish at other faces. For example, the face shape function for face F1 is defined as follows:

$$ {N}_{i, j,1}^{F_1}\left(\xi, \eta, \zeta \right)=\frac{1}{2}\left(1-\zeta \right){\phi}_i\left(\xi \right){\phi}_j\left(\eta \right),\kern0.5em i, j\ge 2 $$
(12)

Internal shape functions are defined locally for each element and vanish at all the faces.

$$ {N}_{i, j, k}^{\mathrm{int}}\left(\xi, \eta, \zeta \right)={\phi}_i\left(\xi \right){\phi}_j\left(\eta \right){\phi}_k\left(\zeta \right),\kern0.5em i, j, k\ge 2 $$
(13)

In (11), (12), and (13), the indices i, j, and k indicate the polynomial degrees of the shape functions in the directions ξ, η, and ζ, respectively.

3 Geometry and analysis models

As the traditional element-based topology optimization approach uses the material density of the finite elements as the design variables, this often obscures the distinction between the design optimization parameterization model (design model) and the analysis model (finite element model). The goal of structural optimization is to find the optimal geometry of the structure. To obtain this goal, the geometry is parameterized by defining it as a function of a set of design variables and uses an optimizer to seek the optimal set of values for the design variables. Structural responses such as compliance or stresses are typically used for design criteria, thus an analysis model (the finite element model in this context) is needed to assess the responses.

An example of this dichotomy is shown in Fig. 3 with an example of a plate with an elliptical hole. The design model in this case can be composed of the lengths of the two axes and how they define the ellipse, while the analysis model is the discretized finite element model that is used to compute compliance and stresses. For this example, there are multiple options for the design model. Instead of defining the hole as an ellipse and using its two axes as design variables, a spline interpolation can be used to define the hole, and use its control point coordinates as design variables. The coordinates of nodes along the hole boundary can also be used to define the hole, or a filtered version of the FE nodes may be used for design variables, as in (Le et al. 2011).

Fig. 3
figure 3

A plate with elliptical hole and the FE mesh

In the density-based topology optimization, the geometry is represented by a material density field, which has a value of 1.0 for a point in the design space that has material and 0.0 for a void point. One can use the density at the finite element nodes as design variables and interpolate the density field using the finite element shape functions as in (Matsui and Terada 2004). One can also use the level set of a higher dimensional scalar function to define the boundary between solid and void, in this case the variables that define the scalar function are design variables (Norato et al. 2007). The element-based method assumes that material density is constant in each finite element, thus one design variable represents each finite element. Similar to shape optimization, a filtered version of such element density variables is often used to define the geometry; thus the design model includes an intermediate filter function that bridges in between the design variables and geometry (Guest et al. 2004; Le et al. 2010). This also suggests that the design variables are not necessarily located directly on finite element centroids or nodes, but can be independent from the finite element mesh, as detailed in (Nguyen et al. 2010a, 2012). In the recently proposed Moving Morphable Components method (Guo et al. 2014; Zhang et al. 2016), the geometry is represented by components of explicit geometries, which are projected to the finite element mesh for analysis. The idea is related to the topological derivative method (Norato et al. 2007).

One typically desires higher resolution for the topology definition, while having a limit on computational resources for the analysis model. The aforementioned various design models for topology optimization raise the question on how much resolution one can obtain on geometry given a limit on the fidelity of the analysis model. In general, a numerical analysis result (e.g., from a finite element model) is an approximation to the exact structural solution. The higher computational cost one can afford for the finite element model, the lower the approximation error will be. In other words, for a given computational cost, the more complex the geometry is, the less accurate the analysis will be. In topology optimization, the analysis model is typically fixed, while the geometry evolves within the design space spanned by the design model. Since optimization is the process of finding the extreme, the result can have extreme complexity and thus extreme analysis error. Above a certain level of resolution of the design model, the optimization becomes problematic, i.e., rendering spurious results. These problems have been referred to as numerical instabilities (Jog and Haber 1996; Sigmund and Petersson 1998). Fig. 4a illustrates a checkerboard-like topology optimization result, and Fig. 4b shows a jagged boundary of a shape optimization result, both obtained by using unsuitable design models that have higher resolution than the analysis model can support. Both results are non-optimal and undesirable.

Fig. 4
figure 4

Non-optimal shape and topology optimization results: (a) optimizing topology for minimum compliance, (b) optimizing hole shape for minimum stress

On the other hand, using a low resolution design model with a high fidelity analysis model, in many cases, results in the similar topology as that of using a low fidelity analysis model. Let’s consider the example of topology optimization of a half of an MBB beam (Nguyen et al. 2012) as shown in Fig. 5. The element-based approach is used with a density filter as the design model, and p-version FEM with a 30 × 10 mesh as the analysis model. Two cases are considered, one with polynomial order p = 2 and the other with p = 6. Here, the design models for the two cases are the same, while the analysis models have widely different fidelity. It can be seen that the result with high-order FEA models in Fig. 5b is similar to the result in Fig. 5a, even though the analysis model in Fig. 5b employs about five times more degrees-of-freedom (DOFs) than that of Fig. 5a. In other words, the design model cannot take advantage of the higher accuracy of the analysis model.

Fig. 5
figure 5

Topology optimization using same design models with different analysis models

One may not want to use low resolution design models that do not take full advantage of the analysis model fidelity for topology optimization. Unfortunately, the combination of the traditional element-based approach for geometry and the p-version finite element method for analysis falls into this category. The above example shows that no matter how highly accurate a FEA model is employed, no significant benefit will be obtained in the topology optimization results. To address this issue, in this paper, the newly developed multiresolution approach is used for the design model to take advantage of the improved accuracy of p-version finite element analysis for optimal results.

4 Multiresolution topology optimization using the p-version finite element method

This section describes the multiresolution topology optimization approach using the p-version FEM. The topology optimization formulation is first introduced for generic minimum compliance problems.

4.1 Topology optimization problem formulation

While the proposed method in this paper is applicable to a generic topology optimization problem, for simplicity, it will be described in the context of a compliance minimization problem. The objective of this problem is to minimize the compliance of the structure subject to a constraint on the total amount of material. The problem statement for the compliance problem is as follows:

$$ \begin{array}{l}\underset{\mathbf{d}}{ \min}\kern0.75em C\left(\uprho \left(\mathbf{d}\right),\mathbf{u}\right)\\ {} s. t.:\kern0.75em \uprho = f\left(\mathbf{d}\right)\\ {}\kern2.5em \mathbf{K}\left(\uprho \left(\mathbf{d}\right)\right)\mathbf{u}=\mathbf{f}\kern0.5em \\ {}\kern2.5em V\left(\uprho \left(\mathbf{d}\right)\right)={\displaystyle {\int}_{\varOmega}\uprho \left(\mathbf{d}\right) dV\le {V}_s}\end{array} $$
(14)

in which C(ρ(d),u) is the compliance measure which is a function of the material field ρ and coefficient vector u; K is the global stiffness matrix which depends on the density field (the procedure to compute the stiffness matrix is presented in Section 4.3); f is the global force vector; V is the total material volume; and V s is a predefined upper bound on the material volume.

The vector of coefficients u contains the coefficients corresponding to the node, edge, face and internal shape functions. The coefficient values for nodal shape functions equal the nodal displacements. However, the other coefficient values do not represent displacement at any point. Similar to the h-version FEM, the displacement field ue(x) inside an element is interpolated using hierarchical shape functions as:

$$ {u}_e={\mathbf{N}}_e{\mathbf{u}}_e $$
(15)

where N e is the matrix of hierarchical shape functions and u e is the vector of coefficients corresponding to the degrees of freedom of element e. Note that the degrees of freedom definition in that context includes the coefficients corresponding to the node, edge, face and internal shape functions. The density field ρ is a function of the design variable vector d. The way d is arranged and related to the density field ρ defines the design model and will be detailed in the following section. Through using a relaxation approach, the density can have any intermediate value between 0 and 1. Thus, material properties are related to the intermediate density by the well-known Solid Isotropic Material with Penalization (SIMP) model (Bendsoe and Kikuchi 1988; Rozvany et al. 1992; Sigmund 2007). According to this model, the Young’s modulus is computed as:

$$ E\left(\mathbf{x}\right)={E}_{\min }+\uprho {\left(\mathbf{x}\right)}^q\left({E}^0-{E}_{\min}\right) $$
(16)

where E 0 is the Young’s modulus of the solid material (corresponding to the density ρ = 1), and the exponent q is the penalization parameter. The Young’s modulus E min is a small stiffness that is introduced to prevent singularity of the stiffness matrix.

4.2 The design model

The design model follows the multiresolution topology optimization (MTOP) approach which has been successfully applied to the conventional h-version FEM in (Nguyen 2010; Nguyen et al. 2010c, 2011, 2012). On top of the finite element mesh, a grid of points is introduced to represent the design variables d (cf. Fig. 6). Each point corresponds to one design variable which can take any value between 0 and 1. This design variable grid is independent of the finite element mesh. Thus, the choice of the design variable and finite element discretizations is flexible. The denser the design variable grid is, the higher resolution the topology optimization can be. However, increasing the number of design variables also increases the computational cost associated with the optimizer. Nevertheless, the optimizer computation cost is usually smaller than that of the finite element analysis cost in the traditional element-based approach (Borrvall and Petersson 2001; Wang et al. 2007).

Fig. 6
figure 6

Design variable grid, finite element mesh and density element mesh

The density field inside of a finite element is computed from the design variable grid using a convolution, in this case a filter (Bruns and Tortorelli 2001; Guest et al. 2004) as follows:

$$ \uprho (x)= f\left(\mathbf{d}\right)=\frac{{\displaystyle {\sum}_{i\in S(x)}{d}_i w\left({r}_i\right)}}{{\displaystyle {\sum}_{i\in S(x)} w\left({r}_i\right)}} $$
(17)

where S(x) is the subset of the design variable vector d which lies in a circle of radius r min and centered at point x (cf. Fig. 6). The weight w(r i ) corresponding to variable d i can be defined as follows:

$$ w\left({r}_{ni}\right)=\left\{\begin{array}{cc}\hfill \frac{r_{\min }-{r}_{ni}}{r_{\min }}\hfill & \hfill \mathrm{if}\ {r}_{ni}\le {r}_{\min}\hfill \\ {}\hfill 0\hfill & \hfill \mathrm{otherwise}\hfill \end{array}\right. $$
(18)

Note that for topology optimization that is integrated either with h-version or p-version FEM, the physical radius r min (cf. Fig. 6) is independent of the mesh. More discussion about the use of filter in topology optimization can be found in (Bruns and Tortorelli 2001; Guest et al. 2004; Sigmund 2007). In general, the filter imposes a length-scale to the resulting structure. More specifically, the size of the smallest structural member is in the range of 2r min. The bigger radius r min is, the more restriction is imposed on the design model. The choice of the length-scale parameter r min is based on two considerations.

First, it has to be large enough to avoid numerical instability. The smaller r min is, the higher resolution the design model can be. At a certain point, the analysis model is no longer accurate enough for the resolution of the design model, and the optimization will start producing spurious results. The analysis accuracy is dependent on the polynomial degree of the p-elements. For the traditional element-based approach using h-FEM (p = 1), the size of r min must be larger than the size of the finite element. Moreover, r min must be large enough such that S(x) is non-empty for all points in the design space, i.e., there is no point in the design space for which the filter circle does not contain any design variable. For the multiresolution method for compliance and compliant mechanism problems, our numerical studies suggest that r min must satisfy the following conditions: r min > h for p = 1; r min > 0.75 h for p = 2; r min > 0.5 h for p = 4, and r min > 0.35 h for p = 6, where h is the finite element size. These filter radii are the recommended lower bound values for the multiresolution approach using 5x5 density elements per finite element.

Second, designers may want to limit the complexity of a design for easier manufacturing, and produce a more well-defined result for easier interpretation. In that case, r min can be determined based on the desired length-scale/complexity of the design.

4.3 Integration of stiffness matrix

From the discussion above, for one finite element as shown Fig. 6, the density field inside a finite element can be obtained by the convoluted operation in (17). Thus, the stiffness matrix can be obtained as follows:

$$ {\mathbf{K}}_e={\displaystyle \underset{{\mathrm{V}}_{\mathrm{e}}}{\int }{\mathbf{B}}^{\mathrm{T}}\mathbf{DB} dv} $$
(19)

where K e is the stiffness matrix of the element e, D is the constitutive matrix, and B is the strain–displacement matrix of shape function derivatives. One can compute the density at any point inside the finite element, and thus the stiffness matrix integration of that finite element can be exact. However, numerical integration is commonly used in practical finite element analysis. Since the polynomial degree of the density field is not known, one cannot determine the quadrature rule for the numerical integration exactly. However, the density field is defined based on the design variable grid and the filter, thus the density field is often locally smooth. For this reason, in this paper the finite element is proposed to divide into smaller regions, the so-called density element, and use low-order gauss quadrature to integrate in each density element. During the topology optimization process, there are regions that have high density gradient for which small density element size should be used. A larger density element size can be used in regions where the density field is uniform or has small gradient. The study on appropriate density element size choice is left for future work. For simplicity in this study, a uniform size for the density element is used for the entire structure in the numerical examples, but no changes in results are anticipated when more efficient density element choice and numerical integration are used.

The density field, which is discretized by the density element mesh, defines the topology optimization results as shown in Fig. 6. The finer the density element mesh is, the higher the resolution of the results will be. When the optimization process converges, the topology optimization result is desired to have largely black and white regions and distinct structural elements boundaries. Thus, high resolutions are only needed around the boundary of the resulting structure. This matches well with the density element size determination scheme that is proposed above for numerical integration purposes. The resolution obtained from this method is much higher than that of the traditional element-based topology optimization approach, wherein each displacement element has a uniform density. Note that the density elements are not used to discretize the displacement. Thus, the manipulation of the density element mesh is straightforward. Figure 7 shows examples of how to divide quadrilateral (Fig. 7a), triangular (Fig. 7b), brick (Fig. 7c), and tetrahedral (Fig. 7d) displacement elements. Furthermore, the increased computation cost associated with stiffness matrix integration due to the non-uniform density field is highly parallelizable.

Fig. 7
figure 7

Dividing displacement element into density elements: (a) quadrilateral element, (b) triangular element, (c) hexahedral element, (d) tetrahedral element

When a displacement element is divided into density elements, the stiffness matrix integration becomes:

$$ {\mathbf{K}}_e={\displaystyle \underset{{\mathrm{V}}_e}{\int }{\mathbf{B}}^{\mathrm{T}}\mathbf{DB} dv}={\displaystyle \sum_{i=1}^{N_e}{\displaystyle \underset{{\mathrm{V}}_i}{\int }{\mathbf{B}}^{\mathrm{T}}\mathbf{DB} dv}} $$
(20)

where V i is the volume of the density element i, and the sum is over all density elements within a finite (displacement) element e, N e is the number of density element in the displacement element e. The Gauss quadrature for the above integration is similar to that of the standard finite element method, except for a simple transformation from the standard reference element (cf. Fig. 8b) to the integration element (cf. Fig. 8c):

$$ {\mathbf{K}}_e={\displaystyle \sum_{i=1}^{N_e}{\displaystyle \sum_{g=1}^{n_g}{\left({\mathbf{B}}^{\mathrm{T}}\mathbf{DB}\right)}_g{J}_e{J}_g{w}_g}} $$
(21)

where J e is the Jacobian corresponding to the standard transformation of the displacement element from the original element (cf. Fig. 8a) to the reference element (cf. Fig. 8b); J g is a scaling factor corresponding to the transformation from the reference element to the integration element (cf. Fig. 8c); and w g is the weight of the integrand corresponding to the integration Gauss point. For illustration purposes, Fig. 9 shows a displacement element with 25 density elements and two shape functions.

Fig. 8
figure 8

Integration of stiffness matrix - element transformation: (a) original element, (b) reference element, (c) integration element

Fig. 9
figure 9

Density elements in a displacement element and two selected shape functions (one nodal function and one edge shape function)

4.4 Sensitivity

The optimization problem (14) is solved by mathematical programming that requires the computation of the derivatives of the objective and constraint functions with respect to design variables. The derivative of the volume is straightforward:

$$ \frac{\partial V}{\partial {d}_n}={\displaystyle \underset{V}{\int}\frac{\partial \rho}{\partial {d}_n}} d v $$
(22)

The derivative of the compliance is:

$$ \frac{\partial C}{\partial {d}_n}={\displaystyle \underset{V}{\int}\frac{\partial C}{\partial \rho}\frac{\partial \rho}{\partial {d}_n} dv}={\displaystyle \underset{V}{\int }-{\mathbf{u}}^T\frac{\partial \mathbf{K}}{\partial \rho}\mathbf{u}\frac{\partial \rho}{\partial {d}_n} dv} $$
(23)

The sensitivity ∂ρ/∂d n can be derived from (17); and the derivative of the stiffness matrix is:

$$ \frac{\partial \mathbf{K}}{\partial \rho}={\displaystyle \sum_e^N\frac{\partial {\mathbf{K}}_e}{\partial \rho}}={\displaystyle \sum_e^N{\displaystyle \sum_{i\in {\varOmega}_e}{\displaystyle \sum_{g=1}^{n_g}{\left({\mathbf{B}}^{\mathrm{T}}\frac{\partial \mathbf{D}}{\partial \rho}\mathbf{B}\right)}_g{J}_e{J}_g{w}_g}}} $$
(24)

where ∂D/∂ρ depends on the stiffness interpolation (SIMP method) as given in (16) via Young’s modulus.

5 Numerical studies

To show the effectiveness of the proposed multiresolution approach using p-version FEM, a benchmark example, the Messerschmitt-Bolkow-Blohm (MBB) beam (Nguyen et al. 2012, 2013; Olhoff et al. 1991) is investigated for minimum compliance subject to a volume constraint (cf. Fig. 10a). The beam has a length b = 60 and height h = 10. To enhance convergence to global optima, the continuation technique is used on the power q: q is initially taken as 1 and increased by 0.5 after every 30 iterations and q is ultimately taken as 3. Young’s modulus is taken as 1 and E min = 10−9. The method of moving asymptotes (MMA) (Svanberg 1987) is used as the optimizer. For this example, the analytical solution is the so-called Michell’s truss (Rozvany 1996, 1998) as shown in Fig. 10b. We do not include the numbers of iterations for each example, but we note that these numbers of iterations are comparable to that of the traditional SIMP method if the same optimizer is used.

Fig. 10
figure 10

MBB beam example: (a) domain, (b) analytical solution (Michell’s solution (Rozvany 1996))

The optimization problem is first solved using the traditional element-based approach with p-version FEM. The problem is solved for two cases, one using a density filter with a filter radius (r min = 1.2, Figs. 11a, c, e, and g), and one without filter (Figs. 11b, d, f, and h). In both cases, the finite element mesh is 60 × 10. The results in Fig. 11 show that increasing p from 1 to 8, and thus the number of degrees-of-freedom (DOFs), does not have a significant effect on the results, indicating that the higher computational cost and higher accuracy of p-version FEM are unnecessary. Without the filter, and for p = 1, a result with numerical instabilities (checkerboard) is obtained as expected, as shown in Fig. 11b. As polynomial degree p is increased to 2, the numerical instability is alleviated as shown in Fig. 11d. However, increasing p further again does not have significant effect on the results (Figs. 11f and h). Note that the filter introduces a gray area around structural members (Figs. 11a, c, e, and g), otherwise the results with and without filter have similar topology. Overall, there is no significant improvement in the design when increasing p if the traditional element-based approach is employed.

Fig. 11
figure 11

Results using traditional element-based approach with p-version FEM (FE mesh 60 × 10) – with filter on the left and without filter on the right: (a) p = 1 with filter, (b) p = 2 without filter, (c) p = 2 with filter, (d) p = 2 without filter,(e) p = 4 with filter, (f) p = 4 without filter, (g) p = 8 with filter, (h) p = 8 without filter

The problem is solved next using the same FE mesh size of 60 × 10, but using the proposed multiresolution approach. Since the example uses a structured mesh, a design variable grid that is parallel to the rows and columns of the finite element mesh is chosen. The spacing of design variables is one fifth of the finite element size. For simplicity, a uniform density element mesh which has 25 density elements in each finite element is used (cf. Fig. 6). For each polynomial degree p from 1 to 6, a density filter radius that is just large enough to avoid numerical instabilities yet small enough to get as intricate structures as possible is used. The results in Figs. 12b, c, d, e show that as p increases, more and more intricate structures are obtained. This increase in resolution of the results is similar to the improvement expected with h-version FEM when the finite element mesh is refined. Note that in this case the finite element mesh stays the same, while the polynomial order increases. For comparison, the result using the traditional element-based approach is included in Fig. 12a. Comparison of Figs. 12a and b shows that even with the same number of degrees of freedom and FEM mesh, the proposed multiresolution approach generates better resolution (i.e., a more well defined structure). Note that the results in Figs. 12a and b have approximately the same level of intricacy.

Fig. 12
figure 12

Results using multi-resolution approach with p-version FEM on the same mesh (FE mesh 60 × 10 elements) – effect of the polynomial degree p: (a) p = 1, element-based approach, r min = 1.2, (b-e) multiresolution approach, 25 density elements per finite element, (b) p = 1, r min = 1.0, (c) p = 2, r min = 0.75, (d) p = 4, r min = 0.5, (e) p = 6, r min = 0.35

In general, increasing the p-version FEM polynomial degrees improves the intricacy of the design which is similar to the effect of refining the finite element mesh, while increasing the number of design variables and density elements improves the resolution of the results. It is also noted that for higher p, it is possible to obtain structural members that are considerably smaller than the finite element size; this is obtained because the increased accuracy of the p-version FEM method allows such resolution of the design model so that a smaller length-scale, i.e., the filter radius, can be used to capture such resolution. In this case, the filter radius is 1.2 for the element based-approach and 1.0, 0.75, 0.5, and 0.35 for p = 1, 2, 4 and 6 for the multiresolution approach, respectively.

Figure 13 shows a comparison of topology optimization results obtained by h-refinement and p-refinement. Figure 13a shows the element-based approach on a coarse FE mesh of 60 × 10. In Figs. 13b, d, and f, the finite element mesh is refined progressively to obtain higher design resolution. In contrast, the finite element mesh in Figs. 13c, e, and g are kept the same as Fig. 13a while the polynomial degrees are progressively increased. Note that the number of degrees-of-freedom (DOFs) of the h-refinement (Figs. 13b, d, and f) is respectively comparable to that of the p-refinement (Figs. 13c, e, and g). Note that the stiffness matrix of the p-refinement is generally denser. In general, a denser stiffness matrix means longer solver time for direct solver. But the solution time is highly dependent on linear solver as well. It is also noted that hierarchical shape functions produce a matrix with better condition number and thus can help iterative solvers.

Fig. 13
figure 13

Comparing h-version and p-version FEM for topology optimization: (a) element-based approach and p = 1, (b, d, f) h-version FEM approach, (c, e, g) p-version FEM approach with the number of density elements per displacement of (4, 16, 16), respectively

In this example, h-refinement and p-refinement are compared, thus the same resolution is used for the two methods, i.e., the number of density elements for p-refinement is the same as the number of displacement elements for the h-refinement. Specifically, the number of density elements for each finite element is 4, 16 and 64 for the results in Figs. 13c, e, and g, respectively. In addition, the length scale is employed the same for the two methods: rmin = 0.75 for Figs. 13b and c; rmin = 0.5 for Figs. 13d and e; rmin = 0.25 for Figs. 13f and g. The results show that with a similar or smaller number of degrees-of-freedom (DOFs), results obtained using p-refinement is comparable to that using h-refinement, based on the use of the proposed multiresolution approach for p-refinement. In addition, increasing the number of density elements will continue to provide higher resolution for the p-refinement results.

The computational efficiency of this method is investigated using the example in Fig. 10 with a length scale of 1.2. The analyses are implemented in MATLAB and run on a personal computer. Because of symmetry, only half of the model is taken into account. Each finite element of the coarse mesh (30x10) is divided into n × n density elements with n = 5, 6, 7 and 8. Higher order elements are used in which the p-order varies from 1 to n. The computational time is then normalized against the computational time of fine meshes using n = 1 and p =1. For n = 5, 6, 7, and 8, the reference fine meshes are 150x50 Q4, 180x60 Q4, 210x70 Q4 and 240x80 Q4, respectively. For all cases, the computational time is recorded after 200 optimization iterations. The normalized computational time is defined as the ratio of the computational time of the above mentioned fine meshes to the computational time of the corresponding coarse meshes with high-order elements and the multiresolution approach. In the current, study, it is noted that the computational time for the MMA optimizer contributes from 50 to 95% of the total computational time. Thus, both the comparison of the total computational time and the comparison of the computational time without the MMA contribution are also included. The normalized total computational time comparison is shown in Fig. 14a. Note that a normalized total computational time smaller than 1.0 means the corresponding p-order multiresolution approach is slower than the fine mesh using a traditional Q4 element. For higher order elements (p = 5 and above), the multiresolution approach is slower than the corresponding traditional approach. Figure 14b shows the normalized computational time by MMA. It can be seen that the MMA computational time is similar for the traditional approach and the multi-resolution approach because the numbers of design variables are the same for both cases. The computational time without MMA is shown in Fig. 14c. It can be seen that the speed up is significantly improved in favor of the multiresolution approach. We note that the MATLAB implementation of MMA contains loops that are known to be slow in MATLAB. The MMA computational time in this case does not represent well the optimizer cost in a production implementation. From these results, it can be seen that p-orders of 2, 3, 4 have good balance between accuracy and speed.

Figure 14
figure 14

Computational time of our multi-resolution approach with various polynomial degree (p): (a) total computational time, (b) MMA computational time, (c) computational time excluding MMA contribution

6 Additional examples

In this section, results from additional examples are shown to verify that the proposed method works for a variety of problems including three-dimensional and mechanical compliance problems. The first example problem is the benchmark Michell’s truss with circular support as shown in Fig. 15a. In this example, 45 × 30 FE p-element mesh with p = 5, and 20 × 20 density elements per finite element are employed. Young’s modulus is taken as 1 and E min = 10−9. Penalization parameter q is taken as 4 and length-scale r min = 0.2. The high resolution optimized design as shown in consists of a system of orthogonal members that agrees well with analytical solution (Rozvany 1998; Sigmund 2000; Suzuki and Kikuchi 1991) as shown in Fig. 15b and the previous multiresolution study using h-version FEM with a finer FE mesh (Nguyen et al. 2010a).

Fig. 15
figure 15

Michell’s type structure: (a) domain, (b) analytical solution, (c) optimized topology using p-version FEM with p = 5, FE mesh 45 × 30, each FE consists of 20 × 20 density elements, volume fraction 25%, r min = 0.2

The next example is a 3D structure wherein the design space is half of a cube that is subjected to a vertical load at the bottom center and supported at four corners as shown in Fig. 16a. The example is solved using a relatively coarse FE mesh of only 8 × 8 × 4 p-elements with p = 3, and 15 × 15 × 15 density elements per finite element. That results in 256 finite elements and 864,000 density elements. The length-scale of 1/10 height of the domain is used. The result (isosurface ρ = 0.25) is shown in Figs. 16b and c with high resolution despite a relatively coarse FE mesh being used.

Fig. 16
figure 16

A half cube with load at the bottom center: (a) domain, (b) and (c) optimized topology

The next example is a bridge design. The domain was chosen to have the dimension 2 L × 24 L × 3 L, and the supports have distance of 4 L from the center as can be seen in Fig. 17a. A uniform vertical load is applied at the top of a non-designable layer with thickness of L/5 on the top of the domain. A volume fraction of 12.5% of the domain is employed. The length-scale of 1/15 height of the domain is used. During the optimization process, a cut of thin layer of material from the bottom of the non-designable layer to bottom of the domain along the x direction (y = 0) is used. Another cut of material with thin layer is used from the bottom of the non-designable layer to mid high of the domain along the y direction (x = 0). In this example, the polynomial degree p = 2 and 10 × 10 × 10 density elements per element are employed. The domain is divided into 10 × 120 × 15 FEs which results in a total of 18,000 finite elements. The total 18 million density elements provide high resolution solution. Noted that because of the hardware limit, the direct solver in MATLAB does not allow the solution of a model with 19 million B8 elements, thus the efficiency of 3D model is not investigated. The results as shown in Figs. 17b and c show that high resolution topology can be obtained using the proposed multiresolution approach.

Fig. 17
figure 17

Optimization of a bridge: (a) design domain, (b) and (c) optimized topology

All aforementioned examples address the minimization of compliance subject to a volume constraint, which is a straightforward problem setup since the constraint is linear and the objective is convex. Thus, the next example is a 3D compliance mechanism problem where a force inverter in the design domain shown in Fig. 18a is designed. The structure is subjected to a vertical upward force at the input point A located at the center of the bottom face. The goal is to maximize the downward displacement of the output point B located at the center of the top face. The amount of material is 7.5% of the total design domain volume. Young’s modulus is taken as 1, E min = 10−4, and length-scale r min = L/20. To make the problem well-posed, two springs are attached to the input point A and output point B has the stiffness of 0.01 and 0.001, respectively. The cube is divided into 10 × 10 × 10 brick elements with polynomial degree p = 3 and 15 × 15 × 15 density elements per finite element. The model results in a total of 1000 FEs and 3,375,000 density elements. The optimal design is shown with different viewpoints in Figs. 18b and c (isosurface ρ = 0.375); the topology is consistent with other studies in the literature (Amir et al. 2010; Evgrafov et al. 2008). It can be seen that the obtained topology creates a compliant mechanism in three-dimensional space. This example demonstrates that the proposed approach also works well to the compliant mechanism problem.

Fig. 18
figure 18

Displacement inverter design using topology optimization using p-version FEM: (a) domain, (b) and (c) optimized topology

7 Conclusions

The element-based topology optimization method has been well developed for the h-version of the finite element method. However, the traditional approaches are not capable of exploiting the advantages of the p-version of the finite element method, which has gained popularity, especially front-end analysis tools such as Creo (Toogood and Zecher 2013). In this paper, a new topology optimization method is proposed that is more suitable for the p-version FEM. The method is based on the idea of decoupling of the design model and the analysis model so that the resolution for the topology description becomes flexible. This allows the analyst to refine the design models along with the increase of polynomial order in the analysis model, even when the finite element mesh is fixed. The method takes full advantage of the increased analysis accuracy of the p-version FEM method for topology optimization. Numerical studies show that comparable topology optimization results can be obtained for h-version FEM and p-version FEM analysis models with a comparable number of degrees-of-freedoms. In addition to the proposed method working well with the p-version FEM, it also improves topology optimization compared to traditional element-based approaches. With this method, topology optimization can be readily coupled with the p-version of the finite element method. This approach thus allows topology optimization to be more accessible for designers at a conceptual design stage where topology optimization is most valuable.