Example 1:We want to apply the von Mises stress in the optimization relative to the von Mises in the first iteration (): Now, if we use this term in the objective function all nodal von Mises stresses will be divided by the von Mises stress from the first iteration. To define the above statement use the following commands: VARIABLE ID_NAME = von_mises DEF_TYPE = SYSTEM TYPE = SIG_MISES ND_GROUP = ALL_NODES LC_SET = ALL,1,All GROUP_OPER = Max UPDATE = EVER END_ VARIABLE ID_NAME = von_mises_first DEF_TYPE = SYSTEM TYPE = SIG_MISES ND_GROUP = ALL_NODES LC_SET = ALL,1,All GROUP_OPER = Max UPDATE = FIRST END_ DRESP ID_NAME = relative_von_mises DEF_TYPE = OPER VAR_OPER = DIV VAR_A = von_mises VAR_B = von_mises_first END_ Example 2:In a second example, the sum of the von Mises stress from two load cases, say LC1 and LC2, should be used as the design response: The above is NOT a sum of the stress tensors upon which the von Mises criteria is calculated. It is simply a sum of the two resulting values of the von Mises stress for each node. The scalar summation can be done using following commands: DRESP ID_NAME = von_mises_LC1 DEF_TYPE = SYSTEM TYPE = SIG_MISES ND_GROUP = ALL_NODES LC_SET = ALL,1,All GROUP_OPER = Max END_ DRESP ID_NAME = von_mises_LC2 DEF_TYPE = SYSTEM TYPE = SIG_MISES ND_GROUP = ALL_NODES LC_SET = ALL,2,All GROUP_OPER = Max END_ DRESP ID_NAME = scalar_sum_von_mises DEF_TYPE = OPER VAR_OPER = ADD VAR_A = von_mises_LC1 VAR_B = von_mises_LC2 END_ Other Operators for Controller-Based Shape OptimizationThe operators VAR_OPER = FILTER VAR_OPER = CUT_OFF VAR_OPER = NORM VAR_OPER = NORM_FIRST refer to a vector and require additional parameters. They can be used to filter values of a vector, cut them at a certain value or normalize them (standard normalization or with reference to maximum of first iteration). VAR_OPER = NROOT VAR_OPER = NPOWER allow to calculate the nth root or power of a single value. |