<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html
  SYSTEM "about:legacy-compat">
<html xmlns:mml = "http://www.w3.org/1998/Math/MathML" lang = "en"><head><meta charset = "UTF-8"/><meta name = "copyright" content = "(C) Copyright 2020"/><meta name = "DC.rights.owner" content = "(C) Copyright 2020"/><meta name = "DC.type" content = "concept"/><meta name = "abstract" content = "You can minimize structural volume taking some displacement constraints into account."/><meta name = "description" content = "You can minimize structural volume taking some displacement constraints into account."/><meta name = "DC.format" content = "HTML5"/><meta name = "DC.identifier" content = "tso-c-user-TopOpt-StaAna-MinVolDispCon"/><meta name = "DC.language" content = "en"/><link rel = "stylesheet" type = "text/css" href = "../DSDocUI_XML34.css"/><title>Minimizing the Volume under Displacement Constraint</title>
<script type = "text/javascript" src = "../DSDocUI_Highlight34.js">
  	/* */
  	</script><script type = "text/javascript" src = "../MathJax/MathJax.js?config=DS-default,local/local">
  		/* */
  		</script></head><body onLoad = "highlightSearchTerms();" id = "tso-c-user-TopOpt-StaAna-MinVolDispCon">
<a name = "hj-top"> </a><table class = "table1" id = "table11"><tr><td><table class = "DocHeader"><tr><td class = "DocHeader1" colspan = "2"><h1>Minimizing the Volume under Displacement Constraint</h1></td></tr><tr><td class = "DocHeader4" colspan = "2"/></tr><tr><td class = "DocHeader3" colspan = "2"><table class = "DocThemeIntro" id = "table12"><tr><td class = "Intro1Only"><p class = "header"><p class = "abstract">
<span class = "shortdesc">You can minimize structural volume taking some displacement constraints
into account. </span>

</p>
<p>This page discusses: </p><ul><li><a href = "#tso-c-user-TopOpt-StaAna-MinVolDispCon__tso-c-user-TopOpt-StaAna-MinVolDispCon-OptProbl" id = "toc_rg" title = "">Formulation of the Optimization Problem</a></li><li><a href = "#tso-c-user-TopOpt-StaAna-MinVolDispCon__tso-c-user-TopOpt-StaAna-MinVolDispCon-NecDef" id = "toc_rg" title = ""> Necessary Definitions</a></li><li><a href = "#tso-c-user-TopOpt-StaAna-MinVolDispCon__tso-c-user-TopOpt-StaAna-MinVolDispCon-ResConv" id = "toc_rg" title = "">Result and Convergence</a></li><li><a href = "#tso-c-user-TopOpt-StaAna-MinVolDispCon__tso-c-user-TopOpt-StaAna-MinVolDispCon-DefSum" id = "toc_rg" title = ""><span class = "ph">SIMULIA Tosca Structure</span> Parameter File</a></li></ul>
</p></td></tr></table></td></tr></table>




<div class = "body conbody">


<div class = "section" id = "tso-c-user-TopOpt-StaAna-MinVolDispCon__tso-c-user-TopOpt-StaAna-MinVolDispCon-OptProbl"><h2 class = "title sectiontitle">Formulation of the Optimization Problem</h2><p>If the structure with the minimal volume (weight) subject to displacement
constraints (corresponding to a restriction on the mechanical stiffness)
is sought, the optimization task is formulated as follows:</p>
<table class = "table"><caption/><colgroup><col/></colgroup><tbody class = "tbody">
<tr class = "row">
<td class = "entry"><p><span class = "ph inlineequation"><math class = "- topic/foreign "><mrow class = "- topic/foreign "><mi class = "- topic/foreign ">min</mi><mo class = "- topic/foreign ">⁡</mo><mrow class = "- topic/foreign "><mo class = "- topic/foreign ">(</mo><mstyle displaystyle = "false" class = "- topic/foreign "><mrow class = "- topic/foreign "><munder class = "- topic/foreign "><mrow class = "- topic/foreign "><mo class = "- topic/foreign ">∑</mo></mrow><mrow class = "- topic/foreign "><mi class = "- topic/foreign ">i</mi><mo class = "- topic/foreign ">=</mo><mi class = "- topic/foreign ">i</mi><mo class = "- topic/foreign ">,</mo><mi class = "- topic/foreign ">n</mi></mrow></munder><mrow class = "- topic/foreign "><mi class = "- topic/foreign ">V</mi><mi class = "- topic/foreign ">o</mi><mi class = "- topic/foreign ">l</mi></mrow></mrow></mstyle><mo class = "- topic/foreign ">)</mo></mrow></mrow></math></span></p><p><span class = "ph inlineequation"><math class = "- topic/foreign "><mrow class = "- topic/foreign "><msub class = "- topic/foreign "><mrow class = "- topic/foreign "><mi class = "- topic/foreign ">u</mi></mrow><mrow class = "- topic/foreign "><mi class = "- topic/foreign ">j</mi></mrow></msub><mo class = "- topic/foreign ">≤</mo><msub class = "- topic/foreign "><mrow class = "- topic/foreign "><mi class = "- topic/foreign ">u</mi></mrow><mrow class = "- topic/foreign "><mi class = "- topic/foreign ">r</mi><mi class = "- topic/foreign ">e</mi><mi class = "- topic/foreign ">s</mi><mi class = "- topic/foreign ">t</mi><mi class = "- topic/foreign ">r</mi><mi class = "- topic/foreign ">i</mi><mi class = "- topic/foreign ">c</mi><mi class = "- topic/foreign ">t</mi><mo class = "- topic/foreign ">,</mo><mi class = "- topic/foreign ">j</mi></mrow></msub><mo class = "- topic/foreign ">⁢</mo><mtext class = "- topic/foreign "> </mtext><mtext class = "- topic/foreign "> </mtext><mtext class = "- topic/foreign "> </mtext><mtext class = "- topic/foreign "> </mtext><mtext class = "- topic/foreign "> </mtext><mtext class = "- topic/foreign "> </mtext><mtext class = "- topic/foreign "> </mtext><mtext class = "- topic/foreign "> </mtext><mtext class = "- topic/foreign "> </mtext><mtext class = "- topic/foreign "> </mtext><mtext class = "- topic/foreign "> </mtext><mtext class = "- topic/foreign "> </mtext><mtext class = "- topic/foreign "> </mtext><mtext class = "- topic/foreign "> </mtext><mtext class = "- topic/foreign "> </mtext><mi class = "- topic/foreign ">j</mi><mo class = "- topic/foreign ">=</mo><mn class = "- topic/foreign ">1...</mn><mi class = "- topic/foreign ">m</mi></mrow></math></span></p></td>
</tr>
</tbody></table>

<p>where Vol is the relative material volume of an element in the design
area, <span class = "ph inlineequation"><math class = "- topic/foreign "><mrow class = "- topic/foreign "><msub class = "- topic/foreign "><mrow class = "- topic/foreign "><mi class = "- topic/foreign ">u</mi></mrow><mrow class = "- topic/foreign "><mn class = "- topic/foreign ">1</mn></mrow></msub></mrow></math></span> is the nodal displacement
and <span class = "ph inlineequation"><math class = "- topic/foreign "><mrow class = "- topic/foreign "><msub class = "- topic/foreign "><mrow class = "- topic/foreign "><mi class = "- topic/foreign ">u</mi></mrow><mrow class = "- topic/foreign "><mi class = "- topic/foreign ">r</mi><mi class = "- topic/foreign ">e</mi><mi class = "- topic/foreign ">s</mi><mi class = "- topic/foreign ">t</mi><mi class = "- topic/foreign ">r</mi><mi class = "- topic/foreign ">i</mi><mi class = "- topic/foreign ">c</mi><mi class = "- topic/foreign ">t</mi><mo class = "- topic/foreign ">,</mo><mi class = "- topic/foreign ">j</mi></mrow></msub></mrow></math></span> is the restriction for
the nodal displacement of the node.</p>
<p>This example shows a model for the minimization of the relative material volume under
the displacement of the loaded node:</p>
<table class = "table"><caption/><colgroup><col/></colgroup><tbody class = "tbody">
<tr class = "row">
<td class = "entry"><br/><img class = "image" id = "tso-c-user-TopOpt-StaAna-MinVolDispCon__image_08C4684C01FE4BE5A1C50D7FA927EDE8" src = "../TsoUserImages/topo_support_struct_model.png" width = "498" height = "157"/><br/></td>
</tr>
</tbody></table></div>
<div class = "section" id = "tso-c-user-TopOpt-StaAna-MinVolDispCon__tso-c-user-TopOpt-StaAna-MinVolDispCon-NecDef"><p><map name = "FPMap1"><area href = "#hj-top" title = "Back to Top" shape = "rect" coords = "416, 0, 435, 10"/></map><span class = "itemsprite"/></p><h2 class = "title sectiontitle"> Necessary Definitions</h2>

<p>Define two design responses: </p>
<ul class = "ul" id = "tso-c-user-TopOpt-StaAna-MinVolDispCon__ul_EC0ABB9A432A49E499F70DE30B644548">
<li class = "li"> The first design response is the design response representing the relative
material volume of the design area. This design response is the objective
function that is to be minimized.</li>
<li class = "li">The second design response is the displacement of the loaded node.
The absolute displacement is used in this case. Alternatively, the displacement
in the direction of the load (in the example, it is the z-direction of a local
coordinate system) can be used. The restriction to one direction reduces
the number of <span class = "ph">load case</span>
generated by the optimization system because using absolute displacement
leads to the need of 3 additional <span class = "ph">load case</span>
in order to calculate the sensitivities while the displacement in z-direction
only requires one additional pseudo <span class = "ph">load case</span>
for the calculation of the sensitivities. The constraint is then defined
as an inequality constraint with an absolute value for the displacement
value.</li>
</ul>
</div>

<div class = "section" id = "tso-c-user-TopOpt-StaAna-MinVolDispCon__tso-c-user-TopOpt-StaAna-MinVolDispCon-ResConv"><p><map name = "FPMap1"><area href = "#hj-top" title = "Back to Top" shape = "rect" coords = "416, 0, 435, 10"/></map><span class = "itemsprite"/></p><h2 class = "title sectiontitle">Result and Convergence</h2>


<p>The objective function (relative material volume) is pictured in the following figure.</p>
<table class = "table"><caption/><colgroup><col/></colgroup><tbody class = "tbody">
<tr class = "row">
<td class = "entry"><br/><img class = "image" id = "tso-c-user-TopOpt-StaAna-MinVolDispCon__image_28C1C856BA1949EAB02B157E2A5422C0" src = "../TsoUserImages/topo_support_struct_obj_func_vs_it.png" width = "500"/><br/></td>
</tr>
</tbody></table>

<p>The displacement constraint value plot is presented in the next figure:</p>
<table class = "table"><caption/><colgroup><col/></colgroup><tbody class = "tbody">
<tr class = "row">
<td class = "entry"><br/><img class = "image" id = "tso-c-user-TopOpt-StaAna-MinVolDispCon__image_3FDBE24716BD4A8CA59112060BFC87E2" src = "../TsoUserImages/topo_support_struct_displ_const_vs_it.png" width = "500"/><br/></td>
</tr>
</tbody></table>

<p>The last figure presents the result of the optimization with displacement constraint.</p>
<table class = "table"><caption/><colgroup><col/></colgroup><tbody class = "tbody">
<tr class = "row">
<td class = "entry"><br/><img class = "image" id = "tso-c-user-TopOpt-StaAna-MinVolDispCon__image_ADDD37C3369D4626B568711C94075B7E" src = "../TsoUserImages/topo_support_struct_topo_result.png" width = "500"/><br/></td>
</tr>
</tbody></table>

</div>

<div class = "section" id = "tso-c-user-TopOpt-StaAna-MinVolDispCon__tso-c-user-TopOpt-StaAna-MinVolDispCon-DefSum"><p><map name = "FPMap1"><area href = "#hj-top" title = "Back to Top" shape = "rect" coords = "416, 0, 435, 10"/></map><span class = "itemsprite"/></p><h2 class = "title sectiontitle"><span class = "ph">SIMULIA Tosca Structure</span> Parameter File</h2>
<p>The commands in the parameter file look like
follows:</p>
<pre class = "codeblock">
<code class = "ph codeph">DRESP
 ID_NAME     = DRESP_VOLUME
 DEF_TYPE    = SYSTEM
 EL_GROUP    = design_elem
 GROUP_OPER  = Sum
 TYPE        = VOLUME
END_

OBJ_FUNC     
 ID_NAME     = MINIMIZE_VOLUME
 DRESP       = DRESP_VOLUME, ,  
 TARGET      = MIN
END_	     
		     
DRESP	     
 ID_NAME     = MAX_DISPLACEMENT
 TYPE        = DISP_ABS
 DEF_TYPE    = SYSTEM
 GROUP_OPER  = Max
 NODE        = 300
END_

CONSTRAINT
 ID_NAME     = DISPLACEMENT_CONSTRAINT
 DRESP       = MAX_DISPLACEMENT
 MAGNITUDE   = ABS
 LE_VALUE    = 8.5
END_
</code></pre>
</div>

</div>

</td></tr></table><script type = "text/javascript" src = "../DSDocUI_Bottom34.js">/* */</script></body>
</html>
