UEPACTIVATIONFACET

User subroutine to specify the area fraction over which convective or radiative cooling is applied when using element activation.

User subroutine UEPACTIVATIONFACET:

  • can be used to specify the facet area of an element to apply film or radiation during element progressive activation;

  • can use and update element solution-dependent variables;

  • will be called at the beginning of each increment in a step in which element activation is specified; and

  • can be used only in heat transfer procedures.

This page discusses:

User Subroutine Interface

      SUBROUTINE UEPACTIVATIONFACET(
     * LFLAG, EPANAME, NOEL, NELEMNODES, IELEMNODES,
     * MCRD, COORDNODES, UNODES, KSTEP, KINC,
     * TIME, DT, TEMP, NPREDEF, PREDEF, 
     * NSVARS, SVARS, SOL, SOLINC,
     * NELEMFACETS, NFACETNODES, JFACETNODES,
     * VOLFRACT, VOLFRACTADDED, AREAFACETOLD, AREACUTOLD,
     * NEVENTS, 
     * DELTAAREAFACET, DELTAAREAFACETCSI, DELTAAREAFACETTIME, 
     * AREACUT, AREACUTCSI, AREACUTTIME)     
C
      INCLUDE 'ABA_PARAM.INC'
C
      PARAMETER (NEVENTSMAX = 1000)
      CHARACTER*80 EPANAME
      DIMENSION IELEMNODES(NELEMNODES), 
     * COORDNODES(MCRD,NELEMNODES), UNODES(MCRD,NELEMNODES), 
     * TIME(2), SVARS(NSVARS,2), TEMP(2,NELEMNODES), 
     * PREDEF(2,NPREDEF,NELEMNODES), SOL(NELEMNODES), 
     * SOLINC(NELEMNODES), JFACETNODES(NFACETNODES,*),
     * AREAFACETOLD(NELEMFACETS),
     * DELTAAREAFACET(NELEMFACETS,NEVENTSMAX),
     * DELTAAREAFACETCSI(MCRD,NELEMFACETS,NEVENTSMAX),
     * DELTAAREAFACETTIME(NELEMFACETS,NEVENTSMAX),
     * AREACUT(NEVENTSMAX), AREACUTCSI(MCRD,NEVENTSMAX),
     * AREACUTTIME(NEVENTSMAX)

      CHARACTER*80 EPANAME

      user coding to define NEVENTS, DELTAAREAFACET, 
      DELTAAREAFACETCSI, DELTAAREAFACETTIME, AREACUT, AREACUTCSI,
      and possibly update SVARS

      RETURN
      END

Variables to Be Defined

NEVENTS

The number of times facet areas are changed in this increment.

DELTAAREAFACET(NELEMFACETS,NEVENTS)

An array of area fractions that are added per element facet per event.

DELTAAREAFACETCSI(MCRD,NELEMFACETS,NEVENTS)

An array of integration points at which the cooling loads are computed per area fraction that is added per element facet per event.

DELTAAREAFACETTIME(NELEMFACETS,NEVENTS)

An array of the total time over the increment for which each of the element facet area fractions are exposed for cooling.

AREACUT(NEVENTS)

An array of total areas of the internal free surface that is exposed per event.

AREACUTCSI(MCRD,NEVENTS)

An array of integration points at which the cooling loads are computed for each of the internal free cut areas per event.

AREACUTTIME(NEVENTS)

An array of total time over the increment for which each of the internal free surfaces is exposed per event.

Variables That Can Be Updated

SVARS(NSVARS,1)

An array for defining new values of element solution-dependent variables at the end of the increment. These are passed in as the values at the beginning of the increment unless they are updated by other user subroutines, in which case the updated values are passed in. The size of the array is NSVARS (see below), which can be defined as described in Allocating Space for Element Solution-Dependent Variables.

Variables Passed in for Information

LFLAG

An array containing the flags that define the current free surface definition type.

LFLAG=2 Defines free surface as facet.
EPANAME

The name of the element progressive activation. It is the name specified on the ELEMENT PROGRESSIVE ACTIVATION option.

NOEL

User-assigned element number.

NELEMNODES

Number of element nodes.

IELEMNODES(NELEMNODES)

An array containing user-assigned node numbers of the element.

MCRD

Maximum number of coordinates at any node. Typically has a value of 3.

COORDNODES(MCRD,NELEMNODES)

An array containing the coordinates of the nodes of the element.

UNODES(MCRD,NELEMNODES)

An array containing displacements at the element nodes.

KSTEP

Current step number.

KINC

Current increment number.

TIME(1)

Current value of step time.

TIME(2)

Current value of total time.

DTIME

Time increment.

TEMP(2,NELEMNODES)

An array containing pairs of values of predefined temperature at the element nodes. The first value in a pair, TEMP(1,NELEMNODES), corresponds to the value at the end of the increment; and the second value, TEMP(2,NELEMNODES), corresponds to the increment in temperature.

NPREDEF

Number of field variables.

PREDEF(2,NPREDEF,NELEMNODES)

An array containing pairs of values of predefined field variables at the element nodes. The first value in a pair, PREDEF(1,NPREDEF,NELEMNODES), corresponds to the value at the end of the increment; and the second value, PREDEF(2,NPREDEF,NELEMNODES), corresponds to the increment in the field variables.

NSVARS

Number of element solution-dependent variables.

SVARS(NSVARS,2)

An array containing values of element solution-dependent variables at the beginning of the increment.

SOL(NELEMNODES)

An array of the solution variables (temperature in a heat transfer analysis) at the beginning of the increment.

SOLINC(NELEMNODES)

An array of estimated values of the increment of the solution variables (temperature in a heat transfer analysis). The values are always set equal to zero.

NELEMFACETS

Number of element facets.

NFACETNODES

Number of nodes per facet of the element.

JFACETNODES(NFACETNODES,*)

An array of nodes for each facet based on the facet connectivity.

VOLFRACT(*)

Total volume fraction of the material at the previous increment.

VOLFRACTADDED(*)

The volume fraction of material added to the element in the current increment

AREAFACETOLD(NELEMFACETS)

An array of total area fractions for each facet at the previous increment.

AREACUTOLD

The total area of the internal cut facet of the element at the previous increment when partial element activation is used.