<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.1 20151215//EN" "http://jats.nlm.nih.gov/publishing/1.1/JATS-journalpublishing1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" article-type="research-article" dtd-version="1.1">
<front>
<journal-meta>
<journal-id journal-id-type="pmc">CMES</journal-id>
<journal-id journal-id-type="nlm-ta">CMES</journal-id>
<journal-id journal-id-type="publisher-id">CMES</journal-id>
<journal-title-group>
<journal-title>Computer Modeling in Engineering &#x0026; Sciences</journal-title>
</journal-title-group>
<issn pub-type="epub">1526-1506</issn>
<issn pub-type="ppub">1526-1492</issn>
<publisher>
<publisher-name>Tech Science Press</publisher-name>
<publisher-loc>USA</publisher-loc>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="publisher-id">25153</article-id>
<article-id pub-id-type="doi">10.32604/cmes.2023.025153</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Article</subject>
</subj-group>
</article-categories>
<title-group>
<article-title>2D Minimum Compliance Topology Optimization Based on a Region Partitioning Strategy</article-title>
<alt-title alt-title-type="left-running-head">2D Minimum Compliance Topology Optimization Based on a Region Partitioning Strategy</alt-title>
<alt-title alt-title-type="right-running-head">2D Minimum Compliance Topology Optimization Based on a Region Partitioning Strategy</alt-title>
</title-group>
<contrib-group content-type="authors">
<contrib id="author-1" contrib-type="author">
<name name-style="western"><surname>Wang</surname><given-names>Chong</given-names></name><xref ref-type="aff" rid="aff-1">1</xref></contrib>
<contrib id="author-2" contrib-type="author">
<name name-style="western"><surname>Zuo</surname><given-names>Tongxing</given-names></name><xref ref-type="aff" rid="aff-1">1</xref>
<xref ref-type="aff" rid="aff-2">2</xref></contrib>
<contrib id="author-3" contrib-type="author">
<name name-style="western"><surname>Han</surname><given-names>Haitao</given-names></name><xref ref-type="aff" rid="aff-1">1</xref>
<xref ref-type="aff" rid="aff-2">2</xref></contrib>
<contrib id="author-4" contrib-type="author">
<name name-style="western"><surname>Wang</surname><given-names>Qianglong</given-names></name><xref ref-type="aff" rid="aff-1">1</xref>
<xref ref-type="aff" rid="aff-2">2</xref></contrib>
<contrib id="author-5" contrib-type="author">
<name name-style="western"><surname>Zhang</surname><given-names>Han</given-names></name><xref ref-type="aff" rid="aff-1">1</xref></contrib>
<contrib id="author-6" contrib-type="author" corresp="yes">
<name name-style="western"><surname>Liu</surname><given-names>Zhenyu</given-names></name><xref ref-type="aff" rid="aff-1">1</xref><email>liuzy@ciomp.ac.cn</email></contrib>
<aff id="aff-1"><label>1</label><institution>Changchun Institute of Optics, Fine Mechanics and Physics (CIOMP), Chinese Academy of Sciences</institution>, <addr-line>Changchun, 130000</addr-line>, <country>China</country></aff>
<aff id="aff-2"><label>2</label><institution>School of Optoelectronics, University of Chinese Academy of Science</institution>, <addr-line>Beijing, 100049</addr-line>, <country>China</country></aff>
</contrib-group>
<author-notes>
<corresp id="cor1"><label>&#x002A;</label>Corresponding Author: Zhenyu Liu. Email: <email>liuzy@ciomp.ac.cn</email></corresp>
</author-notes>
<pub-date publication-format="print" date-type="pub" iso-8601-date="2023-01-04"><day>04</day>
<month>01</month>
<year>2023</year></pub-date>
<volume>136</volume>
<issue>1</issue>
<fpage>655</fpage>
<lpage>683</lpage>
<history>
<date date-type="received"><day>24</day><month>6</month><year>2022</year></date>
<date date-type="accepted"><day>21</day><month>9</month><year>2022</year></date>
</history>
<permissions>
<copyright-statement>&#x00A9; 2023 Wang et al.</copyright-statement>
<copyright-year>2023</copyright-year>
<copyright-holder>Wang et al.</copyright-holder>
<license xlink:href="https://creativecommons.org/licenses/by/4.0/">
<license-p>This work is licensed under a <ext-link ext-link-type="uri" xlink:type="simple" xlink:href="https://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</ext-link>, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.</license-p>
</license>
</permissions>
<self-uri content-type="pdf" xlink:href="TSP_CMES_25153.pdf"></self-uri>
<abstract>
<p>This paper presents an extended sequential element rejection and admission (SERA) topology optimization method with a region partitioning strategy. Based on the partitioning of a design domain into solid regions and weak regions, the proposed optimization method sequentially implements finite element analysis (FEA) in these regions. After standard FEA in the solid regions, the boundary displacement of the weak regions is constrained using the numerical solution of the solid regions as Dirichlet boundary conditions. This treatment can alleviate the negative effect of the material interpolation model of the topology optimization method in the weak regions, such as the condition number of the structural global stiffness matrix. For optimization, in which the forward problem requires nonlinear structural analysis, a linear solver can be applied in weak regions to avoid numerical singularities caused by the over-deformed mesh. To enhance the robustness of the proposed method, the nonmanifold point and island are identified and handled separately. The performance of the proposed method is verified by three 2D minimum compliance examples.</p>
</abstract>
<kwd-group kwd-group-type="author">
<kwd>Topology optimization</kwd>
<kwd>region partition</kwd>
<kwd>nonmanifold point</kwd>
<kwd>matrix conditional number</kwd>
<kwd>geometric nonlinearity</kwd>
</kwd-group>
</article-meta>
</front>
<body>
<sec id="s1"><label>1</label><title>Introduction</title>
<p>Topology optimization aims to obtain the optimal material distribution with prescribed constraints in a fixed domain. Since the pioneering work of Bendsoe&#x00A0;et&#x00A0;al.&#x00A0;[<xref ref-type="bibr" rid="ref-1">1</xref>], many methods have been proposed to achieve topology optimization, such as density-based methods [<xref ref-type="bibr" rid="ref-2">2</xref>], boundary evolution-based methods [<xref ref-type="bibr" rid="ref-3">3</xref>,<xref ref-type="bibr" rid="ref-4">4</xref>], differential equation-driven methods [<xref ref-type="bibr" rid="ref-5">5</xref>&#x2013;<xref ref-type="bibr" rid="ref-7">7</xref>] and geometric component methods [<xref ref-type="bibr" rid="ref-8">8</xref>&#x2013;<xref ref-type="bibr" rid="ref-10">10</xref>]. Density-based methods can be further divided into continuous variable methods [<xref ref-type="bibr" rid="ref-11">11</xref>] and discrete variable methods [<xref ref-type="bibr" rid="ref-12">12</xref>,<xref ref-type="bibr" rid="ref-13">13</xref>]. We refer the readers to references [<xref ref-type="bibr" rid="ref-14">14</xref>,<xref ref-type="bibr" rid="ref-15">15</xref>] for the fast progress and successful application of topology optimization.</p>
<p>In an early discrete variable method, the evolutionary structural optimization (ESO) method as proposed by Xie&#x00A0;et&#x00A0;al.&#x00A0;[<xref ref-type="bibr" rid="ref-12">12</xref>], ineffective or inefficient materials were eliminated directly to achieve optimization. This method has high computational efficiency but cannot add material. To remedy this deficiency, various versions of bidirectional evolutionary structural optimization (BESO) methods were proposed to allow material removal and addition. The earliest version of BESO [<xref ref-type="bibr" rid="ref-16">16</xref>,<xref ref-type="bibr" rid="ref-17">17</xref>] allowed new elements to grow around elements with high stresses. Yang&#x00A0;et&#x00A0;al.&#x00A0;[<xref ref-type="bibr" rid="ref-18">18</xref>,<xref ref-type="bibr" rid="ref-19">19</xref>] proposed evaluating the strain energy of the elements to be added by linear extrapolation of the displacement field. Huang&#x00A0;et&#x00A0;al.&#x00A0;[<xref ref-type="bibr" rid="ref-20">20</xref>,<xref ref-type="bibr" rid="ref-21">21</xref>] proposed using mesh-independent filters to evaluate the sensitivities of standby additive elements. In the above methods, all the elements in the holes are directly removed, so these methods are called hard-kill type methods.</p>
<p>In hard-kill type methods, the ability to change topology is usually related to the material introduction strategies [<xref ref-type="bibr" rid="ref-22">22</xref>]. As an alternative to this, soft-kill type methods were proposed in which the holes are mimicked by weak material. In this type of method, the sensitivities of the elements in holes can be calculated directly without extrapolating from the information of the solid elements. The existing soft-kill type methods include the sequential element admissions and rejections method (SERA) proposed by Rozvany&#x00A0;et&#x00A0;al.&#x00A0;[<xref ref-type="bibr" rid="ref-23">23</xref>&#x2013;<xref ref-type="bibr" rid="ref-25">25</xref>], the penalty-based BESO method proposed by Huang&#x00A0;et&#x00A0;al.&#x00A0;[<xref ref-type="bibr" rid="ref-26">26</xref>] and the topology optimization method with sequential integer programming proposed by Liang&#x00A0;et&#x00A0;al.&#x00A0;[<xref ref-type="bibr" rid="ref-13">13</xref>,<xref ref-type="bibr" rid="ref-27">27</xref>], etc. The weak material introduced by soft-kill type methods is similar to the density lower limit of the SIMP material model. They both retain elements in holes for calculating sensitivities, thus providing a standard for adding material.</p>
<p>Introducing a weak material has been proven to be very successful in solving static small deformation problems and has become a standard model in topology optimization. To ensure smooth access to the optimal solution, the physical property of the weak material must be controlled within a reasonable range. If the value is too large, the stiffness provided by it cannot be ignored, which may lead to an overly rigid performance evaluation. If too small, the condition number of the structural stiffness matrix becomes worse, and large numerical errors may occur in the results. Therefore, the condition number is usually selected as 10<sup>&#x2212;3</sup>. In addition, in some specific optimization problems, a weak material may cause numerical instability or even incorrect results. For example, when a structure has a large deformation, excessive mesh deformation may occur in weak regions, which leads to nonconvergence of the Newton&#x2013;Raphson iteration [<xref ref-type="bibr" rid="ref-28">28</xref>,<xref ref-type="bibr" rid="ref-29">29</xref>]. In the topology optimization of a buckling structure, pseudo bucking modes may appear in the weak regions [<xref ref-type="bibr" rid="ref-30">30</xref>], which adversely affects the effectiveness of the results.</p>
<p>The hard-kill type methods and some other methods that remove the elements in the holes can avoid the problems caused by weak materials [<xref ref-type="bibr" rid="ref-21">21</xref>,<xref ref-type="bibr" rid="ref-31">31</xref>&#x2013;<xref ref-type="bibr" rid="ref-33">33</xref>]. However, as mentioned above, these methods generally decide the introduction of material through the extrapolation of information (displacement, strain energy or sensitivity, etc.) from solid elements. Eliminating the negative effects caused by weak material in soft-kill type methods is the focus of this paper.</p>
<p>From the perspective of model consistency, the physical model and finite element (FE) model are consistent in the hard-kill type methods, but the FE model of the soft-kill type methods is an approximate model from the physical model. If the inconsistencies between the two models are eliminated, it is possible to solve the above problems in the framework of soft-kill type methods.</p>
<p>In SERA, the concepts of real material and virtual material are introduced to distinguish the elements (it should be noted that the real material and virtual material here correspond to the solid and weak material mentioned above. To avoid confusion, only the concepts of solid and weak materials are retained in the next content. The sensitivities of solid elements and weak material elements (weak elements) are ranked, and two thresholds are selected to determine the elements to be removed or to be added. This method indirectly divides the design domain into solid regions and weak regions but does not further identify them. The design domain is still regarded as a whole for FEA in this method. Tong&#x00A0;et&#x00A0;al.&#x00A0;[<xref ref-type="bibr" rid="ref-34">34</xref>] proposed a moving ISO-surface threshold method (MIST), in which the topological boundaries are determined by a response function threshold based on physical properties, so the design domain can also be divided into two parts. Wang&#x00A0;et&#x00A0;al.&#x00A0;[<xref ref-type="bibr" rid="ref-35">35</xref>] proposed an energy interpolation framework to address geometric nonlinear optimization problems. In this framework, the elastic energy densities of solid regions and weak regions are obtained by interpolating the elastic energy density of nonlinear theory and linear theory, respectively, thus avoiding the numerical instability of weak regions under finite deformation. Bruns [<xref ref-type="bibr" rid="ref-36">36</xref>] proposed an algorithm to allow void material to be replaced by zero density elements. The algorithm can reject weak materials, but the SD/SVD approach they used is computationally expensive. Nguyen&#x00A0;et&#x00A0;al.&#x00A0;[<xref ref-type="bibr" rid="ref-37">37</xref>] preconditioned the stiffness matrix to avoid ill-conditioned problems caused by the 0 density lower bound. Li&#x00A0;et&#x00A0;al.&#x00A0;[<xref ref-type="bibr" rid="ref-38">38</xref>] proposed a meshless moving morphable component (ML-MMC) method, in which the structural analysis was carried out only on the solid regions, avoiding the intervention of weak materials.</p>
<p>Based on the characteristics of the above methods, a topology optimization method with a region partitioning strategy is proposed in this paper. The method is implemented based on SERA. The FEA is carried out regionally. To avoid the influence of weak material on the result of solid regions, FEA of solid regions is carried out first, where the weak elements are eliminated temporarily in this step. When the FEA of the solid regions is completed, FEA of the weak regions is performed with the displacement solution of solid regions as the Dirichlet boundary conditions (<xref ref-type="fig" rid="fig-1">Fig. 1</xref>). When optimizing structures under finite deformation, linear theory and nonlinear theory can be applied to the two types of regions separately to avoid numerical instability.</p>
<fig id="fig-1"><label>Figure 1</label><caption><title>Schematic diagram of the original SERA model and the proposed model: (a) the original SERA model: the design domain is solved as a whole; (b) the proposed model: the design domain is solved for both the solid regions and weak regions simultaneously</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-1.png"/></fig>
<p>In the implementation, two special structural features, nonmanifold points and islands, may arise in solid regions after region segmentation. These two structural features might cause instability in the numerical solution of the displacement via FEA. We introduce concepts and algorithms in graphics to recognize and solve them: the nonmanifold points are identified by an undirected graph and treated by the minimum volume filling (MVF) algorithm and minimum sensitivity filling (MSF) algorithm [<xref ref-type="bibr" rid="ref-39">39</xref>]; the islands are identified by the fire-burning method (FBM) [<xref ref-type="bibr" rid="ref-40">40</xref>,<xref ref-type="bibr" rid="ref-41">41</xref>] and treated together with weak regions in the FEA. The solution to the above cases can improve the robustness of the proposed algorithm.</p>
<p>The rest of the paper is arranged as follows: the topology optimization algorithm with a region partition strategy is detailed in <xref ref-type="sec" rid="s2">Section 2</xref>. In <xref ref-type="sec" rid="s3">Section 3</xref>, the nonmanifold point and island are introduced and solved. In <xref ref-type="sec" rid="s4">Section 4</xref>, several geometric linear and geometric nonlinear numerical examples are executed to verify the feasibility of the proposed algorithm. <xref ref-type="sec" rid="s5">Section 5</xref> provides the conclusions.</p>
</sec>
<sec id="s2"><label>2</label><title>Methodology</title>
<p>In SERA, solid regions and weak regions can be distinguished by densities of elements. To avoid the negative effects of weak regions on solid regions, the FEAs for the two types of regions are carried out in sequence. The optimization formula is as follows:
<disp-formula id="eqn-1"><label>(1)</label><mml:math id="mml-eqn-1" display="block"><mml:mtable columnalign="left" rowspacing="4pt" columnspacing="1em"><mml:mtr><mml:mtd><mml:munder><mml:mrow><mml:mtext>Min</mml:mtext></mml:mrow><mml:mrow><mml:msub><mml:mi>&#x03C1;</mml:mi><mml:mrow><mml:mi>e</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:msub><mml:mi>&#x03C1;</mml:mi><mml:mrow><mml:mo movablelimits="true" form="prefix">min</mml:mo></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo fence="false" stretchy="false">}</mml:mo></mml:mrow></mml:munder><mml:mrow><mml:mtext>c</mml:mtext></mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">&#x03C1;</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow><mml:mo>.</mml:mo><mml:mrow><mml:mtext>t</mml:mtext></mml:mrow><mml:mo>.</mml:mo><mml:mspace width="thinmathspace" /><mml:mspace width="thinmathspace" /><mml:msup><mml:mrow><mml:mi mathvariant="bold">q</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:mo stretchy="false">(</mml:mo><mml:msup><mml:mi mathvariant="bold-italic">&#x03C1;</mml:mi><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:mo stretchy="false">)</mml:mo><mml:mrow><mml:mo mathvariant="bold">=</mml:mo></mml:mrow><mml:mrow><mml:mn mathvariant="bold">0</mml:mn></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mspace width="thinmathspace" /><mml:mspace width="thinmathspace" /><mml:mspace width="thinmathspace" /><mml:mspace width="thinmathspace" /><mml:mspace width="thinmathspace" /><mml:mspace width="thinmathspace" /><mml:mspace width="1em" /><mml:msup><mml:mrow><mml:mi mathvariant="bold">q</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>v</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:mo stretchy="false">(</mml:mo><mml:msup><mml:mi mathvariant="bold-italic">&#x03C1;</mml:mi><mml:mrow><mml:mrow><mml:mtext>v</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>v</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:mo stretchy="false">)</mml:mo><mml:mrow><mml:mo mathvariant="bold">=</mml:mo></mml:mrow><mml:mrow><mml:mn mathvariant="bold">0</mml:mn></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mspace width="thinmathspace" /><mml:mspace width="thinmathspace" /><mml:mspace width="thinmathspace" /><mml:mspace width="thinmathspace" /><mml:mspace width="thinmathspace" /><mml:mspace width="thinmathspace" /><mml:mspace width="1em" /><mml:mi>V</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi mathvariant="bold-italic">&#x03C1;</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x2264;</mml:mo><mml:msup><mml:mi>V</mml:mi><mml:mrow><mml:mrow><mml:mo>&#x2217;</mml:mo></mml:mrow></mml:mrow></mml:msup></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>where the superscript <inline-formula id="ieqn-1"><mml:math id="mml-ieqn-1"><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:math></inline-formula> represents solid regions and the superscript <inline-formula id="ieqn-2"><mml:math id="mml-ieqn-2"><mml:mrow><mml:mtext>v</mml:mtext></mml:mrow></mml:math></inline-formula> represents the weak regions; <inline-formula id="ieqn-3"><mml:math id="mml-ieqn-3"><mml:mi mathvariant="bold-italic">&#x03C1;</mml:mi></mml:math></inline-formula> is the design variable vector and <inline-formula id="ieqn-4"><mml:math id="mml-ieqn-4"><mml:msub><mml:mi>&#x03C1;</mml:mi><mml:mrow><mml:mi>e</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> is its elementwise component; <inline-formula id="ieqn-5"><mml:math id="mml-ieqn-5"><mml:mrow><mml:mtext>c</mml:mtext></mml:mrow></mml:math></inline-formula> is the objective function to be optimized; <inline-formula id="ieqn-6"><mml:math id="mml-ieqn-6"><mml:msup><mml:mrow><mml:mi mathvariant="bold">q</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:mo stretchy="false">(</mml:mo><mml:msup><mml:mi mathvariant="bold-italic">&#x03C1;</mml:mi><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:mo stretchy="false">)</mml:mo><mml:mrow><mml:mo mathvariant="bold">=</mml:mo></mml:mrow><mml:mspace width="thinmathspace" /><mml:mrow><mml:mn mathvariant="bold">0</mml:mn></mml:mrow></mml:math></inline-formula> is the equilibrium equation of solid regions, where <inline-formula id="ieqn-7"><mml:math id="mml-ieqn-7"><mml:msup><mml:mi mathvariant="bold-italic">&#x03C1;</mml:mi><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:math></inline-formula> and <inline-formula id="ieqn-8"><mml:math id="mml-ieqn-8"><mml:msup><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:math></inline-formula> are the design variable vector and state variable vector of solid regions, respectively; <inline-formula id="ieqn-9"><mml:math id="mml-ieqn-9"><mml:msup><mml:mrow><mml:mi mathvariant="bold">q</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>v</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:mo stretchy="false">(</mml:mo><mml:msup><mml:mi mathvariant="bold-italic">&#x03C1;</mml:mi><mml:mrow><mml:mrow><mml:mtext>v</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>v</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:mo stretchy="false">)</mml:mo><mml:mrow><mml:mo mathvariant="bold">=</mml:mo></mml:mrow><mml:mspace width="thinmathspace" /><mml:mrow><mml:mn mathvariant="bold">0</mml:mn></mml:mrow></mml:math></inline-formula> is the equilibrium equation of weak regions, where <inline-formula id="ieqn-10"><mml:math id="mml-ieqn-10"><mml:msup><mml:mi mathvariant="bold-italic">&#x03C1;</mml:mi><mml:mrow><mml:mrow><mml:mtext>v</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:math></inline-formula> and <inline-formula id="ieqn-11"><mml:math id="mml-ieqn-11"><mml:msup><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>v</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:math></inline-formula> are the design variable vector and state variable vector of weak regions, respectively; <italic>V</italic> is the volume of material used and <inline-formula id="ieqn-12"><mml:math id="mml-ieqn-12"><mml:msup><mml:mi>V</mml:mi><mml:mrow><mml:mo>&#x2217;</mml:mo></mml:mrow></mml:msup></mml:math></inline-formula> is the upper limit of allowable volume.</p>
<p>The only difference between the <xref ref-type="disp-formula" rid="eqn-1">Eq. (1)</xref> and classic optimization formula is that the former has two equilibrium equations and must be solved sequentially.</p>
<sec id="s2_1"><label>2.1</label><title>Finite Element Analysis</title>
<p>In the proposed method, the FEA of solid regions is prioritized. Weak elements are temporarily removed in this step. When FEA of the solid regions is completed, FEA of the weak regions is performed with the displacement solution of solid regions as the Dirichlet boundary conditions. The FEA procedure is shown in <xref ref-type="fig" rid="fig-2">Fig. 2</xref>.</p>
<fig id="fig-2"><label>Figure 2</label><caption><title>The FEA in the proposed method: (a) solving the displacement field of solid regions; (b) solving the displacement field of weak regions; (c) union of the displacement fields of the two types of regions</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-2.png"/></fig>
<p>Since the element densities can only be one or <inline-formula id="ieqn-13"><mml:math id="mml-ieqn-13"><mml:msub><mml:mi>&#x03C1;</mml:mi><mml:mrow><mml:mo movablelimits="true" form="prefix">min</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula>, the elements and corresponding node degrees of freedom (DOFs) in the solid regions and weak regions can be obtained according to the ordering rules of DOFs. Then, we can establish FE formulae of solid regions and weak regions. When considering the static small deformation problem, the FE formula of solid regions is as follows:
<disp-formula id="eqn-2"><label>(2)</label><mml:math id="mml-eqn-2" display="block"><mml:msup><mml:mrow><mml:mi mathvariant="bold">K</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:msup><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="bold">f</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:math></disp-formula>where <inline-formula id="ieqn-14"><mml:math id="mml-ieqn-14"><mml:msup><mml:mrow><mml:mi mathvariant="bold">K</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:math></inline-formula> is the global stiffness matrix of the solid regions and <inline-formula id="ieqn-15"><mml:math id="mml-ieqn-15"><mml:msup><mml:mrow><mml:mi mathvariant="bold">f</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:math></inline-formula> is the load vector of the solid regions. The boundary conditions between the solid regions and the weak regions are zero Newman boundaries. Compared with the original FE model, this model removes weak elements.</p>
<p>In regard to the finite deformation problem, the nonlinear FE formula must be considered:
<disp-formula id="eqn-3"><label>(3)</label><mml:math id="mml-eqn-3" display="block"><mml:mrow><mml:mi mathvariant="bold">r</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="bold">p</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:mo>&#x2212;</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="bold">f</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:mo stretchy="false">(</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mrow><mml:mn mathvariant="bold">0</mml:mn></mml:mrow></mml:math></disp-formula>where <inline-formula id="ieqn-16"><mml:math id="mml-ieqn-16"><mml:mrow><mml:mi mathvariant="bold">r</mml:mi></mml:mrow></mml:math></inline-formula> is the residual force; <inline-formula id="ieqn-17"><mml:math id="mml-ieqn-17"><mml:msup><mml:mrow><mml:mi mathvariant="bold">p</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:math></inline-formula> is the external load vector of the solid regions; and <inline-formula id="ieqn-18"><mml:math id="mml-ieqn-18"><mml:msup><mml:mrow><mml:mi mathvariant="bold">f</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:math></inline-formula> is the load vector of the internal nodes in the solid regions at equilibrium, and its expression is as follows:
<disp-formula id="eqn-4"><label>(4)</label><mml:math id="mml-eqn-4" display="block"><mml:msup><mml:mrow><mml:mi mathvariant="bold">f</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:mo>=</mml:mo><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:msup><mml:mi>M</mml:mi><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:mrow></mml:munder><mml:msubsup><mml:mrow><mml:mrow><mml:mi mathvariant="bold">C</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msubsup><mml:msub><mml:mrow><mml:mi mathvariant="bold">f</mml:mi></mml:mrow><mml:mrow><mml:mi>e</mml:mi></mml:mrow></mml:msub></mml:math></disp-formula>where <inline-formula id="ieqn-19"><mml:math id="mml-ieqn-19"><mml:msup><mml:mi>M</mml:mi><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:math></inline-formula> is the set of solid elements; <inline-formula id="ieqn-20"><mml:math id="mml-ieqn-20"><mml:msub><mml:mrow><mml:mi mathvariant="bold">C</mml:mi></mml:mrow><mml:mrow><mml:mi>e</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> is a matrix that transforms the modal force vector of the element to the globally nodal force vector; and <inline-formula id="ieqn-21"><mml:math id="mml-ieqn-21"><mml:msub><mml:mrow><mml:mi mathvariant="bold">f</mml:mi></mml:mrow><mml:mrow><mml:mi>e</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> is the nodal force vector of the element.</p>
<p>The most frequently applied scheme for solving nonlinear systems is the Newton&#x2013;Raphson algorithm. It is based on a Taylor series development of <xref ref-type="disp-formula" rid="eqn-3">Eq. (3)</xref> at a known state <inline-formula id="ieqn-22"><mml:math id="mml-ieqn-22"><mml:msubsup><mml:mrow><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow></mml:msubsup></mml:math></inline-formula>:
<disp-formula id="eqn-5"><label>(5)</label><mml:math id="mml-eqn-5" display="block"><mml:mrow><mml:mi mathvariant="bold">r</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:msubsup><mml:mrow><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow></mml:msubsup><mml:mo>+</mml:mo><mml:mrow><mml:mi mathvariant="normal">&#x0394;</mml:mi></mml:mrow><mml:msub><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mrow><mml:mi mathvariant="normal">&#x03BB;</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mrow><mml:mi mathvariant="bold">r</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:msubsup><mml:mrow><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow></mml:msubsup><mml:mo>,</mml:mo><mml:mrow><mml:mi mathvariant="normal">&#x03BB;</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo><mml:mo>+</mml:mo><mml:mi>D</mml:mi><mml:mrow><mml:mi mathvariant="bold">r</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:msubsup><mml:mrow><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow></mml:msubsup><mml:mo>,</mml:mo><mml:mrow><mml:mi mathvariant="normal">&#x03BB;</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo><mml:mrow><mml:mi mathvariant="normal">&#x0394;</mml:mi></mml:mrow><mml:msub><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:mi mathvariant="bold-italic">&#x03B4;</mml:mi></mml:math></disp-formula>where the parameter <inline-formula id="ieqn-23"><mml:math id="mml-ieqn-23"><mml:mrow><mml:mi mathvariant="normal">&#x03BB;</mml:mi></mml:mrow></mml:math></inline-formula> denotes the load level for which the solution has to be determined; <inline-formula id="ieqn-24"><mml:math id="mml-ieqn-24"><mml:mi>D</mml:mi><mml:mrow><mml:mi mathvariant="bold">r</mml:mi></mml:mrow><mml:mrow><mml:mi mathvariant="normal">&#x0394;</mml:mi></mml:mrow><mml:msub><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mrow><mml:mi>k</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> characterizes the directional derivative of <inline-formula id="ieqn-25"><mml:math id="mml-ieqn-25"><mml:mrow><mml:mi mathvariant="bold">r</mml:mi></mml:mrow></mml:math></inline-formula> at <inline-formula id="ieqn-26"><mml:math id="mml-ieqn-26"><mml:msubsup><mml:mrow><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>k</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow></mml:msubsup></mml:math></inline-formula>; and the vector <inline-formula id="ieqn-27"><mml:math id="mml-ieqn-27"><mml:mi mathvariant="bold-italic">&#x03B4;</mml:mi></mml:math></inline-formula> is the residuum of the Tayler series. More details about the Newton&#x2013;Raphson scheme can be found in the literature [<xref ref-type="bibr" rid="ref-42">42</xref>].</p>
<p>After the displacement vector <inline-formula id="ieqn-28"><mml:math id="mml-ieqn-28"><mml:msup><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:math></inline-formula> is obtained by solving <xref ref-type="disp-formula" rid="eqn-2">Eqs. (2)</xref> or <xref ref-type="disp-formula" rid="eqn-5">(5)</xref>, we need to solve the displacement vector <inline-formula id="ieqn-29"><mml:math id="mml-ieqn-29"><mml:msup><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>v</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:math></inline-formula>. To ensure the stability of the analysis, it can be solved simply by the linear FE formula.</p>
<p>In the FE model of weak regions, Dirichlet boundary conditions are imposed on the interface to maintain the continuity of the displacement field. The implementation process is as follows: first, the components of the displacement vector <inline-formula id="ieqn-30"><mml:math id="mml-ieqn-30"><mml:msup><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:math></inline-formula> need to be rearranged. The DOFs of noninterface nodes are placed in the front as <inline-formula id="ieqn-31"><mml:math id="mml-ieqn-31"><mml:msup><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>ss</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:math></inline-formula>, and the DOFs of interface nodes are placed in the back as <inline-formula id="ieqn-32"><mml:math id="mml-ieqn-32"><mml:msup><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>c</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:math></inline-formula>. The rearranged displacement vector <inline-formula id="ieqn-33"><mml:math id="mml-ieqn-33"><mml:msup><mml:mrow><mml:mover><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mo>&#x007E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:math></inline-formula> is as follows:
<disp-formula id="eqn-6"><label>(6)</label><mml:math id="mml-eqn-6" display="block"><mml:msup><mml:mrow><mml:mover><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mo>&#x007E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mrow><mml:mtext>s</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mo>[</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>ss</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>c</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:mo>]</mml:mo></mml:mrow><mml:mrow><mml:mrow><mml:mtext>T&#xA0;</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:math></disp-formula></p>
<p>The global stiffness matrix, displacement vector and load vector of the weak regions are also divided into two parts according to the noninterface nodes and the interface nodes. The updated FE formula is:
<disp-formula id="eqn-7"><label>(7)</label><mml:math id="mml-eqn-7" display="block"><mml:mrow><mml:mo>[</mml:mo><mml:mtable columnalign="left left" rowspacing="4pt" columnspacing="1em"><mml:mtr><mml:mtd><mml:msup><mml:mrow><mml:mi mathvariant="bold">K</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>vv</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:mtd><mml:mtd><mml:msup><mml:mrow><mml:mi mathvariant="bold">K</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>vc</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:msup><mml:mrow><mml:mi mathvariant="bold">K</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>cv</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:mtd><mml:mtd><mml:msup><mml:mrow><mml:mi mathvariant="bold">K</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>cc</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:mtd></mml:mtr></mml:mtable><mml:mo>]</mml:mo></mml:mrow><mml:mrow><mml:mo>[</mml:mo><mml:mtable columnalign="left" rowspacing="4pt" columnspacing="1em"><mml:mtr><mml:mtd><mml:msup><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>v</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:msup><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>c</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:mtd></mml:mtr></mml:mtable><mml:mo>]</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mtable columnalign="left" rowspacing="4pt" columnspacing="1em"><mml:mtr><mml:mtd><mml:msup><mml:mrow><mml:mi mathvariant="bold">f</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>v</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:msup><mml:mrow><mml:mi mathvariant="bold">f</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>c</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:mtd></mml:mtr></mml:mtable><mml:mo>]</mml:mo></mml:mrow></mml:math></disp-formula>where <inline-formula id="ieqn-34"><mml:math id="mml-ieqn-34"><mml:msup><mml:mrow><mml:mi mathvariant="bold">K</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>vv</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:math></inline-formula> is the stiffness matrix assembled by DOFs of noninterface nodes in weak regions and <inline-formula id="ieqn-35"><mml:math id="mml-ieqn-35"><mml:msup><mml:mrow><mml:mi mathvariant="bold">K</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>cc</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:math></inline-formula> is the stiffness matrix assembled by DOFs of interface nodes. <inline-formula id="ieqn-36"><mml:math id="mml-ieqn-36"><mml:msup><mml:mrow><mml:mi mathvariant="bold">K</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>vc</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:math></inline-formula> and <inline-formula id="ieqn-37"><mml:math id="mml-ieqn-37"><mml:msup><mml:mrow><mml:mi mathvariant="bold">K</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>cv</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:math></inline-formula> are the coupling stiffness matrices, and they are symmetric.</p>
<p>Since <inline-formula id="ieqn-38"><mml:math id="mml-ieqn-38"><mml:msup><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>c</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:math></inline-formula> has been obtained by <xref ref-type="disp-formula" rid="eqn-6">Eq. (6)</xref>, it can be moved to the right, and <xref ref-type="disp-formula" rid="eqn-7">Eq. (7)</xref> can be rearranged:
<disp-formula id="eqn-8"><label>(8)</label><mml:math id="mml-eqn-8" display="block"><mml:msup><mml:mrow><mml:mi mathvariant="bold">K</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>vv</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:msup><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>v</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="bold">f</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>v</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:mo>&#x2212;</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="bold">K</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>vc</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:msup><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>c</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:math></disp-formula></p>
<p>When the load-independent design problem is considered, the weak regions usually have no external load so that <inline-formula id="ieqn-39"><mml:math id="mml-ieqn-39"><mml:msup><mml:mrow><mml:mi mathvariant="bold">f</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>v</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:math></inline-formula> is a zero vector. <xref ref-type="disp-formula" rid="eqn-8">Eq. (8)</xref> can be simplified as follows:
<disp-formula id="eqn-9"><label>(9)</label><mml:math id="mml-eqn-9" display="block"><mml:msup><mml:mrow><mml:mi mathvariant="bold">K</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>vv</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:msup><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>v</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="bold">K</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>vc</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:msup><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>c</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:math></disp-formula></p>
<p>The displacement vector <inline-formula id="ieqn-40"><mml:math id="mml-ieqn-40"><mml:msup><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>v</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:math></inline-formula> is obtained by solving <xref ref-type="disp-formula" rid="eqn-9">Eq. (9)</xref>.</p>
</sec>
<sec id="s2_2"><label>2.2</label><title>Sensitivity Number</title>
<p>In the case of small deformation problems, the sensitivity number <inline-formula id="ieqn-41"><mml:math id="mml-ieqn-41"><mml:msub><mml:mi>&#x03B1;</mml:mi><mml:mrow><mml:mi>e</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> of an element that determines the element to be added or removed has been derived by Alonso&#x00A0;et&#x00A0;al.&#x00A0;[<xref ref-type="bibr" rid="ref-43">43</xref>]:
<disp-formula id="eqn-10"><label>(10)</label><mml:math id="mml-eqn-10" display="block"><mml:msub><mml:mi>&#x03B1;</mml:mi><mml:mrow><mml:mi>e</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mrow><mml:mi>e</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mi mathvariant="normal">&#x0394;</mml:mi></mml:mrow><mml:msub><mml:mrow><mml:mi mathvariant="bold">K</mml:mi></mml:mrow><mml:mrow><mml:mi>e</mml:mi></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mrow><mml:mi>e</mml:mi></mml:mrow></mml:msub></mml:math></disp-formula>where <inline-formula id="ieqn-42"><mml:math id="mml-ieqn-42"><mml:msub><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mrow><mml:mi>e</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> is the element displacement vector and <inline-formula id="ieqn-43"><mml:math id="mml-ieqn-43"><mml:mrow><mml:mi mathvariant="normal">&#x0394;</mml:mi></mml:mrow><mml:msub><mml:mrow><mml:mi mathvariant="bold">K</mml:mi></mml:mrow><mml:mrow><mml:mi>e</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> is the variation in the elemental stiffness matrix. Since the densities of elements can only be one or <inline-formula id="ieqn-44"><mml:math id="mml-ieqn-44"><mml:msub><mml:mi>&#x03C1;</mml:mi><mml:mrow><mml:mo movablelimits="true" form="prefix">min</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula>, the sensitivity values have the following two forms:
<disp-formula id="eqn-11"><label>(11)</label><mml:math id="mml-eqn-11" display="block"><mml:mrow><mml:mo>{</mml:mo><mml:mtable columnalign="left left" rowspacing=".2em" columnspacing="1em" displaystyle="false"><mml:mtr><mml:mtd><mml:msubsup><mml:mrow><mml:mi>&#x03B1;</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>R</mml:mi></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:msubsup><mml:mrow><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msubsup><mml:msubsup><mml:mrow><mml:mrow><mml:mi mathvariant="bold">K</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msubsup><mml:msubsup><mml:mrow><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msubsup><mml:mrow><mml:mo>,</mml:mo><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">f</mml:mi><mml:mi mathvariant="normal">t</mml:mi><mml:mi mathvariant="normal">h</mml:mi><mml:mi mathvariant="normal">e</mml:mi></mml:mrow><mml:mi>i</mml:mi><mml:mrow><mml:mtext>th   element   is   removed</mml:mtext></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:msubsup><mml:mrow><mml:mi>&#x03B1;</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>A</mml:mi></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:msubsup><mml:mrow><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msubsup><mml:msubsup><mml:mrow><mml:mrow><mml:mi mathvariant="bold">K</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msubsup><mml:msubsup><mml:mrow><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msubsup><mml:mrow><mml:mo>,</mml:mo><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">f</mml:mi><mml:mi mathvariant="normal">t</mml:mi><mml:mi mathvariant="normal">h</mml:mi><mml:mi mathvariant="normal">e</mml:mi></mml:mrow><mml:mi>i</mml:mi><mml:mrow><mml:mtext>th</mml:mtext></mml:mrow><mml:mrow><mml:mtext>element  is   added</mml:mtext></mml:mrow></mml:mtd></mml:mtr></mml:mtable><mml:mo fence="true" stretchy="true" symmetric="true"></mml:mo></mml:mrow></mml:math></disp-formula></p>
<p>When addressing small deformation problems, according to Huang&#x00A0;et&#x00A0;al.&#x00A0;[<xref ref-type="bibr" rid="ref-21">21</xref>], the structural compliance can be replaced by an incremental form. The sensitivity number of the <italic>i</italic>th element is defined as
<disp-formula id="eqn-12"><label>(12)</label><mml:math id="mml-eqn-12" display="block"><mml:mrow><mml:mo>{</mml:mo><mml:mtable columnalign="left left" rowspacing=".2em" columnspacing="1em" displaystyle="false"><mml:mtr><mml:mtd><mml:msubsup><mml:mrow><mml:mi>&#x03B1;</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>R</mml:mi></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:msubsup><mml:mrow><mml:mi>E</mml:mi></mml:mrow><mml:mrow><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msubsup><mml:mrow><mml:mo>,</mml:mo><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">f</mml:mi><mml:mi mathvariant="normal">t</mml:mi><mml:mi mathvariant="normal">h</mml:mi><mml:mi mathvariant="normal">e</mml:mi></mml:mrow><mml:mi>i</mml:mi><mml:mrow><mml:mtext>th   element   is   removed</mml:mtext></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:msubsup><mml:mrow><mml:mi>&#x03B1;</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>A</mml:mi></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:msubsup><mml:mrow><mml:mi>E</mml:mi></mml:mrow><mml:mrow><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msubsup><mml:mrow><mml:mo>,</mml:mo><mml:mi mathvariant="normal">i</mml:mi><mml:mi mathvariant="normal">f</mml:mi><mml:mi mathvariant="normal">t</mml:mi><mml:mi mathvariant="normal">h</mml:mi><mml:mi mathvariant="normal">e</mml:mi></mml:mrow><mml:mi>i</mml:mi><mml:mrow><mml:mtext>th   element   is   added</mml:mtext></mml:mrow></mml:mtd></mml:mtr></mml:mtable><mml:mo fence="true" stretchy="true" symmetric="true"></mml:mo></mml:mrow></mml:math></disp-formula>where <inline-formula id="ieqn-45"><mml:math id="mml-ieqn-45"><mml:msubsup><mml:mrow><mml:mi>E</mml:mi></mml:mrow><mml:mrow><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula> is the strain energy of the <italic>i</italic>th element in its equilibrium state.</p>
<p>It should be noted that the sensitivity numbers in <xref ref-type="disp-formula" rid="eqn-11">Eqs. (11)</xref> and <xref ref-type="disp-formula" rid="eqn-12">(12)</xref> are both expressed by the element strain energy (or its negative value). However, this expression has different meanings for linear and nonlinear structures. For an elastoplastic structure, it denotes the total elastic and plastic strain energies, while for a linear structure, it is only for the elastic strain energy.</p>
<p>Two sensitivity thresholds <inline-formula id="ieqn-46"><mml:math id="mml-ieqn-46"><mml:msubsup><mml:mrow><mml:mi>&#x03B1;</mml:mi></mml:mrow><mml:mrow><mml:mi>t</mml:mi><mml:mi>h</mml:mi></mml:mrow><mml:mrow><mml:mi>R</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula> and <inline-formula id="ieqn-47"><mml:math id="mml-ieqn-47"><mml:msubsup><mml:mrow><mml:mi>&#x03B1;</mml:mi></mml:mrow><mml:mrow><mml:mi>t</mml:mi><mml:mi>h</mml:mi></mml:mrow><mml:mrow><mml:mi>V</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula> are chosen to determine material variation: solid elements with sensitivities less than <inline-formula id="ieqn-48"><mml:math id="mml-ieqn-48"><mml:msubsup><mml:mrow><mml:mi>&#x03B1;</mml:mi></mml:mrow><mml:mrow><mml:mi>t</mml:mi><mml:mi>h</mml:mi></mml:mrow><mml:mrow><mml:mi>V</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula> are converted to weak elements; weak elements with sensitivities greater than <inline-formula id="ieqn-49"><mml:math id="mml-ieqn-49"><mml:msubsup><mml:mrow><mml:mi>&#x03B1;</mml:mi></mml:mrow><mml:mrow><mml:mi>t</mml:mi><mml:mi>h</mml:mi></mml:mrow><mml:mrow><mml:mi>V</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula> are converted to solid elements (<xref ref-type="fig" rid="fig-3">Fig. 3</xref>). Assuming that the volume to be removed is <inline-formula id="ieqn-50"><mml:math id="mml-ieqn-50"><mml:mrow><mml:mi mathvariant="normal">&#x0394;</mml:mi></mml:mrow><mml:msup><mml:mi>V</mml:mi><mml:mrow><mml:mi>R</mml:mi></mml:mrow></mml:msup></mml:math></inline-formula> and the volume to be added is <inline-formula id="ieqn-51"><mml:math id="mml-ieqn-51"><mml:mrow><mml:mi mathvariant="normal">&#x0394;</mml:mi></mml:mrow><mml:msup><mml:mi>V</mml:mi><mml:mrow><mml:mi>A</mml:mi></mml:mrow></mml:msup></mml:math></inline-formula>, the amount of material changed in an iteration is
<disp-formula id="eqn-13"><label>(13)</label><mml:math id="mml-eqn-13" display="block"><mml:mrow><mml:mi mathvariant="normal">&#x0394;</mml:mi></mml:mrow><mml:mi>V</mml:mi><mml:mo>=</mml:mo><mml:mrow><mml:mi mathvariant="normal">&#x0394;</mml:mi></mml:mrow><mml:msup><mml:mi>V</mml:mi><mml:mrow><mml:mi>A</mml:mi></mml:mrow></mml:msup><mml:mo>&#x2212;</mml:mo><mml:mrow><mml:mi mathvariant="normal">&#x0394;</mml:mi></mml:mrow><mml:msup><mml:mi>V</mml:mi><mml:mrow><mml:mi>R</mml:mi></mml:mrow></mml:msup></mml:math></disp-formula></p>
<p><inline-formula id="ieqn-52"><mml:math id="mml-ieqn-52"><mml:mrow><mml:mi mathvariant="normal">&#x0394;</mml:mi></mml:mrow><mml:mi>V</mml:mi></mml:math></inline-formula> can be limited to a definite value by adjusting the two thresholds. One can refer to reference [<xref ref-type="bibr" rid="ref-43">43</xref>] for more details about material iteration.</p>
<fig id="fig-3"><label>Figure 3</label><caption><title>Material variation determined by two sensitivity thresholds</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-3.png"/></fig>
<p>The above strategies can effectively avoid the adverse effects caused by weak elements and maintain the integrity of sensitivities. However, in the execution process, structural instability may occur due to some special structural features. To ensure the robustness of the algorithm, these structural features must be solved.</p>
</sec>
</sec>
<sec id="s3"><label>3</label><title>Nonmanifold Points and Islands</title>
<p>After regional partitioning, there are two structural features that may cause numerical instability: nonmanifold points and islands. They must be addressed to prevent system ill conditioning. In this section, we introduce some strategies to identify and address them.</p>
<sec id="s3_1"><label>3.1</label><title>Nonmanifold Points</title>
<p>Hinged elements often appear in solid regions when material is almost removed (<xref ref-type="fig" rid="fig-4">Fig. 4</xref>). These structures are usually unstable. In computational geometry, such one-point connected structures belong to nonmanifold structures, and the point is named the nonmanifold point. A more common form of nonmanifold point in topology optimization is the checkerboard pattern. The checkerboard pattern is not expected due to its overestimated stiffness and difficulty in manufacturing [<xref ref-type="bibr" rid="ref-44">44</xref>]. Poulsen [<xref ref-type="bibr" rid="ref-45">45</xref>] proposed a simple and implicit scheme based on a structural grid to prevent checkerboard patterns and one-node hinges. However, we need direct control to ensure that these situations are avoided in each iteration.</p>
<fig id="fig-4"><label>Figure 4</label><caption><title>The structural features consisting of nonmanifold points: 1 is the checkerboard pattern; 2 is a hinged rod; 3 is a hinged element</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-4.png"/></fig>
<sec id="s3_1_1"><label>3.1.1</label><title>Definition of Nonmanifold Point</title>
<p>It is necessary to introduce the concept of a 2D manifold to describe nonmanifold points. A surface is a 2D manifold if it has the following characteristics: (1) Every point on the surface of an object has a sufficiently small neighborhood isomorphic to the disk on the plane; (2) If the surface is unclosed (it has boundaries), every point on the boundaries must have a sufficiently small neighborhood isomorphic to the half disk in the plane. Since it is impossible to describe each point on a surface by computer, the conditions identifying that a surface is a 2D manifold are represented by vertices, edges and faces of the discrete grid: (1) each edge can only be shared by two faces; (2) the edges and faces adjacent to each vertex can form one ring around it. For example, there are three points in <xref ref-type="fig" rid="fig-5">Fig. 5</xref>. The set <inline-formula id="ieqn-53"><mml:math id="mml-ieqn-53"><mml:msup><mml:mi>S</mml:mi><mml:mrow><mml:mrow><mml:mtext>vi</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:mrow><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mn>2</mml:mn><mml:mo>,</mml:mo><mml:mn>3</mml:mn><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> contains all edges and faces adjacent to vertex <inline-formula id="ieqn-54"><mml:math id="mml-ieqn-54"><mml:mrow><mml:mtext>vi</mml:mtext></mml:mrow></mml:math></inline-formula>. If <inline-formula id="ieqn-55"><mml:math id="mml-ieqn-55"><mml:msup><mml:mi>S</mml:mi><mml:mrow><mml:mrow><mml:mtext>vi</mml:mtext></mml:mrow></mml:mrow></mml:msup></mml:math></inline-formula> can form more than two rings topologically isomorphic to a disk, vertex <inline-formula id="ieqn-56"><mml:math id="mml-ieqn-56"><mml:mrow><mml:mtext>vi</mml:mtext></mml:mrow></mml:math></inline-formula> is a nonmanifold point. According to this, <inline-formula id="ieqn-57"><mml:math id="mml-ieqn-57"><mml:mrow><mml:mtext>v1</mml:mtext></mml:mrow></mml:math></inline-formula> and <inline-formula id="ieqn-58"><mml:math id="mml-ieqn-58"><mml:mrow><mml:mtext>v2</mml:mtext></mml:mrow></mml:math></inline-formula> are manifold points; <inline-formula id="ieqn-59"><mml:math id="mml-ieqn-59"><mml:mrow><mml:mtext>v3</mml:mtext></mml:mrow></mml:math></inline-formula> is a nonmanifold point.</p>
<fig id="fig-5"><label>Figure 5</label><caption><title>Manifold point and nonmanifold point: (a&#x2013;b) the points <inline-formula id="ieqn-109"><mml:math id="mml-ieqn-109"><mml:mrow><mml:mtext>v1</mml:mtext></mml:mrow></mml:math></inline-formula> and <inline-formula id="ieqn-110"><mml:math id="mml-ieqn-110"><mml:mrow><mml:mtext>v2</mml:mtext></mml:mrow></mml:math></inline-formula> are manifold points; (c) the point <inline-formula id="ieqn-111"><mml:math id="mml-ieqn-111"><mml:mrow><mml:mtext>v3</mml:mtext></mml:mrow></mml:math></inline-formula> is a nonmanifold point</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-5.png"/></fig>
</sec>
<sec id="s3_1_2"><label>3.1.2</label><title>Identification of Nonmanifold Point</title>
<p>As the design domain is discretized by a structured rectangular mesh, the nonmanifold point is presented in only one form: adjacent elements of the vertex contain two diagonally distributed solid elements and two diagonally distributed weak elements. The procedure of identifying nonmanifold points is as follows and the flow chart is as shown in <xref ref-type="fig" rid="fig-6">Fig. 6</xref>.
<list list-type="simple">
<list-item><label>(1) </label><p>Create the vertex set <inline-formula id="ieqn-60"><mml:math id="mml-ieqn-60"><mml:mi mathvariant="normal">&#x03A6;</mml:mi><mml:mo>=</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:msubsup><mml:mrow><mml:mi>N</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>s</mml:mi></mml:mrow></mml:msubsup><mml:mo>,</mml:mo><mml:msubsup><mml:mrow><mml:mi>N</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow><mml:mrow><mml:mi>s</mml:mi></mml:mrow></mml:msubsup><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>,</mml:mo><mml:msubsup><mml:mrow><mml:mi>N</mml:mi></mml:mrow><mml:mrow><mml:mi>N</mml:mi><mml:mi>S</mml:mi></mml:mrow><mml:mrow><mml:mi>s</mml:mi></mml:mrow></mml:msubsup><mml:mo>}</mml:mo></mml:mrow></mml:math></inline-formula>, where <inline-formula id="ieqn-61"><mml:math id="mml-ieqn-61"><mml:msubsup><mml:mrow><mml:mi>N</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>s</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula> is the vertex set of the solid element <italic>i</italic> and <inline-formula id="ieqn-62"><mml:math id="mml-ieqn-62"><mml:mi>N</mml:mi><mml:mi>S</mml:mi></mml:math></inline-formula> is the number of solid elements.</p></list-item>
<list-item><label>(2) </label><p>Calculate the vertex set <inline-formula id="ieqn-63"><mml:math id="mml-ieqn-63"><mml:mrow><mml:mtext>A</mml:mtext></mml:mrow><mml:mo>=</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mi>x</mml:mi><mml:mrow><mml:mo>|</mml:mo><mml:mi>x</mml:mi><mml:mrow><mml:mtext>appears twice in&#xA0;</mml:mtext></mml:mrow><mml:mi mathvariant="normal">&#x03A6;</mml:mi><mml:mo fence="true" stretchy="true" symmetric="true"></mml:mo></mml:mrow><mml:mo>}</mml:mo></mml:mrow></mml:math></inline-formula>.</p></list-item>
<list-item><label>(3) </label><p>Create the edge set <inline-formula id="ieqn-64"><mml:math id="mml-ieqn-64"><mml:mi mathvariant="normal">&#x03A8;</mml:mi><mml:mo>=</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:msubsup><mml:mrow><mml:mi>T</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>s</mml:mi></mml:mrow></mml:msubsup><mml:mo>,</mml:mo><mml:msubsup><mml:mrow><mml:mi>T</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow><mml:mrow><mml:mi>s</mml:mi></mml:mrow></mml:msubsup><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>,</mml:mo><mml:msubsup><mml:mrow><mml:mi>T</mml:mi></mml:mrow><mml:mrow><mml:mi>N</mml:mi><mml:mi>S</mml:mi></mml:mrow><mml:mrow><mml:mi>s</mml:mi></mml:mrow></mml:msubsup><mml:mo>}</mml:mo></mml:mrow></mml:math></inline-formula>, where <inline-formula id="ieqn-65"><mml:math id="mml-ieqn-65"><mml:msubsup><mml:mrow><mml:mi>T</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>s</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula> is the directed edge set of the solid element <italic>i</italic> (each directed edge consists of a starting vertex and an ending vertex).</p></list-item>
<list-item><label>(4) </label><p>Calculate the vertex set <inline-formula id="ieqn-66"><mml:math id="mml-ieqn-66"><mml:mrow><mml:mtext>B</mml:mtext></mml:mrow><mml:mo>=</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mi>x</mml:mi><mml:mrow><mml:mo>|</mml:mo><mml:mi>x</mml:mi><mml:mrow><mml:mtext>appears four times in&#xA0;</mml:mtext></mml:mrow><mml:mi mathvariant="normal">&#x03A8;</mml:mi><mml:mo fence="true" stretchy="true" symmetric="true"></mml:mo></mml:mrow><mml:mo>}</mml:mo></mml:mrow></mml:math></inline-formula>.</p></list-item>
<list-item><label>(5) </label><p>Calculate the nonmanifold point set <inline-formula id="ieqn-67"><mml:math id="mml-ieqn-67"><mml:mi mathvariant="normal">&#x039B;</mml:mi><mml:mo>=</mml:mo><mml:mrow><mml:mtext>A</mml:mtext></mml:mrow><mml:mo>&#x2229;</mml:mo><mml:mrow><mml:mtext>B</mml:mtext></mml:mrow></mml:math></inline-formula>.</p></list-item>
</list></p>
<p>The strategy to accommodate nonmanifold point is converting the weak elements adjacent to the nonmanifold point into solid elements, as shown in <xref ref-type="fig" rid="fig-7">Fig. 7</xref>. In theory, the problem can be solved by addressing each nonmanifold point in turn, but when the nonmanifold points appear continuously in the horizontal or vertical direction (checkboard pattern), many nonessential solid elements may be introduced that severely affect the volume and the objective. To minimize this adverse effect, two algorithms are introduced to determine how to introduce solid elements.</p>
<fig id="fig-6"><label>Figure 6</label><caption><title>Flow chart of nonmanifold point identification</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-6.png"/></fig>
<fig id="fig-7"><label>Figure 7</label><caption><title>Nonmanifold points are rejected by converting weak elements to solid elements: (a) rejection of a single nonmanifold point; (b) rejection of multiple adjacent nonmanifold points</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-7.png"/></fig>
</sec>
<sec id="s3_1_3"><label>3.1.3</label><title>Two Algorithms to Accommodate Nonmanifold Points</title>
<p>Structures consisting of nonmanifold points can be divided into two categories: hinged structures and checkerboard patterns. Since the adjacent weak elements have no intersection in hinged structures, converting any of the surrounding weak elements can address the problem (<xref ref-type="fig" rid="fig-7">Fig. 7a</xref>). For the checkerboard pattern, one of the most common methods is using filtering techniques on element densities or sensitivities. Poulsen [<xref ref-type="bibr" rid="ref-45">45</xref>] proposed a framework with implicit constraints to reject nonmanifold points. Han&#x00A0;et&#x00A0;al.&#x00A0;[<xref ref-type="bibr" rid="ref-40">40</xref>] suppressed the checkerboard pattern by identifying and filling a single weak element.</p>
<p>To reduce the disturbance to the volume and the objective, we introduced two algorithms to address nonmanifold points: the minimum volume filling algorithm (MVF) and the minimum sensitivity filling algorithm (MSF). The MVF requires filling a minimum number of solid elements to reject all nonmanifold points, and the MSF requires that the elements that are filled have the least impact on the objective.</p>
<p>The concept of an undirected graph is introduced to implement the above two algorithms. The graph <inline-formula id="ieqn-68"><mml:math id="mml-ieqn-68"><mml:mi>G</mml:mi><mml:mo>=</mml:mo><mml:mi>G</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>V</mml:mi><mml:mo>,</mml:mo><mml:mi>E</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> can represent a topology consisting of solid elements in which <italic>V</italic> is the vertex set of <italic>G</italic> and <italic>E</italic> is the edge set of <italic>G</italic>. If the vertices <inline-formula id="ieqn-69"><mml:math id="mml-ieqn-69"><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mi>V</mml:mi></mml:math></inline-formula> are adjacent vertices, <inline-formula id="ieqn-70"><mml:math id="mml-ieqn-70"><mml:mi>x</mml:mi><mml:mo stretchy="false">&#x2192;</mml:mo><mml:mi>y</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mi>E</mml:mi></mml:math></inline-formula> is a directed edge of <italic>G</italic> in which <italic>x</italic> is the starting vertex and <italic>y</italic> is the ending vertex. Since the direction of the edge is not of concern to us, <inline-formula id="ieqn-71"><mml:math id="mml-ieqn-71"><mml:mi>x</mml:mi><mml:mo stretchy="false">&#x2192;</mml:mo><mml:mi>y</mml:mi></mml:math></inline-formula> and <inline-formula id="ieqn-72"><mml:math id="mml-ieqn-72"><mml:mi>y</mml:mi><mml:mo stretchy="false">&#x2192;</mml:mo><mml:mi>x</mml:mi></mml:math></inline-formula> can be regarded as equivalent, and such graphs are called undirected graphs (also called symmetric graphs).</p>
<p>The undirected graph <inline-formula id="ieqn-73"><mml:math id="mml-ieqn-73"><mml:mi>G</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>V</mml:mi><mml:mo>,</mml:mo><mml:mi>E</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> of the checkerboard pattern in <xref ref-type="fig" rid="fig-8">Fig. 8a</xref> can be constructed as an example: since it is known that a nonmanifold point has two adjacent weak elements, these two elements can be regarded as the vertices of the graph <italic>G</italic>. The nonmanifold point is their edge. The checkerboard pattern can be converted to the undirected graph <italic>G</italic>. The gray dots belong to the vertex set <italic>V</italic>, and the dotted lines belong to the edge set <italic>E</italic>, as shown in <xref ref-type="fig" rid="fig-8">Fig. 8b</xref>.</p>
<fig id="fig-8"><label>Figure 8</label><caption><title>The process of addressing checkerboard patterns based on the MVF: (a) a checkerboard pattern; (b) the undirected graph G; (c) minimum covered vertex set; (d) the result after filling elements</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-8.png"/></fig>
<list list-type="simple">
<list-item><label>(1) </label><p>Minimum Volume Filling (MVF)</p></list-item>
</list>
<p>The MVF can be transformed into minimum point set coverage, which means that each edge in the undirected graph must be associated with at least one of its vertices. In graph theory, the minimum point set covering is equal to the maximum matching so that the Hungarian algorithm [<xref ref-type="bibr" rid="ref-39">39</xref>] can be used to solve the problem. The gray dots in <xref ref-type="fig" rid="fig-8">Fig. 8c</xref> are the minimum covering point set obtained by the algorithm. The result of the MVF is shown in <xref ref-type="fig" rid="fig-8">Fig. 8d</xref> by covering the weak elements corresponding to the gray dots into solid elements.
<list list-type="simple">
<list-item><label>(2) </label><p>Minimum Sensitivity Filling (MSF)</p></list-item>
</list></p>
<p>The MSF can be transformed into minimum point set coverage with weight in the undirected graph. In the algorithm, the sensitivity values of the weak elements adjacent to each nonmanifold point are added to the vertices of the undirected graph as weights. The minimum point set coverage with weight requires that every edge in the weighted undirected graph is associated with at least one vertex and the sum of the weights of these vertices is minimum.</p>
<p>As shown in <xref ref-type="fig" rid="fig-9">Fig. 9</xref>, the two algorithms are verified by two structures. The structure in <xref ref-type="fig" rid="fig-9">Fig. 9a</xref> has only one hinge, and the structure in <xref ref-type="fig" rid="fig-9">Fig. 9d</xref> has a checkerboard pattern. <xref ref-type="fig" rid="fig-9">Figs. 9b</xref> and <xref ref-type="fig" rid="fig-9">9e</xref> show the results of the MVF. <xref ref-type="fig" rid="fig-9">Figs. 9c</xref> and <xref ref-type="fig" rid="fig-9">9f</xref> show the results of the MSF.</p>
<fig id="fig-9"><label>Figure 9</label><caption><title>The two structures removing nonmanifold points by the MVF and MSF: (a) and (d) are two structures containing nonmanifold points; (b) and (e) are the results obtained by the MVF; (c) and (f) are the results obtained by the MSF</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-9.png"/></fig>
<p>In <xref ref-type="fig" rid="fig-9">Fig. 9a</xref>, there is only one nonmanifold point, so introducing a weak element can solve it. In this case, the MVF randomly selects a weak element to fill, but the MSF selects the element with the lowest sensitivity value. In <xref ref-type="fig" rid="fig-9">Fig. 9d</xref>, many solid elements need to be introduced to solve the checkerboard pattern so that the material and objective function values will be significantly increased. The result shows that the MVF strategy requires less material, and the MSF strategy leads to less disturbance of the objective value. In summary, the MVF strategy is more suitable for handling checkerboard patterns, and the MSF strategy is more suitable for discontinued hinged structures. It should be noted that if the number of filling elements is too large in the optimization iteration, the convergence may be adversely affected. Therefore, filtering technology is still used in the following examples to suppress the checkerboard pattern.</p>
</sec>
</sec>
<sec id="s3_2"><label>3.2</label><title>Islands</title>
<p>In SERA, the initial structure is usually made entirely of solid elements. In the early optimization process, solid elements are gradually transformed into weak elements. This may lead to a situation in which some solid elements are completely separated from the main structure, forming an island (<xref ref-type="fig" rid="fig-10">Fig. 10</xref>). In the original SERA method, an island is surrounded by weak elements that have low stiffness to support it so that the island can be constrained to a certain extent and the condition number is not too large to affect the stability of the numerical calculation. However, in the proposed method, the solid regions are analyzed without weak materials. The island is free of any constraints, which adversely affects the numerical stability.</p>
<fig id="fig-10"><label>Figure 10</label><caption><title>A structure with two islands</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-10.png"/></fig>
<p>To accommodate islands, we need to identify them first. The recognition of the nonmanifold point mentioned above is the recognition of elements, while an island is a region composed of an uncertain number of elements. Although the domain is divided in SERA, the numbers of solid regions and weak regions are still unknown. We introduce the fire-burning method [<xref ref-type="bibr" rid="ref-40">40</xref>] to group solid material by regions, and then the boundary conditions are used to identify whether a certain solid region is an island. Since an island has no effect on the structure stiffness, we group it into weak regions for FEA.</p>
<sec id="s3_2_1"><label>3.2.1</label><title>Adjacent Matrix</title>
<p>To realize the fire-burning method, the adjacent relation of the elements must be calculated first. The concept of a graph is still used to explain here. For the graph <inline-formula id="ieqn-74"><mml:math id="mml-ieqn-74"><mml:mi>G</mml:mi><mml:mo>=</mml:mo><mml:mi>G</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>V</mml:mi><mml:mo>,</mml:mo><mml:mi>E</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> composed of solid elements, an adjacent matrix is used to describe the adjacency relationship of elements.</p>
<p>The graph <italic>G</italic> is made up of solid elements, which are numbered as <inline-formula id="ieqn-75"><mml:math id="mml-ieqn-75"><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mn>2</mml:mn><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>,</mml:mo><mml:mrow><mml:mo>|</mml:mo><mml:mi>V</mml:mi><mml:mo>|</mml:mo></mml:mrow></mml:math></inline-formula>. The adjacency matrix <inline-formula id="ieqn-76"><mml:math id="mml-ieqn-76"><mml:mi mathvariant="bold-italic">A</mml:mi></mml:math></inline-formula> of graph <italic>G</italic> is a <inline-formula id="ieqn-77"><mml:math id="mml-ieqn-77"><mml:mrow><mml:mo>|</mml:mo><mml:mi>V</mml:mi><mml:mo>|</mml:mo></mml:mrow></mml:math></inline-formula>-dimensional square matrix, and <inline-formula id="ieqn-78"><mml:math id="mml-ieqn-78"><mml:msub><mml:mi>a</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> is the component of matrix <inline-formula id="ieqn-79"><mml:math id="mml-ieqn-79"><mml:mi mathvariant="bold-italic">A</mml:mi></mml:math></inline-formula>:
<disp-formula id="eqn-14"><label>(14)</label><mml:math id="mml-eqn-14" display="block"><mml:msub><mml:mi>a</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mtable columnalign="left left" rowspacing=".2em" columnspacing="1em" displaystyle="false"><mml:mtr><mml:mtd><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mrow><mml:mtext>&#xA0;if&#xA0;</mml:mtext></mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>&#x2208;</mml:mo><mml:mi>E</mml:mi></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mrow><mml:mtext>&#xA0;others&#xA0;</mml:mtext></mml:mrow></mml:mtd></mml:mtr></mml:mtable><mml:mo fence="true" stretchy="true" symmetric="true"></mml:mo></mml:mrow></mml:math></disp-formula>where <italic>E</italic> is the set of all undirected edges.</p>
<p><xref ref-type="fig" rid="fig-11">Fig. 11</xref> shows the process of obtaining the adjacency matrix from a structure. The structure in <xref ref-type="fig" rid="fig-11">Fig. 11a</xref> consists of six solid elements. <xref ref-type="fig" rid="fig-11">Fig. 11b</xref> is converted to an undirected graph <italic>G</italic>, where each element represents a vertex of <italic>G</italic>. If two elements are adjacent, they are connected by a black line. It should be noted that the elements may be connected by a single node or an edge, both of which indicate that the elements are adjacent. <xref ref-type="fig" rid="fig-11">Fig. 11c</xref> shows the adjacency matrix <inline-formula id="ieqn-80"><mml:math id="mml-ieqn-80"><mml:mi mathvariant="bold-italic">A</mml:mi></mml:math></inline-formula> of <italic>G</italic>.</p>
<fig id="fig-11"><label>Figure 11</label><caption><title>Schematic diagram of adjacency matrix calculation: (a) A structure consisting of six elements. (b) Graph <italic>G</italic> with 6 vertices and 9 edges. (c) The adjacency matrix of <inline-formula id="ieqn-112"><mml:math id="mml-ieqn-112"><mml:mi>G</mml:mi></mml:math></inline-formula></title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-11.png"/></fig>
<p>For a structured grid, the coding rules of elements and their nodes are generally fixed and regular. For example, the simplest coding method is to encode from top to bottom and from left to right. We can evaluate whether the two elements are adjacent by evaluating whether there is a common node between the two elements, and the adjacency matrix of the elements can be established by this information.</p>
</sec>
<sec id="s3_2_2"><label>3.2.2</label><title>Fire-Burning Method</title>
<p>The process of the fire-burning method is as follows:
<list list-type="simple">
<list-item><label>(1) </label><p>Determine an element as the initial burning point;</p></list-item>
<list-item><label>(2) </label><p>Search the adjacent untraversed elements with the same density as the current burning points; these elements are regarded as the new burning points.</p></list-item>
<list-item><label>(3) </label><p>Iterate Step 2 until there are no more qualified elements around the current burning points. All the elements in the current region can be found by the iteration. <xref ref-type="fig" rid="fig-12">Fig. 12</xref> graphically depicts the process of Step 2 and Step 3.</p></list-item>
<list-item><label>(4) </label><p>Determine an untraversed element as a new burning point, and repeat Steps 2 and 3.</p></list-item>
<list-item><label>(5) </label><p>Once there are no untraversed elements in the design domain, the process ends, and all the regions have been found.</p></list-item>
</list></p>
<fig id="fig-12"><label>Figure 12</label><caption><title>The process of the fire-burning method for finding a region</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-12.png"/></fig>
</sec>
<sec id="s3_2_3"><label>3.2.3</label><title>Identification and Processing of Island</title>
<p>Since all the regions have been found, we can determine whether a region is an island by evaluating whether there are constrained points or load points in the region. Considering little contribution to the objective function and adverse effects on the numerical stability, we group islands into weak regions for FEA.</p>
</sec>
</sec>
</sec>
<sec id="s4"><label>4</label><title>Numerical Examples and Discussion</title>
<p>In this section, the concept of a conditional number is introduced to measure the ill conditioning of a system, and three examples are performed to verify the effectiveness of the proposed method. The first one is the short beam example; the second one is the C-shape plate example [<xref ref-type="bibr" rid="ref-46">46</xref>]; the third one is the cantilever beam. All the materials in the examples are isotropic, and the material constants used are elastic modulus <inline-formula id="ieqn-81"><mml:math id="mml-ieqn-81"><mml:mi>E</mml:mi><mml:mo>=</mml:mo><mml:mn>1.0</mml:mn></mml:math></inline-formula> and Poisson&#x2019;s ratio <inline-formula id="ieqn-82"><mml:math id="mml-ieqn-82"><mml:mi>&#x03BD;</mml:mi><mml:mo>=</mml:mo><mml:mn>0.3</mml:mn></mml:math></inline-formula>.</p>
<sec id="s4_1"><label>4.1</label><title>Condition Number</title>
<p>The condition number of a matrix is a well-known measure of ill conditioning. For an <inline-formula id="ieqn-83"><mml:math id="mml-ieqn-83"><mml:mi>n</mml:mi><mml:mo>&#x00D7;</mml:mo><mml:mi>n</mml:mi></mml:math></inline-formula> matrix <inline-formula id="ieqn-84"><mml:math id="mml-ieqn-84"><mml:mrow><mml:mi mathvariant="bold">K</mml:mi></mml:mrow></mml:math></inline-formula>, its condition number is:
<disp-formula id="eqn-15"><label>(15)</label><mml:math id="mml-eqn-15" display="block"><mml:mi>&#x03BA;</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mrow><mml:mi mathvariant="bold">K</mml:mi></mml:mrow><mml:mo>)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mrow><mml:mo>|</mml:mo><mml:mrow><mml:mo>|</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="bold">K</mml:mi></mml:mrow><mml:mrow><mml:mo>&#x2212;</mml:mo><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:mrow></mml:msup><mml:mo>|</mml:mo></mml:mrow><mml:mo>|</mml:mo></mml:mrow><mml:mrow><mml:mo>|</mml:mo><mml:mrow><mml:mo>|</mml:mo><mml:mrow><mml:mi mathvariant="bold">K</mml:mi></mml:mrow><mml:mo>|</mml:mo></mml:mrow><mml:mo>|</mml:mo></mml:mrow></mml:math></disp-formula>where <inline-formula id="ieqn-85"><mml:math id="mml-ieqn-85"><mml:mrow><mml:mo>|</mml:mo><mml:mrow><mml:mo>|</mml:mo><mml:mo>&#x22C5;</mml:mo><mml:mo>|</mml:mo></mml:mrow><mml:mo>|</mml:mo></mml:mrow></mml:math></inline-formula> is any matrix norm. If the matrix <inline-formula id="ieqn-86"><mml:math id="mml-ieqn-86"><mml:mrow><mml:mi mathvariant="bold">K</mml:mi></mml:mrow></mml:math></inline-formula> is singular, we usually regard the condition number as infinite [<xref ref-type="bibr" rid="ref-47">47</xref>].</p>
<p>When considering the static small deformation problem, the design domain is discretized by the FE mesh, and the governing equation can be expressed by a linear equation:
<disp-formula id="eqn-16"><label>(16)</label><mml:math id="mml-eqn-16" display="block"><mml:mrow><mml:mi mathvariant="bold">K</mml:mi><mml:mi mathvariant="bold">u</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mrow><mml:mi mathvariant="bold">f</mml:mi></mml:mrow></mml:math></disp-formula>where <inline-formula id="ieqn-87"><mml:math id="mml-ieqn-87"><mml:mrow><mml:mi mathvariant="bold">u</mml:mi></mml:mrow></mml:math></inline-formula> and <inline-formula id="ieqn-88"><mml:math id="mml-ieqn-88"><mml:mrow><mml:mi mathvariant="bold">f</mml:mi></mml:mrow></mml:math></inline-formula> are the displacement vector and the load vector, respectively, and <inline-formula id="ieqn-89"><mml:math id="mml-ieqn-89"><mml:mrow><mml:mi mathvariant="bold">K</mml:mi></mml:mrow></mml:math></inline-formula> is the global stiffness matrix that is assembled by element stiffness matrices.</p>
<p>In SERA, the element stiffness matrix is expressed as follows:
<disp-formula id="eqn-17"><label>(17)</label><mml:math id="mml-eqn-17" display="block"><mml:msub><mml:mrow><mml:mi mathvariant="bold">K</mml:mi></mml:mrow><mml:mrow><mml:mi>e</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mi>&#x03C1;</mml:mi><mml:mrow><mml:mi>e</mml:mi></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mi mathvariant="bold">K</mml:mi></mml:mrow><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub></mml:math></disp-formula>where <inline-formula id="ieqn-90"><mml:math id="mml-ieqn-90"><mml:msub><mml:mi>&#x03C1;</mml:mi><mml:mrow><mml:mi>e</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mrow><mml:mtext>&#xA0;or&#xA0;</mml:mtext></mml:mrow><mml:msub><mml:mi>&#x03C1;</mml:mi><mml:mrow><mml:mo movablelimits="true" form="prefix">min</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula> means that the element is a solid element or a weak element and <inline-formula id="ieqn-91"><mml:math id="mml-ieqn-91"><mml:msub><mml:mrow><mml:mi mathvariant="bold">K</mml:mi></mml:mrow><mml:mrow><mml:mn>0</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula> is the stiffness matrix of the solid element. It is easy to evaluate from <xref ref-type="disp-formula" rid="eqn-15">Eqs. (15)</xref>&#x2013;<xref ref-type="disp-formula" rid="eqn-17">(17)</xref> that the condition number of <inline-formula id="ieqn-92"><mml:math id="mml-ieqn-92"><mml:mrow><mml:mi mathvariant="bold">K</mml:mi></mml:mrow></mml:math></inline-formula> is related to the ratio of the maximum and minimum elemental density in the design domain. By convention, the density of the solid element is usually set to one. If the density of the weak element decreases, the condition number of the corresponding stiffness matrix will increase.</p>
<p>A simple example can illustrate this. <xref ref-type="fig" rid="fig-13">Fig. 13</xref> shows an optimal structural topology of the short beam example. The density of the solid element is one, and the density of the weak element varies from 10<sup>&#x2212;9</sup> to 10<sup>&#x2212;30</sup>. The condition number of the global stiffness matrix changes as <xref ref-type="fig" rid="fig-14">Fig. 14</xref> shows. According to the curve, the logarithm of the weak elemental density is proportional to the logarithm of the condition number of <inline-formula id="ieqn-93"><mml:math id="mml-ieqn-93"><mml:mrow><mml:mi mathvariant="bold">K</mml:mi></mml:mrow></mml:math></inline-formula>.</p>
<fig id="fig-13"><label>Figure 13</label><caption><title>A structure consisting of solid materials and weak materials</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-13.png"/></fig>
<fig id="fig-14"><label>Figure 14</label><caption><title>The curve of the condition number changing with the density of the weak elements</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-14.png"/></fig>
<p>Since the condition number of the global stiffness matrix is a direct parameter to measure numerical stability, it can be seen from the above that two cases can lead to ill-conditioned systems:
<list list-type="simple">
<list-item><label>(1) </label><p>An extremely small ratio of the minimum and maximum densities.</p></list-item>
<list-item><label>(2) </label><p>Local unstable structures.</p></list-item>
</list></p>
<p>The method proposed in <xref ref-type="sec" rid="s2">Section 2</xref> can completely solve the first case. The second case can be solved by the strategies introduced in <xref ref-type="sec" rid="s3">Section 3</xref>.</p>
</sec>
<sec id="s4_2"><label>4.2</label><title>Short Beam</title>
<p>The load and support conditions of the short beam example are shown in <xref ref-type="fig" rid="fig-14">Fig. 14</xref>. The design domain is discretized by 100&#x2009;&#x00D7;&#x2009;50 rectangular elements. The upper limit of the volume fraction is 0.3, and the filter radius is 0.04.</p>
<p>In SERA, the optimal structure can usually be obtained faster by deleting materials than by adding materials. Therefore, the initial structures in the subsequent examples are all composed of solid elements. In the first half of the optimization process, the solid elements are gradually rejected until the volume constraint is met, and then the same amounts of solid elements and weak elements are increased or decreased until convergence.</p>
<fig id="fig-15"><label>Figure 15</label><caption><title>The design domain and boundary conditions for the cantilever beam: (a) The load is applied to the lower right corner. (b) The load is applied to the midpoint of the right boundary</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-15.png"/></fig>
<p>In this example, four values, 10<sup>&#x2212;9</sup>, 10<sup>&#x2212;18</sup>, 10<sup>&#x2212;27</sup>, and 10<sup>&#x2212;36</sup>, are selected as the design values <inline-formula id="ieqn-94"><mml:math id="mml-ieqn-94"><mml:msub><mml:mi>&#x03C1;</mml:mi><mml:mrow><mml:mo movablelimits="true" form="prefix">min</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula> of the weak elements, and the original SERA method is also conducted for comparison. The iteration curves in <xref ref-type="fig" rid="fig-16">Figs. 16</xref> and <xref ref-type="fig" rid="fig-17">17</xref> show that the order of the condition numbers almost increases inversely with the decrease in <inline-formula id="ieqn-95"><mml:math id="mml-ieqn-95"><mml:msub><mml:mi>&#x03C1;</mml:mi><mml:mrow><mml:mo movablelimits="true" form="prefix">min</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula>, which confirms the conclusion in <xref ref-type="sec" rid="s4_1">Section 4.1</xref>. The iteration path also changes as <inline-formula id="ieqn-96"><mml:math id="mml-ieqn-96"><mml:msub><mml:mi>&#x03C1;</mml:mi><mml:mrow><mml:mo movablelimits="true" form="prefix">min</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula> changes. Occasionally, the condition number or objective function will increase dramatically in a step (shown in <xref ref-type="fig" rid="fig-16">Figs. 16c</xref>, <xref ref-type="fig" rid="fig-16">16d</xref> and <xref ref-type="fig" rid="fig-17">17b</xref>&#x2013;<xref ref-type="fig" rid="fig-17">17d</xref>), which may greatly affect the iterative process and the optimal topology. <xref ref-type="fig" rid="fig-17">Fig. 17</xref> shows the structural topology and displacement field in the abnormal step. There are nonmanifold points and islands in the position framed by the dotted lines in <xref ref-type="fig" rid="fig-18">Figs. 18a</xref> and <xref ref-type="fig" rid="fig-18">18c</xref> and abnormally large displacement values in the corresponding positions in <xref ref-type="fig" rid="fig-18">Figs. 18b</xref> and <xref ref-type="fig" rid="fig-18">18d</xref>. According to <xref ref-type="fig" rid="fig-16">Figs. 16e</xref>&#x2013;<xref ref-type="fig" rid="fig-16">16h</xref> and <xref ref-type="fig" rid="fig-17">17e</xref>&#x2013;<xref ref-type="fig" rid="fig-17">17h</xref>, after solving the nonmanifold points and islands, the condition number can be controlled from 10<sup>4</sup> to 10<sup>7</sup> by the proposed method and is not affected by <inline-formula id="ieqn-97"><mml:math id="mml-ieqn-97"><mml:msub><mml:mi>&#x03C1;</mml:mi><mml:mrow><mml:mo movablelimits="true" form="prefix">min</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula>.</p>
<fig id="fig-16"><label>Figure 16</label><caption><title>Iteration history of the model in <xref ref-type="fig" rid="fig-15">Fig. 15a</xref>: (a)&#x2013;(d) are the iteration histories with the four densities of weak elements conducted by the original SERA; (e)&#x2013;(h) are the iteration histories with the four densities of weak elements conducted by the proposed method</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-16a.png"/><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-16b.png"/></fig>
<p><xref ref-type="fig" rid="fig-19 fig-20 fig-21 fig-22">Figs. 19&#x2013;22</xref> show the optimal topologies and corresponding objective values. In summary, the optimal results obtained by the original SERA method are affected by <inline-formula id="ieqn-98"><mml:math id="mml-ieqn-98"><mml:msub><mml:mi>&#x03C1;</mml:mi><mml:mrow><mml:mo movablelimits="true" form="prefix">min</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula>. Once <inline-formula id="ieqn-99"><mml:math id="mml-ieqn-99"><mml:msub><mml:mi>&#x03C1;</mml:mi><mml:mrow><mml:mo movablelimits="true" form="prefix">min</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula> drops to 10<sup>&#x2212;36</sup>, the optimal topology changes prominently. <xref ref-type="fig" rid="fig-17">Figs. 17</xref> and <xref ref-type="fig" rid="fig-19">19</xref> show that the optimal topologies are almost unchanged as <inline-formula id="ieqn-100"><mml:math id="mml-ieqn-100"><mml:msub><mml:mi>&#x03C1;</mml:mi><mml:mrow><mml:mo movablelimits="true" form="prefix">min</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula> varies. Theoretically, the proposed method allows <inline-formula id="ieqn-101"><mml:math id="mml-ieqn-101"><mml:msub><mml:mi>&#x03C1;</mml:mi><mml:mrow><mml:mo movablelimits="true" form="prefix">min</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula> to be arbitrarily decreased with no effect on the optimization.</p>
<fig id="fig-17"><label>Figure 17</label><caption><title>Iteration history of the design model in <xref ref-type="fig" rid="fig-15">Fig. 15b</xref>: (a)&#x2013;(d) are the iteration histories with the four densities of weak elements obtained by the original SERA; (e)&#x2013;(h) are the iteration histories with the four densities of weak elements obtained by the proposed method</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-17a.png"/><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-17b.png"/></fig>
<fig id="fig-18"><label>Figure 18</label><caption><title>Structural topology and displacement field causing abnormal iteration: (a) and (b) correspond to the abnormal iteration step in <xref ref-type="fig" rid="fig-16">Figs. 16c</xref> and <xref ref-type="fig" rid="fig-16">16d</xref>; (c) and (d) correspond to the abnormal iteration step in <xref ref-type="fig" rid="fig-17">Figs. 17b</xref>&#x2013;<xref ref-type="fig" rid="fig-17">17d</xref></title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-18.png"/></fig>
<fig id="fig-19"><label>Figure 19</label><caption><title>Optimal results of the design model in <xref ref-type="fig" rid="fig-15">Fig. 15a</xref> with the four densities of weak elements obtained by the original SERA</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-19.png"/></fig>
<p>To verify the computational efficiency of the proposed method, the computational time is counted. The original SERA consumed 9.8 and 18.4&#x2005;s for computing the two examples in <xref ref-type="fig" rid="fig-15">Fig. 15</xref>; the proposed method consumed 18.0 and 23.2&#x2005;s for computing the two examples. Therefore, the proposed method is less efficient than the original SERA. From <xref ref-type="fig" rid="fig-23">Fig. 23</xref>, the time consumed by the proposed method in each iteration has a large oscillation, while in the original method, the time consumed in each iteration is relatively stable. It is well known that the most time-consuming process in optimization iteration is FEA. Since the number of elements in the two methods is the same, the time consumed by FEA is basically fixed. However, there is another time-consuming process in the proposed method: nonmanifold point processing. Since nonmanifold points do not appear at every step, nonmanifold point processing is also not performed at every step, which is the reason for the oscillation of the time-consumption curve.</p>
<fig id="fig-20"><label>Figure 20</label><caption><title>Optimal results of the design model in <xref ref-type="fig" rid="fig-15">Fig. 15a</xref> with the four densities of weak elements obtained by the proposed method</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-20.png"/></fig>
<fig id="fig-21"><label>Figure 21</label><caption><title>Optimal results of the design model in <xref ref-type="fig" rid="fig-15">Fig. 15b</xref> with the four densities of weak elements obtained by the original SERA</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-21.png"/></fig>
<p>In this example, we also verify the stability of the proposed method under different mesh densities. Three mesh densities are considered: 1) coarse, consisting of 100&#x2009;&#x00D7;&#x2009;50 rectangular elements; 2) medium, consisting of 200&#x2009;&#x00D7;&#x2009;100 rectangular elements; 3) fine, consisting of 300&#x2009;&#x00D7;&#x2009;150 rectangular elements. The loading position is shown in <xref ref-type="fig" rid="fig-15">Fig. 15a</xref>. The design value of the weak material is 10<sup>&#x2212;36</sup>. The results for the three cases are shown in <xref ref-type="fig" rid="fig-24">Fig. 24</xref>.</p>
<p>The optimal structural topologies are almost the same for the three mesh densities. Only the boundary smoothness and the size of local holes are slightly different. Therefore, the robustness of the proposed method is not affected by the mesh density. However, there is another factor to consider as the mesh density increases: in the proposed method, the nonmanifold point processing is time-consuming. Once the elements increase, the nonmanifold points may increase, which will reduce computational efficiency. To adapt to large-scale computation, we consider how to improve the efficiency of nonmanifold point processing in future work.</p>
<fig id="fig-22"><label>Figure 22</label><caption><title>Optimal results of the design model in <xref ref-type="fig" rid="fig-15">Fig. 15b</xref> with the four densities of weak elements obtained by the proposed method</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-22.png"/></fig>
<fig id="fig-23"><label>Figure 23</label><caption><title>Time consumption curves of the short beam examples: (a) <xref ref-type="fig" rid="fig-15">Fig. 15a</xref>. (b) <xref ref-type="fig" rid="fig-15">Fig. 15b</xref></title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-23.png"/></fig>
<fig id="fig-24"><label>Figure 24</label><caption><title>Short beam design for different mesh densities: (a) coarse; (b) medium; (c) fine mesh</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-24.png"/></fig>
</sec>
<sec id="s4_3"><label>4.3</label><title>C-Shape Plate</title>
<p>To verify the effectiveness of the proposed method for solving excessive mesh deformation under finite deformation, we considered an example proposed by Yoon&#x00A0;et&#x00A0;al.&#x00A0;[<xref ref-type="bibr" rid="ref-46">46</xref>] shown in <xref ref-type="fig" rid="fig-25">Fig. 25</xref>. The design domain is discretized by 60&#x2009;&#x00D7;&#x2009;60 rectangular elements, and the concentrated forces <inline-formula id="ieqn-102"><mml:math id="mml-ieqn-102"><mml:msub><mml:mi>f</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>0.02</mml:mn></mml:math></inline-formula> and <inline-formula id="ieqn-103"><mml:math id="mml-ieqn-103"><mml:msub><mml:mi>f</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>0.03</mml:mn></mml:math></inline-formula> are loaded. The elastic modulus <italic>E</italic> of solid is one, and Poisson&#x2019;s ratio <inline-formula id="ieqn-104"><mml:math id="mml-ieqn-104"><mml:mi>&#x03BD;</mml:mi></mml:math></inline-formula> is 0.3. The design value of weak material <inline-formula id="ieqn-105"><mml:math id="mml-ieqn-105"><mml:msub><mml:mi>&#x03C1;</mml:mi><mml:mrow><mml:mo movablelimits="true" form="prefix">min</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula> is <inline-formula id="ieqn-106"><mml:math id="mml-ieqn-106"><mml:msup><mml:mn>10</mml:mn><mml:mrow><mml:mo>&#x2212;</mml:mo><mml:mn>9</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula>.</p>
<fig id="fig-25"><label>Figure 25</label><caption><title>The design domain and boundary conditions for the C-shaped plate</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-25.png"/></fig>
<p>For better comparison, we analyzed the structure for the following three options: (1) geometric linearity or geometric nonlinearity; (2) inclusion or exclusion of weak regions; and (3) with or without a region partition strategy. The results are shown in <xref ref-type="fig" rid="fig-26">Fig. 26</xref>. The corresponding settings and convergence for <xref ref-type="fig" rid="fig-26">Figs. 26a</xref>&#x2013;<xref ref-type="fig" rid="fig-26">26e</xref> are shown in <xref ref-type="table" rid="table-1">Table 1</xref>.</p>
<fig id="fig-26"><label>Figure 26</label><caption><title>The scalar displacement field and deformed mesh of the C-shaped plate</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-26a.png"/><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-26b.png"/></fig>
<table-wrap id="table-1"><label>Table 1</label><caption><title>Corresponding settings and convergence for all the results in <xref ref-type="fig" rid="fig-26">Fig. 26</xref></title></caption>
<table frame="hsides">
<colgroup>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
</colgroup>
<thead>
<tr>
<th align="left"><xref ref-type="fig" rid="fig-26">Fig. 26</xref></th>
<th align="left">Geometric nonlinearity</th>
<th align="left">Weak regions</th>
<th align="left">Region partition</th>
<th align="left">Convergence</th>
</tr>
</thead>
<tbody>
<tr>
<td align="left"><inline-formula id="ieqn-113"><mml:math id="mml-ieqn-113"><mml:mrow><mml:mtext>a</mml:mtext></mml:mrow></mml:math></inline-formula></td>
<td align="left">&#x00D7;</td>
<td align="left">&#x00D7;</td>
<td align="left">-</td>
<td align="left">&#x221A;</td>
</tr>
<tr>
<td align="left"><inline-formula id="ieqn-114"><mml:math id="mml-ieqn-114"><mml:mrow><mml:mtext>b</mml:mtext></mml:mrow></mml:math></inline-formula></td>
<td align="left">&#x221A;</td>
<td align="left">&#x00D7;</td>
<td align="left">-</td>
<td align="left">&#x221A;</td>
</tr>
<tr>
<td align="left"><inline-formula id="ieqn-115"><mml:math id="mml-ieqn-115"><mml:mrow><mml:mtext>c</mml:mtext></mml:mrow></mml:math></inline-formula></td>
<td align="left">&#x00D7;</td>
<td align="left">&#x221A;</td>
<td align="left">&#x00D7;</td>
<td align="left">&#x221A;</td>
</tr>
<tr>
<td align="left"><inline-formula id="ieqn-116"><mml:math id="mml-ieqn-116"><mml:mrow><mml:mtext>d</mml:mtext></mml:mrow></mml:math></inline-formula></td>
<td align="left">&#x221A;</td>
<td align="left">&#x221A;</td>
<td align="left">&#x00D7;</td>
<td align="left">&#x00D7;</td>
</tr>
<tr>
<td align="left"><inline-formula id="ieqn-117"><mml:math id="mml-ieqn-117"><mml:mrow><mml:mtext>e</mml:mtext></mml:mrow></mml:math></inline-formula></td>
<td align="left">&#x221A;</td>
<td align="left">&#x221A;</td>
<td align="left">&#x221A;</td>
<td align="left">&#x221A;</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>When no weak region is included (<xref ref-type="fig" rid="fig-26">Figs. 26a</xref> and <xref ref-type="fig" rid="fig-26">26b</xref>), convergence can be achieved by a geometric linear or geometric nonlinear model. However, the maximum deformation of the former is larger than that of the latter. In addition, the rods on the upper side of the structure in <xref ref-type="fig" rid="fig-26">Fig. 26a</xref> have become significantly thicker, which is obviously unreasonable. When considering weak regions, the result of the solid regions remains the same under the geometric linear model (<xref ref-type="fig" rid="fig-26">Fig. 26c</xref>). However, in the geometric nonlinear model, the analysis process does not converge due to excessive mesh deformation (<xref ref-type="fig" rid="fig-26">Fig. 26d</xref>). After adopting region recognition, nonlinear theory and linear theory are applied to the solid regions and weak regions, respectively. As shown in <xref ref-type="fig" rid="fig-26">Figs. 26b</xref> and <xref ref-type="fig" rid="fig-26">26e</xref>, the results are exactly the same in the solid regions, which illustrates that the proposed method guarantees that excessive mesh deformation in the weak regions has no influence on nonlinear analysis so that convergence can be achieved.</p>
<p>Now, we apply the topology optimization method with a region partitioning strategy to this problem. The design domain and boundary conditions are still consistent with the model in <xref ref-type="fig" rid="fig-25">Fig. 25</xref>. The filter radius r&#x2009;&#x003D;&#x2009;0.25. The volume fraction constraint is 0.28. Two initial structures (<xref ref-type="fig" rid="fig-27">Figs. 27a</xref> and <xref ref-type="fig" rid="fig-27">27c</xref>) are tested for optimization: in one, the design area is completely covered by solid elements with a volume fraction of one; the other is the same as the model in <xref ref-type="fig" rid="fig-25">Fig. 25</xref>, with a volume fraction of 0.28.</p>
<fig id="fig-27"><label>Figure 27</label><caption><title>The optimal structures of the C-shaped plate obtained from two initial structures</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-27.png"/></fig>
<p>As shown in <xref ref-type="fig" rid="fig-27">Figs. 27b</xref> and <xref ref-type="fig" rid="fig-27">27d</xref>, there are some differences in the optimal structures. The first optimal structure is identical to that obtained by Lahuerta&#x00A0;et&#x00A0;al.&#x00A0;[<xref ref-type="bibr" rid="ref-48">48</xref>]. The second one, which is close to the first one, is significantly worse. The reason is that the second initial structure is much different from the optimal structure and falls into a local solution. However, under the first initial structure, there is no excessive deformation in the optimization process, and nonconvergence caused by mesh distortion did not occur. To verify the proposed algorithm, the second initial structure is optimized, and the mesh deformation is captured during the optimization process, as shown in <xref ref-type="fig" rid="fig-28">Fig. 28</xref>. Although excessive mesh deformation exists in the first three steps, the optimization iteration is not adversely affected.</p>
<fig id="fig-28"><label>Figure 28</label><caption><title>Deformed mesh in iteration: blue elements are solid elements; red elements are weak elements</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-28.png"/></fig>
</sec>
<sec id="s4_4"><label>4.4</label><title>Cantilever Beam</title>
<p>The design domain and boundary condition of the cantilever beam are shown in <xref ref-type="fig" rid="fig-29">Fig. 29</xref>. The design domain is discretized by 120&#x2009;&#x00D7;&#x2009;30 rectangular elements. The magnitudes of the concentrated load are 0.0002, 0.0005, 0.0007 and 0.001. The initial volume fraction is 1.0, and the volume fraction constraint is 0.5. The design value <inline-formula id="ieqn-107"><mml:math id="mml-ieqn-107"><mml:msub><mml:mi>&#x03C1;</mml:mi><mml:mrow><mml:mo movablelimits="true" form="prefix">min</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula> of the weak material is <inline-formula id="ieqn-108"><mml:math id="mml-ieqn-108"><mml:msup><mml:mn>10</mml:mn><mml:mrow><mml:mo>&#x2212;</mml:mo><mml:mn>9</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula>, and the filter radius <italic>r</italic> is 0.014.</p>
<fig id="fig-29"><label>Figure 29</label><caption><title>The design domain and boundary condition for the cantilever beam</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-29.png"/></fig>
<p>In this example, we verify the difference in optimization results under geometric linear and geometric nonlinear assumptions based on a region partitioning strategy. The effects of different loads on the topology optimization results are examined simultaneously. The results are shown in <xref ref-type="fig" rid="fig-30">Fig. 30</xref>. On the first two lines in <xref ref-type="fig" rid="fig-30">Fig. 30</xref>, we compare the optimal structures and objective values for different loads in linear and nonlinear solutions and obtained the following conclusions: (1) As expected, under the assumption of geometric linearity, the value of concentrated force does not affect the optimal topology; (2) Under the assumption of geometric nonlinearity, the optimal topology varies substantially with the load value. When the load value is very large, its result is notably different from the geometric linear solution. (3) The objective function values in geometric linear solutions and geometric nonlinear solutions are different. When the load value <italic>f</italic> is 0.001, the objective value of the geometric linear solution is only 17&#x0025; of that of the geometric nonlinear solution.</p>
<fig id="fig-30"><label>Figure 30</label><caption><title>Optimized structure and deformed mesh for different loads</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-30.png"/></fig>
<p>The third line in <xref ref-type="fig" rid="fig-30">Fig. 30</xref> shows the final deformation mesh of the geometric nonlinear solution. When the load is 0.001, the weak elements around the loading point are clearly excessively deformed (<xref ref-type="fig" rid="fig-31">Fig. 31</xref>). Due to the introduction of the region partitioning strategy, the weak regions are solved by a linear algorithm so that nonconvergence does not occur and the optimal structure can be obtained.</p>
<fig id="fig-31"><label>Figure 31</label><caption><title>Excessive deformation of weak elements</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMES_25153-fig-31.png"/></fig>
</sec>
</sec>
<sec id="s5"><label>5</label><title>Conclusions</title>
<p>Numerical instability problems caused by a material interpolation model in the weak region are considered in this paper. A topology optimization model with geometrical region partitioning and the corresponding FEA procedure is proposed. Numerical strategies to identify nonmanifold points and island structures are discussed, and numerical instability during the optimization procedure can be alleviated by properly addressing the nonmanifold points. Numerical examples illustrate that the proposed method can solve the ill-conditioned matrix problem in FEA and nonconvergence phenomena caused by excessive mesh deformation in finite deformation. The region partition strategy proposed in this paper can be implemented from SERA to other topology optimization methods, such as the SIMP method and boundary evolution type method.</p>
</sec>
</body>
<back>
<fn-group>
<fn fn-type="other"><p><bold>Funding Statement:</bold> This work was supported by the National Science Foundation of China (Grant No. 51675506).</p></fn>
<fn fn-type="conflict"><p><bold>Conflicts of Interest:</bold> The authors declare that they have no conflicts of interest to report regarding the present study.</p></fn>
</fn-group>
<ref-list content-type="authoryear">
<title>References</title>
<ref id="ref-1"><label>1.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Bendsoe</surname>, <given-names>M. P.</given-names></string-name>, <string-name><surname>Kikuchi</surname>, <given-names>N.</given-names></string-name></person-group> (<year>1988</year>). <article-title>Generating optimal topologies in structural design using a homogenization method</article-title>. <source>Computer Methods in Applied Mechanics and Engineering</source><italic>,</italic> <volume>71</volume><italic>,</italic> <fpage>197</fpage>&#x2013;<lpage>224</lpage>. DOI <pub-id pub-id-type="doi">10.1016/0045-7825(88)90086-2</pub-id>.</mixed-citation></ref>
<ref id="ref-2"><label>2.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Zhou</surname>, <given-names>M.</given-names></string-name>, <string-name><surname>Rozvany</surname>, <given-names>G.</given-names></string-name></person-group> (<year>1991</year>). <article-title>The COC algorithm, part &#x2161;: Topological, geometrical and generalized shape optimization</article-title>. <source>Computer Methods in Applied Mechanics and Engineering</source><italic>,</italic> <volume>89</volume><issue>(1&#x2013;3)</issue><italic>,</italic> <fpage>309</fpage>&#x2013;<lpage>336</lpage>. DOI <pub-id pub-id-type="doi">10.1016/0045-7825(91)90046-9</pub-id>.</mixed-citation></ref>
<ref id="ref-3"><label>3.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Allaire</surname>, <given-names>G.</given-names></string-name>, <string-name><surname>Jouve</surname>, <given-names>F.</given-names></string-name>, <string-name><surname>Toader</surname>, <given-names>A. M.</given-names></string-name></person-group> (<year>2002</year>). <article-title>A level-set method for shape optimization</article-title>. <source>Comptes Rendus Mathematique</source><italic>,</italic> <volume>334</volume><issue>(12)</issue><italic>,</italic> <fpage>1125</fpage>&#x2013;<lpage>1130</lpage>. DOI <pub-id pub-id-type="doi">10.1016/S1631-073X(02)02412-3</pub-id>.</mixed-citation></ref>
<ref id="ref-4"><label>4.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Wang</surname>, <given-names>M. Y.</given-names></string-name>, <string-name><surname>Wang</surname>, <given-names>X.</given-names></string-name>, <string-name><surname>Guo</surname>, <given-names>D.</given-names></string-name></person-group> (<year>2003</year>). <article-title>A level set method for structural topology optimization</article-title>. <source>Computer Methods in Applied Mechanics and Engineering</source><italic>,</italic> <volume>192</volume><issue>(1&#x2013;2)</issue><italic>,</italic> <fpage>227</fpage>&#x2013;<lpage>246</lpage>. DOI <pub-id pub-id-type="doi">10.1016/S0045-7825(02)00559-5</pub-id>.</mixed-citation></ref>
<ref id="ref-5"><label>5.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Eschenauer</surname>, <given-names>H. A.</given-names></string-name>, <string-name><surname>Kobelev</surname>, <given-names>V. V.</given-names></string-name>, <string-name><surname>Schumacher</surname>, <given-names>A.</given-names></string-name></person-group> (<year>1994</year>). <article-title>Bubble method for topology and shape optimization of structures</article-title>. <source>Structural and Multidisciplinary Optimization</source><italic>,</italic> <volume>8</volume><issue>(1)</issue><italic>,</italic> <fpage>42</fpage>&#x2013;<lpage>51</lpage>. DOI <pub-id pub-id-type="doi">10.1007/BF01742933</pub-id>.</mixed-citation></ref>
<ref id="ref-6"><label>6.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Wang</surname>, <given-names>M. Y.</given-names></string-name>, <string-name><surname>Zhou</surname>, <given-names>S.</given-names></string-name></person-group> (<year>2004</year>). <article-title>Phase field: A variational method for structural topology optimization</article-title>. <source>Computer Modeling in Engineering &#x0026; Sciences</source><italic>,</italic> <volume>6</volume><issue>(6)</issue><italic>,</italic> <fpage>547</fpage>&#x2013;<lpage>566</lpage>. DOI <pub-id pub-id-type="doi">10.3970/cmes.2004.006.547</pub-id>.</mixed-citation></ref>
<ref id="ref-7"><label>7.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Yamada</surname>, <given-names>T.</given-names></string-name>, <string-name><surname>Izui</surname>, <given-names>K.</given-names></string-name>, <string-name><surname>Nishiwaki</surname>, <given-names>S.</given-names></string-name>, <string-name><surname>Takezawa</surname>, <given-names>A.</given-names></string-name></person-group> (<year>2010</year>). <article-title>A topology optimization method based on the level set method incorporating a fictitious interface energy</article-title>. <source>Computer Methods in Applied Mechanics and Engineering</source><italic>,</italic> <volume>199</volume><issue>(45&#x2013;48)</issue><italic>,</italic> <fpage>2876</fpage>&#x2013;<lpage>2891</lpage>. DOI <pub-id pub-id-type="doi">10.1016/j.cma.2010.05.013</pub-id>.</mixed-citation></ref>
<ref id="ref-8"><label>8.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Guo</surname>, <given-names>X.</given-names></string-name>, <string-name><surname>Zhang</surname>, <given-names>W.</given-names></string-name>, <string-name><surname>Zhong</surname>, <given-names>W.</given-names></string-name></person-group> (<year>2014</year>). <article-title>Doing topology optimization explicitly and geometrically&#x2014;A new moving morphable components based framework</article-title>. <source>Journal of Applied Mechanics</source><italic>,</italic> <volume>81</volume><issue>(8)</issue><italic>,</italic> <fpage>1</fpage>. DOI <pub-id pub-id-type="doi">10.1115/1.4027609</pub-id>.</mixed-citation></ref>
<ref id="ref-9"><label>9.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Zhang</surname>, <given-names>W.</given-names></string-name>, <string-name><surname>Yuan</surname>, <given-names>J.</given-names></string-name>, <string-name><surname>Zhang</surname>, <given-names>J.</given-names></string-name>, <string-name><surname>Guo</surname>, <given-names>X.</given-names></string-name></person-group> (<year>2016</year>). <article-title>A new topology optimization approach based on moving morphable components (MMC) and the ersatz material model</article-title>. <source>Structural and Multidisciplinary Optimization</source><italic>,</italic> <volume>53</volume><issue>(6)</issue><italic>,</italic> <fpage>1243</fpage>&#x2013;<lpage>1260</lpage>. DOI <pub-id pub-id-type="doi">10.1007/s00158-015-1372-3</pub-id>.</mixed-citation></ref>
<ref id="ref-10"><label>10.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Du</surname>, <given-names>Z.</given-names></string-name>, <string-name><surname>Cui</surname>, <given-names>T.</given-names></string-name>, <string-name><surname>Liu</surname>, <given-names>C.</given-names></string-name>, <string-name><surname>Zhang</surname>, <given-names>W.</given-names></string-name>, <string-name><surname>Guo</surname>, <given-names>Y.</given-names></string-name> <etal>et al.</etal></person-group> (<year>2022</year>). <article-title>An efficient and easy-to-extend matlab code of the moving morphable component (MMC) method for three-dimensional topology optimization</article-title>. <source>Structural and Multidisciplinary Optimization</source><italic>,</italic> <volume>65</volume><italic>,</italic> <fpage>158</fpage>. DOI <pub-id pub-id-type="doi">10.1007/s00158-022-03239-4</pub-id>.</mixed-citation></ref>
<ref id="ref-11"><label>11.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Bends&#x00F8;e</surname>, <given-names>M. P.</given-names></string-name>, <string-name><surname>Sigmund</surname>, <given-names>O.</given-names></string-name></person-group> (<year>1999</year>). <article-title>Material interpolation schemes in topology optimization</article-title>. <source>Archive of Applied Mechanics</source><italic>,</italic> <volume>69</volume><issue>(9)</issue><italic>,</italic> <fpage>635</fpage>&#x2013;<lpage>654</lpage>.</mixed-citation></ref>
<ref id="ref-12"><label>12.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Xie</surname>, <given-names>Y. M.</given-names></string-name>, <string-name><surname>Steven</surname>, <given-names>G. P.</given-names></string-name></person-group> (<year>1993</year>). <article-title>A simple evolutionary procedure for structural optimization</article-title>. <source>Computers &#x0026; Structures</source><italic>,</italic> <volume>49</volume><issue>(5)</issue><italic>,</italic> <fpage>885</fpage>&#x2013;<lpage>896</lpage>. DOI <pub-id pub-id-type="doi">10.1016/0045-7949(93)90035-C</pub-id>.</mixed-citation></ref>
<ref id="ref-13"><label>13.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Liang</surname>, <given-names>Y.</given-names></string-name>, <string-name><surname>Cheng</surname>, <given-names>G.</given-names></string-name></person-group> (<year>2019</year>). <article-title>Topology optimization via sequential integer programming and canonical relaxation algorithm</article-title>. <source>Computer Methods in Applied Mechanics and Engineering</source><italic>,</italic> <volume>348</volume><italic>,</italic> <fpage>64</fpage>&#x2013;<lpage>96</lpage>. DOI <pub-id pub-id-type="doi">10.1016/j.cma.2018.10.050</pub-id>.</mixed-citation></ref>
<ref id="ref-14"><label>14.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Deaton</surname>, <given-names>J. D.</given-names></string-name>, <string-name><surname>Grandhi</surname>, <given-names>R. V.</given-names></string-name></person-group> (<year>2014</year>). <article-title>A survey of structural and multidisciplinary continuum topology optimization: Post 2000</article-title>. <source>Structural and Multidisciplinary Optimization</source><italic>,</italic> <volume>49</volume><italic>,</italic> <fpage>1</fpage>&#x2013;<lpage>38</lpage>. DOI <pub-id pub-id-type="doi">10.1007/s00158-013-0956-z</pub-id>.</mixed-citation></ref>
<ref id="ref-15"><label>15.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Wang</surname>, <given-names>C.</given-names></string-name>, <string-name><surname>Zhao</surname>, <given-names>Z.</given-names></string-name>, <string-name><surname>Zhou</surname>, <given-names>M.</given-names></string-name>, <string-name><surname>Sigmund</surname>, <given-names>O.</given-names></string-name>, <string-name><surname>Zhang</surname>, <given-names>X. S.</given-names></string-name></person-group> (<year>2021</year>). <article-title>A comprehensive review of educational articles on structural and multidisciplinary optimization</article-title>. <source>Structural and Multidisciplinary Optimization</source><italic>,</italic> <volume>64</volume><italic>,</italic> <fpage>2827</fpage>&#x2013;<lpage>2880</lpage>. DOI <pub-id pub-id-type="doi">10.1007/s00158-021-03050-7</pub-id>.</mixed-citation></ref>
<ref id="ref-16"><label>16.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Querin</surname>, <given-names>O. M.</given-names></string-name>, <string-name><surname>Steven</surname>, <given-names>G. P.</given-names></string-name>, <string-name><surname>Xie</surname>, <given-names>Y. M.</given-names></string-name></person-group> (<year>1998</year>). <article-title>Evolutionary structural optimisation (ESO) using a bidirectional algorithm</article-title>. <source>Engineering Computations</source><italic>,</italic> <volume>15</volume><issue>(8)</issue><italic>,</italic> <fpage>1031</fpage>&#x2013;<lpage>1048</lpage>. DOI <pub-id pub-id-type="doi">10.1108/02644409810244129</pub-id>.</mixed-citation></ref>
<ref id="ref-17"><label>17.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Querin</surname>, <given-names>O. M.</given-names></string-name>, <string-name><surname>Young</surname>, <given-names>V.</given-names></string-name>, <string-name><surname>Steven</surname>, <given-names>G. P.</given-names></string-name>, <string-name><surname>Xie</surname>, <given-names>Y. M.</given-names></string-name></person-group> (<year>2000</year>). <article-title>Computational efficiency and validation of bi-directional evolutionary structural optimization</article-title>. <source>Computer Methods in Applied Mechanics and Engineering</source><italic>,</italic> <volume>189</volume><italic>,</italic> <fpage>559</fpage>&#x2013;<lpage>573</lpage>. DOI <pub-id pub-id-type="doi">10.1016/S0045-7825(99)00309-6</pub-id>.</mixed-citation></ref>
<ref id="ref-18"><label>18.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Yang</surname>, <given-names>X. Y.</given-names></string-name>, <string-name><surname>Xie</surname>, <given-names>Y. M.</given-names></string-name>, <string-name><surname>Steven</surname>, <given-names>G. P.</given-names></string-name>, <string-name><surname>Querin</surname>, <given-names>O. M.</given-names></string-name></person-group> (<year>1999</year>). <article-title>Bidirectional evolutionary method for stiffness optimization</article-title>. <source>AIAA Journal</source><italic>,</italic> <volume>11</volume><issue>(37)</issue><italic>,</italic> <fpage>1483</fpage>&#x2013;<lpage>1488</lpage>.</mixed-citation></ref>
<ref id="ref-19"><label>19.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Yang</surname>, <given-names>X. Y.</given-names></string-name>, <string-name><surname>Xie</surname>, <given-names>Y. M.</given-names></string-name>, <string-name><surname>Liu</surname>, <given-names>J. S.</given-names></string-name>, <string-name><surname>Parks</surname>, <given-names>G. T.</given-names></string-name>, <string-name><surname>Clarkson</surname>, <given-names>P. J.</given-names></string-name></person-group> (<year>2002</year>). <article-title>Perimeter control in the bidirectional evolutionary optimization method</article-title>. <source>Structural and Multidisciplinary Optimization</source><italic>,</italic> <volume>24</volume><italic>,</italic> <fpage>430</fpage>&#x2013;<lpage>440</lpage>. DOI <pub-id pub-id-type="doi">10.1007/s00158-002-0256-5</pub-id>.</mixed-citation></ref>
<ref id="ref-20"><label>20.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Huang</surname>, <given-names>X.</given-names></string-name>, <string-name><surname>Xie</surname>, <given-names>Y. M.</given-names></string-name></person-group> (<year>2007a</year>). <article-title>Convergent and mesh-independent solutions for the bi-directional evolutionary structural optimization method</article-title>. <source>Finite Elements in Analysis and Design</source><italic>,</italic> <volume>43</volume><issue>(14)</issue><italic>,</italic> <fpage>1039</fpage>&#x2013;<lpage>1049</lpage>. DOI <pub-id pub-id-type="doi">10.1016/j.finel.2007.06.006</pub-id>.</mixed-citation></ref>
<ref id="ref-21"><label>21.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Huang</surname>, <given-names>X.</given-names></string-name>, <string-name><surname>Xie</surname>, <given-names>Y. M.</given-names></string-name></person-group> (<year>2008</year>). <article-title>Topology optimization of nonlinear structures under displacement loading</article-title>. <source>Engineering Structures</source><italic>,</italic> <volume>30</volume><italic>,</italic> <fpage>2057</fpage>&#x2013;<lpage>2068</lpage>. DOI <pub-id pub-id-type="doi">10.1016/j.engstruct.2008.01.009</pub-id>.</mixed-citation></ref>
<ref id="ref-22"><label>22.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Zhou</surname>, <given-names>M.</given-names></string-name>, <string-name><surname>Rozvany</surname>, <given-names>G.</given-names></string-name></person-group> (<year>2001</year>). <article-title>On the validity of ESO type methods in topology optimization</article-title>. <source>Structural and Multidisciplinary Optimization</source><italic>,</italic> <volume>21</volume><issue>(1)</issue><italic>,</italic> <fpage>80</fpage>&#x2013;<lpage>83</lpage>. DOI <pub-id pub-id-type="doi">10.1007/s001580050170</pub-id>.</mixed-citation></ref>
<ref id="ref-23"><label>23.</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Rozvany</surname>, <given-names>G.</given-names></string-name>, <string-name><surname>Querin</surname>, <given-names>O. M.</given-names></string-name></person-group> (<year>2001</year>). <article-title>Present limitations and possible improvements of SERA (Sequential element rejections and admissions) methods in topology optimization</article-title>. <conf-name>Proceedings of WCSMO</conf-name>, pp. <fpage>48</fpage>&#x2013;<lpage>49</lpage>. <conf-loc>Dalian, China</conf-loc>.</mixed-citation></ref>
<ref id="ref-24"><label>24.</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Rozvany</surname>, <given-names>G.</given-names></string-name>, <string-name><surname>Querin</surname>, <given-names>O. M.</given-names></string-name></person-group> (<year>2002</year>). <article-title>Theoretical foundations of Sequential Element Admissions and Rejections (SERA) and their computational implementations in topology optimization</article-title>. <conf-name>9th AIAA/ISSMO Symposium on Multidisciplinary Analysis and Optimizaion</conf-name>, <conf-loc>Atlanta, Georgia</conf-loc>.</mixed-citation></ref>
<ref id="ref-25"><label>25.</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Rozvany</surname>, <given-names>G.</given-names></string-name>, <string-name><surname>Querin</surname>, <given-names>O. M.</given-names></string-name></person-group> (<year>2004</year>). <article-title>Sequential Element Rejections and Admissions (SERA) method: Application to multiconstraint problems</article-title>. <conf-name>10th AIAA/ISSMO Multidisciplinary Analysis and Optimization Conference</conf-name>, Albany, New York. DOI <pub-id pub-id-type="doi">10.2514/6.2004-4523</pub-id>.</mixed-citation></ref>
<ref id="ref-26"><label>26.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Huang</surname>, <given-names>X.</given-names></string-name>, <string-name><surname>Xie</surname>, <given-names>Y. M.</given-names></string-name></person-group> (<year>2009</year>). <article-title>Bi-directional evolutionary topology optimization of continuum structures with one or multiple materials</article-title>. <source>Computational Mechanics</source><italic>,</italic> <volume>43</volume><issue>(3)</issue><italic>,</italic> <fpage>393</fpage>&#x2013;<lpage>401</lpage>. DOI <pub-id pub-id-type="doi">10.1007/s00466-008-0312-0</pub-id>.</mixed-citation></ref>
<ref id="ref-27"><label>27.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Liang</surname>, <given-names>Y.</given-names></string-name>, <string-name><surname>Cheng</surname>, <given-names>G.</given-names></string-name></person-group> (<year>2019b</year>). <article-title>Further elaborations on topology optimization via sequential integer programming and canonical relaxation algorithm and 128-line MATLAB code</article-title>. <source>Structural and Multidisciplinary Optimization</source><italic>,</italic> <volume>61</volume><italic>,</italic> <fpage>411</fpage>&#x2013;<lpage>431</lpage>. DOI <pub-id pub-id-type="doi">10.1007/s00158-019-02396-3</pub-id>.</mixed-citation></ref>
<ref id="ref-28"><label>28.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Buhl</surname>, <given-names>T.</given-names></string-name>, <string-name><surname>Pedersen</surname>, <given-names>C. B. W.</given-names></string-name>, <string-name><surname>Sigmund</surname>, <given-names>O.</given-names></string-name></person-group> (<year>2000</year>). <article-title>Stiffness design of geometrically nonlinear structures using topology optimization</article-title>. <source>Structural and Multidisciplinary Optimization</source><italic>,</italic> <volume>19</volume><italic>,</italic> <fpage>93</fpage>&#x2013;<lpage>104</lpage>. DOI <pub-id pub-id-type="doi">10.1007/s001580050089</pub-id>.</mixed-citation></ref>
<ref id="ref-29"><label>29.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Bruns</surname>, <given-names>T. E.</given-names></string-name>, <string-name><surname>Tortorelli</surname>, <given-names>D. A.</given-names></string-name></person-group> (<year>2001</year>). <article-title>Topology optimization of non-linear elastic structures and compliant mechanisms</article-title>. <source>Computer Methods in Applied Mechanics and Engineering</source><italic>,</italic> <volume>190</volume><italic>,</italic> <fpage>3443</fpage>&#x2013;<lpage>3459</lpage>. DOI <pub-id pub-id-type="doi">10.1016/S0045-7825(00)00278-4</pub-id>.</mixed-citation></ref>
<ref id="ref-30"><label>30.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Neves</surname>, <given-names>M. M.</given-names></string-name>, <string-name><surname>Rodrigues</surname>, <given-names>H.</given-names></string-name>, <string-name><surname>Guedes</surname>, <given-names>J. M.</given-names></string-name></person-group> (<year>1995</year>). <article-title>Generalized topology design of structures with a buckling load criterion</article-title>. <source>Structural Optimization</source><italic>,</italic> <volume>10</volume><issue>(2)</issue><italic>,</italic> <fpage>71</fpage>&#x2013;<lpage>78</lpage>. DOI <pub-id pub-id-type="doi">10.1007/BF01743533</pub-id>.</mixed-citation></ref>
<ref id="ref-31"><label>31.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Huang</surname>, <given-names>X.</given-names></string-name>, <string-name><surname>Xie</surname>, <given-names>Y. M.</given-names></string-name></person-group> (<year>2007b</year>). <article-title>Bidirectional evolutionary topology optimization for structures with geometrical and material nonlinearities</article-title>. <source>AIAA Journal</source><italic>,</italic> <volume>45</volume><issue>(1)</issue><italic>,</italic> <fpage>308</fpage>&#x2013;<lpage>313</lpage>. DOI <pub-id pub-id-type="doi">10.2514/1.25046</pub-id>.</mixed-citation></ref>
<ref id="ref-32"><label>32.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Luo</surname>, <given-names>Q.</given-names></string-name>, <string-name><surname>Tong</surname>, <given-names>L.</given-names></string-name></person-group> (<year>2015</year>). <article-title>An algorithm for eradicating the effects of void elements on structural topology optimization for nonlinear compliance</article-title>. <source>Structural and Multidisciplinary Optimization</source><italic>,</italic> <volume>52</volume><issue>(1)</issue><italic>,</italic> <fpage>71</fpage>&#x2013;<lpage>90</lpage>. DOI <pub-id pub-id-type="doi">10.1007/s00158-015-1286-0</pub-id>.</mixed-citation></ref>
<ref id="ref-33"><label>33.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Luo</surname>, <given-names>Q.</given-names></string-name>, <string-name><surname>Tong</surname>, <given-names>L.</given-names></string-name></person-group> (<year>2016</year>). <article-title>Elimination of the effects of low density elements in topology optimization of buckling structures</article-title>. <source>International Journal of Computational Methods</source><italic>,</italic> <volume>6</volume><issue>(13)</issue><italic>,</italic> <fpage>1650041-1</fpage>&#x2013;<lpage>1650041-37</lpage>.</mixed-citation></ref>
<ref id="ref-34"><label>34.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Tong</surname>, <given-names>L.</given-names></string-name>, <string-name><surname>Lin</surname>, <given-names>J.</given-names></string-name></person-group> (<year>2011</year>). <article-title>Structural topology optimization with implicit design variable-optimality and algorithm</article-title>. <source>Finite Elements in Analysis and Design</source><italic>,</italic> <volume>47</volume><issue>(8)</issue><italic>,</italic> <fpage>922</fpage>&#x2013;<lpage>932</lpage>. DOI <pub-id pub-id-type="doi">10.1016/j.finel.2011.03.004</pub-id>.</mixed-citation></ref>
<ref id="ref-35"><label>35.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Wang</surname>, <given-names>F.</given-names></string-name>, <string-name><surname>Lazarov</surname>, <given-names>B. S.</given-names></string-name>, <string-name><surname>Sigmund</surname>, <given-names>O.</given-names></string-name>, <string-name><surname>Jensen</surname>, <given-names>J. S.</given-names></string-name></person-group> (<year>2014</year>). <article-title>Interpolation scheme for fictitious domain techniques and topology optimization of finite strain elastic problems</article-title>. <source>Computer Methods in Applied Mechanics and Engineering</source><italic>,</italic> <volume>276</volume><italic>,</italic> <fpage>453</fpage>&#x2013;<lpage>472</lpage>. DOI <pub-id pub-id-type="doi">10.1016/j.cma.2014.03.021</pub-id>.</mixed-citation></ref>
<ref id="ref-36"><label>36.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Bruns</surname>, <given-names>T. E.</given-names></string-name></person-group> (<year>2006</year>). <article-title>Zero density lower bounds in topology optimization</article-title>. <source>Computer Methods in Applied Mechanics and Engineering</source><italic>,</italic> <volume>196</volume><italic>,</italic> <fpage>566</fpage>&#x2013;<lpage>578</lpage>. DOI <pub-id pub-id-type="doi">10.1016/j.cma.2006.06.007</pub-id>.</mixed-citation></ref>
<ref id="ref-37"><label>37.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Nguyen</surname>, <given-names>Q. K.</given-names></string-name>, <string-name><surname>Serra-Capizzano</surname>, <given-names>S.</given-names></string-name>, <string-name><surname>Wadbro</surname>, <given-names>E.</given-names></string-name></person-group> (<year>2020</year>). <article-title>On using a zero lower bound on the physical density in material distribution topology optimization</article-title>. <source>Computer Methods in Applied Mechanics and Engineering</source><italic>,</italic> <volume>359</volume><italic>,</italic> <fpage>112669</fpage>. DOI <pub-id pub-id-type="doi">10.1016/j.cma.2019.112669</pub-id>.</mixed-citation></ref>
<ref id="ref-38"><label>38.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Li</surname>, <given-names>L.</given-names></string-name>, <string-name><surname>Liu</surname>, <given-names>C.</given-names></string-name>, <string-name><surname>Du</surname>, <given-names>Z.</given-names></string-name>, <string-name><surname>Du</surname>, <given-names>Z.</given-names></string-name>, <string-name><surname>Zhang</surname>, <given-names>W.</given-names></string-name> <etal>et al.</etal></person-group> (<year>2022</year>). <article-title>A meshless moving morphable component-based method for structural topology optimization without weak material</article-title>. <source>Acta Mechanica Sinica</source><italic>,</italic> <volume>38</volume><issue>(5)</issue><italic>,</italic> <fpage>1</fpage>&#x2013;<lpage>16</lpage>. DOI <pub-id pub-id-type="doi">10.1007/s10409-022-09021-8</pub-id>.</mixed-citation></ref>
<ref id="ref-39"><label>39.</label><mixed-citation publication-type="book"><person-group person-group-type="author"><string-name><surname>West</surname>, <given-names>D. B.</given-names></string-name></person-group> (<year>2001</year>). <source>Introduction to graph theory (2nd Edition)</source>. Upper Saddle River: Prentice Hall.</mixed-citation></ref>
<ref id="ref-40"><label>40.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Han</surname>, <given-names>H.</given-names></string-name>, <string-name><surname>Guo</surname>, <given-names>Y.</given-names></string-name>, <string-name><surname>Chen</surname>, <given-names>S.</given-names></string-name>, <string-name><surname>Liu</surname>, <given-names>Z.</given-names></string-name></person-group> (<year>2021</year>). <article-title>Topological constraints in 2D structural topology optimization</article-title>. <source>Structural and Multidisciplinary Optimization</source><italic>,</italic> <volume>63</volume><issue>(1)</issue><italic>,</italic> <fpage>39</fpage>&#x2013;<lpage>58</lpage>. DOI <pub-id pub-id-type="doi">10.1007/s00158-020-02771-5</pub-id>.</mixed-citation></ref>
<ref id="ref-41"><label>41.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Liang</surname>, <given-names>Y.</given-names></string-name>, <string-name><surname>Yan</surname>, <given-names>X.</given-names></string-name>, <string-name><surname>Cheng</surname>, <given-names>G.</given-names></string-name></person-group> (<year>2022</year>). <article-title>Explicit control of 2D and 3D structural complexity by discrete variable topology optimization method</article-title>. <source>Computer Methods in Applied Mechanics and Engineering</source><italic>,</italic> <volume>389</volume><italic>,</italic> <fpage>114302</fpage>. DOI <pub-id pub-id-type="doi">10.1016/j.cma.2021.114302</pub-id>.</mixed-citation></ref>
<ref id="ref-42"><label>42.</label><mixed-citation publication-type="book"><person-group person-group-type="author"><string-name><surname>Wriggers</surname>, <given-names>P.</given-names></string-name></person-group> (<year>2008</year>). <source>Nonlinear finite element method</source>. <publisher-loc>Berlin Heidelberg</publisher-loc>: <publisher-name>Springer-Verlag</publisher-name>.</mixed-citation></ref>
<ref id="ref-43"><label>43.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Alonso</surname>, <given-names>C.</given-names></string-name>, <string-name><surname>Querin</surname>, <given-names>O. M.</given-names></string-name></person-group> (<year>2013</year>). <article-title>A sequential element rejection and admission (SERA) method for compliant mechanisms design</article-title>. <source>Structural and Multidisciplinary Optimization</source><italic>,</italic> <volume>47</volume><italic>,</italic> <fpage>795</fpage>&#x2013;<lpage>807</lpage>. DOI <pub-id pub-id-type="doi">10.1007/s00158-012-0862-9</pub-id>.</mixed-citation></ref>
<ref id="ref-44"><label>44.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Diaz</surname>, <given-names>A.</given-names></string-name>, <string-name><surname>Sigmund</surname>, <given-names>O.</given-names></string-name></person-group> (<year>1995</year>). <article-title>Checkerboard patterns in layout optimization</article-title>. <source>Structural Optimization</source><italic>,</italic> <volume>10</volume><italic>,</italic> <fpage>40</fpage>&#x2013;<lpage>45</lpage>. DOI <pub-id pub-id-type="doi">10.1007/BF01743693</pub-id>.</mixed-citation></ref>
<ref id="ref-45"><label>45.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Poulsen</surname>, <given-names>T. A.</given-names></string-name></person-group> (<year>2002</year>). <article-title>A simple scheme to prevent checkerboard patterns and one-node connected hinges in topology optimization</article-title>. <source>Structural and Multidisciplinary Optimization</source><italic>,</italic> <volume>24</volume><italic>,</italic> <fpage>396</fpage>&#x2013;<lpage>399</lpage>. DOI <pub-id pub-id-type="doi">10.1007/s00158-002-0251-x</pub-id>.</mixed-citation></ref>
<ref id="ref-46"><label>46.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Yoon</surname>, <given-names>G. H.</given-names></string-name>, <string-name><surname>Kim</surname>, <given-names>Y. Y.</given-names></string-name></person-group> (<year>2005</year>). <article-title>Element connectivity parameterization for topology optimization of geometrically nonlinear structures</article-title>. <source>International Journal of Solids and Structures</source><italic>,</italic> <volume>42</volume><italic>,</italic> <fpage>1983</fpage>&#x2013;<lpage>2009</lpage>. DOI <pub-id pub-id-type="doi">10.1016/j.ijsolstr.2004.09.005</pub-id>.</mixed-citation></ref>
<ref id="ref-47"><label>47.</label><mixed-citation publication-type="web"><person-group person-group-type="author"><string-name><surname>Higham</surname>, <given-names>N.</given-names></string-name></person-group> (<year>2019</year>). Who invented the matrix condition number? <uri xlink:href="https://nhigham.com/2019/01/23/who-invented-the-matrix-condition-number/">https://nhigham.com/2019/01/23/who-invented-the-matrix-condition-number/</uri>.</mixed-citation></ref>
<ref id="ref-48"><label>48.</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Lahuerta</surname>, <given-names>R. D.</given-names></string-name>, <string-name><surname>Simoes</surname>, <given-names>E.</given-names></string-name>, <string-name><surname>Campello</surname>, <given-names>E.</given-names></string-name>, <string-name><surname>Pimenta</surname>, <given-names>P.</given-names></string-name>, <string-name><surname>Silva</surname>, <given-names>E.</given-names></string-name></person-group> (<year>2013</year>). <article-title>Towards the stabilization of the low density elements in topology optimization with large deformation</article-title>. <source>Computational Mechanics</source><italic>,</italic> <volume>52</volume><italic>,</italic> <fpage>779</fpage>&#x2013;<lpage>797</lpage>. DOI <pub-id pub-id-type="doi">10.1007/s00466-013-0843-x</pub-id>.</mixed-citation></ref>
</ref-list>
</back>
</article>