In this tutorial, dynamic analysis on a simple three rigid bodies model is performed using OptiStruct. The force of gravity acts along the global Y axis, and the system has one degree of freedom.
This exercise includes the creation of PRBODY (rigid body definition), JOINT and boundary conditions in HyperMesh. An existing finite element model is used in this tutorial problem.
The following exercises are included:
• | Setting up the problem in HyperMesh |
- PRBODY
- JOINTS
- Boundary conditions (Gravity and MBSIM)
• | Viewing the results in HyperView |
Rigid bodies model
Exercise
Step 1: Launch HyperMesh and set the OptiStruct User Profile
1. | Launch HyperMesh Desktop. The User Profiles dialog appears. |
2. | Select OptiStruct and click OK. This loads the user profile. |
Step 2: Retrieve the HyperMesh Model File
1. | Click the Open Model icon . |
2. | Select the 3bodies_dynamics.hm file you saved to your working directory from the optistruct.zip file. Refer to Accessing the Model Files. |
3. | Click Open. The model has three components and a few free nodes that will be used to create bodies and joints for the MBD model. |
Setting up the Problem in HyperMesh (Steps 3 - 6)
Step 3: Creating PRBodies
PRBODY is the Rigid Body Definition for Multi-body Simulation. PRBODY defines a rigid body out of a list of finite element properties, elements and grid points.
Define the parts as PRBODY (Rigid Body definition)
1. | From the Analysis page, enter the bodies panel. |
2. | Select the create subpanel. |
3. | Click body= and enter blue. |
4. | Click type= and select PRBODY. |
5. | Click props and select body1. |
8. | Repeat the above operation to define PRBODY for the component named body2 with the name lime, and for body3 with the name orange. |
Step 4: Creating Joints
This step outlines defining all the necessary joints required for this model.
Create the component for the joints
1. | In the Model browser, right-click the Component tree and select Create. |
2. | For Name, enter joints. |
3. | For Property and Material leave as <Unspecified>. |
In this tutorial, two revolute joints, one ball joint, and one universal joint are created to constrain the degrees of freedom (shown in the following figure), such that the remaining degree of freedom will be just 1.
DOF = 3*6 – (5+5+4+3) = 1
Type of Joint
|
Removes
translational dof
|
Removes
rotational dof
|
Removes total
number of dof
|
Revolute
|
3
|
2
|
5
|
Universal
|
3
|
1
|
4
|
Ball (Spherical)
|
3
|
0
|
3
|
Joints in the model
Create the joints
1. | From the menu, click Mesh > Create > 1D Elements > Joints to open the Joints panel. |
First, the revolute joint at the lower right corner of body3 will be created.
2. | Click the joint type: selector switch and select revolute. |
3. | Select node ID 12319 as the first terminal. |
4. | Select node ID 13158 as the second terminal. |
Note: | Nodes 12319 and 13158 are coincident. Coincident node picking in options panel > graphics subpanel in HyperMesh will help select these coincident nodes in the HyperMesh screen. |
|
5. | Select node ID 12910 as a node for first orientation. The vector 12319 to 12910 defines the axis of rotation of the revolute joint. |
Next, the revolute joint at the lower left corner of body1 will be created.
7. | Select node ID 11115 as the first terminal. |
8. | Select node ID 13159 as the second terminal. |
9. | Select node ID 11706 as a node for first orientation. |
The vectors 11115 to 11706 define the axis of rotation of the revolute joint. A universal joint between body3 and body2 will be created next.
11. | Click the joint type: selection switch and select universal. |
12. | Select node ID 12330 as first terminal which belongs to body3. |
13. | Select node ID 7589 as second terminal which belongs to body2. |
14. | Select node ID 12921 as a node for first orientation. |
15. | Select node ID 11944 as a node for second orientation. |
The vectors 12330 to 12921 define the first cross pin axis, and the vectors 7589 to 11944 define second cross pin axis.
16. | Click create. A ball (spherical) joint between body1 and body2 will be created next. |
Ball joint between body1 and body2
17. | Click the joint type: selection switch and select ball. |
18. | Select node ID 11104 as first terminal which belongs to body1. |
19. | Select node ID 7578 as second terminal which belongs to body2. |
Step 5: Apply the boundary condition to the model
The gravity force that applies to the model and MBSIM bulk data card, which is to specify the parameter for multi body simulation, is created in this step.
Create the gravity force
1. | In the Model browser, right-click and select Create > Load Collector. |
2. | For Name, enter gravity. |
3. | Click Color and select any color. |
4. | Click Card Image and select GRAV. |
5. | Input the values, as illustrated below. |
A new load collector, gravity is created.
Create an MBSIM card
1. | In the Model browser, right-click and select Create > Load Collector. |
3. | Click Color and select any color. |
4. | Click Card Image and select MBSIM. |
5. | Input the values, as illustrated below. |
Step 6: Create an OptiStruct loadstep (also referred to as a subcase)
1. | Click Setup > Create > LoadSteps to open the LoadSteps panel. |
2. | Set Analysis type to Multi-body dynamics. |
3. | For Name, enter Dynamic. |
4. | For MLOAD, click Unspecified > Loadcol. |
5. | In the Select Loadcol dialog, select gravity from the list of load collectors and click OK. |
6. | For MBSIM, click Unspecified > Loadcol. |
7. | In the Select Loadcol dialog, select SIM from the list of load collectors and click OK. |
Submitting the Job
Step 7: Run OptiStruct
1. | From the Analysis page, enter the OptiStruct panel. |
2. | Click save as following the input file: field. A Save As browser window opens. |
3. | Select the directory where you would like to write the OptiStruct model file and enter the name for the model, 3bodies_dynamics_complete.fem, in the File name: field. The .fem filename extension is the suggested extension for OptiStruct input decks. |
The name and location of the 3bodies_dynamics_complete.fem file displays in the input file: field.
5. | Set the memory options: toggle to memory default. |
6. | Set the run options: toggle to analysis. |
7. | Set the export options: toggle to all. |
8. | Click OptiStruct. This launches an OptiStruct run in a separate command prompt (DOS or UNIX). |
The default files written to the directory are:
3bodies_dynamics_complete.html
|
HTML report of the analysis, giving a summary of the problem formulation and the results from the final iteration.
|
3bodies_dynamics_complete.out
|
OptiStruct output file containing specific information on the file set up, estimates for the amount of RAM and disk space required for the run, and compute time information. Review this file for warnings and errors.
|
3bodies_dynamics_complete.mbd.log
|
Log file containing the information on the joints and markers, simulation etc., which are specific to MBD analysis.
|
3bodies_dynamics_complete.mbd.xml
|
Model file in .xml format – solver intermediate input deck.
|
3bodies_dynamics_complete.h3d
|
Binary results file.
|
3bodies_dynamics_complete.mbd.mrf
|
Binary results file for plotting.
|
3bodies_dynamics_complete.stat
|
Summary of analysis process, providing CPU information for each step during analysis process.
|
Viewing the Results in HyperView
This section describes how to view the results in HyperView which will be launched from within the OptiStruct panel of HyperMesh.
HyperView is a complete post-processing and visualization environment for finite element analysis (FEA), multi-body system simulation, video and engineering data.
Step 8: Review a Contour Plot of the Displacement
1. | While in the OptiStruct panel of the Analysis page, click HyperView. |
If a window appears with a warning message, click OK.
The path and file name for 3bodies_dynamics_complete.h3d appears in the fields to the right of Load model and Load results. This is fine because the .h3d format contains both model and results data.
2. | The model and results are loaded in the current HyperView window. |
3. | Click the Contour panel toolbar icon . |
4. | Under Results type:, select Displacement(v). |
6. | Verify the Animate Mode is set to Transient, . |
7. | Click the Start/Pause Animation icon to start the animation. |
8. | The Animation Controls are in the panel next to the playback controls. |
9. | With the animation running, use the bottom slider bar to adjust the speed of the animation. |
10. | Click the Start/Pause Animation icon again to stop the animation. |
See Also:
OptiStruct Tutorials