<?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 = "task"/><meta name = "abstract" content = "In this example, you are going to follow the workflow for a standard bead optimization task:"/><meta name = "description" content = "In this example, you are going to follow the workflow for a standard bead optimization task:"/><meta name = "DC.format" content = "HTML5"/><meta name = "DC.identifier" content = "tso-t-example-bead-plateOptimize"/><meta name = "DC.language" content = "en"/><link rel = "stylesheet" type = "text/css" href = "../DSDocUI_XML34.css"/><title>Optimizing the Plate Model</title>
<script type = "text/javascript" src = "../DSDocUI_Highlight34.js">
  	/* */
  	</script></head><body onLoad = "highlightSearchTerms();" id = "tso-t-example-bead-plateOptimize">
<a name = "hj-top"> </a><table class = "table1" id = "table11"><tr><td><table class = "DocHeader"><tr><td class = "DocHeader1" colspan = "2"><h1>Optimizing the Plate Model </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"> In this example, you are going to follow the workflow for a standard bead optimization task:</span>

<ol class = "ol">
<li class = "li">Import Boundary Conditions (OPTIONS).</li>
<li class = "li">Import the FEM-Model (FEM_INPUT).</li>
<li class = "li">Activate the Boundary Conditions (DVCON_BEAD)</li>
<li class = "li">Define the Constraint of the optimization task (DRESP, CONSTRAINT).</li>
<li class = "li">Define the Objective Function (DRESP, OBJ_FUNC).</li>
<li class = "li">Define the OPTIMIZE command.</li>
<li class = "li">(optional) Set additional settings (OPT_PARAM).</li>
</ol>
</p>

</p></td></tr></table></td></tr></table>



<div class = "body taskbody">
<section><ol class = "ol steps"><li class = "li step stepexpand">
Import the boundary conditions in an OPTIONS command:
<div class = "itemgroup stepresult">
<pre class = "codeblock">
OPTIONS
 READ_BC = ALL
END_
</pre>
</div>
</li><li class = "li step stepexpand">
Import the FEM-Model (FEM_INPUT).
</li><li class = "li step stepexpand">
To activate the boundary conditions, create a Design Variable Constraint (DVON_BEAD):
<div class = "itemgroup stepresult">
<pre class = "codeblock">
DVCON_BEAD
 ID_NAME  = dvcon_fix_spc
 ND_GROUP = ALL_NODES
 CHECK_BC = YES
END_
</pre>
<p>The parameter CHECK_BC = YES ensures that all nodes with a fixation in the finite element model
      are also fixed in the corresponding DOFs during the optimization procedure.</p>
</div>
</li><li class = "li step stepexpand">
To define the height of the beads as the constraint of the optimization
problem, do the following: 
<ol type = "a" class = "ol substeps">
<li class = "li substep">
Define a Design Response with the height of the beads (DRESP):
<div class = "itemgroup stepresult">
<pre class = "codeblock">
DRESP
 ID_NAME    = DRESP_BEAD_HEIGHT
 DEF_TYPE   = SYSTEM
 ND_GROUP   = ALL_NODES
 TYPE       = BEAD_HEIGHT
 GROUP_OPER = MAX
 UPDATE     = EVER
END_
</pre>
</div>
</li>
<li class = "li substep">
Reference the Design Response in a constraint (CONSTRAINT) and constrain it to a maximum of 20 mm:
<div class = "itemgroup stepresult"><pre class = "codeblock">
CONSTRAINT
 ID_NAME   = bead_height_constraint
 DRESP     = dresp_bead_height
 MAGNITUDE = ABS
 EQ_VALUE  = 20.0
END_
</pre>
</div>
</li>
</ol>
</li><li class = "li step stepexpand">
To define the Objective Function (OBJ_FUNC), do the following:
<ol type = "a" class = "ol substeps"><li class = "li substep">
Create a Design Response (DRESP) with the compliance of the model:
<div class = "itemgroup stepresult">
<pre class = "codeblock">
DRESP
 ID_NAME    = DRESP_COMPLIANCE
 DEF_TYPE   = SYSTEM
 EL_GROUP   = ALL_ELEMENTS
 TYPE       = STRAIN_ENERGY
 GROUP_OPER = SUM
 UPDATE     = EVER
 LC_SET     = STATIC,1,ALL
END_
</pre>
</div>
</li>
<li class = "li substep">
Reference the Design Response in the Objective Function (OBJ_FUNC) and minimize it:
<div class = "itemgroup stepresult"><pre class = "codeblock">
OBJ_FUNC
 ID_NAME = MINIMIZE_COMPLIANCE
 DRESP = DRESP_COMPLIANCE
 TARGET = MIN
END_
</pre></div>
</li>
</ol>
</li><li class = "li step stepexpand">
Reference the Design Variables, Objective Function, and Constraints in the OPTIMIZE command:
<div class = "itemgroup stepresult">
<pre class = "codeblock">
OPTIMIZE
 ID_NAME    = BEAD_OPTIMIZATION
 DV         = DESIGN_VARIABLES
 OBJ_FUNC   = MINIMIZE_COMPLIANCE
 DVCON      = DVCON_BC
 CONSTRAINT = BEAD_HEIGHT_CONSTRAINT
END_
</pre>
</div></li><li class = "li step stepexpand">   
(optional) Define the bead width in the OPT_PARAM command
<div class = "itemgroup stepresult"><pre class = "codeblock">
OPT_PARAM
 ID_NAME    = MY_PARAMETERS
 OPTIMIZE   = BEAD_OPTIMIZATION
 VECTOR     = FIRST
 SCALE      = 1.0
 BEAD_WIDTH = 60
END
</pre>
<p>If you do not define the bead width, the system automatically determines a bead
width. </p>
</div>
</li></ol></section>
<p class = "result">
<p>The optimization result looks as follows:
<br/><img class = "image" src = "../TsoExampleImages/beadPlateResult.png"/><br/></p></p>
</div>


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