Goal of this tutorial
Application of the Advanced User Settings to realize unconstraint rotational degrees of freedom
Modification of remote loads to RBE2 ties
Training:
Relevant data for this tutorial:
Step 1: Start MSC Apex Generative Design
The program starts and you can directly create your optimisation model
Step 2: Model generation
You can either create the geometry directly in MSC Apex Generative Design or import already existing files. You can import for example .xb, .xt, .step, and .sldprt files into the program.
Import/create the Design Space including the Interfaces (Non-Design Spaces) in MSC Apex Generative Design as one solid.
Open the Optimization Tools to select the imported Geometry as the Design Space.
Choose the material AlSi10Mg in the Materials editor and assign it to the Design Space. In this case the material behaviour is Isotropic.
The Tension Strength is the maximum allowable stress for the material and is set to 460 MPa.
Step 3: Definition of boundary conditions
Creation of the load
On the middle cylinder surface a direct load is created.
Name | Force/Moment/Pressure/Gravity | Direction | Value in N/Nmm |
---|---|---|---|
Force 1 | Force on faces | z | -5000 |
Creation of dummy loads to be modified to displacement constraints
Currently, the creation of displacement constraints with RBE2 ties and rotational degrees of freedom isn’t supported from the graphical user interface. To realize it, dummy loads are created and modified by the Advanced User Settings.
On the outer cylindric surfaces two dummy loads are created. These dummy loads need to have a load value in the direction which will be constraint afterwards.
Name | Force/Moment/Pressure/Gravity | Direction | Value in N/Nmm |
---|---|---|---|
Force 2 | Force on faces | x | 1 |
Force 3 | Force on faces | x | 1 |
In Step 6 the dummy loads will be modified to displacement constraints with a RBE2 tie and unconstraint rotational degrees of freedom.
Step 4: Interface Creation
Interfaces have to be created for every functional surface - so every surface where a boundary condition is applied to. With this Tool an offset to the inside with the input “Non-Design Space Thickness” and an offset to the outside with the input “Machining Allowance” is created. The Offset Distance is expanding the Interface to the set value to create material on front faces.
All surfaces on which a boundary condition is applied can be selected directly as an interface with the “Select Faces from Loads and Boundary Conditions” button. The Boundary Condition surfaces will be highlighted and can be selected/deselected. With “Apply” the Non-Design Space Thickness, Machining Allowance and if available Offset Distance values will be applied to the selected surfaces.
In this case a Non-Design Space Thickness of 3 mm, a Machining Allowance of 1 mm and an Offset Distance of 3 mm is entered. Via “Automatically create interfaces from Loads and Boundary conditions” the interfaces are created automatically for all 3 cylinders.
Note: the Interface Offset (usually displayed in red) is not visualized due to a limitation. The correct value will be considered in the optimisation.
Step 5: Definition of load cases
The next steps are defined in the Studies area.
All boundary conditions must be assigned to the specific load cases, which are defined as Events. The number of Events can be changed by adding/deleting Events to the GD Scenario. The assignment of the boundary conditions to the Events can be made in the Loads & Constrains Window. The already created loads and constraints that concern the Design Space are listed in this window and can be activated for each Event individually.
Event 1: Force 1, Force 2, Force 3
Step 6: Modifying the dummy loads to displacement constraints (with RBE2 ties)
With the Advanced User Settings the dummy loads (Load 2, Load 3) are modified to displacement constraints.
Dummy load Force 2 is changed to a RBE2 discrete tie. Furthermore, the translational degrees of freedom in all 3 directions and the rotational degrees of freedom around the y- and z-axis are constraint. The rotation around the x-axis is free.
The same is done for the second dummy load. For this, the translational displacement in x-direction is free as well.
connector.ModelLoadEvent_Force_2_Force.type=RBE2 connector.ModelLoadEvent_Force_3_Force.type=RBE2 |
Step 7: Definition of optimisation parameters and Generative Design Settings
The optimisation parameters are selected in the Studies Area as well.
Manufacturing Method: Generic AM
Failure Criteria: Von Mises
Safety Factor: 35
Strut Density: Medium
Shape Quality: Balanced
Step 8: Starting the optimisation in the command line and visualize the results
Because the graphical user interface does not support the displacement constraints with rotational degrees of freedom yet, the optimisation has to be executed in the command line.
Therefore, the optimisation scenario is exported by a right click on the scenario to a freely selectable folder.
Inside the exported folder, all geometry information and the input configuration file for the optimisation are stored. A PowerShell or command line has to be opened here.
Inside the installation folder of MSC Apex the “runGD_Engine-bat” has to be executed with the additional command (-c) for the configuration file.
& 'C:\Program Files\MSC.Software\MSC Apex\...\runGD_Engine.bat' -c .\RotationalDoF.json
The optimisation starts and all optimisation results will be saved in a subfolder.
Step 8: Importing the results back & visualisation
The optimisation results can be imported back into the graphical user interface. Therefore, the Import Generative Design Results option is used. The post processing can be accessed over the new imported scenario.
Inside the Post-Processing the von Mises stress and the displacements are visible for all iterations and for every Event
In the picture below the displacement in z-direction is displayed
With the Mission Switch the optimised result can be analysed with MSC Apex / Nastran. The following gif shows the rotation in the created displacement constraints.
The complete MSC Apex Generative Design project with all results can be downloaded here:
You might also be interested in these tutorials:
Add Comment