# OS-T: 4090 Manufacturing Constraints of a Composite Structure

In this tutorial you will perform a free-size optimization with manufacturing constraints.

Before you begin, copy the file(s) used in this tutorial to your working directory.

One of the advantages with composite materials is that the structural performance can be controlled precisely by choosing the appropriate ply thickness, ply orientation, stacking sequence, ply materials, and so on. The ability to vary many different parameters provides greater flexibility, but at the same time it is tougher to optimize the part as the number of design variables increases many fold. OptiStruct has the ability to directly or indirectly optimize the ply thickness, ply orientation and stacking sequence for composite structures.

Free-size optimization handles the thickness of each ply in each element as a design variable and optimizes the structure by determining the optimal thickness distribution for each ply in the laminate.

For several reasons, every composite manufacturer has their own manufacturability standards for the laminated composites. These additional manufacturing constraints are to be included with free-size optimization to achieve an acceptable manufacturing solution. OptiStruct supports different manufacturability constraints that can be defined with free-size optimization. This tutorial helps explain the procedure used to define the manufacturing constraints in the free-size optimization of composite structures.

The optimization problem for this tutorial is stated as:
Objective
Minimize the Mass.
Constraints
Displacement of selected 6 nodes < 3 mm.
Design Variables
Thickness of each ply of each element in the design space.

## Launch HyperMesh and Set the OptiStruct User Profile

1. Launch HyperMesh.
The User Profile dialog opens.
2. Select OptiStruct 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 for OptiStruct.

## Open the Model

1. Click File > Open > Model.
2. Select the Composite_Wing.hm file you saved to your working directory.
3. Click Open.
The Composite_Wing.hm database is loaded into the current HyperMesh session, replacing any existing data.

## Review the Model Setup

In this step you will use HyperLaminate to define, review, and edit ply lay-up information.

The model is already set up for the analysis. The model properties, loads, boundary conditions, and loadsteps are already defined. The model has 15 components out of which the TopSkin and BottomSkin components are defined with the composite property PCOMP. The rest of the components are defined with PSHELL property which references the material property, Aluminum.

Size design variables can also be set up in this panel for performing size optimization.
1. From the 2D page, click the HyperLaminate panel.
HyperLaminate opens.
2. In the Laminate Browser, Laminates section, click TopSkin.
The TopSkin component properties display in the Laminate definition and Review sections. The Laminate definition section shows the ply material, ply thickness, ply orientation, and so on, which is shown graphically under the Review section.

## Set Up the Optimization

### Create Design Variable

In this step you will create the design variable for free-sizing optimization.
1. From the Analysis page, click the optimization panel.
2. Click the free size panel.
3. Select the create subpanel.
4. In the desvar= field, enter Skins.
5. Set type: to PCOMP(G).
6. Using the props selector, select the TopSkin and BottomSkin properties.
7. Clicks create.

### Add a Minimum Dimension Manufacturing Constraints

You should still be in the free size panel.
In this step you will define the minimum member size control to be 5.0. Member size control gives you some control over the member size in the final free-size design and the resulting structure will have discrete members that are easy to interpret during post-processing.
1. Select the parameters subpanel.
2. Click desvars= and select Skins.
3. Toggle minmemboff to mindim =, and enter 5.0.
4. Click update.

### Add Minimum Thickness Manufacturing Constraints

You should still be in the free size panel.
In this step you will define the percentage following manufacturing constraints.
• Minimum laminate thickness of 0.2.
• A Minimum of 10% and a maximum of 60% thickness (of total laminate thickness) constraints defined for all the plies. This means that for each element, none of the plies will have thickness less than 10% or greater than 60% of the totals laminate thickness.
• The thickness of ply with ply angle of 45 degree to be same as the thickness of ply with ply angle of -45 degree.
1. Select the composites subpanel.
2. Click desvars= and select Skins.
3. Under laminate thickness, toggle minimum thickness off to minimum thickness = and enter 0.2.
4. Click update.
The above defined minimum laminate thickness constraint is updated to the free-size design variable.
5. Click edit.
6. In the Card Image dialog, select PLYPCT.
7. Under PLYPCT, select BYSET.
8. In the DSIZE_NUMBER_OF_PLYPCT= field, enter 4.
This specifies that ply percentage constraints will be defined on 4 plies. In the Card Image dialog, four additional lines appear, in which you can enter the ply percentage constraints.
PANGLE
Ply orientation to which the PLYPCT constraints are applied.
PPMIN
Minimum ply percentage thickness for the PLYPCT constraint.
PPMAX
Maximum ply percentage thickness for the PLYPCT constraint.
PTMAN
Manufacturable ply thickness.
9. In the first COMP PLYPCT row, edit the constraints.
1. For PANGLE, enter 0.
This define that ply percentage constraints are defined for the ply with ply angle of 0 degree.
2. For PPMIN, enter 0.1.
3. For PPMAX, enter 0.6.
4. Leave the PTMAN field blank.
This defines that for each element, the thickness of the ply with ply angle 0, should be no less than 10% or more than 60% of the total thickness.
10. In the second COMP PLYPCT row, edit the constraints.
1. For PANGLE, enter 45.
2. For PPMIN, enter 0.1.
3. For PPMAX, enter 0.6.
4. Leave the PTMAN field blank.
11. In the third COMP PLYPCT row, edit the constraints.
1. For PANGLE, enter -45.
2. For PPMIN, enter 0.1.
3. For PPMAX, enter 0.6.
4. Leave the PTMAN field blank.
12. In the second COMP PLYPCT row, edit the constraints.
1. For PANGLE, enter 90.
2. For PPMIN, enter 0.1.
3. For PPMAX, enter 0.6.
4. Leave the PTMAN field blank.
13. Select BALANCE.
The BALANCE constraint ensures that two plies will always be of equal thickness.
BALANCE
BALANCE flag indicating that a balancing constraint is applied.
BANGLE1
First ply orientation to which the BALANCE constraint is applied.
BANGLE2
Second ply orientation to which the BALANCE constraint is applied.
14. In the BALANCE row, edit the constraints.
1. For BANGLE1, enter 45.
2. For BANGLE2, enter -45.
This defines that the plies with ply angle of 45 and -45 will always have the same thickness.
16. Click update to update the above defined manufacturing constraints to the free-size design variable.

### Create Optimization Responses

1. From the Analysis page, click optimization.
2. Click Responses.
3. Create the mass response, which is defined for the total volume of the model.
1. In the responses= field, enter mass.
2. Below response type, select mass.
3. Set regional selection to total and no regionid.
4. Click create.
4. Create the displacement response.
1. In the response= field, enter disp.
2. Below response type, select static displacement.
3. Click nodes > by sets, then select Nodes and click select.
6 nodes at the end side of the wing are selected.
4. Set the displacement type to dof3.
dof1, dof2, dof3
Translation in the X, Y, and Z directions.
dof4, dof5, dof6
Rotation about the X, Y, and Z axes.
total disp
Resultant of the translational displacements in x, y, and z directions.
total rotation
Resultant of the rotational displacements in x, y, and z directions.
5. Click create.

### Create Design Constraints

1. Click the dconstraints panel.
2. In the constraint= field, enter disp_constr.
3. Click response = and select disp.
4. Check the box next to upper bound, then enter 2.0.
5. Using the loadsteps selector, select Subcase1 and Subcase2.
6. Click create.

### Define the Objective Function

1. Click the objective panel.
2. Verify that min is selected.
3. Click response and select mass.
4. Click create.
5. Click return twice to exit the Optimization panel.

## Run the Optimization

1. From the Analysis page, click OptiStruct.
2. Click save as.
3. In the Save As dialog, specify location to write the OptiStruct model file and enter Wing_FreeSize_with_PLYPCT for filename.
For OptiStruct input decks, .fem is the recommended extension.
4. Click Save.
The input file field displays the filename and location specified in the Save As dialog.
5. Set the export options toggle to all.
6. Set the run options toggle to optimization.
7. Set the memory options toggle to memory default.
8. Click OptiStruct to run the optimization.
The following message appears in the window at the completion of the job:
OPTIMIZATION HAS CONVERGED.
FEASIBLE DESIGN (ALL CONSTRAINTS SATISFIED).
OptiStruct also reports error messages if any exist. The file Wing_FreeSize_with_PLYPCT.out can be opened in a text editor to find details regarding any errors. This file is written to the same directory as the .fem file.
9. Click Close.

## View the Results

OptiStruct provides element thickness, ply thickness information for all iterations, and also writes out displacement and von Mises stress results for the linear static analysis. This section describes how to view the results in HyperView.

### View a Contour Plot of Element and Ply Thicknesses

1. From the OptiStruct panel, click HyperView.
HyperView launches within the HyperMesh Desktop and loads all .h3d result files.
2. On the Results toolbar, click to open the Contour panel.
3. Set the Result type to Element thicknesses and Thickness.
4. Click Apply.
The contour of total laminate thickness for the selected iteration displays.
5. In the Results Browser, select the last design iteration result.
The contoured thickness is the optimal laminate thickness distribution for the current design.

### View a Contour Plot of Ply Thickenesses

Since only the TopSkin and BottomSkin components are in the free-size design space and the thickness of only these two components are changing, it is convenient to view only these two components. Also, for easy visualization purposes, it is convenient to move the two surfaces apart as they are very close to each other.
1. On the Results toolbar, click to open the Iso panel.
2. Click Apply.
The isometric view of the model displays.
3. In the Results Browser, click to activate the Component view.
4. From the view controls in the Results Browser, click (Isolate Shown) and click the BottomSkin and TopSkin components.
The two components are isolated.
5. On the Visualization toolbar, click to open the Exploded View panel.