2.1 Finite element analysis of geometric nonlinearities
Nonlinear Lagrangian FE model is utilized for performing the analysis of large displacements:
$$ \eta_{ij} = \frac{1}{2}\left( {u_{i,j} + u_{j,i} + u_{k,i} { }u_{k,j} } \right) $$
(1)
where
\(u\) stands for point-wise displacement, and
\(i,j\) and
\(k\) indicate the coordinate axes.
$$ d\eta = B\left( U \right)dU{ } $$
(2)
where the displacement vector is represented by
U, and
B is the matrix that transforms the change in displacement
dU into the change in strain.
Equation
3 is used to write the Hooke's law for materials of intermediate densities:
$$ s_{ij} = { }\left( {p_{e} } \right)^{p} { }C_{ijkl}^{0} { }\eta_{kl} $$
(3)
In which the second stress defined by Piola–Kirchhoff is denoted by \(s_{ij}\), the power of penalization is given as \(p\), while the Péclet number is represented by \(p_{e}\) and strains proposed by Green–Lagrange are given as \(\eta_{kl}\), also, solid isotropic material produces a constitutive tensor denoted by \(C_{ijkl}^{0}\).
Consequently, the residual may be conceptualized as the deviation from the achieved equilibrium by following:
$$ R\left( U \right) = { }P{ } - { }\mathop \int \limits_{V}^{{}} B^{T} {\text{ s }}dV. $$
(4)
where the externally applied load is represented by
\(P\), and Piola–Kirchhoff stress in this equation is denoted by the vector
\(s\). Taking into account that when the residual equal 0, the state of equilibrium is found. Generally, Equation
\(\left( {4} \right)\) can be iteratively solved by adopting Newton–Raphson iterative technique.
$$ K_{T} = { } - { }\frac{\partial R}{{\partial U}}. $$
(5)
where
\(K_{T}\) indicates the tangential stiffness matrix.
2.2 Implementing thermoelastic analysis in topology optimization
According to earlier research (Huang and Xie
2009; Querin et al.
1998), the topology optimization adopting BESO approach may be described as:
$$ Min.{ }C = { }u^{T} Ku $$
(6)
$$ Subjected{ }\,to\,:{ }V^{*} { } - { }\mathop \sum \limits_{i = 1}^{N} V_{i} x_{i} = { }0 $$
(7)
$$ x_{i} \in { }\left\{ {0,1} \right\} $$
(8)
$$ \frac{{V^{*} }}{{V_{0} }} - V_{f} \le 0, $$
(10)
where
\(C\) represents the compliance of the considered structure and
\(K\) represents the tensor of global stiffness.
\(N\) is the total number of elements allowed in the design space,
\(V^{*}\) is the volume of the whole structure and
\(V_{i}\) stands for element’s volume. Taking into consideration that the binary design variable
\(x_{i}\) is (1) or (0), referring to material and void, respectively. And
\(V_{f}\) is the volume fraction. Besides,
\(f\) and
\(u\) are loads and displacements vector, respectively. It should be mentioned that both mechanical loading
\(f_{m}\) and thermomechanical loading
\(f_{heat}\) are applied and combined in the loading vector as
\(f = f_{m} + f_{heat}\). Consequently, the displacements measured and shown by the objective function already account for thermal expansion. The semi-coupled thermoelasticity hypothesis is utilized. The temperature field is obtained by first solving the heat regulating equations. Next, the forces on the body caused by the temperature field are added to the other applied forces to determine the whole response of the elastic body (Ghasemi et al.
2015b). According to the Bubnov-Galerkin weak form:
$$ \mathop \int \limits_{{\Omega }}^{{}} \delta \left( {\varepsilon \left( u \right) - \varepsilon_{\theta } \left( u \right)} \right)^{T} C\left( {\varepsilon \left( u \right) - \varepsilon_{\theta } \left( u \right)} \right)d{\Omega } - \mathop \int \limits_{{{\Gamma }_{t} }}^{{}} \delta u^{T} t_{{\Gamma }} d{\Gamma } - \mathop \int \limits_{{\Omega }}^{{}} \delta u^{T} bd{\Omega } = 0 $$
(11)
where
\({\Omega }\) denotes the domain,
\({\Gamma }\) represents the boundary condition,
\(\theta\) stands for the temperature field,
\(b\) is the body force,
\(t_{{\Gamma }}\) is the traction on the borders,
\(\varepsilon\) represents the arising strain,
\(\delta\) the variational operator,
\(C\) is the structural compliance, and
\(u\) is displacements vector.
The
\(w\) -function is a test chosen from a set of functions for B-splines. They are also used to approximatively model the temperature and displacement fields.
$$ u\left( {x,y} \right) = \mathop \sum \limits_{i = 1}^{n} \mathop \sum \limits_{j = 1}^{m} N_{i,j}^{p,q} \left( {\xi ,\eta } \right)u_{i,j} = Nu $$
(12)
$$ \theta \left( {x,y} \right) = \mathop \sum \limits_{i = 1}^{n} \mathop \sum \limits_{j = 1}^{m} N_{i,j}^{p,q} \left( {\xi ,\eta } \right)\theta_{i,j} = N\theta $$
(13)
where
\(u\) represents the vector of nodal displacements and
\(\theta\) represents temperatures, and the shape functions are represented by
\(N\),
\(\xi ,\eta\) are the knots, and
\(p,q\) are the degrees of B-spline curve.
Both the strain–displacement and heat flux-temperature gradient expressions may be constructed as:
$$ \varepsilon = B_{e} u\;and\;g = B_{{heat}} \theta $$
(14)
and The elastic and thermal problems are represented by the matrices \(B_{e}\) and \(B_{heat}\), which store the derivatives of the shape functions \(N\).
The matrix form of the discretized system of equations is obtained by substituting the B-spline approximation function into Bubnov-Galerkin weak form is expressed as:
$$ K_{c} \theta = f_{heat} $$
(15)
The heat force vector,
\(f_{heat}\), and the local conduction matrix,
\(Kc\), are calculated in the following ways:
$$ K_{c} = \mathop \int \limits_{{\Omega }}^{{}} B_{heat}^{T} HB_{heat} d{\Omega } + \mathop \int \limits_{{{\Gamma }_{3} }}^{{}} hN^{T} Nd{\Gamma }_{3} $$
(16)
The heat conduction matrix,
\(H\), is denoted by the superscript
\(T\), which denotes transpose. Equation (
16)'s first and second integrals, represent heat conduction (in volume Ω) and convection (on surface Γ3), respectively.
Finally, the matrix form of the discretized linear system of equations for the thermoelasticity issue is obtained by plugging in the test function and its derivatives into Eq. (
11):
where
\(K\) is the global stiffness matrix of the elastic problem.
The BESO approach is based on concurrently adding and eliminating parts according to its sensitivities, resulting in the optimal design of the structure. To consider heat conduction (Xia et al.
2018) in the optimization problem, this is how the sensitivity number is calculated:
The
\(e - th\) element's design variable
\(\left( {X_{e} } \right)\) might be absent
\( (X_{e} = \xi_{min} )\) or present
\(\left( {X_{e} = 1} \right)\) depending on the design variable. The sensitivity number, denoted by the symbol
\(\alpha_{e}^{k}\), of the
\(e - th\) element in the
\(k - th\) optimization loop is determined by:
$$ \alpha_{e}^{k} = \frac{\partial C}{{\partial X_{e} }} = f^{T} \frac{\partial u}{{\partial X_{e} }} + \frac{{\partial f^{T} }}{{\partial X_{e} }}u $$
(18)
Considering
\(f = Ku\),
\(K = K^{T}\), then
\(f^{T} = Ku^{T}\), therefore, Equ.
18 can be written as:
$$ \alpha_{e}^{k} = \frac{\partial C}{{\partial X_{e} }} = u^{T} K\frac{\partial u}{{\partial X_{e} }} + \frac{{\partial f^{T} }}{{\partial X_{e} }}u $$
(19)
Based on:
$$ K\frac{\partial u}{{\partial X_{e} }} = \frac{\partial f}{{\partial X_{e} }} - \frac{\partial K}{{\partial X_{e} }}u $$
(20)
Substituting Equation
\(\left( {20} \right)\) into Equation
\(\left( {19} \right)\):
$$ \alpha_{e}^{k} = u^{T} \frac{\partial f}{{\partial X_{e} }} + \frac{{\partial f^{T} }}{{\partial X_{e} }}u - u^{T} \frac{\partial K}{{\partial X_{e} }}u $$
(21)
By
\(Ku = f = f_{m} + f_{heat}\), we have:
$$ u^{T} \frac{\partial f}{{\partial X_{e} }} = \frac{{\partial f^{T} }}{{\partial X_{e} }}u $$
(22)
From Eqs
21 and
22, we obtain:
$$ \alpha_{e}^{k} = \frac{\partial C}{{\partial X_{e} }} = 2u^{T} \frac{\partial f}{{\partial X_{e} }} - u^{T} \frac{\partial K}{{\partial X_{e} }}u $$
(23)
For purpose of avoiding mesh dependency and checkerboard patterns, a spatial filtering technique is applied (Huang and Xie
2007,
2010) and defined as:
$$ \alpha_{e} = \frac{{\mathop \sum \nolimits_{j = 1}^{{N_{e} }} w_{ej} \alpha_{j} }}{{\mathop \sum \nolimits_{j = 1}^{{N_{e} }} w_{ej} }} $$
(24)
where
\(w_{ej}\) is the weight which is defined as:
$$ w_{ej} = {\text{max}}\left\{ {0,r_{min} - d\left( {e,j} \right)} \right\} $$
(25)
where
\(d\left( {e,j} \right)\) represents the Euclidean distance between centers of the e - th and j th elements and the filter radius is denoted by
\(r_{min}\).
In order to figure out how the final results will be obtained in BESO method, the target volume for the next iteration (Vk + 1) must be provided before any changes are made to the existing design (such as the removal or addition of elements). The target volume in each iteration may drop or rise until the constraint volume is attained, depending on whether the volume constraint (
\(V^{*}\)) is larger or lower than the volume of the original estimate design. When expressing the change in volume, we may use the expression:
$$ V_{k + 1} = V_{k} \left( {1 \pm ER} \right) $$
(26)
where
\(k\) is the current iteration number and
\(ER\) represents the evolutionary ratio.
Once the volume limit has been met, the following formula guarantees that the volume of the structure will not change in subsequent iterations:
$$ V_{k + 1} = { }V^{*} $$
(27)
Then, the elements are arranged from most sensitive to least sensitive.
In the case of solid components, deletion will occur if:
$$ \alpha_{i} \le \alpha_{del}^{th} $$
(28)
In the case of void elements, it is added if:
$$ \alpha_{i} \le \alpha_{del}^{th} $$
(29)
where
\(\alpha_{del}^{th}\) and
\(\alpha_{add}^{th}\) are the threshold sensitivity numbers of erasing and adding elements, respectively.
In the (BESO) approach, optimization is carried out in an iterative process by repeatedly adding and removing components until the convergence condition is satisfied. According to this research, the following criteria for convergence was used:
$$ error = \frac{{\left| {\mathop \sum \nolimits_{i = 1}^{N} \left( {F_{k - i + 1} - { }F_{k - N - i + 1} { }} \right)} \right|}}{{\mathop \sum \nolimits_{i = 1}^{N} F_{k - i + 1} }} \le { }\tau $$
(30)
The objective function is denoted by \(F\), the tolerance for convergence is denoted by \(\tau\), the current iteration is denoted by \(k\), and the integer number \(N\) that yields constant compliance for at least ten iterations.
2.3 Introducing reliability based design into deterministic optimization problem
In this study, for purpose of calculating reliability index
\(\left( \beta \right)\) which is based on probability of failure (
\(P_{f} )\) values, Monte-Carlo sampling method is considered. The idea of Monte-Carlo technique generally depends on the concept of producing realizations
\(x\) according to
\(X\) which is random vector of PDF—
\(f_{X} \left( x \right)\). Therefore, to calculate
\(P_{f}\), we compare the number of points generated to the total number of points within the failure domain (Stanton et al.
2000). By adding a
\(D_{f} ,\) indicator function, this idea may be expressed as:
$$ \chi_{{D_{f} }} \left( x \right) = \left\{ {{ }\begin{array}{*{20}c} {1{ }\,if{ }x \in { }D_{f} } \\ {0{ }\,if{ }x \notin { }D_{f} } \\ \end{array} } \right\} $$
(31)
Then
\(P_{f}\) is calculated by:
$$ P_{f} = \mathop \int \limits_{ - \infty }^{ + \infty } { }.{ }.{ }.{ }\mathop \int \limits_{ - \infty }^{ + \infty } \chi_{{D_{f} }} \left( x \right)f_{X} \left( x \right)dx $$
(32)
where
\(\chi_{{D_{f} }} \left( X \right)\) is two-points distribution random variable.
$$ {\mathbb{P}}\left[ {{ }\chi_{{D_{f} }} \left( X \right) = 1} \right] = { }P_{f} $$
(33)
$$ {\mathbb{P}}\left[ {{ }\chi_{{D_{f} }} \left( X \right) = 0} \right] = { }1 - P_{f} $$
(34)
where
\(P_{f} = {\rm P}\left[ { X \in D_{f } } \right]\).
To get the mean and standard deviation of
\(\chi_{Df} \left( X \right)\), compute as follows:
$$ {\mathbb{E}}\left[ {\chi_{{D_{f} }} \left( X \right)} \right] = 1 \cdot P_{f} + 0 \cdot \left( {1 - P_{f} } \right) = P_{f} $$
(35)
$$ {\mathbb{V}}ar\left[ {\chi_{{D_{f} }} \left( X \right)} \right] = {\mathbb{E}}\left[ {\chi_{{D_{f} }}^{2} \left( X \right)} \right] - ({\mathbb{E}}\left[ {\chi_{{D_{f} }} \left( X \right)} \right])^{2} = P_{f} - P_{f}^{2} = P_{f} \left( {1 - P_{f} } \right) $$
(36)
When calculating
\(P_{f}\), an estimate of the mean value is adopted as follows:
$$ \widehat{E}\left[ {\chi_{{D_{f} }} \left( X \right)} \right] = \frac{1}{Z}\mathop \sum \limits_{z = 1}^{Z} \chi_{Df} (X^{\left( z \right)} ) = \hat{P}_{f} $$
(37)
where
\(X^{\left( z \right)}\) are set of independent random vectors having
\(f_{X} \left( x \right)\) taking into account that (
\(z = 1, \ldots ,Z\)).
It is important to note that in probabilistic models,
\(V_{f}\) is treated as a random variable. As a result, we can calculate its mean value as well as its standard deviation. In addition, its mean is
\({\mathbb{E}}\) and its standard deviation is
\({\mathbb{V}}ar\). It should be noted that Gaussian distribution (Normal distribution) model is utilized in this research due to its simplicity, so the entire distribution can be indicated by only specifying two parameters: mean and variance. To get the estimator's mean and standard deviation, we do the following:
$$ {\mathbb{E}}\left[ {\hat{P}_{f} } \right] = \frac{1}{Z}\mathop \sum \limits_{z = 1}^{Z} {\mathbb{E}}\left[ {\chi_{{D_{f} }} \left( {X^{\left( z \right)} } \right)} \right] = \frac{1}{Z}ZP_{f} = P_{f} $$
(38)
$$ {\mathbb{V}}ar\left[ {\hat{P}_{f} } \right] = \frac{1}{{Z^{2} }}\mathop \sum \limits_{z = 1}^{Z} {\mathbb{V}}ar\left[ {\chi_{{D_{f} }} \left( {X^{\left( z \right)} } \right)} \right] = \frac{1}{Z}P_{f} \left( {1 - P_{f} } \right). $$
(39)
The reliability constraint then can be presented by expressing
\(\beta\) as:
$$ \beta_{target} - \beta_{calc} \le 0 $$
(40)
The method will end when the calculated reliability index for each iteration, denoted by \(\beta_{calc}\), achieves the desired value, denoted by \(\beta_{target}\).
For determining
\(\beta_{target}\) and
\(\beta_{calc}\), the following terms are used:
$$ \beta_{target} = - \Phi^{ - 1} \left( {P_{f,target} } \right) $$
(41)
$$ \beta_{calc} = - \Phi^{ - 1} \left( {P_{f,calc} } \right) $$
(42)
for where (1) stands as a sign for the inverse of the normal distribution \(\Phi\).
Accordingly, the problem of reliability based optimization is constructed in the presence of reliability constraint as:
$$ Min.{ }C = { }u^{T} Ku $$
(43)
$$ Subjected\,{ }to:{ }V^{*} { } - { }\mathop \sum \limits_{i = 1}^{N} V_{i} x_{i} = { }0 $$
(44)
$$ x_{i} \in { }\left\{ {0,1} \right\} $$
(45)
$$ \beta_{target} - \beta_{calc} \le 0 $$
(47)
Here, Eqs. (
42,
45 and
46) serve the same purpose as Eqs.
6,
7,
8 and
9. While Equation 47 displays the new circumstances associated with the volume fraction reliability limit.