Utilizing Element Birth and Death for Contact Elements in Workbench Mechanical

In case you missed it, Doug Oatis wrote a Focus blog entry on general use of element birth and death in ANSYS Workbench back in November, 2011, which you can access here: 
http://www.padtinc.com/blog/post/2011/11/29/Sifting-through-the-wreckage-Element-Birth-and-Death-in-Workbench.aspx

This new article narrows the focus to contact elements specifically.  We recently had a tech support question about how to utilize element birth and death for contact elements in ANSYS Workbench.  So, a simple example was put together and is explained below. 

The main idea is that we need multiple load steps (labeled Steps in Workbench) in order for elements to change status from alive to dead or vice versa.  We also need a way to select the elements so that we can identify which ones will be killed or made alive.

Keep in mind that ANSYS Workbench Mechanical is a newer pre- and post-processor for good old ANSYS Mechanical APDL.  That means we can insert ANSYS commands into the object tree in Workbench Mechanical and those commands will be executed when the solver reads the batch input file that is created when we click the solve button.

So, we need at least one set of Mechanical APDL commands to identify which contact/target pairs or contact regions we need to kill or make alive.  In our example we’ll focus on killing elements but the same principal applies to making killed elements come alive.  Note that killing elements does not remove them from the model.  Rather, it reduces their stiffness by a default value of six orders of magnitude so that effectively they do not participate.  The Mechanical APDL commands needed are for the contact/target pair identification are scalar parameter commands. 

ANSYS Workbench employs some ‘magic’ parameter names that automatically plug in the integer pointers used behind the scenes for identification of element types and material properties.  In the case of contact and target elements, these parameter names are ‘cid’ for the contact elements and ‘tid’ for the target elements.  Thus, for each contact region we want to be able to kill, we need to create unique scalar parameter names, such as:

mycont=cid
mytarg=tid

If we had more than one pair, we might use

mycont1=cid
mytarg1=tid

and increment the ‘1’ in the parameter names on the left side for each contact pair so that we end up with mycont1, mycont2, etc.

These commands need to be inserted directly under each desired contact region so that they will be located in the appropriate place in the solver batch input file at solution time.

image

The next command snippet needed is the one that selects the desired contact and target elements and then employs the ANSYS Mechanical APDL command to kill them.  Finally we need to re-select all the elements in the model so that they are all active when the solution takes place.  An example of this command object is:

esel,s,type,,mycont
esel,a,type,,mytarg

!kill selected elements (contact and target)
ekill,all

!select everything
allsel

Note that anything that occurs to the left of a “!” is considered a comment.  This second command object needs to be inserted under the analysis type branch.

image

Next, we need to tell ANSYS to perform at least 2 steps (load steps).  This is accomplished in the Details view for Analysis Settings.  For Step Controls, number of steps needs to be 2 (or more than 2).  Once 2 load steps are specified, we can tell ANSYS to only activate the EKILL command snippet for load step 2.  This is done in the Details view for the command snippet.  Step Selection Mode can be set to By Number and the Step Number set to 2, meaning that the command object will only be active for load step 2.  This will result in the contact elements that have been selected by the above commands being killed in load step 2.

image

In our example, we have two semicircular rings, connected by contact elements where they touch.  One side of the interface uses bonded contact, active for both loads steps.  The other side of the interface uses frictionless contact, active in load step 1 and killed in load step 2.  We would expect that under a compressive load, the frictionless contacts will prevent penetration in load step 1 but allow penetration in load step 2 since they have been killed.

image

That is exactly what the results show.  The contact status for the frictionless contact region goes from 2 (sliding) at the end of load step 1 to zero (far or not touching) at the end of load step 2.

image

Deformation plots indicate that penetration is prevented in load step 1.

image

In load step 2, penetration is allowed because the contact elements at this location have been killed.

image

So, here is a fairly simple Workbench Mechanical example of utilizing command objects to select contact and target elements, and to kill those elements using the Mechanical APDL EKILL command.  You can read up on element birth and death in the Mechanical APDL Help for more details on element birth and death.  We hope this is useful information to you.

3 Replies to “Utilizing Element Birth and Death for Contact Elements in Workbench Mechanical”

  1. hey
    can I use a command snippet in the solution module to select the elements by results and kill those elements for the next step?

    For example: i apply a load in the second step , i would select the elements with stresses above x MPa and kill those elements for the next load step … is that possible??

    thanks

    1. Hi,

      I think it should be possible, but I am still not aware how exactly to do that. I have found some articles where death of melted elements applied during welding process. Not clear for me how exactly we determine the death element criterion.
      The command *GET might be involved.

      Regards