Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

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

Creating contours for a modified J-integral

Status
Not open for further replies.

pettervu

Mechanical
Jul 29, 2008
10
0
0
SE
Hi everyone,

I am trying to implement a modified version of the J-integral into ABAQUS, and as I am quite new to the program I have loads of problems. :-(

I thought the best way to go about doing this would be to make a Python script, as I have no experience with Subroutines or Fortran.

The first problem I have stumbled across is how to create the contours on which the J-integral should be calculated.

The first contour or domain should consist of the elements closest to the crack tip, and the subsequent domains should consist of the previous elements as well as the once surrounding them (so that each domain grows with a ring of element).

At first I thought I should do them as Sets in the pre-processing step, but this turned out to be difficult as I couldn't find a way to choose single elements.

Another, better way would be to create the contours in the post-processor. But as I understand it you can't create Sets out of the odb-file, is this correct? Therefore I thought it might be possible to use display groups, but I am uncertain of how these work and if you can use them to extract data.

Does anyone have any good tips on how to solve this problem?
 
Replies continue below

Recommended for you

Hi,
it is possible to define sets prior to the analysis. I am not sure which pre-processor that you use, but if you cannot find away of doing it in the pre-processor then you can always define your sets directly in the input file that you send to the solver;

*ELSET,ELSET=<name of set>
el.1, el.2,... ...,el.n

If you use Abaqus Viewer, I am pretty certain that you can define sets there too, after the analysis is done. I dont use A/viewer very much but check the "canvas" button i think it is somewhere there you can define your sets.


Hop this helps a little bit.

Live Long And Prosper !

 
Thank you for your reply truckcab!

For pre-processing I use Abaqus CAE, and I use Viewer for post-processing.

I know how to make sets out of edges, faces and vertices in the CAE. But I'm afraid that doesn't help me atm.

I would like to find a way to assign specific elements to different sets which I can't seem to find a way for in either the pre-processing or post-processing step.

I might be stupid, but I'm afraid I don't know which button you refer to as the "canvas" button. Could you please explain which one you mean.
 
Hi again,
as I very seldom use viewer myself (actually I dont know if its installed where I work right now) I am not that driven in that software.

Anyhow, you can define element sets in your input file using the syntax in my previous post *ELSET, ELSET=BLABLA etc. I am absolutely sure that you can do that from within CAE but I have no idea how you do it since I have not been working with CAE. One thing you can do is to establish an element set according to my example directly in an input file that you have printed from CAE and then read the file into CAE. Then you ought to find this set in the program somewhere, most likely at the same place where you are supposed to define such sets. This is a quite tideous manner to do it (but an alternative to studies in the documentation), but it will work Im sure.

On monday, Ill see if i have viewer at work and com back to you with the real name of the button i referred to as the "canvas" button.


 
Unfortunately, what I recalled as a mean to make groups in Viewer was the possibility to make "display groups". Anyway, I think you can use these to plot/print results only for those elements on screen (in the active display group). I dont think, however, it is possible to save such groups to the db for later use (the version I checked was pretty old so it might be possible in newer versions of the sw.).

In my opinion it is the best way to use the *ELSET command. Groups created in that manner are visible in the viewer.

 
Thank you for your help truckcab!

I've found the display groups as well and have been playing around with them a bit in order to understand how they work. I can't say I understand them completely yet, but I at least have some insight as to how they work.

There have been some changes in my work and I might not have to create my own post processor after all. So I have no urgent need to understand how to do this anymore.

Again thank you for your help and I hope you haven't gone through too much trouble truckcab. It has at least been very interesting and I feel I have learned alot.
 
Pettervu,

Are you creating your geometry within Abaqus? If so, then just add a few extra lines around your crack tip and expected direction of propagation to define areas where you would like to use your cohesive elements. Then you can create sets of these areas and apply different element types as necessary.
 
Thanks for your tip zubaj,

Yes I'm using Python scripts in the CAE. I would preferably have a method that doesn't require any alterings to the main model. I was planning to make a routine that works with any crack model.

I've found out that you acctually can find the node sets ABAQUS creates when calculating J-integrals. Didn't think this was possible, but they're called:

"H-OUTPUT-1_CRACKNAME_J__PICKEDSET4_Contour_01"
hist output | crack | | crack front | contour
name | name | | node set | no.

Didn't think it was possible to get them from ABAQUS, but it acctually was. So this problem is hopefully solved. :)
 
Status
Not open for further replies.
Back
Top