8.4. Using Birth and Death

You can apply element birth and death behavior to most static and nonlinear transient analyses using the same basic procedures described in the various analysis guides.

Modify your basic analysis procedure as follows to incorporate the element birth and death feature:

8.4.1. Build the Model

While in the PREP7 preprocessor (/PREP7), create all elements, even those that will not be activated until later load steps. You cannot create new elements after preprocessing.

8.4.2. Apply Loads and Obtain the Solution

For all analyses employing element birth and death, perform the following actions in the solution (SOLU) phase:

8.4.2.1. Define the First Load Step

In the first load step, choose the analysis type and all appropriate analysis options (ANTYPE).

For a structural analysis, activate large-deflection effects (NLGEOM,ON).

For all birth and death applications, set the Newton-Raphson option to full explicitly in the first load step (NROPT). (The program cannot predict the presence of an EKILL command in a subsequent load step.) Deactivate (EKILL) all of the initially inactive elements that you intend to add (reactivate) in later load steps.

Elements are deactivated (or activated) in the first substep of the load step, and maintain that status through the rest of the load step. The default reduction factor used as a stiffness multiplier might not suffice for some problems; sometimes, you may need to use a more severe reduction factor. To provide a new value for the reduction factor, issue the ESTIF command.

Nodes not connected to any active elements may "float," or pick up stray degree-of-freedom responses. You may want to constrain inactive degrees of freedom (D, CP, etc.) in some cases to reduce the number of equations to be solved and to avoid ill-conditioning. Constraining inactive degrees of freedom can become more important for cases in which you want to reactivate elements with a specific shape (or temperature, etc.). If so, remove the artificial constraints when you reactivate elements, and remove nodal loads from inactive degrees of freedom (that is, at nodes not connected to any active elements). Similarly, you must specifically add nodal loads (if any) to reactivated degrees of freedom.

8.4.2.1.1. Sample Input for First Load Step

Part of your input listing could look like this for your first load step:

! First load step
TIME,...           ! Sets TIME value (optional for static analyses)
NLGEOM,ON          ! Turns large-deflection effects on
NROPT,FULL         ! You must explicitly set the Newton-Raphson option
ESTIF,...          ! Sets non-default reduction factor (optional)
ESEL,...           ! Selects elements to be deactivated in this load step
EKILL,...          ! Deactivates selected elements
ESEL,S,LIVE        ! Selects all active elements
NSLE,S             ! Selects all active nodes
NSEL,INVE          ! Selects all inactive nodes (those not attached to any
                   ! active elements)
D,ALL,ALL,0        ! Constrains all inactive degrees of freedom (optional)
NSEL,ALL           ! Selects ALL nodes
ESEL,ALL           ! Selects ALL elements
D,...              ! Adds constraints as appropriate
F,...              ! Adds nodal loads to active degrees of freedom as appropriate
SF,...             ! Adds element loads as appropriate
BF,...             ! Adds body loads as appropriate
SAVE
SOLVE

8.4.2.2. Define Subsequent Load Steps

In the remaining load steps, you can deactivate and reactivate elements as desired. As before, be sure to apply and delete constraints and nodal loads as appropriate.

To deactivate and reactivate elements, issue the EKILL and EALIVE commands, respectively.

8.4.2.2.1. Sample Input for Subsequent Load Steps

The following simplified input listing demonstrates how you might deactivate and reactivate elements:

! Second (or subsequent) load step:
TIME,...
ESEL,...
EKILL,...                  ! Deactivates selected elements
ESEL,...
EALIVE,...                 ! Reactivates selected elements
...
FDELE,...                  ! Deletes nodal loads at inactive degrees of freedom
D,...                      ! Constrains inactive degrees of freedom
...
F,...                      ! Adds nodal loads as appropriate to active degrees of freedom
DDELE,...                  ! Deletes constraints from reactivated degrees of freedom
SAVE
SOLVE

8.4.2.3. Using TABLE Type Array Parameters to Control Birth and Death

You can also use TABLE array parameters to control the activation of elements by defining a table using *DIM and enclosing the table name in % symbols; for example, EALIVE,%tabname%. You can also use TABLE parameters to control the deactivation of elements using EKILL,%tabname%.

Valid primary variable names are TIME, X, Y, Z and ELEM. Tabular loads can be defined in the global Cartesian (default) coordinate system, or in a local coordinate system (LOCAL). Only Cartesian, spherical, and cylindrical coordinate systems are valid. When defining the tables, the primary variables must be in ascending order in the table indices (as in any table array). See the *DIM command for more information on defining tables.

An EALIVE table is evaluated for a given element if that element is currently deactivated. If the evaluation is non-zero, the element is activated and remains activated for the remainder of the analysis (unless deactivated by EKILL).

An EKILL table is evaluated for a given element if that element is currently activated. If the evaluation is non-zero, the element is deactivated and remains deactivated for the remainder of the analysis (unless activated with EALIVE).


Note:  Tables interpolate between primary variables, so interpolations between a zero entry and a non-zero entry will be non-zero, hence the element will be activated. For instance, a table of heights (for example, *DIM,tabname,TABLE,n,,,Z) with Z-axis values of 0,10,20 and table values of 0,0,1 leads to all elements between Z = 10 and Z = 20 being activated. The evaluation takes place at the element centroids for the X, Y, and Z primary variables.


8.4.3. Review the Results

Typically, you will follow standard procedures when postprocessing an analysis containing deactivated or reactivated elements.

Be aware that "killed" elements are still present in your model, even though they make an insignificant contribution to the stiffness (conductivity, etc.) matrix; therefore, they are included in element displays, output listings, etc. For example, deactivated elements are included in nodal results averaging (via the PLNSOL command) and will "smear" the results. Ignore the entire element printout for deactivated elements because many items computed make little physical sense.

To remove deactivated elements for element displays and other postprocessing operations, issue the ESEL command.

8.4.4. Use Analysis Results to Control Birth and Death

At times, you will not explicitly know the location of elements that you need to deactivate or reactivate. For example, if you want to "kill" melted elements in a thermal analysis (that is, to model the removal of melted material), you will not know the location of those elements beforehand and will need to identify them on the basis of their program-calculated temperatures. When the decision to deactivate or reactivate an element depends on the value of a result item (such as temperature, stress, strain, etc.), you can use commands to identify and select the critical elements.

To identify the critical elements, issue the ETABLE command. To select the critical elements, issue the ESEL command.

You could then deactivate or reactivate the selected elements. To deactivate the selected elements, issue the EKILL,ALL command. To reactivate the selected elements, issue the EALIVE,ALL command.


Note:  You can also use the Ansys Parametric Design Language to write a macro to perform such an operation. See the Ansys Parametric Design Language Guide for more information.


8.4.4.1. Sample Input for Deactivating Elements

The following simplified input listing demonstrates how you might deactivate elements that rupture when their total strain has exceeded some critical value:

/SOLU                  ! Enter SOLUTION
..                     ! Typical solution procedure
SOLVE
FINISH
!
/POST1                  ! Enter POST1
SET,...
ETABLE,STRAIN,EPTO,EQV  ! Store total equivalent strain in ETABLE
ESEL,S,ETAB,STRAIN,0.20 ! Select all elements with total equivalent strain
                        !  greater than or equal to 0.20

CM,killedelement,elem   ! Save these elements to a component
CMWRITE,kill,cm         ! Write this component to a file kill.cm for use in restart
FINISH
!
/SOLU                   ! Re-enter SOLUTION
ANTYPE,,REST            ! This resumes the rdb file, but rdb does not have killed
                        ! element information
CDREAD,db,kill,cm       ! Recreate the killed element component
CMSEL,s,killedelement   ! Select killed elements
EKILL,ALL               ! Deactivate selected (overstrained) elements
ESEL,ALL                ! Restore full element set
...                     ! Continue with solution