Discrete Size Optimization of a Welded Bracket - OS-4030



Your Ad Here

This tutorial demonstrates how to perform a size optimization on a welded bracket modeled with shell elements using discrete design variables. The structural model with loads and constraints applied is shown in the figure below. The objective is to minimize the amount of material used in the model subject to certain stress specifications.

image\weldbrack.gif

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.

The following exercises are included:

·      Retrieving the HyperMesh database file

·      Setting up discrete size design variables in HyperMesh

·      Submitting the job

·      Viewing the results

Retrieving the HyperMesh Database File

To load the OptiStruct user profile and retrieve the file bracket_size.hm:

  1. Launch HyperMesh.

  2. Choose OptiStruct in the User Profile dialog and click OK.

This loads the OptiStruct user profile. It includes the OptiStruct template, macro menu, and import reader, paring down the functionality of HyperMesh to what is relevant for use with OptiStruct.

User Profiles… can also be accessed from the Preferences pull-down menu on the toolbar.

  1. Select the Files Panel toolbar button image\files_panel.gif.

  2. Select the hm file subpanel using the radio buttons on the left-hand side of the panel.

  3. Click retrieve.

An Open file… browser window pops up...

  1. Select the discrete_bracket_size.hm file, located in <install_directory>/tutorials/os/.

  2. Click Open.

The bracket_size.hm database is loaded into the current HyperMesh session, replacing any existing data.

Note the location of bracket_size.hm displays in the file: field.

  1. Click Return.

Setting Discrete Size Design Variables in HyperMesh

To define the design variables:

  1. Select the optimization panel on the Analysis page.

  2. Select discrete dvs.

  3. Click on the field next to name= and enter DDV1.

  4. Click on the field next to from= and enter the value 0.5. With the same method, enter 3.0 for to= and 0.1 for increment=.

  5. Click create.

This sets up a discrete design variable with a starting value of 0.5 and ending value of 3.0. The variables are incremented by 0.1, making the possible values as 0.5, 0.6, 0.7, and so on until 3.0.

  1. Create another discrete design variable DDV2 with the same discrete values as DDV1.

  2. Click return to go back to the optimization panel.

  3. Select the size panel.

  4. Select the desvar subpanel using the radio buttons on the left-hand side of the panel.

  5. Click desvar = and enter part1.

  6. Click initial value = and enter 2.5.

  7. Click lower bound = and enter 0.5.

  8. Click upper bound = and enter 3.0.

  9. Toggle no ddval to ddval =.

  10. Click ddval= and select DDV1 from the list.

  11. 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.

  1. 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.

  2. Select the generic property subpanel using the radio buttons on the left-hand side of the panel.

  3. Click dvprel = and enter part1_th.

  4. Click the entity selection switch and choose comps.

  5. Click comp and select part1 from the list of component collectors.

A property selection switch now appears below the comps button.

  1. Click the property selection switch and select Thickness T from the pop-up menu.

  2. Click on designvars.

The list of design variables appears.

  1. Check the box next to part1.

Note that the linear factor (value is box beside part1) automatically gets set to 1.000.

  1. Click return.

  2. 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.

  1. 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.

  2. Click return to go to the Optimization Setup panel.

To define responses:

A detailed description can be found in the OptiStruct User's Guide under Responses.

  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.

  1. Click response = and enter stress1.

  2. Click the response type: switch and select static stress from the pop-up menu.

  3. Click comps.

  4. Click one of the green shell elements in the graphics window to select the component part1.

  5. Click select.

A stress type selector switch appears.

  1. Click the stress type selector switch and select von mises from the pop-up menu.

  2. Click the selector switch below the stress selector and choose the both surfaces option.

  3. Click create.

A response, stress1, is defined for the von Mises stress of the elements in the component part1.

  1. Click response = and enter stress2.

  2. Click comps.

  3. Click one of the pink shell elements in the graphics window to select the component part2.

  4. Click select.

  5. Click create.

A response, stress2, is defined for the von Mises stress of the elements in the component part2.

  1. Click return to go to the Optimization Setup panel.

To define the objective function:

In this example, the objective is to minimize the volume response defined in the previous section.

  1. Select the objective panel.

  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 volume from the response list.

  4. Click create.

The objective function is now defined.

  1. Click return to return to the Optimization Setup panel.

To define constraints:

A response defined as the objective cannot be constrained. In this case, you cannot constrain the response volume.

Upper bound constraints are to be defined for the responses stress1 and stress2.

  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.

  1. Click loadsteps.

  2. Check the box next to STEP and click select.

  3. Check the box next to upper bound =.

  4. Click upper bound = and enter 100.

  5. 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.

  1. Click constraint = and enter stress2.

  2. Click response = and select stress2 from the list of responses.

  3. Click loadsteps.

  4. Check the box next to STEP and click select.

  5. Check the box next to upper bound =.

  6. Click upper bound = and enter 120.

  7. 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.

  1. Click return twice to go to the main menu.

To save the HyperMesh database:

  1. Select the Files panel toolbar button image\files_panel.gif.

  2. Select the hm file subpanel using the radio button on the left-hand side of the panel.

  3. Click save as….

A Save file… browser window pops up.

  1. Select the directory where you would like to save the database and enter the name for the database, discrete_bracket_size.hm, in the file: field.

  2. Click save.

Submitting the Job

To launch OptiStruct:

  1. Select the OptiStruct panel on the Analysis page.

  2. Click save as….

A Save file… browser window pops up.

  1. Select the directory where you would like to write the OptiStruct model file and enter the name for the model, discrete_bracket_size.fem, in the file: field.

The .fem file name extension is the suggested extension for OptiStruct input decks.

  1. Click Save.

Note the name and location of the discrete_bracket_size.fem file displays in the input file: field.

  1. Set the memory options: toggle to memory default.

  2. Click the run options: switch and select optimization.

  3. Set the export options: toggle to all.

  4. 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 bracket_size.out file is a good place to look for error messages that will help to debug the input deck if any errors are present.

Viewing the Results

Size optimization results from OptiStruct are given in the following files:

discrete_bracket_size_des.h3d

Contains the element thickness for all five iterations.

discrete_bracket_size_s1.h3d

Contains displacement and stress results for the linear static analysis for iteration 0 and iteration 4 of subcase with ID 1 (subcase Force_X).

discrete_bracket_size.out

Contains thickness and volume information for each iteration.

The results contained in the HyperMesh binary results file will be examined first. The gauge history in the discrete_bracket_size.out file will then be reviewed.

Post-processing

To view the stress results:

  1. Once you see the message Process completed successfully in the command window, click the green HyperView button.

This launches HyperView and opens the results. A message window appears to inform about the successful loading of the model and result files into HyperView. Notice that all of the h3d files get loaded, each into a different page in HyperView. The files discrete_bracket_size_s1.h3d and discrete_bracket_size_s1.h3d get loaded in page 1 and page 2, respectively.

  1. Click Close to close the message window.

To view the results:

After the size optimization, the stress value should be reviewed to make sure that the stress constraints are not violated. The analysis results are available on page 2 (the first page has the optimization results).

  1. Click the Next Page toolbar button image\aarow.gif to move to the second page.

  2. 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.

  3. Click the Contour toolbar button image\contour.gif.

  4. Select the first pull-down menu below Result type: and select Element Stresses [2D & 3D] (t).

  5. From the second pull-down menu, select vonMises.

  6. Select None in the field below Averaging method:.

  7. 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.

  1. Click the Measure toolbar button image\measure.gif.

  2. Check the box next to Static MinMax Result to highlight the elements that have minimum and maximum stresses.

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?

Go To

OptiStruct Tutorials

Return to Altair HyperWorks Index