As a simple example of the coding of user subroutine
UMATHT, consider uncoupled heat transfer analysis in a material.
The equations for this case are developed here, and the corresponding
UMATHT is given. This problem can also be solved by specifying
thermal conductivity, specific heat, density, and internal heat generation
directly.
First, the equations for an uncoupled heat transfer analysis are outlined.
The basic energy balance is
where V is the volume of solid material with surface
area S,
is the density of the material,
is the material time rate of the internal thermal energy,
q is the heat flux per unit area of the body flowing into
the body, and r is the heat supplied externally into the
body per unit volume.
A heat flux vector
is defined such that
where
is the unit outward normal to the surface S. Introducing
the above relation into the energy balance equation and using the divergence
theorem, the following relation is obtained:
The corresponding weak form is given by
where
is the temperature gradient and
is an arbitrary variational field satisfying the essential boundary conditions.
Introducing the backward difference integration algorithm:
the weak form of the energy balance equation becomes
This nonlinear system is solved using Newton's method.
In the above equations the thermal constitutive behavior of the material is
given by
and
where
are state variables.
The Jacobian for Newton's method is given by (after dropping the subscripts
on U)
The thermal constitutive behavior for this example is now defined. We assume
a constant specific heat for the material. The heat conduction in the material
is assumed to be governed by Fourier's law.
The internal thermal energy per unit mass is defined as
with
where c is the specific heat of the material and
Fourier's law for heat conduction is given as
where
is the thermal conductivity matrix and
is position, so that
and
The assumption of conductivity without any temperature dependence implies
that
No state variables are needed for this material, so the allocation of space
for them is not necessary.
A thermal user material definition can be used to read in the two constants
for our simple case, namely the specific heat, c, and the
coefficient of thermal conductivity, k, so that
SUBROUTINE UMATHT(U,DUDT,DUDG,FLUX,DFDT,DFDG,
1 STATEV,TEMP,DTEMP,DTEMDX,TIME,DTIME,PREDEF,DPRED,
2 CMNAME,NTGRD,NSTATV,PROPS,NPROPS,COORDS,PNEWDT,
3 NOEL,NPT,LAYER,KSPT,KSTEP,KINC)
C
INCLUDE 'ABA_PARAM.INC'
C
CHARACTER*80 CMNAME
DIMENSION DUDG(NTGRD),FLUX(NTGRD),DFDT(NTGRD),
1 DFDG(NTGRD,NTGRD),STATEV(NSTATV),DTEMDX(NTGRD),
2 TIME(2),PREDEF(1),DPRED(1),PROPS(NPROPS),COORDS(3)
C
COND = PROPS(1)
SPECHT = PROPS(2)
C
DUDT = SPECHT
DU = DUDT*DTEMP
U = U+DU
C
DO I=1, NTGRD
FLUX(I) = −COND*DTEMDX(I)
DFDG(I,I) = −COND
END DO
C
RETURN
END