A 360° view of simulation results might help to produce an overall view of the deformed material body and the distribution of field output. This note documents the implementation of 360° view of a deployed airbag using Abaqus Python script.
The annotation tool in Abaqus/CAE Visualization module only supports creating annotation at canvas coordinates rather than model coordinates. If we want to annotate a node or an element with some text, for example their numbering label, during the course of their deformation, the built-in tool fails. This post documents a workaround that uses the Abaqus Python script to realize the above demand. Hope it can be helpful to analysts who meet a similar problem.
GIF may be an ancient format but occasionally animating simulation results in GIF is effective. A typical way in Abaqus to generate an animation of simulation results in GIF would be to transform the AVI format animation, by default produced, to GIF using some transformation tools, such as EZGIF. This note explores an alternative workflow that exploits Abaqus Python scripting to save a time sequence of images from Abaqus and generate animation in GIF by a Python library imageio. The benefit of this workflow is some special effects can be implemented, besides the format transformation. For example, the workflow allows us to add and change annotations or change viewpoint and view angle in the animation. I hope this workflow can overcome some limitations of Abaqus’ default animate tool and give analysts a bit more freedom to better express their visualization intentions.
Ensuring unit consistency of input parameters in conducting a finite element analysis is critical, because mistakes in it will essentially alter the physical problem one’s trying to study, let along the rationality of outputs that would be produced. As an analyst, I always feel uncertain from multiple sources at the beginning of modeling a new problem, unit consistency is one of the first few certainties that can be built and stepped on, so I can safely move onto more essential parts of problem solving.
Taking unit consistency as a procedural step is sufficient for practicality, yet thoroughly knowing its theoretical root serves as the foundation of a good engineer because it reveals how our current framework of description of physical quantities is formed. I will review this part in the first section of this note. The second section summarizes the practical procedure to ensure unit consistency in solid mechanics simulation. You may comfortably skip to the second section directly for practical reasons.
Solid mechanics simulations are mainly based on the finite element method that adopts the Lagrangian description—in which computational mesh is carved in the material body and deforms with the body. In post-processing, analysts naturally form their interpretation from results at Lagrangian mesh, for example, displacements and reaction forces at nodes, stresses and strains at integration points, nodes, or centroids of elements. Those results are attached to specific material points through Lagrangian mesh and are called results in Lagrangian representation. Investigating Lagrangian results satisfies analysts’ needs in solid mechanics problems most of time.
But in some dynamic or quasi-static problems in which solid material behaves like a flow, we may occasionally be more curious about results at some specific spatial locations rather than material points. For example, in a roll-to-roll process where a web travels along a designed path line for some functional processing from a unwinding roll to a rewinding roll, engineers may specifically be interested in the tension, traveling speed, temperature, or other physical quantities of web at some spatial locations such as some rollers since they may serve as parameters of control system or relate to product quality. Results of material expressed at spatial points are called results in Eulerian representation.
Abaqus has the ‘probe’ function in the visualization module which enables users to approximately get results at spatial locations through Lagrangian mesh in individual solution frame. However, it does not provide a convenient way of extracting the time history of results at spatial locations throughout the whole simulation. Yet, the time history of Eulerian results in these simulation is more valuable as it reveals when and how the steady state is achieved, which some times exposes physical information about the characteristics of the problem.
This project develops two general-purpose Abaqus Python scripts based on two methods that can automatically extract the time history of field outputs at some spatial location of interest. The developer wishes the scripts can save some labor and willpower of analysts so their energy can be reserved for pure problem solving rather than tedious external processing.