A case study with the "Qonvergence Quartet"
Some Background
If you do not know the example, see here:
If you do not know the Qonvergence Quartet, see here:
https://r1132100503382-eu1-3dswym.3dexperience.3ds.com/#community:39/post:vBkAcf1wS-KhdT73X4SJCg
In my opinion, there are at least two issues with this example, so I thought it might be a good case for my Qonvergence Quartet. What are the issues?
- Non-default method for suppressing hourglass modes
- Non-default value for stabilization of rigid body motions
There are two reasons why I am so strictly in favour of using the defaults:
- The defaults in Abaqus draw from far more experience than an individual analyst typically has and thus are normally very well chosen to work robustly for an extremely wide range of problems.
- Many analysts get lost in the forest of tweaking options instead of stepping back from the problem and thinking along first principles (mechanics, physics, mathematics).
See here for my rules of thumb:
https://r1132100503382-eu1-3dswym.3dexperience.3ds.com/#community:39/post:QI0p2CePRd6_No83IbEObg
Restoring the Defaults
In the following, I will explain my changes by means of the .inp file (you can get the original one by clicking on "Write Input" in the "Job Manager"). This saves me the trouble of generating tons of screen shots. Also, you might learn a thing or two by following the links from the Keywords Guide to the Abaqus/CAE Guide. All changes could as well be done interactively in the GUI.
So let us first get rid of
*Section Controls, name=EC-1, DISTORTION CONTROL=NO, hourglass=ENHANCED 1., 1., 1.
along with its reference on the *SOLID SECTION option. This is not only "default fetishism", because the documentation clearly advises against this in cases of plastic bending:
Although generally beneficial, this may give overly stiff response in problems displaying plastic yielding under bending.
Our next victim of Occam's Razor will be:
*Contact Controls, master=Punch-1.PunchSurf, slave=BlankTop, stabilize=0.001
And while you are at it, delete
*Print, contact=YES, solve=NO *Monitor, dof=2, node=RefPunch, frequency=1
as well: The former pollutes the .msg file with lots of information that can be easier assessed using the "Job Diagnostic" dialog, the latter clutters our canvas in Abaqus/CAE with unwanted viewports.
Does it still run to completion? Sure it does.
You will notice from the .sta file that 0.05 is too large for the initial increment in step 2, while perhaps we can use an even larger initial increment in step 1.
Using the Qonvergence Quartet
Now let us apply the changes as recommended by my Qonvergence Quartet. We will start with the "C" of "CUND" (my mnemonic for remembering the four ingredients as well as the great German philosopher, who is spelled slightly differently) and replace
*Contact Pair, interaction=Fric, type=SURFACE TO SURFACE BlankBot, Die-1.DieSurf *Contact Pair, interaction=Fric, type=SURFACE TO SURFACE BlankTop, Holder-1.HolderSurf *Contact Pair, interaction=NoFric, type=SURFACE TO SURFACE BlankTop, Punch-1.PunchSurf
with the general contact version:
*Contact *Contact Inclusions, ALL EXTERIOR *Contact Property Assignment , , Fric Punch-1.PunchSurf , BlankTop , NoFric
By the way, starting out this way instead of fiddling with contact pairs would have saved us from having to define a couple of surfaces in the first place as well. Next come "U" and "N", so we add
unsymm=YES
to both *STEP options ("nlgeom=YES" is already present).
Finally, the "D" for dynamic analysis procedures. Replace
*Static 0.05, 1., 1e-05, 1.
by
*Dynamic,application=QUASI-STATIC 0.3,1.,1e-05
in the first step and by
*Dynamic,application=QUASI-STATIC 1e-05,1.,1e-09
in the second step. You can see that I have tuned the initial increments as announced above: In the first step not much is happening, the blank holder is compressing the blank somewhat. In the second step, however, the punch punches (ah, that is where the name comes from!) the blank right at the beginning, so it makes sense to use a rather small initial increment and also give Abaqus some leeway for cutting back the increment size even more in case further problems lurk in the depths of the forming process, which is expected to result in quite severe plastic strains and multiple attempts of the solver (although going down all the way to 1e-9 will probably not be needed). Since we are now in the dynamic domain, we need to add
*Density 7800.,
to our steel material, of course.
Does it still run to completion? Sure it does.
Benefits
- Better results for the plastic bending
- Less modeling work for surfaces and contact
- Avoiding reruns otherwise required for tweaking contact stabilization parameters
- No need to check energy plots to ensure that contact stabilization is not overdone. That is why the original model used "stabilize=0.001" to scale down the damping by a factor of 1000, so indeed in the original model a non-default value was necessary.
Further comments
- In the prototyping phase (which is brief, the Qonvergence Quartet often results in getting it right on first try) I would use an output frequency of 1 (i.e., every increment) in order to have more information available if problems occur. It is so frustrating having to rerun an aborting analysis unchanged except for more output ...
- Once the prototype analysis runs, a mesh refinement study is in place. My gut feeling is to refine the mesh to 8 elements through the thickness and a smaller aspect ratio (say, 2) to better capture the radii of the tools.
Does it still run to completion? Sure it does.
Summary
If you have carefully worked through these explanations with Abaqus/CAE or the .inp file in your favourite ASCII editor, along with your favourite browser showing the Keywords and Abaqus/CAE guides, my expectation is that you will have learned something useful. Hey, even I did.
P. S.: No YouTube tutorials available, see here for the rationale:
https://r1132100503382-eu1-3dswym.3dexperience.3ds.com/#community:39/post:Db-h0osMSBixvwzTskIerg
P. P. S.: Generation YouTube almost certainly did not get this far down in my post. TL;DR ... (-: