You Try It! Beam Impact Co-simulation For more information (including a video demonstration), see the associated SIMULIA e-Learning Resource https://swym.3ds.com/#post:13030
Note that this exercise appears in several SIMULIA training classes; classes; to learn more about Abaqus/Standard Abaqus/Standard to Abaqus/Explic Abaqus/Explicit it co-simulation co-simulation consider attending any of the following classes: Abaqus/Explicit: Advanced Topics Substructures and Submodeling with Abaqus Crashworthiness Analysis with Abaqus For full class descriptions and registration information visit 3DS.COM/SIMULIA
This exercise was written using Abaqus 6.12
Goals When you complete this exercise, you will be able to:
Lock and exclude part instances Define co-simulation interactions Create and submit a co-execution View co-simulation results Include a substructure in the Abaqus/Standard portion of a co-simulation
Introduction In this exercise you will use the Abaqus/Standard to Abaqus/Explicit co-simulation technique to analyze a simple beam impact, shown in Figure W6 – 1. 1. The tip of the beam, where the impact occurs, will be modeled with Abaqus/Explicit. Abaqus/Explicit. The root of the beam will be analyzed with Abaqus/Standard.
© Dassault Systèmes, 2012
www.3ds.com/simulia-learning www.3ds.com/simulia-learnin g
2
Rigid impactor
Co-simulation region
Fixed end
Portion to be modeled with Abaqus/Standard
Portion to be modeled with Abaqus/Explicit
Figure W6 –1 Flexible beam impact model The ultimate goal of this exercise is to model the Abaqus/Standard portion of the co-simulation using a substructure. You will first analyze the beam impact co-simulation without the substructure. After you have studied the results of this initial co-simulation, you will modify the model so that the Abaqus/Standard portion of the co-simulation (i.e., the beam root) is mod eled with a substructure.
Preliminaries 1. Extract the setup file required for this workshop using the abaqus fetch utility: abaqus fetch job=ws_cosim_beamImpact.py where abaqus is the command you use to run Abaqus. 2. Run the script ws_cosim_beamImpact.py using the following command: abaqus cae startup=ws_cosim_beamImpact.py The above command creates an Abaqus/CAE database named beamImpact.cae in the current directory. This database contains a conventiona l model for the beam impact named beamImpact-complete. This model analyzes the impact using Abaqus/Explicit alone. Submit the job beamImpact-complete and animate the results. The final deformed shape of the model is shown in Figure W6 – 2.
Figure W6 –2 Beam impact simulation: final deformed shape
© Dassault Systèmes, 2012
www.3ds.com/simulia-learning
3
Co-simulation analysis without substructuring In this section you will convert the Abaqus/Exp licit beam impact analysis into a co-simulation analysis. 1. Copy the model beamImpact-complete twice to create
a model named beamImpact-cosim-std for the Abaqus/Standard portion of the co-simulation and a model named beamImpact-cosim-xpl for the Abaqus/Explicit portion of the co-simulation.
2. In the Abaqus/Standard model beamImpact-cosim-std , link the beam tip and impactor part instances to their equivalent part instances in the Abaqus/Explicit model. Exclude these two instances from the Abaqus/Standard analysis. Detailed instructions are provided below: a. In the beamImpact-cosim-std branch of the Model Tree, expand the instances list in the Assembly container. b. Use [Ctrl]+Click to select the instances Impactor-1 and beamTip-1. c. Click mouse button 3 on either part instance and select Link Instances from the menu that appears. d. In the Linked Instances dialog box, select beamImpact-cosim-xpl as the parent model for both instances and activate the option to exclude the child instances from the simulation. e. Click Link to link and exclude the instances. Abaqus produces a warning that the parts associated with the linked instances will also be linked. f. Toggle off the option to show this warning the next time and click OK. Icons appear in the Model Tree to indicate the instances have been excluded ( ) and linked ( ). The excluded instances are colored dark gray when the assembly default color coding is used. Instances that are linked but not excluded are colored light gray by default. 3. In the Abaqus/Explicit model beamImpact-cosim-xpl , link the part instance representing the beam root (beamRoot-1) to its equivalent part instance in the Abaqus/Standard model and exclude the beam root part instance from the Abaqus/Explicit simulation. 4. In the Abaqus/Standard model beamImpact-cosim-std , replace the existing explicit dynamic step with an implicit dynamic step (in the Model Tree, click mouse button 3 on Step-1 and select Replace from the menu that appears). Define the step with the following properties: a. Time period: 0.3 s b. Nlgeom: off (the behavior of the root of the beam is linear) c. Maximum number of increments: 10000 d. Initial increment size: 0.01 e. Half-step residual tolerance: 50
© Dassault Systèmes, 2012
www.3ds.com/simulia-learning
4
5. In the Abaqus/Standard model beamImpact-cosim-std , suppress the following items since they are applied to the excluded part instance. Tip: To suppress an object, click mouse button 3 on the object in the Model Tree and select Suppress from the menu that appears. a. Suppress the beam tip history output request named H-Output-2-tip. b. Suppress the impactor initial velocity predefined field named impactor velocity. c. Suppress the impactor rigid body constraint named rigid body - impactor . d. Also, suppress the tie constraint named tie beam, which ties the two halves of the beam together for the pure Abaqus/Explicit simulation. For this simulation the cosimulation interaction will connect the two halves of the beam. 6. Similarly, suppress the following items in the Abaqus/Explicit model beamImpactcosim-xpl : a. Suppress the boundary condition named fix end. b. Suppress the tie constraint named tie beam. 7. In the Abaqus/Explicit model, create a lock-step type co-simulation interaction at the Abaqus/Standard to Abaqus/Explicit interface. a. In the beamImpact-cosim-xpl model, hide part instance beamRoot-1 (in the Model Tree, click mouse button 3 on the instance name and select Hide from the menu that appears). b. In the beamImpact-cosim-xpl branch of the Model Tree, double-click Interactions. c. In the Create Interaction dialog box, select Step-1 as the interaction definition step and choose Standard-Explicit Co-simulation as the interaction type. Click Continue. d. In the prompt area, choose Surface as the region type. e. Select the co-simulation surface on the beamTip-1 part instance (refer to Figure W6 – 1 if necessary). Click Done in the prompt area. f. In the Edit Interaction dialog box, choose the incrementation option to lock the Abaqus/Explicit and Abaqus/Standard time steps. This will force Abaqus/Standard to use the same time increments as Abaqus/Explicit. Note: Do NOT specify a coupling step period; this time period will dictate the Abaqus/Explicit time increment size which could result in an unstable Abaqus/Explicit solution if the specified increment size is too large. g. Click OK to create the co-simulation interaction. h. Resume visibility of part instance beamRoot-1 (in the Model Tree, click mouse button 3 on the instance name and select Show from the menu that appears). 8. Similarly, create a lock-step type co-simulation interaction in the Abaqus/Standard model. 9. Create a co-execution for the beam impact simulation. a. In the Model Tree, double-click Co-executions. b. In the co-execution editor, accept Co-execution-1 as the co-execution name.
© Dassault Systèmes, 2012
www.3ds.com/simulia-learning
5
c. Select beamImpact-cosim-xpl and beamImpact-cosim-std as the models to be analyzed during the co-execution. d. In the Precision tab, choose Double – analysis only as the Abaqus/Explicit analysis precision. e. Click OK to create the co-execution. 10. Submit the co-execution. a. In the Model Tree, expand the co-executions container, click mouse button 3 on Co-execution-1, and select Submit from the menu that appears. b. To monitor the co-simulation analysis jobs, expand the Jobs container under Coexecution-1.
Postprocessing the co-simulation results Co-simulation analyses result in two separate output database (.odb) files, one for the Abaqus/Explicit portion of the analysis and one fo r the Abaqus/Standard portion of the analysis. The overlay plot technique can be used to view both portions of the analysis simultaneously. 11. Once the co-execution has completed, open both output database files simultaneously and have Abaqus automatically combine them into a single overlay plot, as follows: a. From the main menu bar, select File→Open. b. In the Open Database dialog box, set the file filter to Output Database. c. Select both output database files from Co-execution-1. d. Toggle on Append to layers . e. Click OK. Abaqus plots the results from Abaqus/Standard and Abaqus/Explicit in a single overlay plot. 12. Create a deformed shape plot of the results at the end of the simulation. At this point you may notice that the beam does not line up exactly at the co-simulation interface. With the lock-step integration scheme the displacement of the nodes on either side of the co-simulation interface should be identical. The discrepancy is due to the fact that nonlinear geometric effects were activated for the Abaqus/Explicit portion of the analysis, but not the Abaqus/Standard portion. Consequentl y, Abaqus automatically scales the displacement of the Abaqus/Standard portion of the analysis (so small displacements will be visible), but not the Abaqus/Explicit portion. For the co-simulation interface to match, the deformation scale factor for both layers should be the same. 13. Using the common plot options (Options → Common), set the deformation scale factor to a uniform value of 1. Now both sides of the co-simulation interface line up. Note that, by default, changes to plot options are applied to all layers simultaneously. You can view the list of overlay plot layers and control the layer display options using th e Overlay Plot Layer Manager (View→Overlay Plot ). 14. Create a contour plot of Mises stress in the beam. The overlay plot legend only shows the contour values for the current layer. In general, the default contour limits will not be the same for both portions of the co-simulation. © Dassault Systèmes, 2012
www.3ds.com/simulia-learning
6
15. Use the contour options (Options → Contour ) to set the contour maximum to 5000 Pa and the contour minimum to 0 Pa. 16. Animate the results. Mises stress contours at the end of the analysis are shown in Figure W6 – 3.
Figure W6 –3 Mises stress at the end of the impact simulation
Co-simulation analysis with a substructure Next you will convert the Abaqus/Standard portion of the beam into a substructure. To enhance the dynamic behavior or the substructure, you will augment its response by including some generalized degrees of freedom associated with the dynamic modes. To do this, a frequency extraction step must be used to determine the dynamic modes of the structure before the substructure is generated. 17. Copy the model beamImpact-cosim-std to a model named beamImpact-subgen. 18. In the substructure generation model beamImpact-subgen , create a frequency extraction step (this is a linear perturbation procedure) named frequency after the step named Initial. 19. In the step editor, request 20 eigenmodes using the Lanczos eigensolver. In this example, the nodes that will be retained during the substructure generation will be fixed during the frequency extraction (i.e., fixed -interface eigenmodes will be used in this substructure). 20. In the frequency extraction step, create a boundary condition to fix the co-simulation interface end of the beamRoot-1 part instance; these nodes are included in the set retained-nodes . By default, this boundary condition will not be propagated to subsequent steps. This is desirable since boundary conditions cannot be applied to retained nodes during substructure generation. 21. Replace the implicit dynamic step with substructure generation step (this is a linear perturbation procedure).
© Dassault Systèmes, 2012
www.3ds.com/simulia-learning
7
22. In the Basic tabbed page of the step editor:
Enter 1 as the substructure identifier.
Accept the default setting to evaluate the recovery matrix for the whole model so that results within the substructure can be extracted and v isualized after the substructure is used. 23. Because the substructure will be used in a dynamic analysis, use the following settings in the Options tabbed page of the step editor:
Toggle on Compute reduced mass matrix . Toggle on Specify retained eigenmodes . Include all 20 extracted modes (specified by range).
24. Rename the step to substruct-generation. 25. In the substructure generation step, apply a Retained nodal dofs boundary condition to the set retained-nodes. Retain all of the degrees of freedom. 26. Create a job named beamImpact-subgen for the beamImpact-subgen model. 27. In the Model Tree, click mouse button 3 on the job beamImpact-subgen and select Submit from the menu that appears. Note: If you receive a warning that node and element label conflicts between part instances will result in renumbering, click Yes to proceed with the job
submission. 28. Once the analysis completes, open beamImpact-subgen.odb in the Visualization module and plot the mode shapes of the extracted eigenmodes. Now that the substructure has been generated, you will use the substructure in the cosimulation analysis. 29. Copy the model beamImpact-cosim-std to a model named beamImpact-sub-cosim. std 30. Import the substructure part (File→Import→Part).
In the Import Part dialog box, set the file filter to Substructure and select . beamImpact-subgen_Z1.sim In the Create Substructure Part dialog box, name the part beamRoot-sub and accept the default selection of beamImpact-subgen.odb as the ODB file.
31. In the model assembly, replace the instance named beamRoot-1 with an instance of the substructure part beamRoot-sub (Instance→Replace ). 32. Create a node set named subNodes containing the nodes on the interface to the explicit dynamics model. 33. Edit the co-simulation interaction definition to use the node set defined for the substructure nodes as the co-simulation region. 34. Suppress the boundary condition named fix end. 35. Request preselected field output so that the results will be recovered within the substructure. Request the output at 10 evenly-spaced intervals.
© Dassault Systèmes, 2012
www.3ds.com/simulia-learning
8
Tip: In the Edit Field Output Request dialog box, select Substructure as the domain
and then click . In the Select Substructure Sets dialog box that appears, expand the list for the substructure and select Entire Substructure . The co-simulation region type must be consistent in both the Abaqus/Standard and Abaqus/Explicit models. Therefore, to run the co-simulation with the Abaqus/Standard substructure, the co-simulation region for the Abaqus/Explicit portion of the model must be based on nodes. 36. In the beamImpact-cosim-xpl branch of the Model Tree, expand the Interactions container and double-click the co-simulation interaction. 37. In the interaction editor, click
.
38. In the prompt area, click Node Region as the co-simulation region type. 39. In the Region Selection dialog box, choose cosim-xpl as the node set for the cosimulation interaction (if the Region Selection dialog box is not visible, click Sets in the prompt area). 40. In the Edit Interaction dialog box, click OK. 41. Create a co-execution for the beam impact simulation with substructures. a. In the Model Tree, double-click Co-executions. b. In the co-execution editor, accept Co-execution-2 as the co-execution name. c. Select beamImpact-cosim-xpl and beamImpact-sub-cosim-std as the models to be analyzed during the co-execution. d. In the Precision tab, choose Double – analysis only as the Abaqus/Explicit analysis precision. e. Click OK to create the co-execution. 42. Submit the co-execution. 43. Once the analysis completes, postprocess the results as before. Note: Substructure results are written to their own output database files. Since the
Abaqus/Standard simulation consisted of only one substructure, you can p ostprocess that substructure’s output database file directly. If the analysis contained more than just a single substructure, you could use the abaqus substructurecombine utility to combine the results of all the substructures as well as any portion o f the Abaqus/Standard simulation not modeled with substructures.
© Dassault Systèmes, 2012
www.3ds.com/simulia-learning
9
Also note that if you have used a single viewport for the entire exercise, then the overlay plot layers for this substructure co-simulation analysis will be added to those of the first co-simulation without substructures. You can use the Overlay Plot Layer Manager (View→Overlay Plot ) to deactivate the visibility of the results of the earlier analysis.
Additional exercises 44. Run the co-simulation with the subcycling integration scheme. Do you notice a difference in the results? (Tip: Take a close look at the displacements at the cosimulation interface. Has some drift occurred?) What happens if you reduc e the maximum Abaqus/Standard time increment size? 45. In this example, the beam is modeled with linear solid elements. In the co-simulation without the substructure, the Abaqus/Standard and Abaqus/Explicit co-simulation interaction regions were both surfaces. In this situation (co-simulation surface regions defined on linear elements) the co-simulation region meshes can be dissimilar. Refine the mesh on one of the beam halves and re-run the co-execution. 46. Modify the dimensions of the Abaqus/Standard and/or Abaqus/Exp licit portions of the beam. Observe how the linked instances are automatically updated in both the Abaqus/Standard and Abaqus/Explicit models. 47. Recreate the substructure without any retained eigenmodes, and then rerun the cosimulation. Compare the results to the original simulation. At the start of the analysis the results of the two simulations are very similar, since it takes some time for the impactinduced stress wave to reach the Abaqus/Standard portion of the beam. However, later in the simulation you will notice differences in the results, due to the poor dynamic response of the substructure without any retained eigenmodes.
Note: A script that creates the complete model described in these instructions is available for your convenience. Run this script if you encounter difficulties following the instructions outlined here or if you wish to check your work. The script is named ws_cosim_beamImpact_answer.py
and is available using the Abaqus fetch ut ility.
© Dassault Systèmes, 2012
www.3ds.com/simulia-learning