Académique Documents
Professionnel Documents
Culture Documents
TM
OptiStruct Optimization
Analysis, Concept and Optimization
HyperWorks is a division of
Location
North America China France Germany India Italy Japan Korea Scandinavia United Kingdom Brazil Australia New Zealand
Telephone
248.614.2425 86.21.6117.1666 33.1.4133.0992 49.7031.6208.22 91.80.6629.4500 1800.425.0234 (toll free) 39.800.905.595 81.3.5396.2881 82.31.716.4321 46.46.286.2052 44.1926.468.600 55.11.3884.0414 64.9.413.7981 64.9.413.7981
e-mail
hwsupport@altair.com support@altair.com.cn francesupport@altair.com hwsupport@altair.de support@india.altair.com support@altairengineering.it support@altairjp.co.jp support@altair.co.kr support@altair.se support@uk.altair.com br_support@altair.com.br anzsupport@altair.com anzsupport@altair.com
The following countries have distributors for Altair Engineering: Asia Pacific: Indonesia, Malaysia, Singapore, Taiwan, Thailand Europe: Czech Republic, Hungary, Poland, Romania, Spain, Turkey. 2009 Altair Engineering, Inc. All rights reserved. No part of this publication may be reproduced, transmitted, transcribed, stored in a retrieval system, or translated to another language without the written permission of Altair Engineering, Inc. To obtain this permission, write to the attention Altair Engineering legal department at: 1820 E. Big Beaver, Troy, Michigan, USA, or call +1-248-614-2400.
Table of Contents
OptiStruct Optimization
Analysis, Concept and Optimization
Table of Contents.................................................................................................................... II
Chapter 1: Introduction............................................................................................ 1
1 HyperWorks Overview ................................................................................................ 1 1.1 HyperWorks Tool Descriptions................................................................................. 2 1.2 OptiStruct Integration with HyperWorks ................................................................... 4 2 OptiStruct Overview .................................................................................................... 5 2.1 Finite Element Analysis............................................................................................ 5 2.2 Multi-body Dynamic Analysis ................................................................................... 6 2.3 Structural Design and Optimization.......................................................................... 6 2.4 Case Studies............................................................................................................ 9 2.4.1 Lightweight SUV Frame Development .................................................................. 9 2.4.2 Optimization Process of a Torsion Link............................................................... 10
II
2.4 Constraint Screening.............................................................................................. 29 2.4.1 Regions and Their Purpose ................................................................................ 31 2.5 Discrete Design Variables...................................................................................... 32
III
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
Exercise 4.2 Topology Optimization of a Control Arm ................................................. 65 Exercise 4.3: Pattern Repetition using Topology Optimization ....................................... 71 2 Topography Optimization .......................................................................................... 79 2.1 Design Variables for Topography Optimization...................................................... 79 2.1.1 Variable Generation ............................................................................................ 80 2.1.2 Multiple Topography Design Regions ................................................................. 81 Exercise 4.4 Topography Optimization of a Slider Suspension ................................... 83 3 Free-size Optimization .............................................................................................. 89 Exercise 4.5 Free-size optimization of Finite Plate with hole ....................................... 93 4 Design Interpretation - OSSmooth .......................................................................... 101 4.1 OSSmooth Input Data .......................................................................................... 103 4.2 Running OSSmooth ............................................................................................. 105 4.3 Interpretation of Topography Optimization Results.............................................. 106 4.4 Shape Optimization Results, Surface Reduction and Surface Smoothing........... 107 Exercise 4.6 OSSmooth surfaces from a topologic optimization ............................... 109
IV
3.2 Free-shape Parameters ....................................................................................... 163 3.2.1 Direction type .................................................................................................... 163 3.2.2 Move factor ....................................................................................................... 164 3.2.3 Number of layers for mesh smoothing .............................................................. 164 3.2.4 Maximum shrinkage and growth ....................................................................... 165 3.2.5 Constraints on Grids in the Design Region ....................................................... 166 Exercise 5.5 Free-shape optimization Compressor Bracket ...................................... 169 Exercise 5.6 - Shape Optimization of a 3-D Bracket using the Free-shape Method .... 177
V
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
Chapter 1: Introduction
Chapter 1
Introduction
1- HyperWorks Overview
HyperWorks, A Platform for Innovation, is an enterprise simulation solution for rapid design exploration and decision-making. As one of the most comprehensive CAE solutions in the industry, HyperWorks provides a tightly integrated suite of best-in-class tools for: o o o o o o Modeling Analysis Optimization Visualization Reporting Performance data management.
Based on a revolutionary pay-for-use token-based business model, HyperWorks delivers increased value and flexibility over other software licensing models. Below we list the applications that are part of HyperWorks, for extra information about them go to www.altairhyperworks.com web page or go to HyperWorks online documentation.
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 1
Chapter 1: Introduction
Universal finite element pre- and post-processor Finite element pre-processor for automotive crash and safety analysis Geometry cleanup and auto-meshing in batch mode for given CAD files
Solvers RADIOSS MotionSolve OptiStruct Finite element solver for linear and non-linear problems Multi-body dynamics solver Design and optimization software using finite elements and multi-body dynamics
Post-processing and Data Analysis HyperView High performance finite element and mechanical system post-processor, engineering plotter, and data analysis tool Engineering plotter and data analysis tool Engineering 3-D plotter and data analysis tool Viewer for visualizing 3-D CAE results via the Internet or desktop
Study and Optimization HyperStudy Integrated optimization, DOE, and robustness engine
Data Management and Process Automation Altair Data Manager A solution that organizes, manages, and stores CAE and test data throughout the product design cycle
OptiStruct Optimization 2
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
Chapter 1: Introduction
Process Manager
Process automation tool for HyperWorks and third party software; Processes can be created with the help of Process Studio. A tool that enables CAE analysts to manage, organize, and control their CAE mesh data
Assembler
Manufacturing Environments Manufacturing Solutions HyperForm HyperXtrude A unified environment for manufacturing process simulation, analysis, and design optimization A unique finite element based sheet metal forming simulation software solution An hp-adaptive finite element program that enables engineers to analyze material flow and heat transfer problems in extrusion and rolling applications Provides a highly efficient and customized environment for setting up models for injection molding simulation with Moldflow Provides a highly efficient and customized environment for setting up models for complex three-dimensional forging simulation with DEFOM3D Provides an efficient interface for setting up models and analyzing friction stir welding with the HyperXtrude Solver Process Manager-based tool that provides a framework to initialize a structural model with results from a forming simulation
Molding
Forging
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 3
Chapter 1: Introduction
Solver Overview
The pre-processing for OptiStruct is made using HyperMesh and the postprocessing using HyperView and HyperGraph. HyperStudy is another HyperWorks tool that can be used with OptiStruct for Robust design, DOE and Optimization. During the next exercises the HyperWorks integration with OptiStruct will be showed in detail, and for more about it the user should go to our online documentation.
OptiStruct Optimization 4
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
Chapter 1: Introduction
2 OptiStruct Overview
OptiStruct is a finite element and multi-body dynamics software which can be used to design and optimize structures and mechanical systems. OptiStruct uses the analysis capabilities of RADIOSS and MotionSolve to compute responses for optimization.
The graphical interface for OptiStruct within HyperWorks allows you to perform complete modeling, optimization problem setup, job submission, and post-processing quickly and easily.
Advanced analysis features o Frequency response function (FRF) analysis o o o o Direct Modal
o o o
Non-linear contact analysis Acoustic Analysis (Structure and Fluid) Fatigue Analysis (N and N)
Inertia relief analysis is available with static, frequency response, transient response, and non-linear gap analyses. All standard finite element types are available. All
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 5
Chapter 1: Introduction
elements fulfill the usual patch tests as well as the full suite of MacNeal-Harder tests. OptiStruct can be used as a standalone finite element solver. It provides multi-threaded solutions on multi-processor computers.
Systems with rigid and flexible bodies can be analyzed. Flexible bodies can be derived from any finite element model defined in OptiStruct. The multi-body solution sequence is the implemented as an integration of Altair MotionSolve. Multi-body dynamics is an advanced analysis feature.
OptiStruct Optimization 6
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
Chapter 1: Introduction
Topography: Topography optimization is an advanced form of shape optimization in which a design region for a given part is defined and a pattern of shape variable-based reinforcements within that region is generated using OptiStruct.
Free Size: is a mathematical technique that produces an optimized thickness distribution per element for a 2D structure.
Shape: is an automated way to modify the structure shape based on predefined shape variables to find the optimal shape.
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 7
Chapter 1: Introduction
Size: is an automated way to modify the structure parameters (Thickness, 1D properties, material properties, etc) to find the optimal design.
Gauge: is a particular case of size, where the DV are 2D props (Pshell or Pcomp) Free Shape: is an automated way to modify the structure shape based on set of nodes that can move totally free on the boundary to find the optimal shape.
Composite shuffle: is an automated way to determine the optimum laminate stack sequence. DVs are the plies sequence of stacking. It is used for composite material only defined using PCOMP(G) or PCOMPP.
OptiStruct Optimization 8
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
Chapter 1: Introduction
Topology, topography, free-size, size, shape and free-shape optimization can be combined in a general problem formulation. All these optimizations methods will be discussed in detail on the next chapters.
OptiStruct Application
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 9
Chapter 1: Introduction
OptiStruct Application
OptiStruct Optimization 10
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
Chapter 2
Theoretical Background
1 Optimization
Optimization can be defined as the automatic process to make a system or component as good as possible based on an objective function and subject to certain design constraints. There are many different methods or algorithms that can be used to optimize a structure, on OptiStruct is implemented some algorithms based on Gradient Method, this method will be discussed in detail later on this book. Models used in optimization are classified in various ways, such as linear versus nonlinear, static versus dynamic, deterministic versus stochastic, or permanent versus transient. Then it is very important that the user include a-priori all of the important aspects of the problem, so that they will be taken into account during the solution. Mathematically an optimization problem can be stated as: Objective Function: Subject to constraint Functions: Design Space: 0(p) min(max) i(p) 0 pl pj pu where l is the lower bound and u is the upper bound on the design variables (target)
where:
0(p) and i(p) represent the system responses or a target value for system
identification study, and pj represents the vector of design variables (p1,p2,,pn).
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 11
TOPOGRAPHY:
FREE-SIZE:
SHAPE:
SIZE:
o o
GAUGE: FREE-SHAPE:
COMPOSITE SHUFFLE: is an automated way to determine the optimum laminate stack sequence. DVs are the plies sequence of stacking. It is used for composite material only defined using PCOMP(G) or PCOMPP.
OptiStruct Optimization 12
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
1.2 Response
Response for OptiStruct is any value or function that is dependent of the Design Variable and is evaluated during the solution. OptiStruct allows the use of numerous structural responses, calculated in a finite element analysis, or combinations of these responses to be used as objective and constraint functions in a structural optimization. Responses are defined using DRESP1 bulk data entries. Combinations of responses are defined using either DRESP2 entries, which reference an equation defined by a DEQATN bulk data entry, or DRESP3 entries, which make use of user-defined external routines identified by the LOADLIB I/O option. Responses are either global or subcase (loadstep, load case) related. The character of a response determines whether or not a constraint or objective referencing that particular response needs to be referenced within a subcase.
Vi D Vf = D V0
where: Vf : Volume fraction
Mf =
where:
Mi M0
Mf : Mass fraction Mi : Total mass at current iteration; M0 : Total Initial mass;
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 13
If, in addition to the topology optimization, a size and shape optimization is performed, the reference value (the initial design volume in the case of volume fraction, or initial total mass in the case of mass fraction) is not altered by size and shape changes. This can, on occasion, lead to negative values for these responses. If size and shape optimization is involved, it is recommended to use Mass or Volume responses instead of Mass Fraction or Volume Fraction, respectively. In order to constrain the volume fraction for a region containing a number of properties (components), a DRESP2 equation needs to be defined to sum the volume of these properties (components), otherwise, the constraint is assumed to apply to each individual property (component) within the region. This can be avoided by having all properties (components) use the same material and applying the volume fraction constraint to that material. These responses can only be applied to topology design domains. OptiStruct will terminate with an error if this is not the case. o Center of gravity [ cog ] This is a global response that may be defined for the whole structure, for individual properties (components) and materials, or for groups of properties (components) and materials. o Moments of inertia [ inertia ]
This is a global response that may be defined for the whole structure, for individual properties (components) and materials, or for groups of properties (components) and materials. o Weighted compliance [ weighted comp ]
The weighted compliance is a method used to consider multiple subcases (loadsteps, load cases) in a classical topology optimization. The response is the weighted sum of the compliance of each individual subcase (loadstep, load case).
CW = wiCi =
1 wi uT fi i 2
This is a global response that is defined for the whole structure. o Weighted reciprocal eigenvalue (frequency) [ weighted freq ]
The weighted reciprocal eigenvalue is a method to consider multiple frequencies in a classical topology optimization. The response is the weighted sum of the reciprocal eigenvalues of each individual mode considered in the optimization.
fw =
wi
with [K i M ]ui = 0
OptiStruct Optimization 14
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
This is done so that increasing the frequencies of the lower modes will have a larger effect on the objective function than increasing the frequencies of the higher modes. If the frequencies of all modes were simply added together, OptiStruct would put more effort into increasing the higher modes than the lower modes. This is a global response that is defined for the whole structure. o Combined compliance index [ compliance index ]
The combined compliance index is a method to consider multiple frequencies and static subcases (loadsteps, load cases) combined in a classical topology optimization. The index is defined as follows
S = wi Ci + NORM
wj
j j
This is a global response that is defined for the whole structure. The normalization factor, NORM, is used for normalizing the contributions of compliances and eigenvalues. A typical structural compliance value is of the order of 1.0e4 to 1.0e6. However, a typical inverse eigenvalue is on the order of 1.0e-5. If NORM is not used, the linear static compliance requirements dominate the solution. The quantity NORM is typically computed using the formula
NF = Cmax min
where Cmax is the highest compliance value in all subcases (loadsteps, load cases) and min is the lowest eigenvalue included in the index. In a new design problem, the user may not have a close estimate for NORM. If this happens, OptiStruct automatically computes the NORM value based on compliances and eigenvalues computed in the first iteration step. o Von Mises stress in a topology or free-size optimization Von Mises stress constraints may be defined for topology and free-size optimization through the STRESS optional continuation line on the DTPL or the DSIZE card. There are a number of restrictions with this constraint: o The definition of stress constraints is limited to a single von Mises permissible stress. The phenomenon of singular topology is pronounced when different materials with different permissible stresses exist in a structure. Singular topology refers to the problem associated with the conditional nature of stress constraints, i.e. the stress constraint of an element disappears when the element vanishes. This creates another problem in that a huge number of reduced problems exist with solutions that cannot usually be found by a gradient-based optimizer in the full design space.
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 15
Stress constraints for a partial domain of the structure are not allowed because they often create an ill-posed optimization problem since elimination of the partial domain would remove all stress constraints. Consequently, the stress constraint applies to the entire model when active, including both design and nondesign regions, and stress constraint settings must be identical for all DSIZE and DTPL cards. The capability has built-in intelligence to filter out artificial stress concentrations around point loads and point boundary conditions. Stress concentrations due to boundary geometry are also filtered to some extent as they can be improved more effectively with local shape optimization. Due to the large number of elements with active stress constraints, no element stress report is given in the table of retained constraints in the .out file. The iterative history of the stress state of the model can be viewed in HyperView or HyperMesh. Stress constraints do not apply to 1-D elements. Stress constraints may not be used when enforced displacements are present in the model. [ beadfrac ]
o o o
This is a global response for topography design domains. This response indicates the amount of shape variation for one or more topography design domains. The response varies in the range 0.0 to 1.0 (0.0 < BEADFRAC < 1.0), where 0.0 indicates that no shape variation has occurred, and 1.0 indicates that the entire topography design domain has assumed the maximum allowed shape variation.
Static Subcase
o Static compliance [ compliance ] The compliance C is calculated using the following relationship:
C=
1 T u f 2
with Ku = f
or C=
1 T 1 u Ku = Tdv 2 2V
The compliance is the strain energy of the structure and can be considered a reciprocal measure for the stiffness of the structure. It can be defined for the whole structure, for individual properties (components) and materials, or for groups of properties (components) and materials. The compliance must be assigned to a static subcase (loadstep, load case).
OptiStruct Optimization 16
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
In order to constrain the compliance for a region containing a number of properties (components), a DRESP2 equation needs to be defined to sum the compliance of these properties (components), otherwise, the constraint is assumed to apply to each individual property (component) within the region. This can be avoided by having all properties (components) use the same material and applying the compliance constraint to that material. o Static displacement [ static displacement ]
Displacements are the result of a linear static analysis. Nodal displacements can be selected as a response. They can be selected as vector components or as absolute measures. They must be assigned to a static subcase (loadstep, load case). o Static stress of homogeneous material [ static stress ]
Different stress types can be defined as responses. They are defined for components, properties, or elements. Element stresses are used, and constraint screening is applied. It is also not possible to define static stress constraints in a topology design space (see above). This is a static subcase (loadstep, load case) related response. o Static strain of homogeneous material [ static strain ]
Different strain types can be defined as responses. They are defined for components, properties, or elements. Element strains are used, and constraint screening is applied. It is also not possible to define strain constraints in a topology design space. This is a subcase (loadstep, load case) related response. o Static stress of composite lay-up [ composite stress ]
Different composite stress types can be defined as responses. They are defined for PCOMP components or elements. Ply level results are used, and constraint screening is applied. It is also not possible to define composite stress constraints in a topology design space. This is a subcase (loadstep, load case) related response. o Static strain of composite lay-up [ composite strain ]
Different composite strain types can be defined as responses. They are defined for PCOMP components or elements. Ply level results are used, and constraint screening is applied. It is also not possible to define composite strain constraints in a topology design space. This is a subcase (loadstep, load case) related response. o Static failure in a composite lay-up [composite failure ]
Different composite failure criterion can be defined as responses. They are defined for PCOMP components or elements. Ply level results are used, and constraint screening is applied. It is also not possible to define composite failure criterion constraints in a topology design space. This is a subcase (loadstep, load case) related response. o Static force [ static force ]
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 17
Different force types can be defined as responses. They are defined for components, properties, or elements. Constraint screening is applied. It is also not possible to define force constraints in a topology design space. This is a static subcase (loadstep, load case) related response.
Buckling Subcase
o Buckling factor [ buckling ] The buckling factor is the result of a buckling analysis, and must be assigned to a buckling subcase (loadstep, load case). A typical buckling constraint is a lower bound of 1.0, indicating that the structure is not to buckle with the given static load. It is recommended to constrain the buckling factor for several of the lower modes, not just of the first mode.
Velocities are the result of a frequency response analysis. Nodal velocities can be selected as a response. They can be selected as vector components in real/imaginary or magnitude/phase form. They must be assigned to a frequency response subcase (loadstep, load case). o Frequency response acceleration [ frf acceleration ]
Accelerations are the result of a frequency response analysis. Nodal accelerations can be selected as a response. They can be selected as vector components in real/imaginary or magnitude/phase form. They must be assigned to a frequency response subcase (loadstep, load case). o Frequency response stress [ frf stress ]
Different stress types can be defined as responses. They are defined for components, properties, or elements. Element stresses are not used in real/imaginary or magnitude/phase form, and constraint screening is applied. It is not possible to define stress constraints in a topology design space. This is a frequency response subcase (loadstep, load case) related response.
OptiStruct Optimization 18
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
[ frf strain ]
Different strain types can be defined as responses. They are defined for components, properties, or elements. Element strains are used in real/imaginary or magnitude/phase form, and constraint screening is applied. It is not possible to define strain constraints in a topology design space. This is a frequency response subcase (loadstep, load case) related response. o Frequency response force [ frf force ] Different force types can be defined as responses. They are defined for components, properties, or elements in real/imaginary or magnitude/phase form. Constraint screening is applied. It is also not possible to define force constraints in a topology design space. This is a frequency response subcase (loadstep, load case) related response.
y
i =1
y
i =1
2 i
Square root of sum of squares of the arguments. Scalar = Maximum value of arguments. Scalar = max ( y i ) Minimum value of arguments. Scalar = min( y i )
y
i =1
2 i
Minimum of absolute value of arguments. Scalar = min y i Sum of absolute value of arguments. Scalar =
( )
y
i =1
Fatigue
[ fatigue ]
It is the life or damage evaluated in a fatigue sequence for a group of elements or properties. o Function [ function ]
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 19
Example: Objective is to minimize the value of the response with ID 1. DESOBJ(MIN) = 1 The second instance, where the objective references multiple responses, requires DOBJREF bulk data entries and MINMAX or MAXMIN subcase information entries. The DOBJREF cards reference responses (DRESP1 or DRESP2) and provide positive and negative reference values for these responses. Multiple DOBJREF cards may occur in the input file and they may or may not use the same Design Objective IDs. The reference values allow for normalization of different responses. The value of the response is divided by the appropriate reference value. When the value of the response is positive, the positive reference value is used. When the value of the response is negative, the negative reference value is used. The MINMAX or MAXMIN cards reference the DOBJREF cards. If all DOBJREF cards use the same DOID, only one occurrence of MAXMIN or MINMAX is required. If different DOIDs are used on the DOBJREF cards, multiple occurrences of MINMAX and MAXMIN cards may be required, but a MINMAX statement cannot appear in the same input file as a MAXMIN statement. MINMAX or MAXMIN statements must appear before the first SUBCASE statement.
Example: Objective is to minimize the maximum of all DOBJREF's with DOID 1 and DOID 2. MINMAX = 1 MINMAX = 2 Example: Design objective for MINMAX (MAXMIN) problems - DOID 1 - references design response 10 in subcase 2 - negative reference value = -1.0, positive reference value = 1.0. $--(1)--$--(2)--$--(3)--$--(4)--$--(5)--$--(6)--$--(7)--
OptiStruct Optimization 20
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
DOBJREF
10
1.0
1.0
Objective:
min Weight(b,h)
Design Variables:
Design Constraints:
with with
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 21
BEAM 100.0 90.0 80.0 70.0 60.0 50.0 40.0 30.0 20.0 10.0 0.0 0.00
=70 =15
FEASIBLE DOMAIN
< 15 <70
h (mm)
>70 > 15
OPTIMUM
UNFEASIBLE DOMAIN
10.00
20.00
30.00
40.00
50.00
b (mm)
Cantilever beam problem (Optimum (b=24.9, h=64.3) W = 8).
OptiStruct Optimization 22
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
2 Gradient-based Optimization
OptiStruct uses an iterative procedure known as the local approximation method to solve the optimization problem. This approach is based on the assumption that only small changes occur in the design with each optimization step. The result is a local minimum. The biggest changes occur in the first few optimization steps and, as a result, not many system analyses are necessary in practical applications. The design sensitivity analysis of the structural responses (with respect to the design variables) is one of the most important ingredients to take the step from a simple design variation to a computational optimization. The design update is computed using the solution of an approximate optimization problem, which is established using the sensitivity information. OptiStruct has three different methods implemented: the optimality criteria method, a dual method, and a primal feasible directions method. The latter are both based on a convex linearization of the design space. Advanced approximation methods are used. The optimality criteria method is used for classical topology optimization formulations using minimum compliance (reciprocal frequency, weighted compliance, weighted reciprocal frequency, compliance index) with a mass (volume) or mass (volume) fraction constraint. The dual or primal methods are used depending upon the number of constraints and design variables. The dual method is of advantage if the number of design variables exceeds the number of constraints (common in topology and topography optimization). The primal method is used in the opposite case, which is more common in size and shape optimizations. However, the choice is made automatically by OptiStruct.
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 23
X0 X1 X2 X3
This is a very simplified overview of this method, if the user needs more information it can be found on any Optimization text book
Gradient-based methods are effective when the sensitivities (derivatives) of the system responses, with respect to the design variables, can be computed easily and inexpensively. The local approximation method is best suited to situations where: Design Sensitivity Analysis (DSA) is available. The method is applied to linear static and dynamic problems integrated mostly with FEA Solvers (i. e. OptiStruct).
Gradient-based methods depend on the sensitivity of the system responses with respect to changes in design variables in order to understand the effect of the design changes and optimize the system. For linear structural analysis codes, you can implement the derivatives of the structural responses using either finite difference or analytical methods (such as the Adjoint Method). Here, the responses are written as explicit algebraic equations with the needed continuity requirements and are easily differentiable.
OptiStruct Optimization 24
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
For example, using first order finite difference method, you can calculate the gradient of i(p) as:
In finite element based structural optimization, you can state the linear static equation as KU = F, where K is the stiffness matrix and U is the displacement vector to be determined, and F is the applied force vector. Differentiating this with respect to the design variable X yields the following:
You can obtain gradients of stresses and strains, etc, by chain rule differentiation.
The sensitivity of this response with respect to the design variable x, or the gradient of the response, is:
Two approaches to sensitivity analysis, the Direct and Adjoint variable method are possible. Given the equation of motion:
Using this equation, the largest cost in the calculation of the response gradient is the forward-backward substitution required for the calculation of the derivative of the
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 25
displacement vector with respect to the design variable. This is called the direct method. One forward-backward substitution is required for each design variable. If constraints are active in more than one load case, and the load is a function of the design variable (say body force or pressure loads for shape optimization), then the set of forward-backward substitutions must be performed for each active load case. If the loads are not a function of the design variables, but there are active load cases with multiple boundary conditions, then the set of forward-backward substitutions must be performed for each active boundary condition. For the Adjoint variable method of sensitivity analysis, the vector (adjoint variable) a is introduced, which is calculated as:
When the adjoint variable method for sensitivity analysis is used, a single forwardbackward substitution is needed for each retained constraint. This forward-backward substitution is needed to calculate the vector a. There are typically a small number of design variables in shape and size optimization (say 5 to 50) and a large number of constraints. The large number of constraints comes from stress constraints. If there are 20,000 elements, each with a single stress constraint, and 10 load cases, there are a total of 200,000 possible stress constraints. There are typically a large number of design variables in topology optimization (between 1 and 3 per element) and a small number of constraints. Because stress constraints are not usually considered in topology optimization, it makes sense that the Adjoint variable method of sensitivity analysis be used for topology optimization (in order to reduce computational costs). For shape and sizing optimization, it is often beneficial to use the Direct method for sensitivity analysis. However, in some cases, when there are a large number of design variables and a small number of constraints, the adjoint variable method should be used. For example, in a topography optimization, the number of constraints that gradients need to be calculated for can be reduced using constraint screening. With constraint screening, constraints that are not close to being violated are ignored. Only constraints that are violated, or nearly violated, are retained. Also, if there are many stress constraints that are retained in a small region of the structure, say at a stress concentration, only a few of the most critical need to be retained. The sensitivities of responses with respect to design variables can be exported to an Excel spreadsheet (see OUTPUT, MSSENS) or plotted in HyperGraph (See OUTPUT, HGSENS). For contouring in HyperView, the sensitivities of topology and gauge design variables can be exported to H3D format. (See OUTPUT, H3DTOPOL and OUTPUT, H3DGAUGE, respectively).
OptiStruct Optimization 26
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
The Excel spreadsheet allows the modification of design variables and then computes approximated responses. This can be used to make design studies without running OptiStruct again. See the image below.
Example spreadsheet output showing that modification of field C10 yields approximate results in the lower right of the spreadsheet, identified by a border surround here.
File Creation This file is only created when size or shape optimization is performed. Output of this file is controlled by the SENSITIVITY and SENSOUT I/O options. File Format The only values that can be changed in this file are those listed in the "New" column. All other values are either fixed or their calculation is fixed. When the .slk file is created, the values in the "New" column match those in the "Reference" column. These values may be adjusted, but should always remain within the design variable's bounds. Each size and shape design variable in the model is listed in the left-hand column of the sensitivity table. Information concerning a particular design variable is given in the row where its label is listed. The current value and the upper and lower bounds of the design variables are given in the columns, "Reference," "Lower," and "Upper" respectively. Each referenced response in the model has its own column. These response columns are on the right-hand side of the sensitivity table. The calculated sensitivity of a response to changes in a design variable at the current iteration is given in the row corresponding to that design variable and the column corresponding to that response. Beneath the list of design variables, in the left-hand column, are the headings "Response lower bound," "Response reference," and "Response upper bound". If a response is constrained, the constraint value will be given in either the "Response lower bound" or the "Response upper bound" row of the column corresponding to that response. The value given in the "Response reference" row is the calculated value of the response using the design variable reference values.
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 27
At the bottom of the left-hand column are the headings: "Response linear," "Response reciprocal," and "Response conservative". The response values in these rows are the predicted values of the responses for three different approximations. Initially, these values will match one another and the "Response reference" value for each response. This is because these are the predicted values of the response at the given variable settings, which initially are the same settings used to calculate the "Response reference" value. Once the design variable values in the "New" column are altered, these values will change. The "Response linear" row predicts the response value using linear approximation. This is calculated as:
where:
R1
is the predicted response value. is the response reference value. are the new values of the design variables. are the reference values of the design variables. are the sensitivities of the response to the design variables.
The "Response reciprocal" row predicts the response value using reciprocal approximation. This is calculated as:
where:
R1
is the predicted response value. is the response reference value. are the new values of the design variables. are the reference values of the design variables. are the sensitivities of the response to the design variables.
The "Response conservative" row predicts the response value using a combination of the above approximations where linear approximation is used, when the sensitivity is positive, and reciprocal approximation is used when the sensitivity is negative. Therefore, if all sensitivities are positive, the conservative prediction will match the linear prediction. If all sensitivities are negative, it will match the reciprocal prediction, but if there is a mixture of positive and negative sensitivities for a given response then the conservative prediction will match neither the linear nor the reciprocal prediction.
OptiStruct Optimization 28
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
The normalized values simply show the predicted response as a fraction of the response reference value.
Small move limits lead to smoother convergence. Many iterations may be required due to the small design changes at each iteration. Large move limits may lead to oscillations between infeasible designs as critical constraints are calculated inaccurately. If the approximations themselves are accurate, large move limits can be used. Typical move limits in the approximate optimization problem are 20% of the current design variable value. If advanced approximation concepts are used, move limits up to 50% are possible. Even with advanced approximation concepts, it is possible to have poor approximations of the actual response behavior with respect to the design variables. It is best to use larger move limits for accurate approximations and smaller move limits for those that are not so accurate. Note that the same set of design variable move limits must be used for all of the response approximations. It is important to look at the approximations of the responses that are driving the design. These are the objective function and most critical constraints. If the objective function moves in the wrong direction, or critical constraints become even more violated, it is a sign that the approximations are not accurate. In this case, all of the design variable move limits are reduced. However, if the move limits become too small, convergence may be slowed, as design variables that are a long way from the optimum design are forced to change slowly. Therefore, the move limits on the individual design variables that keep hitting the same upper or lower move limit bound are increased. Move limits are automatically adjusted by OptiStruct.
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 29
2.
For gradient-based optimization, the design sensitivities of these responses need to be calculated. The design sensitivity calculation can be very computationally expensive when there are a large number of responses and a large number of design variables.
Constraint screening is the process by which the number of responses in the optimization problem is trimmed to a representative set. This set of retained responses captures the essence of the original design problem while keeping the size of the optimization problem at an acceptable level. Constraint screening utilizes the fact that constrained responses that are a long way from their bounding values (on the satisfactory side) or which are less critical (i.e. for an upper bound more negative and for a lower bound more positive) than a given number of constrained responses of the same type, within the same designated region and for the same subcase, will not affect the direction of the optimization problem and therefore can be removed from the problem for the current design iteration. Consider the optimization problem where the objective is to minimize the mass of a finite element model composed of 100,000 elements, while keeping the elemental stresses below their associated material's yield stress. In this problem, we have 100,000 constraints (the stress for every element must be below its associated material's yield stress) for each subcase. For every design variable, 100,000 sensitivity calculations must be performed for each subcase, at every iteration. Because design variable changes are restricted by move limits, stresses are not expected to change drastically from one iteration to the next. Therefore, it is wasteful to calculate the sensitivities for those elements whose stresses are considerably lower than their associated material's yield stress. Also the direction of the optimization will be driven primarily by the highest elemental stresses. Therefore, the number of required calculations can be further reduced by only considering an arbitrary number of the highest elemental stresses. Of course there is trade-off involved in using constraint screening. By not considering all of the constrained responses, it may take more iterations to reach a converged solution. If too many constrained responses are screened, it may take considerably longer to reach a converged solution or, in the worst case, it may not be able to converge on a solution if the number of retained responses is less than the number of active constraints for the given problem. Through extensive testing it has been found that, for the majority of problems, using constraint screening saves a lot of time and computational effort. Therefore, constraint screening is active in OptiStruct by default. The default settings consider only the 20 most critical (i.e. for an upper bound most positive and for a lower bound most negative) constraints that come within 50 percent of their bound value (on the satisfactory side) for each response type, for each region, for each subcase. The DSCREEN bulk data entry controls both the screening threshold and number of retained constraints. Different DSCREEN settings are allowed for all of the response types supported by the DRESP1 bulk data entry. Responses defined by the DRESP2 bulk data entry are controlled by a single DSCREEN entry with RTYPE = EQUA. Likewise, responses defined by the DRESP3 bulk data entry are controlled by a single DSCREEN entry with RTYPE = EXTERNAL. It is important to ensure that DRESP2 and DRESP3 definitions that use the same region identifier use similar equations. (In order for constraint screening to work effectively, responses within the same region should be of similar magnitudes and
OptiStruct Optimization 30
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
demonstrate similar sensitivities, the easiest way to ensure that is through the use of similar variable combinations). In order to reduce the burden on the user, it is possible to allow the screening criteria to be automatically and adaptively adjusted in an effort to retain the least number of responses necessary for stable convergence. Setting RTYPE=AUTO on the DSCREEN bulk data entry will enable this feature. Region definition is also automated with this setting. This setting is useful for less experienced users and can be particularly useful when there are many local constraints. However, there are some drawbacks; experienced users may be able to achieve better performance through manual definition of screening criteria, more memory may be required to run with RTYPE=AUTO, and manual under-retention of constraints will require less memory and may, therefore, be desirable for very large problems (even with compromised convergence stability and optimality).
2.4.1 Regions and Their Purpose In OptiStruct, a region is a group of responses of the same type. Regions are defined by the region identifier field on the DRESP1, DRESP2, and DRESP3 bulk data entries used to define the responses. If the region identifier field is left blank or set to 0, then each property associated with the response forms its own region. The same region identifier may be used for responses of different types, but remember that because they are not of the same type they cannot form the same region. Example 1
(1) DRESP1 (2) 1 2 (3) label 3 (4) STRESS (5) PSHELL (6) (7) SMP1 (8) (9) 1 (10)
DRESP1 with ID 1 defines stress responses for all the elements that reference the PSHELL definitions with PID 1, 2, or 3. As no region identifier is defined, the stress responses for each PSHELL form their own regions. So, all of the stress responses for elements referencing PSHELL with PID1 are in a different region than all of the stress responses for elements referencing PSHELL with PID2, which in turn are in a different region than all of the stress responses for elements referencing PSHELL with PID3. If this response definition is constrained in an optimization problem, and the default settings for constraint screening are assumed, then 20 elemental stresses are considered for each of the three PSHELL definitions, i.e. 20 for each region, giving a total of 60 retained responses. Example 2
(1) DRESP1 (2) 2 2 (3) label (4) STRESS (5) PSHELL (6) 1 (7) SMP1 (8) (9) 1 (10)
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 31
All of the stress responses defined in the DRESP1 entries above form a single region - notice the non-zero entries in field 6 (0 is equivalent to leaving it blank). Now, if these response definitions (which are of the same type (STRESS), with the same non-zero entry in field 6) are constrained in an optimization problem (assuming the default settings for constraint screening), then 20 elemental stresses are considered in total for the three PSHELL definitions because they form a single region.
OptiStruct Optimization 32
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
Chapter 3
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 33
<model_file_name>.stat
HTML Reports o <model_file_name>.html This file is always created. This file contains a problem summary and results summary of the run.
<model_file_name>_frames.html This file is output when the H3D FORMAT is chosen. The file contains two frames. The top frame opens one of the .h3d files using the HyperView Player browser plug-in. The bottom frame opens the _menu.html file, which facilitates the selection of results to be displayed. <model_file_name>_menu.html This file is output when the H3D FORMAT is chosen. This file facilitates the selection of the appropriate .h3d file, for the HyperView Player browser plug-in in the top frame of the _frames.html file, based on chosen results
Model results
OptiStruct Optimization 34
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
o o
<model_file_name>.res <model_file_name>.h3d
The .res file is a HyperMesh binary results file. The .h3d file is a compressed binary file, containing both model and result data.
HV session file o <model_file_name>.mvw The .mvw file is a HyperView session file that is linked with the h3d result file and can be open directly from HyperMesh using the HyperView button on OptiStruct or RADIOSS panel.
2-
SIZE OPTIMIZATION All the files generated on the ANALYSIS, with some small differences on: o h3d results files: o <model_file_name>_des.h3d: This is the file to animate the Optimization history. The frequency on this file is defined by OUTPUT, DESIGN, ALL (Default = ALL). This file contains the analysis results for each loadcase. Optimization results can be written to the subcase files using DENSITY, SHAPE, or THICKNESS output requests
<model_file_name>_s#.h3d:
HV session file: o <model_file_name>_hist.mvw: Design history output presentation for HyperGraph. It is linked with the
ASCII files: o <model_file_name>.hist: Default it writes out: DVs, Obj., % max const. violation, all nonstress responses and all DRESP (2 and 3). Contain the Design Variable information to restart the optimization from the final iteration. It is controlled by SHRES.
<model_file_name>.sh:
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 35
o o o
It has the converged design variable values. Optimized property definition. Output history for HyperGraph. It is controlled by deshis = Yes (Default = Yes).
3-
SHAPE OPTIMIZATION All the files generated on SIZE optimization and more 2 ASCII files. o ASCII files: o <model_file_name>.grid: Contain the node information translation for the final optimization iteration. It has the information to run OSSMOTH to generate the optimum topology for the model.
<model_file_name>.oss:
4-
TOPOLOGY OPTIMIZATION
All the files generated on SIZE optimization, except the files .prop and .desvar and more 3 ASCII files: o ASCII file: o <model_file_name>.oss: It has the information to run OSSMOTH to generate the optimum topology for the model.
<model_file_name>.HM.comp.cmf HyperMesh command file that can be used to isolate the elements in components based on the optimized density. <model_file_name>.HM.ent.cmf HyperMesh command file that can be used to isolate the elements in sets based on the optimized density.
5-
6-
7-
8-
FREE-SIZE
OptiStruct Optimization 36
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
All the files generated on TOPOLOGY optimization, except the file .hm.COMP.CMF. 9COMPOSITE SHUFFLE All the files generated on SIZE optimization, more 2 ASCII files: o ASCII file: o <model_file_name>.prop: It has the information to run OSSMOTH to generate the optimum topology for the model.
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 37
2 Optimization Setup
The optimization cards can be divided in 2 groups according with the section on the input deck that this cards are localized. o Subcase Information Entry
DESGLB DESOBJ DESSUB DESVAR MINMAX or MAXMIN MODEWEIGHT MODTRAK NORM REPGLB REPSUB WEIGHT
The complete descriptions of these cards are available at the online documentation.
Optimization Menu
Model Browser
OptiStruct Optimization 38
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 39
Optimization panel
Optimization Menu
Model Browser
The procedure to create a design variable will be described later on each chapter as it define type of optimization that will be performed and have a different setup for each type.
OptiStruct Optimization 40
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
Chapter 3: Optimization Interface and Setup Optimization panel Optimization Menu Model Browser
On this panel the user needs to: 1. Input a name to the response that needs to have less than 8 characters. 2. Choose the type of the response. 3. Choose where this response have to be evaluated: a. If this is total or by entity. Ex. Mass, vol. etc b. Choose the nodes/elements and the direction this will be evaluated. Ex. Static displacement c. Exclude a group of elements that it should not be evaluated. Ex. Static Stress d. For composite response the plies where it should be evaluated. Ex. Composite stress. e. For FRF response choose between real, imaginary, magnitude and phase and the request (All freq; Freq =; sum; avg; ssq; rss; max; min; avgabs; maxabs; minabs; sumabs). 4. Define a region if necessary. 5. Create the response.
2.4 Dconstraints
[DCONSTR]
To create and edit a design constraint the user can chose one of the 3 options shown below:
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 41
Optimization panel
Optimization Menu
Model Browser
On this panel the user needs to: 1. Input a name for this constraint 2. Select the response where this limits will be applied. 3. If this response is dependent of the loadstep, a yellow button will appear and the user need to select the appropriate loadsteps where this limits should be applied. 4. Create the constraint.
[DOBJREF]
To create and edit an objective reference vector the user can chose one of the 3 options shown below:
OptiStruct Optimization 42
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
Chapter 3: Optimization Interface and Setup Optimization panel Optimization Menu Model Browser
On this panel the user needs to: 1. Input a name for this reference vector 2. Select the response where these coefficients will be applied. The positive and negative value should be use together if the user is looking for the maximum or minimum absolute value, for example min(max(|S3|)). The most common usage is the positive reference. min(max(von Mises)). 3. Define if it is applied to all loadsteps or to specific ones. 4. Create the Objective reference vector.
Optimization panel
Optimization Menu
Model Browser
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 43
On this panel the user needs to: 1. Select the response that will be optimized. 2. Define if the response will be minimized or maximized. 3. For MinMax or MaxMin response with multiple values the user needs to use the objective reference vector that can be created using the procedure described on the last section.
OptiStruct Optimization 44
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
[DTABLE]
To create and edit a list of constants the user can chose one of the 3 options shown
Optimization panel
Optimization Menu
Model Browser
On this panel the user needs to: 1. Input the name and the value of all constants that can be used to define the generic functions and create them.
2.8 Dequations
[DEQATN]
To create and edit a function or design equation the user can chose one of the 3 options shown below:
Optimization panel
Optimization Menu
Model Browser
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 45
On this panel the user needs to: 1. Input the name for the function. 2. Input the mathematical expression for the function. Ex. F(x,y)=x**2+2+y. 3. Create the function.
[DDVAL]
To create and edit a Discrete Design Variable list the user can chose one of the 3 options shown below:
Optimization panel
Optimization Menu
Model Browser
On this panel the user needs to: 1. Input the name for the list 2. Input the list values separated by comma or with X0, Xf and X to automatically generate it. 3. Create the list.
OptiStruct Optimization 46
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
[DOPTPRM]
To add or edit the optimization parameters the user can chose one of the 2 options shown below:
Optimization panel
Optimization Menu
On this panel the user needs to: 1. Mark the parameter that needs to be modified and input the value for it.
Optimization panel
Optimization Menu
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 47
On this panel the user needs to: 1. Mark the response type that the solver will take a sub-group. 2. Define the threshold that is a reference value to compare with the normalized constraint to select the sub-group that will be monitored by the solver. if f >= threshold* and the N < max retained the response is add to the monitored list.
Material STEEL: o o o
= 7.8e-9
E = 210000 = 0.3
t/mm3 MPa -
OptiStruct Optimization 48
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
7.80E-09 1
This creates on the bulk data section: DESVAR 1 b10.0 DESVAR 2 c10.0
5.0 5.0
15.0 15.0
Create a Design variable as showed above for b and c. Associate them with the Dimension 1 and Dimension 2 of the beam property as showed below:
This creates on the bulk data section: DVPREL1 1 PBARL + 1 1.0 DVPREL1 2 PBARL + 2 1.0
1DIM1 1DIM2
0.0 0.0
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 49
This creates on the Subcase Information section: DESGLB 2 This creates on the bulk data section: DCONSTR 1 2 DCONADD 2 1
5.00E-04
OptiStruct Optimization 50
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
FINAL SETUP
DESGLB 2 SUBCASE 1 SPC = 1 METHOD(STRUCTURE) = 2 DESOBJ(MAX)=1 BEGIN BULK DESVAR 1 b10.0 5.0 15.0 DESVAR 2 c10.0 5.0 15.0 DVPREL1 1 PBARL 1DIM1 + 1 1.0 DVPREL1 2 PBARL 1DIM2 + 2 1.0 DRESP1 1 f1 FREQ DRESP1 2 Mass MASS DCONSTR 1 2 5.00E-04 DCONADD 2 1 GRID 1 0.0 0.0 0.0 GRID 2 1000.0 0.0 0.0 CBAR 1 1 1 20.0 1.0 PBARL 1 1 BAR + + 10.0 10.0 MAT1 1210000.0 0.3 7.80E-09 EIGRL 2 1 MASS SPC 1 1 1234560.0 SPC 1 2 3 0.0 ENDDATA
0.0 0.0 1
0.0
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 51
OptiStruct Optimization 52
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
Chapter 4
Concept Design
1 Topology Optimization
Topology Optimization is a mathematical technique that produces an optimized shape and material distribution for a structure within a given package space. By discretizing the domain into a finite element mesh, OptiStruct calculates material properties for each element. The OptiStruct algorithm alters the material distribution to optimize the user-defined objective under given constraints.
OptiStruct solves topological optimization problems using either the homogenization or density method. Under topology optimization, the material density of each element should take a value of either 0 or 1, defining the element as being either void or solid, respectively.
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 53
Unfortunately, optimization of a large number of discrete variables is computationally prohibitive. Therefore, representation of the material distribution problem in terms of continuous variables has to be used.
OptiStruct Optimization 54
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
K ( ) = p K
where K and K represent the penalized and the real stiffness matrix of an element, respectively, is the density and p the penalization factor which is always greater than 1.
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 55
OptiStruct Optimization 56
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
FEA model
The structural model is loaded into HyperMesh. The constraints, loads, subcases and material properties are already defined in the model. The topology design variables and the optimization problem set up will be defined using HyperMesh, and OptiStruct will be used to determine the optimal material layout. The results will then be reviewed in HyperView. The optimization problem is stated as: Objective function: Constraints: Design Variables: Minimize volume.
Von Mises stress < 1.6 e 04. The density of each element in the design space.
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 57
An Import tab is added to your tab menu. 2. Make sure the Import type: is set to FE Model. 3. Make sure the File type: is set to Optistruct. 4. Click the Select files button.
5. Browse for your file and select it. 6. Click Open. 7. Click Import.
OptiStruct Optimization 58
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 59
6. Click create. A response, volume, is defined for the total volume of the model. 7. Click return to go back to the optimization panel.
A Save file... browser window pops up. 2. Select the directory where you would like to save the database and enter the name for the database, hook_opt.hm, in the File name: field. 3. Click save.
OptiStruct Optimization 60
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
4. Click Save. Note the name and location of the hook_opt.fem file displays in the input file: field. 5. Make sure the memory options: toggle is set to memory default. 6. Click the run options: switch and select optimization. 7. Make sure the export options: toggle is set to all. 8. Click OptiStruct. This launches the OptiStruct job. If the job was successful, new results files can be seen in the directory where the OptiStruct model file was written. The hook_opt.out file is a good place to look for error messages that will help to debug the input deck if any errors are present.
3. Select the Result type: Element densities (s). 4. At the bottom of the GUI, click in the portion circled below to activate the Load Case and Simulation Selection dialog.
6. Make sure that Show is set to above. 7. Click Apply. 8. Move the below Current value: slider to look at the element densities.
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 61
9. You can also enter a value of 0.3 in the Current value: field.
The isosurface post-processing feature is an excellent tool to use for viewing the density results from OptiStruct.
10. Click and move the slider bar (currently pointing to a value representing 0.3) for your density to change the isosurface. You will see the isosurface in the graphics window interactively update when you change it to a new value. Use this tool to get a better look at the material layout and the load paths from OptiStruct. 11. Click Clear Iso.
The second page, which has results loaded from the hook_opt_s19.h3d is displayed; this contains the linear static results for the 1st subcase. 2. Click the Contour toolbar button .
3. Select the first pull-down menu below the Result type: and select Element stresses. 4. Select the second pull down menu and select vonMises. 5. At the bottom of the GUI, click in the portion circled below to select the last Iteration.
OptiStruct Optimization 62
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
7. Click Apply. 8. To better understand the whole simulation it is good to show all subcases on one page, it can be done using the Page Layout button , where you choose the layout .
9. Use the Edit > Copy Window pull-down menu to copy the other subcase results from the pages 3,4 and 5 and past this on the respective window on the page 2 as showed below.
Stress results for all static sub case (Von Mises < 1.6e4)
Notice that there are some local regions where the stresses are still high; this is because topology stress constraints should be interpreted as global stress control or global stress target. The functionality has some ways to filter out the artificial or local stresses caused by point loading or boundary conditions, but those artificial stresses will not be completely removed unless the geometry is changed by shape optimization.
Step 11: Query the Results of the Elements with Stresses Higher than 1.6e4
1. With the first window selected click on the Query toolbar button .
2. Under Elements, uncheck the options which are not needed and then click on Elements and choose By Contour.
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 63
3. Next to Method, choose By Contour. 4. Below value, enter >16000 and click Apply. This would give a list of elements with the stress value above 16000; use the mask option to graphically find the elements above the stress value.
Mask panel
Notes: The advantages of using stress based optimization over the classical minimize (compliance) subject to volume fraction constraint is that it eliminates the guessing of the right volume fraction. Additionally, it eliminates the need for compliance weighting bias for multiple subcases. There might still be high local stress regions which can be improved more effectively with local shape and size optimization.
OptiStruct Optimization 64
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
This control arm needs to support 3 different load cases, and the design criterion for each load case is defined as strength constraints as: 1. Car turning on a intersection: corner = (0,1000,0) N 2. Car braking: 3. Car passing in a pothole: brake = (1000,0,0) N pothole (0,0,1000) N Umax (2699) <= 0.02 mm Umax (2699) <= 0.05 mm Umax (2699) <= 0.04 mm
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 65
Step 2: Define 2 different PSOLID properties: design (1) and nondesign (2), both with material 1 and colors as showed on the components.
We will create 2 different properties to isolate the Design space. All elements that will have the property design can be removed during the optimization process.
Step 4: Define 3 different loadsteps: Corner (1), Brake (2) and Pothole (2).
As was described on the beginning of this exercise, this part needs to perform well on 3 different load cases and as we can see below they have different direction. It makes necessary to define independent load cases for each one. 1. All load cases have the same constraints: NODE(3) X,Y and Z . (Bolted) NODE(4) Y and Z . (Cylindrical joint) NODE(7) Z. (Damp link) F = (0,1000,0) N applied on Node(2699) F = (1000,0,0) N applied on Node(2699) F = (0,0,1000) N applied on Node(2699)
2. For corner (1) load step the force 3. For brake (2) load step the force 4. For pothole (3) load step the force
OptiStruct Optimization 66
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
Step 5: Run the analyses and get the maximum displacement for each loadstep.
It would take ~3 min, continue the exercise and later you should fill out the values below: Corner (1) Total displacement (2699) = _________ Brake (2) Total displacement (2699) = _________ Pothole (3) Total displacement (2699) = _________ It is important to run an initial analysis to understand the model solution. If the responses are far from the desired values, the model need to be modified or the optimization problem redefined. It is very important at this point the user validate the problem and understand if the optimization setups that will be performed make sense.
Step 6: Define the topology design variable for the design region.
5. Define the symmetric manufacturing constraint 1-pln sym using as anchor node (1) and as first node (2).
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 67
6. Define the draw manufacturing constraint as single using as anchor node (6) and first node (5) and the nondesign property as obstacle.
Step 7: Define the volume response, call it volume. Step 8: Define the displacement response on the ball join node (2699), select total displacement, and call it DISP. Step 6: Define the displacement constraint for each loadstep.
Corner Brake Pothole Umax (2699) <= 0.02 mm Umax (2699) <= 0.05 mm Umax (2699) <= 0.04 mm
OptiStruct Optimization 68
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
Step 7: Define the volume as objective function. Step 8: Submit the optimization run.
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 69
OptiStruct Optimization 70
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 71
Step1: Launch HyperMesh, Set the User Profile, and Import the File
1. Launch HyperMesh. 2. Choose OptiStruct as the user profile and click OK. User Profiles can also be accessed from the Preferences pull-down menu on the toolbar. 3. From the File pull-down menu on the toolbar, select Import. An Import tab is added to your tab menu. 4. Set the Import type: to FE Model. 5. For File type:, select OptiStruct. 6. Click on Select Files button .
A Select OptiStruct file browser will pop up. 7. Select the no_repeat.fem file, located in the model files directory under and click Open. 8. Click Import. The no_repeat.fem OptiStruct input file is loaded into the current HyperMesh session. 9. Click Close to exit the Files panel.
OptiStruct Optimization 72
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
12. Click update. 13. Repeat steps 3 through 12 for the components called second and third with desvar names dv2 and dv3, respectively. This defines the design space. 14. Click return.
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 73
OptiStruct Optimization 74
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
2. Click Close in the Message Log window that appears. 3. Click the Iso Value toolbar button.
4. Under Result type:, select Element Densities(s) from the drop-down list. 5. Click Select Load Case from the Graphics pull-down menu to open the Load Case and Simulation Selection dialog. 6. Choose the last iteration from the Simulation list and click OK. 7. Click Apply. 8. Set Current value: to 0.4. 9. Set Show values: to Above. 10. Check the boxes beside Features and Transient under Clipped geometry:. An isosurface plot is displayed in the graphics window. (Note the display of each plate.) Those elements of the model with a density greater than the value of 0.4 are shown in color, the rest are transparent.
11. From the File pull-down menu, choose Exit to quit HyperView.
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 75
487 928 892 948 4. Press Enter. 5. Click the green button on. 6. Click return to exit the Numbers panel. 7. From the View pull down menu, select the Mask By Config Browser tab menu. 8. From the Mask By Config tab menu, select 1 under the Isolate column to display only component collectors.
9. From the Analysis page, enter the optimization panel. 10. Click topology to enter the panel. 11. Select the pattern repetition subpanel using the radio buttons on the left side of the panel. 12. Double click the desvar= and select dv1. 13. Make sure the switch is pointing to master. 14. Toggle from system to coordinates. 15. Click the green first button and choose node ID 6. 16. Notice that the blue border moves over second after the first has been selected; now choose the second node ID 46. 17. Choose the third node ID 1329. 18. Click the anchor button and choose the node ID 66. 19. Click update on the right side to create a master DTPL card. 20. Click desvar= and select dv2. 21. Click the switch and select slave. 22. Make sure master= is pointing to dv1. 23. Set the following values: sx= 0.6, sy= 0.6, sz= 1.0. 24. Click the first button and choose the node ID 447.
OptiStruct Optimization 76
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
25. For the second button, choose the node ID 487. 26. For the third button, choose the node ID 1329. 27. For the anchor button, choose the node ID 507. 28. Click the update button on the right side to create the slave DTPL card. 29. Click desvar= and select dv3. 30. Click the switch and change to slave. 31. Make sure the master= button is pointing to dv1. 32. Set the following values: sx= 0.3, sy= 0.3, sz= 1.0. 33. Click the first button and choose the node ID 892. 34. For the second button, choose the node ID 928. 35. For the third button, choose the node ID 1329. 36. For the anchor, choose the node ID 948. 37. Click the update button on the right side to create the slave DTPL card. The above modification identifies the first DTPL card with ID 1 (on the first component) as the master. The DTPLs of ID 2 (second component) and ID 3 (third component) are slaves and dependent on DTPL of ID1. The second component is scaled 0.6 in both the x and y axis, while the third component is scaled 0.3 in both the x and y axis with respect to the first component. 38. Click return twice.
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 77
This will export the input deck and start the execution of OptiStruct in a DOS or UNIX window.
10. Click File on the menu bar and choose Exit to quit HyperView.
OptiStruct Optimization 78
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
2 Topography Optimization
Topography optimization is an advanced form of shape optimization in which a design region for a given part is defined and a pattern of shape variable-based reinforcements within that region is generated using OptiStruct. The approach in topography optimization is similar to the approach used in topology optimization, except that shape variables are used rather than density variables. The design region is subdivided into a large number of separate variables whose influence on the structure is calculated and optimized over a series of iterations. The large number of shape variables allows the user to create any reinforcement pattern within the design domain instead of being restricted to a few.
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 79
Although topography optimization is primarily a tool for creating bead type reinforcements in shell elements, it can accommodate solid models as well. Many pattern grouping options (such as planar and cylindrical) are intended to be used with solid models since they effectively reduce 3-D problems into 2-D ones.
Element normal
This method is the easiest one to use. When norm is entered for the draw direction, the normal vectors of the elements are used to define the draw vector for the shape variables. This method is especially effective for curved surfaces and enclosed volumes where the beads are intended to be drawn normal to the surface.
Beads created using the element normal method of determining draw vector.
Draw vector
This method allows you to define the draw vector that is used for generating the shape variables. The X, Y, and Z components of the draw vector in the nodal coordinate system are entered. This method is useful when all beads must be drawn in the same direction. Note that the draw angle may not be maintained while using this method.
Beads created using the Draw vector method of determining draw vector.
OptiStruct Optimization 80
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
User-defined
This method allows you to set up the vectors and heights for the topography optimization. A DESVAR card is referenced in place of a PSHELL or PCOMP card. All of the grids with DVGRID cards associated with that DESVAR card are considered part of the design domain. The DESVAR and DVGRID entries are redefined to reflect the minimum bead width and draw angle parameters that have been set by the user. The vectors and magnitudes of the displacement vectors on each DVGRID card for each grid are retained, so these entries must be left blank on the DTPG card. This allows you to create a design domain in which each node can have its own draw vector and draw height. For more information about it see the example Using Topography Optimization to Forge a Design Concept Out of a Solid Block.
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 81
to have the shape variables overlap, which will result in the grid deflection being cumulative between multiple influencing bead cards.
OptiStruct Optimization 82
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
Problem Statement Perform combined topology and topography optimization on a disk drive slider suspension to maximize the stiffness and weighted mode. The lower bound constraint on the seventh mode is 12Hz.
Objective function: Constraints: Design variables: Minimize the combined weighted compliance and the weighted modes. 7th Mode > 12 Hz. Nodes topography.
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 83
Step 2: Run the analyses and get the compliance for the 2nd loadstep and the mode values on the 1st load step.
Extract the values: Compliance = _________ f1 = _____(Hz) f5 = _____ (Hz) f2 = _____(Hz) f6 = _____(Hz) f3 = _____(Hz) f4 = _____(Hz)
If you are using a second monitor, take advantage of your output file and copy the values using Ctrl C. It is important to run an initial analysis to understand the model solution. If the responses are far from the desired values, the model need to be modified or the optimization problem redefined. It is very important at this point the user validate the problem and understands if the optimization setup that is going to be performed makes sense.
Step 3: Define the topography design variable for the design region.
1. Create the DV named topo with this parameters: a. props = 1pin. b. minimum width = 0.4 mm c. draw angle = 60 degree d. draw height = 0.15 mm e. draw direction = normal to elements. f. Boundary skip: load & spc
* OS will not move this nodes.
OptiStruct Optimization 84
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
Step 4: Define the response to measure the 7th mode, call it freq7. Step 5: Define the combined response comb to sum the compliance from the static analysis and the normalized modes from the modal analysis.
1. This response type is compliance index. 2. The loadstep is the Static analysis. 3. For the model list set as on the table:
Mode Weight 1 2 3 4 5 6 1.0 2.0 1.0 1.0 1.0 1.0
4.
Step 6: Define the constraint cfreq7 7th mode > 12 Hz. Step 7: Define min comb response as objective. Step 8: Submit the optimization run.
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 85
4. Select load geom to load the new geometry into the current Hypermesh session. 5. Check the box next to autobead and enter a value of 0.3 for the bead threshold:. 6. Check the remesh option, which utilizes the auto-meshing capability of Hypermesh to remesh the draw portion of the interpreted design.
OptiStruct Optimization 86
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
7. Uncheck surf reduction. 8. Leave the rest of the options as shown below in the picture.
9. Click OSSmooth. 10. Click Yes to overwrite. The new geometry will be automatically loaded into existing Hypermesh file, turn off the display of all the elements to view the new concept geometry.
If the student had finish the exercise and wants to try a more advanced setup, these are a small list of things that could improve this result: 1. Add a topology optimization on the same design space. 2. Add a symmetry plane to the topography and topology DVs.
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 87
3. Increase the Height to 0.2 mm. 4. Use OSSMOOTH to export the geometry. 5. Prepare a HV report to describe the optimization results. 6. Export the final shape and rerun an analysis to check the performance.
OptiStruct Optimization 88
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
3 Free-size Optimization
The purpose of composite free-sizing optimization is to create design concepts that utilize all the potentials of a composite structure where both structure and material can be designed simultaneously. By varying the thickness of each ply with a particular fiber orientation for every element, the total laminate thickness can change continuously throughout the structure, and at the same time, the optimal composition of the composite laminate at every point (element) is achieved simultaneously. At this stage, a super-ply concept should be adopted, in which each available fiber orientation is assigned a super-ply whose thickness is free-sized. For a shell cross-section (shown below), free-size optimization allows thickness to vary freely between T and T0 for each element; this is in contrast to topology optimization which targets a discrete thickness of either T or T0.
In addition, in order to neutralize the effect of stacking sequence, the SMEAR option is usually a good choice for this design phase unless the user intended to follow through with the stacking preference of the super-ply laminate model.
To determine the optimum laminate OptiStruct uses the SMEAR technology that captures the stacking sequence effects: o o o A = Stacking Sequence independent B = 0 (Symmetric) D = At2/12 - Stacking Sequence Independent
In OptiStruct, additional manufacturing constraints are available for free-sizing optimization. As a composite laminate is typically manufactured through a stacking and curing process, certain manufacturing requirements are necessary in order to limit undesired side effects emerging during this curing process. For example, one typical such constraint for carbon fiber reinforced composite is that plies of a given orientation cannot be stacked successively for more than 3 or 4 plies. This implies that a design concept that contains areas of predominantly a single fiber orientation would never satisfy this requirement.
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 89
Therefore, to achieve a manufacturable design concept, manufacturing requirements for the final product need to be reflected during the concept design stage. For the particular constraint mentioned above, for instance, the design concept would offer enough alternative ply orientations to break the succession of plies of the same orientation if the percentage of each fiber orientation is controlled (e.g. no ply orientation should drop below 15%). In addition, balancing of a pair of ply orientations could be useful for practical reasons. For example, balancing 45 and -45 plies would eliminate twisting of a plate bended along the 0 axis. In order to address these needs, the following manufacturing constraints are made available for composite free-sizing:
OptiStruct Optimization 90
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
Example: Cantilever plate The cantilever plate is shown in the following figure. Base-plate thickness T0 is zero. The optimization problem is stated as: Minimize Compliance Subject to Volume fraction < 0.3
Cantilever Plate
The next figure shows the final results of topology and free-size optimization as performed on this plate, side by side. As expected, the topology result created a design with 70% cavity, while the free-size optimization arrived at a result with a zone of variable thickness panel.
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 91
Topology result
Free-size result
It is not surprising to see that the free-size design outperforms the topology design in terms of compliance since continuous variation of thickness offers more design freedom. It should be emphasized that free-size offers a concept design tool alternative to topology optimization for structures modeled with 2-D elements. It does not replace a detailed size optimization that would fine tune the size parameters of an FEA model of the final product. To illustrate the close relationship between free-size and topology formulation, consider a 3-D model of the same cantilever plate shown previously. The thickness of the plate is modeled in 10 layers of 3-D elements.
The topology design of the 3-D model shown above looks similar to the free-size results shown previously. This should not be surprising because when the plate is modeled in 3-D, a variable thickness distribution becomes possible under the topology formulation that seeks a discrete density value of either 0 or 1 for each element. If infinitely fine 3-D elements are used, a continuous variable thickness of the plate can be achieved via topology optimization. The motivation for the introduction of free-size is based on the conviction that limitations due to 2-D modeling should not become a barrier for optimization formulation. In regards to the 3-D modeling of shell, topology optimization is equivalent to the application of extrusion constraint(s) in the thickness direction of a 3-D modeled shell. It is important to point out that while free-size often creates variable thickness shells without extensive cavity, it does not prevent cavity if the optimizer demands it. For the example already shown, we can see cavity in the free-size result in the 45 degree region, adjacent to the support, and in the upper and lower corners of the free end. Free-size optimization is defined through the DSIZE bulk data entry that is supported in the HyperMesh optimization panel. Features available for free-size include: minimum member size control, symmetry, pattern grouping and pattern repetition, and stress constraints applied to von Mises stresses of the entire structure. Involving both topology and free-size in the same optimization problem is not recommended since penalization on topology components creates a bias that could lead to sub-optimal solutions.
OptiStruct Optimization 92
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
Model Information
On the left hand extreme is applied a uniform force of 60000 N the other extreme is fixed as showed on the image bellow. Geometry: o (L = 457.2 mm, b = 152.4 mm, Thk = 12.7 mm/ply, diam. = 12.7 mm)
One load case: o Force = 60000 N E2 = E3 = 9850MPa G23 = 3100MPa 12 = 13 = 0.3 23 = 0.36
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 93
S ref =
It appear to be a simple model, and for an isotropic material this is true, but when this plate is a composite laminate with different angles this problem became much more complex. As we can see on the approximated diagram showed below for a single ply with the fiber align o different angles, the max stress values as showed bellow will be very dependent of the angle, and the concentration factor can be more than 6 times for example to a ply with 0o:
MAX Principal Stress 8.00 6.00 4.00 Smax/Sref 2.00 0.00 0.0 -2.00 -4.00 Theta 30.0 60.0 90.0 120.0 150.0 180.0 |Smax|/Sref(0o) |Smax|/Sref(90o) |Smax|/Sref(45o) |Smax|/Sref(-45o)
Sref
Sref
Stress variation around a hole for an infinite plate under constant stress.
The values on this plot may be used as reference to test if your mesh is refined enough to capture the concentration effect, to reproduce it your laminate may be formed with a unique ply angle. On our simple case the plies with different angles are mounted together to form a laminate and on it the concentration factor is even higher.
OptiStruct Optimization 94
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
Step 3: Compare the stress values you have got with the values showed below:
Try to reproduce this curve on HyperGraph using the HV contour and Query to export the values. Your model has already sets to make it easy. Hints: o Export the maximum principal S1 and the minimum principal S3 from HV. o Export the nodes coordinates from HV. (Stress_nodes) o Determine the coordinate of a element mid node (lininterp) [ElemX] X = NODE_NUM[0:178:1] Y=lininterp(NODE_NUM,X_node,x) [ElemY] X = NODE_NUM[0:178:1] Y=lininterp(NODE_NUM,Y_node,x)
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 95
o o
Determine the angle. (atan) 90-atan(ElemX/ElemY)*180/PI Use the logical function to get the maximum stress based on module of them.
SP1.y*((abs(SP1.y)-abs(SP3.y))>0)+SP3.y*((abs(SP1.y)-abs(SP3.y))<=0)
Now extract the optimization relative values: 1. Maximum strain for each ply: o o Ply 1 ( 0 ) = 9.66 x10-4 (mm/mm) Ply 3 (45 ) = 9.63 x10-4 (mm/mm) Ply 2 (90 ) = 8.14 x10-4 (mm/mm) Ply 2 (-45 ) = 1.23 x10-3 (mm/mm)
2. Total compliance = __4873_ Nmm 3. Total Volume = __3.53 x106 _ mm3 * If you are using a second monitor, take advantage of your output file and copy the values using Ctrl C. It is important to run an initial analysis to understand the model solution. If the responses are far from the desired values, the model need to be modified or the optimization problem redefined. It is very important at this point the user validate the problem and understands if the optimization setup that is going to be performed makes sense. On the end of this exercise we will show some important aspects that the engineer should be careful to get a meaningful optimized result. Before performing the optimization, check if the pcomp is defined using SMEAR, it will make the optimization run much more efficient.
Step 4: Define the FREE SIZE design variable for the design region.
It is a good procedure to save the HM database now with the optimization suffix. With it the user can always recover the analysis model for posterior studies.
OptiStruct Optimization 96
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 97
Step 12: ADD the FREESIZE to SIZE output finite element model.
This card will make OptiStruct on the end of the Free-size optimization export the input file with a predefined a size optimization. This file correspond to the second phase of composite optimization, to learn more about this the student should attend the HyperWorks composite training.
Job submission panel (It should take ~ 15 minutes to complete) If time is a concern, there is a coarse mesh on the same directory that would take only a couple of minutes to run.
OptiStruct Optimization 98
Proprietary Information of Altair Engineering, Inc.
HyperWorks 10.0
Ply thickness
4. On HyperMesh Import the model for size optimization and plot the plies. 0o plies shape
HyperWorks 10.0
Proprietary Information of Altair Engineering, Inc.
OptiStruct Optimization 99
Important remarks: 1. At the run directory exist a file called Finite_Plate_with_hole_optimization_sizing.#.fem that is the model prepared to size optimization with the plies already defined using PCOMPP-PLY-STACK approach. 2. It is important to remove the small segments or ill defined shapes to make it meaningful. 3. The best way to plot the layers is importing the size model on HyperMesh and using the mask function isolate the specific ply. 4. On HyperWorks was developed a complete process to optimize composite structures, and this process is described trough the exercise A.1 on the end of this manual.
HyperWorks 10.0
OSSmooth has several uses, it can be used to: o o o o o Interpret topology optimization results, creating an iso-density boundary surface (Iso-surface). Interpret topography optimization results, creating beads or swages on the design surface. Recover and smooth geometry resulting from a shape optimization. Reduce the amount of surface data from a given set of triangular patches by combining smaller patches. Smooth surface data given as triangular patches.
The following flowchart provides an overview of how OSSmooth works to interpret optimization results from OptiStruct:
OSSmooth requires a parameter file (generally has the file extension .oss) to run. This parameter file may be generated by the OSSmooth panel in HyperMesh or it may be
HyperWorks 10.0
generated manually through a text editor. At the completion of an optimization run, OptiStruct automatically exports an OSSmooth parameter file <prefix>.oss with certain default settings depending on the type of optimization run.
In addition to the parameter file, OSSmooth also requires the input file (<prefix>.fem), the shape file (<prefix>.sh), and/or the grid file (<prefix>.grid) from an OptiStruct run. The grid file <prefix>.grid contains the grid point locations after a topography or shape optimization and is output at the end of a topography or shape optimization run. The shape file, <prefix>.sh, contains the element density information of a topology optimization and is output at the end of an optimization run. Note: OSSmooth currently does not recognize OptiStruct long-format input data. A possible work-around for this problem is to import the long-format input file into HyperMesh and export it using the regular OptiStruct template before running OSSmooth. The interpreted design from OSSmooth can be exported as a finite element mesh in the bulk data format, as IGES surfaces, as a stereolithography file, or as a Hyper3D file.
HyperWorks 10.0
(one argument) arg1 The file name (without extension). (one argument) arg1 Full name of the file output by OSSmooth. (two arguments)
arg1 Output format for iso-surface [default=3] : (1) Nastran (2) IGES (3) STL (4) H3D arg2 Output control for tet-meshing [Default: no tet.] (1) Tetra4 + Tria3 (2) Tetra10 + Tria6 (3) Tetra4 (4) Tetra10 (one argument) [default =1] (1) inch (2) mm (4) foot (6) m (10) cm
units autobead
1 1
(three arguments)
arg1 Operation flag: (0 ) autobead off ( 1 ) autobead on arg2 Threshold value for creating autobead. Real between 0.0 and 1,0, default = 0.3. arg3 Bead layer[integer] [default =1] ( 1 ) Create 1 layer bead ( 2 ) create 2 layers bead
isosurface
0.3
(three arguments)
arg1 Operation flag [integer]: [default = 1] ( 0 ) isosurface off ( 1 ) isosurface on arg2 Type of surface created [integer]: [default = 3] ( 0 ) isosurface only ( 1 ) isosurface with Optimization-based smoothing ( 2 ) Element threshold surface ( 3 ) isosurface with Laplacian smoothing arg3 Density threshold for creating isosurface. [real, between 0.0 and 1.0, default = 0.3]
# Generate threshold surface from a topology optimization by applying automatic geometry creation.
opti_smoothing
# Optimization-based smoothing [Only used if isosurface arg2=1].
(two arguments)
arg1 Unit-less surface distance coefficient [real, default = 0.0] Defines closeness of the smooth surface from the threshold surface. arg2 Smooth isosurface boundary flag [integer]: ( 0 ) boundary not included in smoothing [default] ( 1 ) boundary included in smoothing
HyperWorks 10.0
laplacian_smoothing 10 20.0 0
# Laplacian smoothing [Only used if isosurface arg3=3].
(three arguments)
arg1 Number of iteration for Laplacian smoothing [integer >= 0, default = 10] arg2 Feature angle threshold in degrees [real, default = 30.0] arg3 Smooth isosurface boundary flag [integer]: ( 0 ) boundary not included in smoothing ( 1 ) boundary included in smoothing [default]
remesh
(one argument)
arg1 Remesh autobead surface or/and isosurface flag [integer]: ( 0 ) remesh off [default] ( 1 ) remesh on
# Remeshes the region surrounding the recovered geometry to facilitate smooth mesh transition. [Only available in the HyperMesh integrated version].
surface_reduction
1 5.0
(two arguments)
arg1 Surface reduction flag [integer]: ( 0 ) no surface reduction [default] ( 1 ) do surface reduction arg2 Feature angle threshold in degrees [real, default = 10.0]
# Reduces the number of surfaces representing the geometry. Can reduce the number of surfaces by up to 80%.
pure_surf_smoothing 1 5 20.0
# Surface smoothing only.
(three arguments)
arg1 Pure surface smoothing flag [integer]: ( 0 ) no surface smoothing [default] ( 1 ) Optimization-based smoothing ( 2 ) Laplacian smoothing arg2 Number of iteration [Only used if G1=2] [integer >= 0, default = 10] arg3 Feature angle threshold in degrees [Only used if G1=2] [real, default = 30.0]
pure_surf_reduction
# Surface reduction only.
(two arguments)
arg1 Pure surface reduction flag [integer]: ( 0 ) no surface reduction [default] ( 1 ) do surface reduction arg2 Feature angle threshold in degrees [real, default = 10.0]
HyperWorks 10.0
Description
Identifies the root of the input files as example, so OSSmooth will look for the files example.fem, example.grid, and example.sh. The resulting output will be example.stl. The output will be in stereolithography format.
autobead 1 0.3 1
Topography results will be interpreted using the autobead feature with a threshold value of 30% creating single depth beads. Topology results will be interpreted by creating an isodensity boundary surface with at a density value of 30% and smooth using laplacian smoothing. The laplacian smoothing will run for 10 iterations, consider a feature angle of 30-degrees and including the boundary in the smoothing. The two rows of elements around the recovered geometry will be remeshed in an attempt to smooth the mesh transition.
isosurface 1 3 0.3
laplacian_smoothing 10 30 1
remesh 1
HyperWorks 10.0
This will write a new <prefix.oss> file with the screen settings, run OSSmooth, and load the geometry recovered by OSSmooth if the data format is IGES, STL, or Nastran.
One example of post-processing of topography optimization is shown below with the following parameter setting in the OSSmooth parameter file:
HyperWorks 10.0
Some topography performances are relying on the half translation part. OSSmooth can interpolate topography optimization results to 2-layer autobead (autobead third argument 2). Here is one example of creating 2-layer autobead with the following parameter setting in the OSSmooth parameter file: #general parameters input_file output_file output_code #specific parameters autobead decklid decklid.nas 1 1 0.300 2
2 1
10 30.000 10.000
HyperWorks 10.0
HyperWorks 10.0
Problem Setup You should copy these Files: CONTROL_ARM_opt.fem, CONTROL_ARM_opt.oss, CONTROL_ARM_opt.sh;
HyperWorks 10.0
Step 1: Launch HyperMesh and Set the User Profile to OptiStruct Step 2: Define the right configuration parameters at the file CONTROL_ARM_opt.oss. input_file CONTROL_ARM_opt output_file CONTROL_ARM_opt.igs output_code 2 density_threshold 0.3 surface_reduction 1 units 2 Step 3: From the pull-down menu Tools > Solver.
Step 4: Select OSSmooth as solver and select the CONTROL_ARM_opt.oss as input file.
HyperWorks 10.0
Chapter 5
HyperWorks 10.0
p = C 0 + DVi Ci
where p is the property to be optimized, and Ci are linear factors associated to the design variable DVi. Using the equation utility DEQATN, more complicated functional dependencies using even trigonometric functions can be established. Such design-variable-to-property relations are then defined using the DVPREL2 statement. For a simple gage optimization of a shell structure, the design-variable-to-property relationship turns into
t = DVi
where the gage thickness t is identical to the design variable.
If a discrete design variable is desired, a DDVAL bulk data entry needs to be referenced on the DESVAR bulk data entry for the design variable values.
HyperWorks 10.0
The structural model, shown above, is loaded into HyperMesh. The constraints, loads, material properties, and subcases (loadsteps) are already defined in the model. Size design variables and optimization parameters are defined, and OptiStruct is used to determine the optimal gauges for the components. The results are then reviewed in HyperView. The optimization problem for this tutorial is stated as: Objective: Minimize volume.
Constraints: A given maximum nodal displacement at the loading grid point for two loading conditions. Design variables: Gauges of the two parts.
Problem Setup
You should copy this File: joint_size.hm.
HyperWorks 10.0
Step 1: Launch HyperMesh, set the User Profile and Retrieve the File
1. Launch HyperMesh. 2. Choose the OptiStruct user profile dialog and click OK. This loads the user profile. It includes the appropriate template, macro menu, and import reader, paring down the functionality of HyperMesh to what is relevant for generating models in Bulk Data Format for RADIOSS and OptiStruct. The User Profiles GUI can also be accessed from the Preferences pull-down menu on the toolbar. Select the optimization panel on the Analysis page. 3. From the File pull-down menu on the toolbar, select Open. 4. Select the joint_size.hm file. 5. Click Open.
HyperWorks 10.0
14. Click prop and select tube2 from the list of property collectors. 15. Make sure the toggle is set to Thickness T. 16. Click designvars. The list of design variables appears. 17. Check the box next to tube. Note the linear factor (value is box beside tube) automatically gets set to 1.000. 18. Click return. 19. Click create. A design variable to property relationship, tube_th, has been created relating the design variable tube to the thickness entry on the PSHELL card for the property tube2. 20. Repeat steps 13 through 19 to create the design variable to property relationship rail_th relating the design variable rail to the thickness entry on the PSHELL card for the property tube1. 21. Click return to go to the optimization panel.
HyperWorks 10.0
14. Select dof3 and Click create. A response, Z_Disp, is defined for the z-displacement of the node 3143. 15. Click return to go to the optimization panel.
HyperWorks 10.0
HyperWorks 10.0
4. Make sure the first pull-down list below Result type: is Element Thicknesses (s). 5. Make sure the second pull-down list is on Thickness. 6. Make sure the field below Averaging method is None. 7. Set the last Load Case Simulation by clicking the status bar shown below.
8. Scroll down to the last iteration and choose the last for e.g.: Iteration [3] and click OK.
9. Click Apply. A contoured image representing shell thickness should be visible. Each element in the model is assigned a legend color, indicating the thickness value for that element for the current iteration.
HyperWorks 10.0
The second page, which has results loaded from the file joint_sizeOPT_s1.h3d, is displayed. Note that the name of the page is displayed as Subcase 1 FORCE_X to indicate that the results correspond to subcase 1. 2. Set the animation mode to Linear Static. 3. Click the Contour toolbar button.
4. Select the first pull-down menu below Result type: and select Displacement [v]. 5. Select the second pull-down menu and select X. 6. Click on Apply. The resulting contours represent the x component displacement field resulting from the applied loads and boundary conditions. 7. Click the Measure toolbar button.
8. Click Add to add a new measure group. The Measure panel helps measure different results. Here, we will measure the displacement at node 3143 for which we have constrained the displacement. 9. Click the pull-down menu and select Nodal Contour as shown below. 10. Click on Nodes, which opens a new window to select nodes By ID.
HyperWorks 10.0
11. Click By ID to open a new window. 12. Enter 3143 in the field next to Node ID and click Ok.
Displacement on X-direction for the X-Force load case at the first iteration
The x-displacement value for 3143 (center of rigid spider, where loading is applied) is shown in the graphic area. Note that the x-displacement is larger than the upper bound constraint, which was defined earlier, of 0.9. 13. At the bottom of the GUI, click on the name State Analysis or Iteration 0, , to activate the Load Case and Simulation Selection dialog. 14. Select the last iteration by double clicking on the last Iteration #. The contour now shows the x-displacement results for Subcase 1 (FORCE_X) and iteration 4, which corresponds to the end of the optimization iterations. Note that the xdisplacement is now less than 0.9.
Displacement on X-direction for the X-Force load case at the last iteration
HyperWorks 10.0
The third page shows results loaded from the joint_sizeOPT_s2.h3d file. Note that the name of the page is displayed as Subcase 2 Force_Z to indicate that the results correspond to subcase 2. 16. Click the Contour toolbar button.
17. Select the first pull-down menu below Result type: and select Displacement [v]. 18. Select the second pull-down menu and select Z. 19. Click on Apply. The resulting contours represent the z component displacement field resulting from the applied loads and boundary conditions. 20. Repeat steps 8 through 14 to measure and display the z-displacement value for node 3143.
1. The solution converged to a feasible solution? 2. How much iteration it has take to converge and how much is the final volume of the part? 3. What are the resulting gauges for the rail and tube?
HyperWorks 10.0
HyperWorks 10.0
The structural model, as shown in the figure, is loaded into HyperMesh. The constraints, loads, material properties, and subcases (loadsteps) are already defined in the model. Size design variables and optimization parameters are defined, and OptiStruct is used to determine the optimal gauges. The results are then reviewed in HyperView. The optimization problem is stated as: Objective: Minimize volume.
Constraints: Maximum von Mises stress of the brackets < 120 MPa. Design variables: Gauges of the brackets.
Problem Setup
You should copy this File: bracket_size.hm.
HyperWorks 10.0
Step 1: Launch HyperMesh, set the User Profile, and Retrieve the Database File
1. Launch HyperMesh. 2. Choose OptiStruct in the User Profile dialog and click OK. User Profiles can also be accessed from the Preferences pull-down menu on the toolbar. 3. From the File pull-down menu on the toolbar, select Open. 4. Browse for and select bracket_size.hm file. 5. Click Open. The bracket_size.hm database is loaded into the current HyperMesh session, replacing any existing data.
HyperWorks 10.0
12. Click lower bound = and enter 0.5. 13. Click upper bound = and enter 3.0. 14. Toggle no ddval to ddval =. 15. Click ddval= and select DDV1 from the list. 16. Click create. A design variable, part1, has been created. The design variable has an initial value of 2.5, a lower bound of 0.5, and an upper bound of 3.0 and is linked to a DDVAL (Discrete Design Variable Value) of the name DDV1. 17. Repeat steps 10 through 16 to create the design variable part2 using the same initial value, lower, and upper bounds, linking it to a DDVAL of name DDV2. 18. Select the generic property subpanel using the radio buttons on the left-hand side of the panel. 19. Click dvprel = and enter part1_th. 20. Click the entity selection switch and choose prop. 21. Click prop and select part1 from the list of component collectors. 22. A property selection switch now appears below the prop button. 23. Click the property selection switch and select Thickness T from the pop-up menu. 24. Click on designvars. The list of design variables appears. 25. Check the box next to part1. 26. Note that the linear factor (value in box beside part1) automatically gets set to 1.000. 27. Click return. 28. Click create. A design variable to property relationship, part1_th, has been created, relating the design variable part1 to the thickness entry on the PSHELL card for the component part1. 29. Repeat steps 19 through 26 to create the design variable to property relationship part2_th, relating the design variable part2 to the thickness entry on the PSHELL card for the component part2. 30. Click return to go to the Optimization Setup panel.
HyperWorks 10.0
1. Select the responses panel. 2. Click response = and enter volume. 3. Click the response type: switch and select volume from the pop-up menu. 4. Click create. A response, volume, is defined for the total volume of the model. 5. Click response = and enter stress1. 6. Click the response type: switch and select static stress from the pop-up menu. 7. Click props. 8. Click one of the green shell elements in the graphics window to select the component part1. 9. Click select. A stress type selector switch appears. 10. Click the stress type selector switch and select von mises from the pop-up menu. 11. Click the selector switch below the stress selector and choose the both surfaces option. 12. Click create. A response, stress1, is defined for the von Mises stress of the elements in the component part1. 13. Click response = and enter stress2. 14. Click props. 15. Click one of the pink shell elements in the graphics window to select the component part2. 16. Click select. 17. Click create. A response, stress2, is defined for the von Mises stress of the elements in the component part2. 18. Click return to go to the Optimization Setup panel.
HyperWorks 10.0
1. Select the dconstraints panel. 2. Click constraint = and enter stress1. 3. Click response = and select stress1 from the list of responses. A loadsteps button should appear in the panel. 4. Click loadsteps. 5. Check the box next to STEP and click select. 6. Check the box next to upper bound =. 7. Click upper bound = and enter 100. 8. Click create. A constraint is defined on the response stress1. The constraint is an upper bound with a value of 100. The constraint applies to the subcase STEP. 9. Click constraint = and enter stress2. 10. Click response = and select stress2 from the list of responses. 11. Click loadsteps. 12. Check the box next to STEP and click select. 13. Check the box next to upper bound =. 14. Click upper bound = and enter 120. 15. Click create. A constraint is defined on the response stress2. The constraint is an upper bound with a value of 120. The constraint applies to the subcase STEP. 16. Click return twice to go to the main menu.
HyperWorks 10.0
HyperWorks 10.0
The second page has the results loaded from the discrete_bracket_size_s1.h3d file. Note that the name of the page is displayed as Subcase 1 STEP to indicate that the results correspond to subcase 1. 4. Click the Contour toolbar button .
5. Select the first pull-down menu below Result type: and select Element Stresses [2D & 3D] (t). 6. From the second pull-down menu, select vonMises. 7. Select None in the field below Averaging method:. 8. Click Apply.
A contoured image representing von Mises stresses should be visible. Each element in the model is assigned a legend color, indicating the von Mises stress value for that element resulting from the applied loads and boundary conditions. If you did not change the Iteration step you should be contouring the stress of the initial step. To contour the final step, set the last iteration of that loadcase using the Status Bar. 9. Click either the first or second field on the right side of the Status Bar. This brings up the Load Case and Simulation Selection window. 10. Click the last Iteration # in the Simulation: list. Notice only two iterations are displayed; the First and Last (FL) is the default setting for optimization runs. To change this setting, add an OUTPUT control card with a frequency setting of ALL. 11. Click OK.
HyperWorks 10.0
This will now contour your final iteration of that loadcase. Review the stress to see that it is under the proper constraints.
Review
The .out file contains a summary of the optimization process. From the information in the .out file, you can see how the objective, constraints, and design variables are changing from one iteration to the next. Has the volume been minimized for the given constraints? Have the stress constraints been met? What are the resulting gauges for the two parts?
Hints
Go to the des.h3d page, clear the contour if one was applied, set to the last simulation step and apply the Element Thickness contour. Append discrete_bracket_size.mvw to review objective, constraints, and other information.
HyperWorks 10.0
2 Shape Optimization
OptiStruct has the capability of performing shape optimization. In shape optimization, the outer boundary of the structure is modified to solve the optimization problem. Using finite element models, the shape is defined by the grid point locations. Hence, shape modifications change those locations. Shape variables are defined in OptiStruct in a way very similar to that of other shape optimization codes. Each shape variable is defined by using a DESVAR bulk data entry. If a discrete design variable is desired, a DDVAL bulk data entry needs to be referenced for the design variable values. DVGRID bulk data entries define how much a particular grid point location is changed by the design variable. Any number of DVGRID bulk data entries can be added to the model. Each DVGRID bulk data entry must reference an existing DESVAR bulk data entry if it is to be a part of the optimization. The DVGRID data in OptiStruct contains grid location perturbations, not basis shapes. DESVAR Card Image ID DESVAR 1 LABEL DV001 XINIT 0.0 XLB -1.0 XUB 1.0 DELXV
DVGRID Card Image DVID GID DVGRID 1 1032 CID 0 COEFF 1.0 X 1.0 Y 0.0 Z 0.0
The generation of the design variables and of the DVGRID bulk data entries is facilitated by the HyperMorph utility, which is part of the Altair HyperMesh software. The following responses are currently available as the objective or as constraint functions: Mass Moment of Inertia Natural Frequency Volume Static Compliance Buckling Factor Center of Gravity Static Displacement Static Stress, Strain, Forces Frequency Response Stress, Strain, Forces Combined Compliance Index
Function
HyperWorks 10.0
Using the basis vector approach, the structural shape is defined as a linear combination of basis vectors. The basis vectors define nodal locations.
x = DVi BVi
where x is the vector of nodal coordinates, BVi is the basis vector associated to the design variable DVi. Using the perturbation vector approach, the structural shape change is defined as a linear combination of perturbation vectors. The perturbation vectors define changes of nodal locations with respect to the original finite element mesh.
Perturbations (DVGRID): X = { x1 , x2 , x3 ,L, xn } Magnitude of perturbations (DESVAR): = {1 , 2 , 3 ,L, n } Mesh nodal movement: X = X (0) + j X j
j =1 n
where X is the vector of nodal coordinates, X(0) is the vector of nodal coordinates of the initial design, Xj is the perturbation vector associated to the design variable .
HyperWorks 10.0
The initial nodal coordinates are those defined with the GRID entity. The perturbation vectors are defined on the DVGRID statement, which is referenced by the design variable entity DESVAR. If a discrete design variable is desired, a DDVAL bulk data entry needs to be referenced on the DESVAR bulk data entry for the design variable values. Note: In OptiStruct, only the perturbation vector approach is available. The DVGRID cards must contain perturbation vectors.
2.2 HyperMorph
HyperMorph is a tool in HyperMesh to morph the shape of a finite element model in ways that are useful, logical and intuitive. It enables rapid shape changes on the FE mesh without severely sacrificing the mesh quality. This is a very powerful tool to automatic generate the shape design variable described above.
2.2.1 The Three Basic Approaches to Morphing The Domains and Handles Concept
This approach involves dividing the mesh into domains containing elements or nodes and placing handles at the corners of those domains. HyperMorph can automatically divide the mesh into logical domains or you can manually define your own domains and handles. When the handles are moved, the shape of the mesh changes according to the domain boundaries. The domains and handles approach also allows for parametric morphing of lengths, angles, radii, and arc angles as well as morphing the mesh to match geometric data and other meshes. The domains and handles approach is the most difficult approach to learn but it is also the most powerful. This approach is most useful for making detailed changes to any mesh (local domains) as well as general changes to space frame type meshes (global domains).
HyperWorks 10.0
At online documentation the user can find a complete description about HyperMorph and how this tool can be used to generate shape design variable to OptiStruct. Here for convenience we will use during the next exercise only the first approach.
HyperWorks 10.0
Constraints: A given maximum nodal displacement < 2 mm. Design variables: Shape of each of the beam flanges.
Problem Setup
You should copy this File: Lbeamshape.hm.
HyperWorks 10.0
HyperWorks 10.0
10. Click the right-hand switch and select translate instead of interactive from the popup menu. 11. If the handles button is not already highlighted, click on it. 12. Select the local handle that is located at the node where the load is applied by clicking on it in the graphics window (local handles are indicated by a yellow ball). 13. Click y val = and enter -10.0. 14. Click morph. The beam changes shape so that the handle you selected moved -10.0 in the ydirection. Note how the mesh adjusted to this change in shape. 15. Select the save shape subpanel using the radio buttons on the left side of the panel. 16. Click name = and enter shape1. 17. Click color and choose a color from the palette. 18. Set the toggle beneath shape = to as node perturbations. 19. Click save.
20. Say Yes to the message regarding the perturbations as shown above. We have now saved this shape as shape1, later we can associate it to a design variable. 21. Click undo all. The model returns to its original shape.
HyperWorks 10.0
22. Repeat steps 9 through 22 for the local handles 3, 5 and 6. Referring to the figure above translate handles 5 and 6 by x=-10 and handle 3 by y=-10. Save the shapes after morphing each handle as shape2, shape3 and shape4, respectively. 23. Click return twice to go to the optimization panel.
A potential variation in shape of the vertical flange of the L-beam that could be achieved using the set up described.
HyperWorks 10.0
A response, mass, is defined for the total mass of the model. 5. Click response = and enter Disp. 6. Click the response type: switch and select static displacement from the pop-up menu.
7. Select the response node by clicking on the node shown in the above figure. 8. Select dof 2. Dofs 1, 2, and 3 refer to translation in the X, Y, and Z directions. Dofs 4, 5, and 6 refer to rotation about the X, Y, and Z axes. 9. Click create. A response, disp, is defined for the y-displacement of the node selected. 10. Click return to go to the optimization panel.
HyperWorks 10.0
2. Click the switch in the upper left corner of the panel, and select min from the pop-up menu. 3. Click response = and select mass from the response list. 4. Click create. The objective function is now defined. 5. Click return to go to the optimization panel.
HyperWorks 10.0
4. Click Save.
HyperWorks 10.0
6. From the Graphics pull-down menu from the toolbar, choose Select Load Case. 7. Select Design under Load Case and select the last Iteration # under Simulation. The final shape for Iteration # can be seen.
3. Move the Speed slider to adjust the animation speed. 4. After reviewing the animation, click the traffic light again to stop the animation and move Current time: back to 0.
HyperWorks 10.0
Rail joint
Problem Setup
You should copy this File: rail_joint_original.hm.
HyperWorks 10.0
Step 1: Launch HyperMesh, Set the User Profile and Retrieve the File
1. Launch HyperMesh. 2. Choose OptiStruct in the User Profile dialog and click OK. This loads the user profile. It includes the appropriate template, macro menu, and import reader, paring down the functionality of HyperMesh to what is relevant for generating models in Bulk Data Format for RADIOSS and OptiStruct. The User Profiles GUI can also be accessed from the Preferences pull-down menu on the toolbar. 3. From the File pull-down menu on the toolbar, select Open. 4. Select the rail_joint_original.hm file.
HyperWorks 10.0
2. 3. 4. 5. 6.
Click Close to close the message window. Click the Contour toolbar button .
Select the first pull-down menu below Result type: and select Element Stresses [2D & 3D] (t). Select the second pull-down and select von Mises. Click Apply.
7. 8.
Take note of the Maximum von Mises Stress of the joint and close HyperView. Back on HyperMesh click return to exit the panel.
Step 5: Build 2-D Domains on the Rail 1. In the Model Browser window expand the Component list. 2. Right click on the component PSHELL and click on Isolate.
HyperWorks 10.0
All other components are turned off for ease of visualization. 3. From the Analysis page, select the optimization panel. 4. Go to the HyperMorph panel, and select domains. 5. Toggle the radio button on the left to partitioning. 6. Verify that domain angle = 50. 7. Verify that curve tolerance = 8.0000. 8. Toggle back the radio button to create. 9. Click the switch (small triangle) and select 2D domains. 10. Toggle all elements to elems. 11. Click elems and select by sets from the pop-up window. 12. Check the boxes for rail_set1 and rail_set2. 13. Click select. 14. Click create.
Rail domains
Step 6: Split the Circular Edge Domains Around the Opening of the Rail
The following steps show the procedure to split each of the two circular domains (as seen in the previous figure) into four curved edge domains. 1. Toggle the radio button to edit edges subpanel.
HyperWorks 10.0
2. Verify the top selector is split. 3. Click domain and select the circular edge-domain passing through nodes 1300, 1305, 1311, 1316. 4. Click node and select node 1311 from the display. Refer to the previous figure. 5. Click split. The circular domain is split at Node 1311 and a new handle is created at node1311. 6. Select the circular edge between node 1311 and the other handle. The edge is highlighted. 7. Click node 1316 to split the domain. 8. Similarly (as in steps 6-7), split the curved edge at nodes 1305 and 1300, respectively. Refer to the previous figure. A similar process is followed to split the circular domain using the four nodes on the other side of the rail. 9. Click domain and select the circular domain passing through nodes 931, 926, 937 and 942. 10. Click node and select node 931 on screen. 11. Click split. 12. Select the circular edge between node 931 and the other handle. The edge is highlighted. 13. Click node 926 to split the domain. 14. Similarly (as in steps 11-14), split the curved edge at nodes 937 and 942, respectively. The following figure shows the image after the circular edge domains are split.
HyperWorks 10.0
2. Right click on the component PSHELL.1 and click Show. 3. Toggle back the radio button to create. 4. Make sure the switch (small triangle) is selected to 2D domains.
HyperWorks 10.0
5. Click elems and select by sets from the pop-up window. 6. Check the boxes for elem_set1. 7. Click select. 8. Click create. 9. Repeat steps 5 through 8 to create three more 2-D domains for elements in sets elem_set2, elem_set3, and elem_set4 respectively. 10. Click return and go back to the HyperMorph module.
HyperWorks 10.0
8. Verify that a total of eight edge domains are selected and highlighted on screen.
10. Click morph. A new curvature is applied to the selected eight edge domains. See the following figure below. 11. Toggle the radio button to save shape. 12. Click on shape =, enter the name sh1. 13. Toggle as handle perturbation to as node perturbation. 14. Click on the color button and change the color of the shape vectors or leave the default color. 15. Click save. Shape vectors (arrows) are created of the selected color. 16. Click undo all to prepare for the generation of the next shape. 17. Click the Model browse tab, right click on Shape and select Hide.
HyperWorks 10.0
18. Toggle the radio button to alter dimensions. 19. Under edges only, click reset .
This will clean up previous selection from buffer. 20. Click domains and select the red edge curves as shown the following figure.
21. Click morph. A new curvature is applied to the selected eight edge domains. See the following figure below.
HyperWorks 10.0
22. Toggle the radio button to save shape. 23. Click on shape =, enter the name sh2. 24. Toggle as handle perturbation to as node perturbation. 25. Click on the color button and change the color of the shape vectors or leave the default color. 26. Click save. Shape vectors (arrows) are created of the selected color. 27. Click undo all to prepare for the generation of the next shape. 28. Click the Model browse tab, right click on Shape and select Hide. Refer to the following figure for the new shape changes.
Second shape variable, sh2. 29. Toggle the radio button to apply shapes.
In HyperMorph, a new shape can be created as a linear combination of existing shapes. 30. Click shapes and select both sh1 and sh2. 31. Click Select. 32. Verify that the multiplier is 1.0. 33. Click apply. 34. Toggle the radio button to save shapes. 35. Click shape = and enter sh3. 36. Make sure that the toggle is set to node perturbations. The new shape sh3 includes influences from both sh1 and sh2 shapes as shown in the next figure.
HyperWorks 10.0
37. Click save. 38. Click the Model browse tab, right click on Shape and select Hide.. Do NOT click undo all at this moment because we will create one more shape based on this third shape change.
The third shape variable, sh3, converts the tube to a square cross-section
An additional shape variable is created using the shape created in the previous step. 39. In the Model Browser window, right click on the component PSHELL and click on Hide. These components are turned off for ease of visualization. 40. Toggle the radio button to alter dimensions. 41. Under edges only, click reset .
This will clean up previous selection from buffer. 42. Switch the top selector from curve ratio to distance =. This feature allows you to shorten the distance between selected domains. 42. Switch the end a: selector from two handles to nodes and handles. 43. Click node a and pick node as shown in the next figure. 44. Click node b and pick node as shown in the next figure.
HyperWorks 10.0
Once nodes a and b are selected, the distance between node a and node b is measured automatically and appears in distance = field. The distance between node a and node b is about 43. 45. Click handles under node a and select the 8 handles shown by the downward pointing arrows in the previous figure. To select, click the handles on the screen until they are highlighted. 46. Click handles under node b and similarly as in the previous step, select the 8 handles near the opposite face of the tube. 47. Toggle the bottom selector and select hold middle. 48. In the Model Browser window, right click on the component PSHELL and click on Show. These components are turned on for ease of visualization 49. Click distance = and enter 20. 50. Click morph. A rectangular shape appears to the joint as shown in the next figure. 51. Toggle the button to save shape. 52. Click shape = and enter sh4. 53. Make sure that the toggle is set to node perturbations. 54. Click save.
HyperWorks 10.0
55. Click undo all to restore the mesh to the baseline configuration. 56. Click the Model browse tab, right click on Shape and select Hide.. 57. Click return three times to go the main menu.
Step 10: Define the Shape Design Variables and Review by Animation
1. From the Analysis page, select the optimization panel.
2. Click on the shape panel. 3. Make sure the radio button is set to desvar and create. 4. Toggle the switch to select multiple desvars. 5. Click shape = and select sh1, sh2, sh3 and sh4. 6. Click select. 7. Click initial value = and enter 0.0. 8. Click lower bound = and enter -1.0. 9. Click upper bound = and enter 1.0. 10. Click create. This creates four design variables with the same initial value, lower bound, and upper bound. HyperMesh automatically links the design variables to each shape respectively and assigns names to each design variable the same as its associated shapes.
HyperWorks 10.0
12. Click animate. 13. Click on simulation = SHAPE sh1 (1). 14. Make sure that data type = is set to Perturbation vector. 15. Click modal to animate the first shape variable. 16. Click next and then animate to see the next shape variable, and so forth. 17. Click return three times to go back to the optimization panel.
2. Click response = and enter Mass. 3. Click on the response type switch and select mass from the pop-up menu. 4. Ensure the regional selection is set to total (this is the default). 5. Click create. A response, mass, is defined for the total mass of the model. 6. Click response = and enter Stress. 7. Click on the response type switch and select static stress from the pop-up menu. 8. Click the props button and select the PSHELL.1 component which contains skin shells. 9. Do NOT select any element under excluding:. 10. Make sure that the toggle is selected to von Mises. 11. Toggle the bottom switch to select both surfaces. 12. Click create. A response, Stress, is defined for the model. 13. Click return to go back to the optimization panel.
2. The switch on the left should be set to min. 3. Click response= and select Mass. 4. Click create. 5. Click return to exit the optimization panel.
HyperWorks 10.0
HyperWorks 10.0
click the green HyperView button. HyperView is launched and the results are loaded. A message window appears to inform about the successful loading of the model and result files into HyperView. Notice that all three .h3d files get loaded, each in a different page of HyperView. 2. Click Close to close the message window. Rail_joint_opt_des.h3d will be opened in page 1 and Rail_joint_opt.h3d will be opened in page 2 of HyperView. 3. Click the Contour toolbar button. Note the Result type: is Shape Change [v]; this should be the only results type in the file_name_des.h3d file. The second pull-down menu shows mag. 4. Click Apply to display the shape change. Note the contour is all blue this is because your results are on the first design step or Iteration 0. 5. At the bottom of the GUI, click on the name Design <> Iteration 0 to activate the Load Case and Simulation Selection dialog. 6. Select the last iteration by double clicking on the last Iteration listed. Each element of the model is assigned a legend color, indicating the density of each element for the selected iteration. Shape optimization results are applied to the model.
HyperWorks 10.0
Step 17: View a Contour Plot of the Stress on Top of the Shape Optimized Model
1. Click the Next arrow to move to page 2.
2. Click the Contour toolbar button. Note the Result type: is Element Stresses [2D & 3D] [t]. The second pull-down menu shows von Mises. 3. At the bottom of the GUI, click on the name Subcase 1 (STEP) <> Model Step to activate the Load Case and Simulation Selection dialog. 4. Select the last iteration by double clicking on the last Iteration listed. 5. Click Apply. The stress contour shows on top of the shape changes applied to the model. Verify that this value is around the constraint value specified.
Von Mises Stress for the last iteration (Max < 200 MPa)
Reviewing the Results Is your design objective of minimizing the volume obtained? If not, can you explain why? Are your design constraints satisfied? Which shape has the most influence in this problem setup? What is the percentage decrease in compliance? Can size optimization be introduced to the joint?
HyperWorks 10.0
HyperWorks 10.0
3 Free-shape Optimization
Free-shape optimization uses a proprietary optimization technique developed by Altair Engineering Inc., wherein the outer boundary of a structure is altered to meet with predefined objectives and constraints. The essential idea of free-shape optimization, and where it differs from other shape optimization techniques, is that the allowable movement of the outer boundary is automatically determined, thus relieving users of the burden of defining shape perturbations. Free-shape design regions are defined through the DSHAPE bulk data entry. Design regions are identified by the grids on the outer boundary of the structure (the edge of a shell structure or the surface of a solid structure). These grids are listed on the DSHAPE entry. Free-shape optimization allows these design grids to move in one of two ways: 1. For shell structures; grids move normal to the surface edge in the tangential plane. 2. For solid structures; grids move normal to the surface. During free-shape optimization, the normal directions change with the change in shape of the structure, thus, for each iteration, the design grids move along the updated normals.
HyperWorks 10.0
2D - A free-shape design region is defined on the curved edge of the plate by selecting the edge grids; the grids are free to move in the normal direction on the tangential plane.
3D - A free-shape design region is defined on a surface of the solid structure by selecting the face surface grids; the grids are free to move normal to the surface.
HyperWorks 10.0
DTYPE has three distinct options: 1. 2. 3. GROW grids cannot move inside of the initial part boundary. SHRINK grids cannot move outside of the initial part boundary. BOTH grids are unconstrained.
GROW
Undeformed Deformed
SHRINK
BOTH
HyperWorks 10.0
The default value of MVFACTOR is 0.5. A smaller MVFACTOR will make freeshape optimization run slower but with more stability. Conversely, a larger MVFACTOR will make free-shape optimization run faster but with less stability.
HyperWorks 10.0
The default value of NSMOOTH is 10. A larger NSMOOTH will give a larger smoothing buffer, and consequently will work better in avoiding mesh distortion; however, it will result in a slower optimization.
NSMOOTH=1, only 1 layer of grids move along with the design boundary.
HyperWorks 10.0
The design region is offset to form two barriers; MXSHRK is the offset in the shrinkage direction and MXGROWTH is the offset in the growth direction. The design region is then constrained to deform between these two barriers.
HyperWorks 10.0
The curved edge is the free-shape design region. Without any constraints on the free-shape design region, the grids at the ends of the curved edge do not move exactly along the line of the straight edge, but move slightly outward, as shown here:
In order to prevent this phenomenon, the grids at the ends of the curved edge (shown in yellow below) are both constrained to move along the vector indicated by the red arrows.
HyperWorks 10.0
Using these constraints - corner grids moving along the constrained direction - the grids at the ends of the curved edge now move as desired, along the line of the straight edge, as shown here:
HyperWorks 10.0
Problem Statement
Objective: Constraint: Design variables: Minimize mass Maximum von Mises stress of the joint < 62 MPa Shape variables normal to the node set selected
HyperWorks 10.0
Step 1: Launch HyperMesh, Set the User Profile, and Retrieve the Model
1. Launch HyperMesh. 2. Choose OptiStruct in the User Profile dialog and click OK. This loads the user profile. It includes the appropriate template, macro menu, and import reader, paring down the functionality of HyperMesh to what is relevant for generating models in Bulk Data Format for RADIOSS and OptiStruct. User Profiles can also be accessed from the Preferences pull-down menu on the toolbar. 3. Select the File panel toolbar button 4. Select the freeshape3d_mfg.hm file. 5. Click Open. The freeshape3D_mfg.hm database is loaded into the current HyperMesh session, replacing any existing data. Note the location of freeshape3D_mfg.hm now displays in the file: field. .
5. Click create.
HyperWorks 10.0
6. Click on the parameters subpanel and select the direction as grow, mvfactor at 0.5 and nsmooth as 10 and click update
Step 3: Convert the existing shell elements to create the Barrier Mesh Face (BMFACE)
1. Go to the 2D page 2. Enter the elem types panel 3. Click on elems to get the extended entity list 4. Select by collector 5. Check the box next to barrier 6. On 2D& 3D subpanel click on CTRIA3 in the field next to tria3 7. Select BMFACE from the list of options 8. Click on CQUAD4 in the field next to quad4 9. Select BMFACE from the list of options 10. Click update
HyperWorks 10.0
defined by specifying the anchor and the first nodes. The plane of symmetry will then be perpendicular to the vector from the anchor node to the first node and pass through the anchor node. 3. Click anchor node and input the node id= 2 and press ENTER. This selects the node with the ID of 2. 4. Click first node and input the node id= 1. This selects the node with the ID of 1. 5. Click the update button to update the design variables. This completes the definition of the symmetry constraint.
HyperWorks 10.0
The barrier should be constructed by shell elements with the smallest number of elements possible. For this exercise, the mesh barrier was already created and the component name is barrier. 1. Click on sidecon in the free shape panel. 2. Click on desvar = and select shape. 3. Click on Barrier mesh: component= and select barrier from the list. 4. Click update. 5. Click return to go back to the main menu.
6. Choose von mises and click create. 7. Click response= and assign mass.
HyperWorks 10.0
8. Set the response type: to mass. 9. Click create. 10. Click return to go back to the optimization panel.
HyperWorks 10.0
3. Select the directory where you would like to write the OptiStruct model file and enter the name for the model, freeshape3d_mfgopt.fem, in the File name: field. 4. Click Save. Note that the name and location of the freeshape3d_mfgopt.fem file is displayed in the input file: field. 5. Set the export options toggle to all.
6. Click the run options switch and select optimization. 7. Set the memory options toggle to memory default. 8. Click OptiStruct. This launches an OptiStruct run in a separate (DOS or UNIX) shell. If the optimization was successful, no error messages are reported to the shell. The optimization is complete when the line Processing complete appears in the shell.
4. From Graphics pull down menu click on Select Load Case. This will bring up the Load Case and Simulation Selection dialog which is also accessible from the lower right portion of the status bar. 5. Select Iteration14 from beneath Simulation (load final iteration results). 6. Click OK. 7. Go to the Deformed panel .
8. Set the Result type: to Shape change(v). 9. Click Apply. Shape optimization results are applied to the model.
HyperWorks 10.0
Step 12: View a Contour Plot of the Stress on Top of the Shape Optimized Model
1. Go to the Contour panel type:. and select Element Stresses (2D & 3D) (t) as the Result
2. Select von Mises as the stress type. 3. Click on Elements and click By set and pick the set stress click on Add and close. 4. Click Apply.
1. Is your design objective of minimizing the mass obtained? If not, can you explain why? 2. Are your design constraints satisfied?
HyperWorks 10.0
Exercise 5.6 - Shape Optimization of a 3-D Bracket using the Freeshape Method
In this exercise, shape optimization on a solid bracket model will be performed using the Free Shape optimization method. The objective of this optimization is to reduce the stress by changing the geometry of the bracket model. The essential idea of free-shape optimization, and where it differs from other shape optimization techniques, is that the allowable movement of the outer boundary is automatically determined, thus relieving users of the burden of defining shape perturbations.
Problem Setup
You should copy this File: free_shape3D.hm.
HyperWorks 10.0
4. Select the free_shape3D.hm file, located in the HyperWorks installation directory under <install_directory>/tutorials/hwsolvers/optistruct/. 5. Click Open. The free_shape3D.hm database is loaded into the current HyperMesh session, replacing any existing data. Note the location of free_shape3D.hm now displays in the file: field. 6. Click return to go to the main menu.
Step 2: Create Free-shape Design Variables (DSHAPE Cards) 1. From the Analysis page click on optimization. 2. Select the free shape panel. 3. Click name= and enter shape. 4. Select nodes shown in the figure (select only the face nodes that are also on shells).
HyperWorks 10.0
Chapter 5: Fine Tuning Design Step 3: Define the Optimization Problem 1. Select responses panel. 2. Enter Stress in the response= field. 3. Set the response type to static stress. 4. Click the prop button and select the stress_faces component which contains skin shells. 5. Click on the button below von mises and select both surfaces. 6. Click create. 7. Click return to go back to the optimization panel.
Step 4: Define the Objective Reference 1. Click obj reference. 2. Enter MAX_STR in the dobjref= field. 3. Check pos reference; this gives the value 1.0. 4. Click response and select stress. 5. Click create. 6. Click return to go back to the optimization panel.
Step 5: Define the Objective Function 1. Choose the objective panel. 2. Click the left-most toggle and select minmax. 3. Click dobjrefs and select MAX_STR. 4. Click create. 5. Click return twice to go back to main menu.
Step 6: Define the SHAPE Card Only displacement and stress results are available in the _s#.h3d file by default. In order to look at stress results on top of a shape change that was applied to the model in HyperView, a SHAPE card needs to be defined. 1. From the Analysis page, select the control cards panel. 2. Select SHAPE. 3. Use the green next button to see more cards. 4. Set both TYPE and OPTION to ALL. 5. Click return twice to go back to the main menu.
HyperWorks 10.0
Chapter 5: Fine Tuning Design Step 7: Launch OptiStruct 1. From Analysis page click the OptiStruct. 2. Click save as following the input file: field. 3. Select the directory where you would like to write the OptiStruct model file and enter the name for the model, Free_Shape3D.fem, in the File name: field. 4. Click Save. Note that the name and location of the Free_Shape3D.fem file is displayed in the input file: field. 5. Set the memory options toggle to memory default. 6. Click the run options switch and select optimization. 7. Set the export options toggle to all. 8. Click OptiStruct. This launches an OptiStruct run in a separate (DOS or UNIX) shell. If the optimization was successful, no error messages are reported to the shell. The optimization is complete when the line Processing complete appears in the shell.
Step 8: View Shape Results 1. While in the OptiStruct panel of the Analysis page, click the green HyperView button. Note that the message window pops up to indicate that Free_Shape3D_des.h3d and Free_Shape3D.h3d are opened. 2. Click Close to close the Message Log window. Free_Shape3D_des.h3d will be opened in page 1 and Free_Shape3D.h3d will be opened in page 2 of HyperView. 3. Click to move to page 2.
4. From Graphics pull down menu click on Select Load Case. This will bring up the Load Case and Simulation Selection dialog which is also accessible from the lower right portion of the status bar. 5. Select Iteration6 from Simulation (load final iteration results).
HyperWorks 10.0
8. Set the Result type: to Shape change. 9. Click Apply. Shape optimization results are applied to the model.
Step 9: View a Contour Plot of the Stress on Top of the Shape Optimized Model 1. Go to the Contour panel and select Element Stresses [2D & 3D] as the Result type:.
2. Select von Mises as the stress type. 3. Click Apply. The stress contour shows on top of the shape changes applied to the model.
HyperWorks 10.0
In practice, however, there will be some sort of constraints imposed upon the movement of grids due to manufacturability. For this tutorial model, thickness must be unchanged to avoid any interference with other parts. The next step will describe how to define constraints on DSHAPE grids such that the thickness of design space will remain unchanged.
Step 1: Add Constraints on DSHAPE Grids The constraints on free-shape design grids will be created separately for curved and flat parts of the design space. The parts of the design space that are grouped as curved and those grouped as flat are illustrated in the figure below.
HyperWorks 10.0
The constraints on the curved part will be created using a local rectangular coordinate system (the other constraints on the flat part do not need a local coordinate system). Therefore, a local rectangular coordinate system (z-axis will point to normal to DSHAPE surface) needs to be created first. 1. Back on HyperMesh click return and go to 1D page. 2. Click systems. 3. Choose the create by axis direction subpanel. 4. Click nodes and select node ID 20999 (See the following figure). 5. Click origin and select the same node (ID 20999) as nodes. 6. Click x-axis and select node ID 15989. 7. Click xy-plane and select node ID 19462.
HyperWorks 10.0
8. Click create. 9. Click return. 10. From the Analysis page click on optimization. 11. Select the free shape panel. 12. Select the gridcon subpanel. The constraints on the flat part will be created first without any coordinate system. 13. Click desvar= and select shape. 14. Select constraint type as planar. 15. Select nodes shown in the following figure.
16. Click the vector definition switch and select vectors. 17. Select N1, N2, N3 as those three nodes on plane geometry (as shown in the figure).
HyperWorks 10.0
18. Click add. These nodes will move only on the specified plane above. Next, the constraints on the curved part will be created using a local coordinate system. 19. Select constraint type as vector. 20. Click nodes. 21. Select nodes shown in the following figure (select only the nodes that are on the curved part).
HyperWorks 10.0
22. Click direction selector and select local system. 23. Click the local coordinate system created in the previous step. 24. Click the vector definition switch and select vector. 25. Click the direction definition switch below vector, and select z-axis from the pop-up menu. 26. Click add. 27. Click return twice to get back to the main menu.
Step 2: Launch OptiStruct 1. From the Analysis page click OptiStruct. 2. Click save as following the input file: field. 3. Select the directory where you would like to write the OptiStruct model file and enter the name for the model, Free_Shape3D_const.fem, in the File name: field. 4. Click Save. Note that the name and location of the Free_Shape3D_const.fem file is displayed in the input file: field. 5. Set the memory options toggle to memory default. 6. Click the run options switch and select optimization.
HyperWorks 10.0
Chapter 5: Fine Tuning Design 7. Set the export options toggle to all. 8. Click OptiStruct.
HyperWorks 10.0
HyperWorks 10.0
APPENDIX A
Composite Exercise
Exercise A-1: Optimization Driven Design of a Composite plate
For this example we need to design a cantilever beam made with composites plies that can have angles 0, 45, -45 & 90 degrees. It needs to support an in-plane force at middle of the unconstrained end (see figure below).
This is a design of simplified plane wing, where: o o o o The objective is to determine the minimum mass with Max Disp. < 3.00e-04. Min of each family (ANGLE) 10% (PPMIN) Manufacturable thickness (in) 0.05 (PTMAN) BALANCED 45 AND -45 FAMILIES.
To achieve this optimum design we will introduce you the process called Optimization Driven Design for Composite. It is divided in 3 phases: o o o PHASE I - Free Size Optimization, (Ply topology) PHASE II - Size Optimization (Thickness and number of plies) PHASE III Shuffle Optimization (Stacking Sequence).
Model Information:
PCOMP with 4 plies 0, 45, -45 & 90 Orthotropic Material MAT8_1 (1) 0.3 rho = 1.6e-06 lb/in
3
HyperWorks 10.0
HyperWorks 10.0
Note that there are only 4 plies that are 1 inch thick each for a total thickness of 4 inches. These are super-plies, each with a unique fiber direction. For this model the plies are all the same thickness and composite material. Each ply can have different materials and thicknesses.
o o
HyperWorks 10.0
HyperWorks 10.0
It makes that each plies of 45 or -45 will be in a pair with one off the other one. 10. This constraint requires that the 45.0 degree plies be in balance with the -45.0 degree plies. 11. Return to the free size composite page. 12. Click update to apply changes. 13. Click return to exit the panel.
Step 3: Create the 2 responses (mass and disp1211) for the optimization.
1. Enter the response panel. 2. Enter disp1211 in the response= field. 3. Select static displacement for the response type. 4. Select the node where the load is applied or by ID node # 1211. 5. Select total disp 6. Click create 7. Create a second response called volume. 8. Select volume for the response type. 9. Click create 10. Return to the optimization page.
HyperWorks 10.0
Note that second request will create a FILENAME_sizing.fem file that will have incorporated ply and element set information that includes ply patch configurations for each ply type. a. The default is to repeat the super ply 4 times for each ply defined on the PCOMP(G) property that will give a total of 16 plies. b. This is the default value and can be changed to adding the number of desired ply sequence repetitions at the end of the line in *.fem file. For example: OUTPUT,FSTOSZ,YES,5 This request would result in the PCOMP ply sequence being repeated 5 times for a total of 20 plies.
HyperWorks 10.0
Optimization History
It shows that the model had converged for a feasible solution with an optimum volume. Now we need to verify the plies shapes to understand if this can be manufactured.
3. One important result is the total element thickness using HyperView select the last iteration on the file, it should be understood as the topography of the laminate.
HyperWorks 10.0
4. Now it is important to see the individual angle plies thickness, it will be used per OptiStruct to define the shape of the individual ply, this plot can be saw again as a topographic plot of the stack for each angle ply:
HyperWorks 10.0
3. Save the HyperMesh database as PCOMP_PLATE.hm on this new subdirectory. 4. Review the model PLY, STACK, SET, DESVAR and DVPREL1 cards. ELEM SET cards will list what elements will be used for each ply,
Element sets for 45 degree angle plies (9, 10, 11 and 12)
Element sets for 90 degree angle plies (13, 14, 15 and 16)
HyperWorks 10.0
Note that the PLY cards have the individual ply description
DESVAR cards will provide the initial, minimum and maximum thickness for each ply.
HyperWorks 10.0
The second request in output will make OptiStruct export the input file PCOMP_PLATE_shuffling.fem prepared to perform the PHASE 3 Shuffle. 4. Click return. 5. Click next until you see STACK and click it. 6. Change SMEAR to blank
HyperWorks 10.0
8. From the Analysis page enter the optimization panel then the size subpanel. 9. Double click the desvar= button Edit the upper bound for each design variables to give more Design Space to the upper bound predefined per OptiStruct:
DV DESVAR DESVAR DESVAR DESVAR DESVAR DESVAR DESVAR DESVAR DESVAR DESVAR DESVAR DESVAR DESVAR DESVAR DESVAR DESVAR ID 1010100 1010200 1010300 1010400 1020100 1020200 1020300 1020400 1030100 1030200 1030300 1030400 1040100 1040200 1040300 1040400 NAME autoply autoply.1 autoply.2 autoply.3 autoply.4 autoply.5 autoply.6 autoply.7 autoply.8 autoply.9 autoply.10 autoply.11 autoply.12 autoply.13 autoply.14 autoply.15 X0 0.12 0.34 0.48 0.06 0.17 0.12 0.13 0.58 0.17 0.12 0.13 0.58 0.08 0.05 0.07 0.80 Xmin 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 Xmax 0.30 0.80 1.00 0.20 0.40 0.30 0.30 0.80 0.40 0.30 0.30 0.80 0.20 0.20 0.20 1.00 90 45 -45 0 ANGLE(o)
10. Click Return twice to exit the panel. 11. Export the PCOMP_PLATE_SIZE.fem model. 12. Open the PCOMP_PLATE_SIZE.fem model with a text editor and include the stress response as showed bellow
13. Include the stress constrain and edit the DCONADD as on the image bellow:
HyperWorks 10.0
15. Run OptiStruct directly using the RADIOSS manager or load the model into HyperMesh and run OptiStruct from it. 16. First it is interesting to look at the optimization history to understand the design evolution, it can be done opening the file .hgdata to plot the displacement:
Optimization History
It shows that the model had converged for a feasible solution with an optimum volume. The Composite stress response is not available on the history on 9.0, but can be reviewed for example on the .out file:
HyperWorks 10.0
HyperWorks 10.0
1. Create a folder called 03_Shuffle. 2. Import the file PCOMP_PLATE_SIZE_FINAL_shuffling.fem on a new HM database. 3. Select the analysis page, control card: OUTPUT 4. Change FSTOSZ,YES to PROPERTY,LAST. 5. Click Return to exit the panel 6. Select control card: DEBUG 7. Enter 2 for number_of_debugs 8. Define the DEBUG card to help on understand the shuffle steps:
DEBUG,SHUFHTML,1 This will generate a file in a HTML format with a table with the shuffle iterations: Wing_example_suffle_shuf.hist.html DEBUG,SHUFTEXT,1 This will generate a text file with the stack sequences during the shuffle iterations: Wing_example_suffle.shuf
MAXSUCC: limits the number of plies of the same type (orientation) that are adjacent to each other. The second shuffling constraint, PAIR, constrains each 45.0 degree ply to be adjacent to a -45.0 degree ply.
10. Save file, import into HyperMesh and run Optistruct. 11. Review the file: Case1_Plate _freesizing_sizing_shuffling.hist.html.
HyperWorks 10.0
0o Plies
-45o Plies
1010101 1010102 1020101 1020102 1020103 1030101 1030102 1030103 1040101 1040102 1040103 1040104 1010201 1010202 1010203 1010204 1010205 1010206 1010207 1010208 1020201 1020202 1030201 1030202 1040201 1040202 1040203 1040204 1010301 1010302 1010303 1010304 1010305 1010306 1010307 1010308 1010309 1010310 1010311 1010312 1010313 1010314 1010315 1010316 1010317 1010318 1010319 1010320 1020301 1020302 1030301 1030302 1040301 1010401 1020401 1020402 1020403 1030401 1030402 1030403 1040401 1030101 1020101 1010101 1010102 1010201 1040101 1010202 1030102 1020102 1010203 1010204 1040102 1010205 1030103 1020103 1010206 1010207 1040103 1010208 1030201 1020201 1010301 1010302 1040104 1010303 1030202 1020202 1010304 1010305 1040201 1010306 1030301 1020301 1010307 1010308 1040202 1010309 1030302 1020302 1010310 1010311 1040203 1010312 1030401 1020401 1010313 1010314 1040204 1010315 1030402 1020402 1010316 1010317 1040301 1010318 1030403 1020403 1010319 1010320 1040401 1010401 1040401 1040201 1040102 1040101 1030201 1020201 1010101 1010102 1010201 1010202 1030102 1020102 1010306 1010203 1010204 1010205 1030103 1020103 1010307 1010206 1010207 1010208 1030302 1020302 1040203 1040103 1030403 1020403 1010308 1010301 1010302 1010303 1040104 1030401 1020401 1010310 1010309 1010304 1010305 1030101 1020101 1030202 1020202 1010311 1010312 1010313 1010314 1040204 1010401 1010315 1010316 1010317 1040202 1040301 1030301 1020301 1010318 1010319 1010320 1030402 1020402 1040401 1040201 1040102 1040101 1030201 1020201 1010101 1010102 1010201 1010202 1030102 1020102 1010306 1010203 1010204 1010205 1030103 1020103 1010307 1010206 1010207 1010208 1030302 1020302 1040203 1040103 1030403 1020403 1010308 1010301 1010302 1010303 1040104 1030202 1020202 1030401 1020401 1010310 1010309 1010304 1010305 1030101 1020101 1010311 1010312 1010313 1010314 1040204 1030402 1020402 1010401 1010315 1010316 1010317 1040202 1040301 1030301 1020301 1010318 1010319 1010320
45o Plies
1040401 1040201 1040102 1040101 1030201 1020201 1010101 1010102 1010201 1010202 1030102 1020102 1010306 1010203 1010204 1010205 1030103 1020103 1010307 1010206 1010207 1010208 1030302 1020302 1040203 1040103 1030403 1020403 1010308 1010301 1010302 1010303 1030401 1020401 1040104 1030202 1020202 1010310 1010309 1010304 1010305 1030101 1020101 1010311 1010312 1010313 1010314 1040204 1030402 1020402 1010401 1010315 1010316 1010317 1040202 1040301 1030301 1020301 1010318 1010319 1010320 1040401 1040201 1040102 1040101 1030201 1020201 1010101 1010102 1010201 1010202 1030102 1020102 1010306 1010203 1010204 1010205 1030103 1020103 1010307 1010206 1010207 1010208 1030302 1020302 1040203 1040103 1030403 1020403 1010308 1010301 1010302 1010303 1030401 1020401 1040104 1030202 1020202 1010310 1010309 1010304 1010305 1030101 1020101 1010311 1010312 1010313 1010314 1040204 1030402 1020402 1010401 1010315 1010316 1010317 1040202 1040301 1030301 1020301 1010318 1010319 1010320
90o Plie
The table shows the shuffling iterations from beginning to the last. DSHUFFLE constrains to limit the number of like adjacent plies to a maximum of four; It guarantee that on the last iteration we have for every 45.0 degree (103xxxx, green highlight) ply a -45.0 degree ply (102xxxx, yellow highlight).
SUMMARY Composite optimization is a three phase task: 1. Begins with Free Size optimization that determines composite patch size, shape, and location. On this phase OS output the input deck that is then used in the second phase, 2. Size optimization (ply bundle optimization), to determine optimum ply bundle thickness and required number of plies per patch. 3. Shuffling optimization is the last phase used to optimize stacking sequence and meet ply book rules, improve performance, and improve manufacturability.
HyperWorks 10.0