In this work, a periodic lattice microstructure, as introduced by Imediegwu et al. (2019), is employed. The lattice is parameterized by the radii of seven cylindrical members within a periodic unit cell. As shown in Fig. 1, four diagonal members (numbered 1–4) connect each opposing vertex of the cell and three members (numbered 5–7) align to the principal axes. By varying the radius of each member individually, the material properties of the microstructure can be altered, which in many cases gives rise to anisotropic material properties.
To derive the material properties of the periodic microstructures, this work leverages the asymptotic homogenization (AH) method (Francu 1982; Bendsøe and Kikuchi 1988). The advantage of using the AH method is the large reduction in the computational expense associated with simulating the periodic structure. Representing the lattice unit cells as homogeneous solids eliminates the need for explicit, full-scale FEA of the multiscale structure during the optimization. The effectiveness of the AH method has been demonstrated widely in topology optimization (Groen and Sigmund 2018; Fan and Yan 2019; Pasini et al. 2018; Yi et al. 2016), composites (Bacigalupo et al. 2016), plate structures (Cai et al. 2014), and several other fields. Furthermore, Wang et al. (2018) were able to confirm the validity of the AH method through FEA and experiments.
The AH method links the macroscale and microscale through their respective characteristic dimensions, often referred to as the slow and fast variables. The slow variable, representing the macroscopic coordinate, is defined as x and the microscopic fast variable is defined as \(\boldsymbol {y} = \frac {\boldsymbol {x}}{\xi }\), where ξ (0 < ξ ≪ 1) indicates the ratio of the size of the periodic unit cell to the macroscale structure. With these variables, a two-scale displacement field can be represented through the asymptotic expansion
$$ \boldsymbol{u}(\boldsymbol{x},\boldsymbol{y}) = \boldsymbol{u}_{0}(\boldsymbol{x},\boldsymbol{y}) + \xi \boldsymbol{u}_{1}(\boldsymbol{x},\boldsymbol{y}) + \xi^{2}\boldsymbol{u}_{2}(\boldsymbol{x},\boldsymbol{y}) + \mathcal{O}(\xi^{3}) $$
(1)
where u is the exact displacement field, composed of the macroscopic displacement u0 and the microscopic perturbations caused by the periodic nature of the microscale. Thus, it follows that the displacement field varies ξ− 1 times faster with the microscopic variable y compared with the macroscopic variable x. Provided there is a large scale of separation between the macroscopic and microscopic variables, terms higher than the first order may be neglected, enabling the effective material properties from a periodic microstructure to be imposed on the macroscale. The exact scale of separation required is further examined in Section 3. Due to the layout of the lattice microstructure with independently varying member radii, it is possible to achieve fully anisotropic material properties. The homogenized stiffness tensor EH, containing 21 independent terms can be used to describe the homogenized material properties of the periodic microstructure, defined as
$$ \boldsymbol{E}^{H} = \left[\begin{array}{llllll} E_{11} & E_{12} & E_{13} & E_{14} & E_{15} & E_{16} \\ & E_{22} & E_{23} & E_{24} & E_{25} & E_{26} \\ & & E_{33} & E_{34} & E_{35} & E_{36} \\ & & & E_{44} & E_{45} & E_{46} \\ & sym. & & & E_{55} & E_{56} \\ & & & & & E_{66} \end{array}\right] $$
(2)
By imposing periodic boundary conditions (PBC) on the microstructure, EH can be obtained by solving the equation (Hollister and Kikuchi 1992; Arabnejad and Pasini 2012)
$$ \boldsymbol{E}_{ijkl}^{H} = \frac{1}{|{\Omega}|} {\int}_{\Omega} \boldsymbol{E}_{ijmn}\boldsymbol{M}_{mnkl}d{\Omega} $$
(3)
where E is the stiffness tensor of the microstructure bulk material, Ω is the domain of the microstructure, M is the structural tensor relating the microscopic and macroscopic stress defined as
$$ \begin{array}{@{}rcl@{}} \boldsymbol{\varepsilon}_{ij} &=& \boldsymbol{M}_{ijkl} \boldsymbol{\overline{\varepsilon}}_{kl} \end{array} $$
(4)
$$ \begin{array}{@{}rcl@{}} \boldsymbol{M}_{ijkl} &=& \frac{1}{2}(\delta_{ik}\delta_{jl} + \delta_{il}\delta_{jk}) - \boldsymbol{\varepsilon}_{ij}^{*kl} \end{array} $$
(5)
where \(\overline {\varepsilon }\) and ε are the macroscopic and microscopic strains respectively and δ is the Kronecker delta function. The term ε∗kl corresponds to the microscopic strain field resulting from the kl component of the macroscopic strain tensor. Using the virtual strain (\(\boldsymbol {\varepsilon }^{1}_{ij}(v)\)), the term ε∗kl is then obtained by solving the equation
$$ {\int}_{\Omega} \boldsymbol{E}_{ijno}\boldsymbol{\varepsilon}^{1}_{ij}(v)\boldsymbol{\varepsilon}^{*kl}_{no}(u)d{\Omega} = {\int}_{\Omega} \boldsymbol{E}_{ijkl}\boldsymbol{\varepsilon}^{1}_{ij}(v)\boldsymbol{\overline{\varepsilon}}_{kl}(u)d{\Omega} $$
(6)
As linear theory is assumed, \(\boldsymbol {\overline {\varepsilon }}_{kl}\) can be defined as the linear combination of 6 unit strains for three-dimensional problems. In this case, the 6 unit strains are defined using Voigt notation as
$$ \begin{array}{@{}rcl@{}} \begin{array}{ll} \overline{\boldsymbol{\varepsilon}}_{1} = \left[\begin{array}{l} 1 \\ 0 \\ 0 \\ 0 \\ 0 \\ 0 \end{array}\right] \quad \overline{\boldsymbol{\varepsilon}}_{2} = \left[\begin{array}{l} 0 \\ 1 \\ 0 \\ 0 \\ 0 \\ 0 \end{array}\right] \quad \overline{\boldsymbol{\varepsilon}}_{3} = \left[\begin{array}{l} 0 \\ 0 \\ 1 \\ 0 \\ 0 \\ 0 \end{array}\right] \\ \overline{\boldsymbol{\varepsilon}}_{4} = \left[\begin{array}{l} 0 \\ 0 \\ 0 \\ 1 \\ 0 \\ 0 \end{array}\right] \quad \overline{\boldsymbol{\varepsilon}}_{5} = \left[\begin{array}{l} 0 \\ 0 \\ 0 \\ 0 \\ 1 \\ 0 \end{array}\right] \quad \overline{\boldsymbol{\varepsilon}}_{6} = \left[\begin{array}{l} 0 \\ 0 \\ 0 \\ 0 \\ 0 \\ 1 \end{array}\right] \end{array} \end{array} $$
(7)
For a comprehensive derivation of the homogenization process, the reader is referred to Hollister and Kikuchi (1992).
Microscale stress
In standard SIMP-based TO, stress is penalized for intermediate design variables in a similar way to the penalisation applied to the stiffness tensor (Duysinx and Bendsøe 1998; Holmberg et al. 2013b; Yang et al. 2018). In stress-constrained lattice-based optimization, the stress has been derived using the homogenized stiffness tensor (Cheng et al. 2019; Arabnejad and Pasini 2012). In this work, we present a method for calculating the real stress within the microstructures using the macroscale strains. Due to the local nature of stress, the homogenized stress results in unreliable stress predictions of the microscale. To ensure more reliable predictions of the microscale stress, a multiscale stress methodology is proposed in this work.
Using the strain fields, ε∗kl, from (6), stress fields within the microstructure can be determined for each strain imposed. Using Hooke’s law, the stress can be obtained from the equation
$$ \boldsymbol{\sigma} = \boldsymbol{E}\boldsymbol{\varepsilon^{*kl}} $$
(8)
The stress resulting from each unit strain defined in (7) can then be defined in vector form using Voigt notation as
$$ \boldsymbol{\sigma}^{n} = [{\sigma_{1}^{n}}, {\sigma_{2}^{n}},{\sigma_{3}^{n}}, {\sigma_{4}^{n}}, {\sigma_{5}^{n}}, {\sigma_{6}^{n}}] \quad n = \{1,\dots,6\} $$
(9)
where σn is the stress resulting from the nth unit strain imposed, as defined in (7). The 6 stress vectors can then be assembled into a stress matrix, Φ, defined as
$$ \boldsymbol{\Phi} = \left[\begin{array}{llllll} {\sigma_{1}^{1}} & {\sigma_{2}^{1}} & {\sigma_{3}^{1}} & {\sigma_{4}^{1}} & {\sigma_{5}^{1}} & {\sigma_{6}^{1}} \\[1em] {\sigma_{1}^{2}} & {\sigma_{2}^{2}} & {\sigma_{3}^{2}} & {\sigma_{4}^{2}} & {\sigma_{5}^{2}} & {\sigma_{6}^{2}} \\[1em] {\sigma_{1}^{3}} & {\sigma_{2}^{3}} & {\sigma_{3}^{3}} & {\sigma_{4}^{3}} & {\sigma_{5}^{3}} & {\sigma_{6}^{3}} \\[1em] {\sigma_{1}^{4}} & {\sigma_{2}^{4}} & {\sigma_{3}^{4}} & {\sigma_{4}^{4}} & {\sigma_{5}^{4}} & {\sigma_{6}^{4}} \\[1em] {\sigma_{1}^{5}} & {\sigma_{2}^{5}} & {\sigma_{3}^{5}} & {\sigma_{4}^{5}} & {\sigma_{5}^{5}} & {\sigma_{6}^{5}} \\[1em] {\sigma_{1}^{6}} & {\sigma_{2}^{6}} & {\sigma_{3}^{6}} & {\sigma_{4}^{6}} & {\sigma_{5}^{6}} & {\sigma_{6}^{6}} \end{array}\right] $$
(10)
where each row corresponds to the stress vector σn resulting from the n th strain vector εn. As linear theory is assumed throughout this work, the stress matrix, Φ can be used to calculate the stress within the microstructure as a result of any arbitrary strain imposed on the microstructure. For an imposed strain, \(\boldsymbol {\tilde {\varepsilon }}\), the scaled stresses, \(\overline {\boldsymbol {\Phi }}\), are defined as
$$ {\boldsymbol{\overline{\Phi}}}_{ij} = (\boldsymbol{\Phi} \odot \boldsymbol{\tilde{\varepsilon}})_{ij} $$
(11)
where ⊙ indicates row-wise multiplication. It is important to note that the equation above represents scaling of the stresses using the real strains observed on the macroscale. We are able to achieve this as we are assuming linear theory and \(\overline {\varepsilon }\) are unit strains. Finally, to determine the stress vector resulting from the imposed strain, the scaled stresses are superimposed according to
$$ \boldsymbol{\tilde{\sigma}} = \sum\limits_{i=1}^{6}\overline{\boldsymbol{\Phi}}_{ij} $$
(12)
where \(\boldsymbol {\tilde {\sigma }}\) is the stress resulting from an arbitrary strain \(\boldsymbol {\tilde {\varepsilon }}\) imposed on the microstructure. Equations (11) and 12 can be combined and written compactly as \(\boldsymbol {\tilde {\sigma }} = \boldsymbol {\Phi }^{T}\boldsymbol {\tilde {\varepsilon }}\). Due to the large number of microstructures simulated in this work, as discussed in Section 2.2, it is infeasible to store the entire Φ field within each microstructure. To reduce the computational expense, Φ is only stored at the center of the domain for each microstructure. Maximum stresses were also considered as an alternative to storing the stress in the center of the microstructures. However, it was found that a very fine mesh was required to achieve convergence for the maximum stress due to the presence of artificial stress concentrations. These stress concentrations arise from the rapid change in material properties across cell boundaries, combined with the sharp edges that are formed due to the hexahedral mesh used. Although nodal averaging, as shown in Imediegwu et al. (2019), was employed, a very fine adaptive mesh would be required to completely remove the artificial stress concentrations. Due to the vast array of microstructures being simulated as part of the DOE, it is impractical to mesh and simulate the microstructures using such fine meshes. Furthermore, a key criterion that was required from the chosen metric was obtaining smoothly varying gradients. The stress in the center of the domain can be expected to vary smoothly with the change in microstructure permutations. However, due to the local nature of stress, the maximum stress might not appear in the same location for every microstructure permutation, leading to potentially large discontinuous changes in the gradient. While the stress at the center of each microstructure may not predict the exact maximum stress, the main goal of this work is to show that it is possible to replicate the real stress within the microstructures resulting from macroscale strains, and apply these stresses to stress-constrained optimization problems. As the method proposed here relies on capturing the stress at the center of the unit cell, it is only applicable to lattice designs where the material passes through the center of the unit cell. In particular, it requires that all the design variables are defined through the center to ensure it is possible to obtain gradients. However, it may be possible to modify and extend this methodology for use with other unit cell designs, by choosing alternative locations for the stress capture. The accuracy of the stress measure is further examined in Section 3.
Response surface methodology
The material properties of various permutations of lattice microstructures were determined using FEA simulations. The individual permutations of the microstructures were generated using a full factorial design of experiments (DOE) using 7 levels of radii for each structural member, leading to 77 (823,543) permutations. The radii levels were selected evenly within the range 0.05 ≤ ri ≤ 0.38, allowing for fully dense structures. As shown by Imediegwu et al. (2019), due to the 3 planes of symmetry present within the microstructure, only 40,817 microstructures are unique, known as parent microstructures. The remaining 782,726 child microstructures can be derived using rotations and reflections of their respective parents. By obtaining the material properties for the parent microstructures, the child microstructures can easily be derived, greatly reducing the computational expense of the microstructure simulations. The FEA simulations were carried out using the open-source partial differential equation (PDE) solver FEniCS 2019.1.0 (Alnæs et al. 2015). To avoid remeshing for each microstructure, a fixed hexahedral mesh was used. Following a convergence study of the stiffness tensor and stress terms, the domain was discretized using 1 million equal-sized elements. Cells containing material were assigned a Young’s modulus E = 2 GPa and Poisson’s ratio ν = 0.3 using the material assignment algorithm outlined by Imediegwu et al. (2019). Any cells deemed to be void were assigned E = 100 Pa to avoid numerical instabilities.
The material properties of isotropic and anisotropic cellular solids are functions of their relative densities, known as the scaling law (Ashby 1983; Koudelka et al. 2011). Due to the anisotropic material properties of the microstructures employed in this work, the material properties are modelled as functions of radii rather than density, using multivariate polynomial functions. The general form of multivariate polynomials can be defined as
$$ \begin{array}{@{}rcl@{}} \begin{array}{ll} \hat{y} = &\beta_{0} + \beta_{1}\left( {\prod}_{i=1}^{k} x_{i}^{n_{i}}\right) + {\dots} + \beta_{j-1}\left( {\prod}_{i=1}^{k} x_{i}^{n_{i}}\right) \\ &\sum\limits_{i=1}^{k} n_{i} \leq m \end{array} \end{array} $$
(13)
where \(\hat {y}\) is the dependent variable, m denotes the order of the polynomial, k = 7 is the number of independent variables, β are the coefficient terms, and j is the number of coefficient terms in the polynomial. Various degrees of polynomials were tested to fit the discrete DOE to ensure accurate approximations while limiting overfitting. A 6th-order polynomial was found to provide the best trade-off to create the response surfaces of EH, Φ and the volume v. By generating these response surface models to describe the lattice material properties, the discrete material property space is transformed into a continuous, differentiable property space, which enables the use of gradient-based optimization techniques. The number of coefficients can be calculated using \(j = \frac {(k+m)!}{k!m!} = 1716\). The polynomials were fitted by solving a series of least squares problems. The response surfaces generated can be defined as
$$ \begin{array}{@{}rcl@{}} \begin{array}{ll} \boldsymbol{E}_{ij}^{H} &\approx \boldsymbol{\hat{E}}_{ij}^{H}(r_{1},r_{2},r_{3},r_{4},r_{6},r_{7}) \\ \boldsymbol{\Phi}_{ij} &\approx \boldsymbol{\hat{\Phi}}_{ij}(r_{1},r_{2},r_{3},r_{4},r_{6},r_{7}) \\ v &\approx \hat{v}(r_{1},r_{2},r_{3},r_{4},r_{6},r_{7}) \end{array}{} \end{array} $$
(14)
where the hat variables are the continuous, 7-dimensional response surface models (RSMs) representing the respective microstructure properties. Due to the major symmetry in the stiffness tensor, 21 RSMs were created to assemble EH and 36 RSMs were generated to construct Φ. A response surface was also created to model the volume, v, of the microstructure permutations with respect to the member radii. The average R2 values obtained for response surfaces generated can be found in Table 1.
Table 1 Table showing average R2 values for response surface models generated Macroscale yield criterion
To predict the yield of the microscale lattices, the von Mises yield criterion is used. The von Mises criterion has been used widely in literature, both in classical TO (Duysinx and Bendsøe 1998; Hyun et al. 2013; Liu et al. 2019) and in multiscale optimization (Yu et al. 2019; Collet et al. 2018; Coelho 2019), where yield is predicted to occur when the von Mises stress exceeds the yield strength of the material. The von Mises stress criterion can be defined as
$$ \begin{array}{@{}rcl@{}} \begin{array}{ll} \sigma^{vm} = &\frac{1}{\sqrt{2}}\Bigg((\sigma_{1}- \sigma_{2})^{2} + (\sigma_{2}- \sigma_{3})^{2} + (\sigma_{3}- \sigma_{1})^{2} \\ &+ 6({\sigma_{4}^{2}} + {\sigma_{5}^{2}} + {\sigma_{6}^{2}})\Bigg)^{0.5} \leq \sigma^{y} \end{array} \end{array} $$
(15)
where σy is the yield strength of the material and σi,i = 1,..,6 are the components of the stress vector obtained using
$$ \begin{array}{@{}rcl@{}} \begin{array}{ll} \sigma = \hat{\boldsymbol{\Phi}}^{T}\tilde{\varepsilon} \end{array}{} \end{array} $$
(16)
where \(\tilde {\epsilon }\) is the macroscale strain obtained by solving the PDE defining the macroscale system.
Since stress is a local measure, the simplest formulation of the stress constraints on the macroscale involves introducing a stress constraint for every cell in a discretized domain. The local stress constraints can be defined as
$$ g_{e} = \left( \frac{s_{f}\sigma^{vm}}{\sigma^{y}}\right)_{e} \leq 1 \quad e = 1,\dots,N $$
(17)
where N denotes the number of cells in the domain and sf is the chosen safety factor. However, due to the large computational cost associated with computing the gradient of a large number of nonlinear stress constraints, this problem setup is highly inefficient. While it is possible to re-define the constraint as \({\max \limits } (g) \leq 1\), this function is non-differentiable and so is incompatible with gradient-based optimization algorithms. To overcome this problem, constraint aggregation methods have been proposed in literature. The two most commonly used aggregation functions are the P-norm (Duysinx and Sigmund 1998; Liu et al. 2019) and Kreisselmeier–Steinhsauser (KS) (Kreisselmeier and Steinhauser 1979; Martins and Poon 2005) functions. The P-norm function was utilized in this work and can be defined as
$$ \begin{array}{@{}rcl@{}} g_{pn} = \left( \sum\limits_{e = 1}^{N} {g_{e}^{p}} \right)^{\frac{1}{p}} \leq 1 \end{array} $$
(18)
where gpn is the aggregated “pseudo-maximum” value of stress and p is the aggregation parameter controlling the accuracy and non-linearity of the aggregation function. The P-norm function has the property
$$ \lim_{p \to \infty} g_{pn}(g,p) = \max(g_{e}) $$
(19)
As the aggregation parameter is increased, the function provides more accurate predictions of the maximum stress within the domain. However, this also leads to the function becoming more non-linear and can cause numerical issues during the optimization. For finite values of p, the P-norm function leads to overly conservative estimates with \(g_{pn}(g,p) > \max \limits (g)\). To account for this property, an adaptive correction method, as proposed by Le et al. (2010), is employed. The corrected P-norm value can be defined as
$$ \max(g) \approx \gamma^{I}g_{pn} = g_{pn}^{\gamma} \leq 1 $$
(20)
where I ≥ 1 is the iteration number, \(g_{pn}^{\gamma }\) is the scaled P-norm value, and γI is the current adaptive correction factor defined as
$$ \gamma^{I} = \alpha \frac{\sigma^{vm,I}_{max}}{g_{pn}^{I}} + (1-\alpha)\gamma^{I-1} \quad \alpha \in (0,1] $$
(21)
where α is a continuity term controlling the level of contribution from the previous iteration to avoid large changes in the scaling. Initially, α is set to 0.5. As the optimization converges, the ratio \( \frac {\sigma ^{vm}_{max}}{g_{pn}}\) and by extension γ should converge to a single value. When the change in γ is less than 1%, α is set to 1, removing the influence of previous iterations.