Load the input files with the FEM_INPUT command.
Define the Design Area (DV_SHAPE):
DV_SHAPE
ID_NAME = MY_DV_SHAPE
ND_GROUP = design_nodes
END_
Note:
If you are using MSC NastranĀ®, the group is defined as set 1 of the file cranehook_groups.bdf and can be loaded into Tosca Structure.guiin the command GROUP_DEF.
Define the elements for mesh smoothing (MESH_SMOOTH):
MESH_SMOOTH
ID_NAME = MY_MESH_SMOOTH
EL_GROUP = mesh_smooth_elem
CORRECT_ELEMENTS = YES
FREE_SF = FREE
END_
All free surface nodes may remain free.
To constrain the node displacement to 10, define a Design Variable Constraint (DVCON_SHAPE):
DVCON_SHAPE
ID_NAME = DVCON_LIMIT
CHECK_BC = NO
ND_GROUP = design_nodes
CHECK_GROW = 10
CHECK_SHRINK = 10
END_
To consider the boundary conditions for the node displacement, define a second Design Variable Constraint (DVCON_SHAPE):
DVCON_SHAPE
ID_NAME = DVCON_BC
CHECK_BC = YES
ND_GROUP = design_nodes
END_
To constrain the volume, define a Design Response (DRESP) that references the volume of all elements::
DRESP
ID_NAME = DRESP_VOLUME
DEF_TYPE = SYSTEM
TYPE = VOLUME
EL_GROUP = ALL_ELEMENTS
END_
Define an Objective Function (OBJ_FUNC) that references the Design Response and sets the target to MIN:
OBJ_FUNC
ID_NAME = MINIMIZE_VOLUME
TARGET = MIN
DRESP = DRESP_VOLUME, ,
END_
To define the stress constraint, do the following;
- Create a Design Response (DRESP) for the maximum Mises stresses of the STRESS_NODES node group.
DRESP
ID_NAME = DRESP_MAX_MISES
DEF_TYPE = SYSTEM
TYPE = SIG_MISES
ND_GROUP = STRESS_NODES
LC_SET = STATIC,1,All
END_
- Reference the Design Response in a constraint (CONSTRAINT), set a relative value of 90% and the constraint type to less or equal:
CONSTRAINT
ID_NAME = CONSTRAINT_stress
MAGNITUDE = REL
DRESP = DRESP_MAX_MISES
LE_VALUE = 0.9
END_
To constrain the frequency, do the following:
- Create a Design Response (DRESP) with an Eigenmode of 5:
DRESP
ID_NAME = DRESP_FREQ
DEF_TYPE = SYSTEM
TYPE = DYN_FREQ
LC_SET = ALL,10001,5
END_
- Reference the Design Response in a constraint (CONSTRAINT),set a relative value of 110% and the constraint type to greater or equal:
CONSTRAINT
ID_NAME = CONSTRAINT_freq
MAGNITUDE = REL
DRESP = DRESP_FREQ
GE_VALUE = 1.1
END_
Reference the Design Variables, Objective Function, constraints and the mesh smoothing in the OPTIMIZE command:
OPTIMIZE
ID_NAME = SHAPE_OPTIMIZATION
OBJ_FUNC = MINIMIZE_VOLUME
DV = MY_DV_SHAPE
DVCON = DVCON_LIMIT
DVCON = DVCON_BCC
CONSTRAINT = CONSTRAINT_stress
CONSTRAINT = CONSTRAINT_freq
MESH_SMOOTH = MY_MESH_SMOOTH
STRATEGY = SHAPE_SENSITIVITY
END_
Make sure you chose the SHAPE_SENSITIVITY strategy.