Continue to Site

Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

  • Congratulations GregLocock on being selected by the Eng-Tips community for having the most helpful posts in the forums last week. Way to Go!

abaqus 2017/2019 SPH contact interaction: particles penetration 2

Status
Not open for further replies.

Quincylin

Computer
Nov 26, 2019
20
Hi. Im trying to simulate crushing of a porous material by using SPH in abaqus. I've imported the porous material from an input file, and the porous material is based on PC3D particles with an orphan mesh. I've also created a cylindrical rigid body indenter which acts as a piston. The rigid body is assigned with a reference node at its bottom face, which is given some initial velocity so that the indenter will press the porous material during the analysis.
The problem with my simulation is the following: instead of compressing the particles, the rigid body penetrates completely into the structure. I tried to create a node-based surface as suggested the abaqus documentation (Link[/url]https://abaqus-docs.mit.edu/2017/English/SIMACAEMODRefMap/simamod-c-nodebasedsurf.htm#simamod-c-nodebasedsurf-t-CreatingANodebasedSurface-sma-topic1), but when I ran the model I encountered the error: Node-based surfaces are not yet supported in Abaqus/CAE, and abaqus automatically converted the interaction setting to general contact with all*. I would be massively grateful if anyone can give me some pointers to solving this issue.
 
Replies continue below

Recommended for you

Could you attach a picture of your model ? Generally there are two options. Either define SPH analysis settings via input file so that limitations of Abaqus/CAE can be bypassed or (if the shape is not too complicated) create geometry from the orphan mesh and set everything in CAE. For the first option to generate particles from mesh you can create point masses at nodes and then change their definition in the input file to particle elements. For the second method you just have to mesh the part and enable conversion to particles with time criterion (particle generation at t=0). This can be done in Element Type window. General contact works with SPH too. However if you use the first method you have to define node-based surface for particles and specify it in contact inclusions for general contact. In case of the second method this is not necessary - Abaqus will automatically generate proper surfaces and account for particles in GC. That’s why this approach is recommended.
 
Thanks so much for the reply! Unfortunately I can't attach a picture because of my company's restrictions. But the porous structure of my model is quite irregular so I don't think the second method will work (I tried to create geometry from the orphan mesh but didnt succeed since the shape is too complicated).
 
Just created the point masses at nodes but still not sure how to convert them to particles in inp file. would be super grateful for any advice again!
 
Actually you can use the second method for orphan mesh as well since Assign Element Type options also works for these meshes. You just won’t be able to remesh the part and thus it will not be possible to change the arrangement of particles (only the number of particles per element can be changed in this case). But this is still the easiest way.

To create particles from point masses follow these steps:
- create node set with all nodes of the orphan mesh
- create point masses at all nodes of the orphan mesh
- in the input file remove the definition of solid elements
- change *Element, type=MASS to *Element, type=PC3D and define elset with these elements
- replace *MASS with solid section definition for this elset with proper material assigned and specify characteristic length as first item in data line (this is equal to half the length of the side of small cube associated with each particle)
- create node-based surface from the previously created node set
- add *Contact Inclusions to general contact definition, specify the aforementioned surface for particles and surface of body meshed with finite elements that will interact with particles
 
For your reference, here is a screenshot showing the particles penetration when the indenter moves
2019-11-27_2_vkbnkw.png
 
I tried the second method but when I clicked on element type in the cae this window popped up and I couldn't change anything
 
Isnt the first method the same as creating a node based surface directly from the node set of the PC3D particles (which is what I originally did)? The problem is that abaqus cae does not support node-based surface when the inp file is imported and it automatically converts the node surface into a node set. The general contact setting just doesnt take the corresponding node set into account and hence the particles still penetrate into the rigid shell...
 
I thought that your original orphan mesh consists of solid elements and you want to create particles from them. But if you already have particle mesh then you have to follow the steps described in my previous post with some small changes (omit the part regarding solid mesh). So most of the setup must be done in the input file where you can define node-based surface.
 
The problem is that even after I’ve defined a node based surface in the inp file (*surface, type=node, name=surf, nodeset) the cae converted it back to node set with the following error: node based surface is not supported in abaqus cae.
I then tried to bypass abaqus cae by running the job from the command line and then view the odb file in the abaqus viewer. But the output file didn’t run in the viewer...
 
That’s right, you have to omit CAE when you define node-based surface in the input file. So just run the analysis from command line, as you say. When you do this are there any errors generated ? Aren’t the analysis files empty ? And does it say completed anywhere (in the command line or analysis files) ? There might be some error in the definition. Make sure that all necessary definitions are specified in the input file (step, material, section and so on).
 
Hi thank you so much for the advice! I've modified the code and tried to run it from the command line. Everything was well until the step when the indenter started touching the particles, where the following error suddenly popped up:
Error: explicit.exe / rank 0 / thread 0 encountered a system exception 0xC0000005 (EXCEPTION_ACCESS_VIOLATION)
Any idea how to solve it?
 
Apparently it’s a system error caused by Abaqus trying to access protected memory adress. This normally shouldn’t happen. Do you use parallel processing for this job ? Make sure that there are no errors in your input file.
 
I've checked the dat and sta file and I don't see any error. No but am I supposed to use parallel processing? Would parallel processing mitigate the error?
 
Conversely, I thought that parallel processing might be the reason (of course this shouldn’t happen anyway). Check if other jobs result in the same error (use some simple test job with similar settings).
 
Ok let me try out a few simpler jobs and see how they go. Thanks!!!
 
things are working fine now, thanks a lot for the help!
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor