ProductsAbaqus/Standard MetalsFor metals whose material behavior includes metal creep and/or time-dependent volumetric swelling, the routine allows any “creep” and “swelling” laws (viscoplastic behavior) of the following general form to be defined: $$\dot{{\overline{\epsilon}}^{cr}}={g}^{cr}\left(p,\stackrel{~}{q},{\overline{\epsilon}}^{sw},{\overline{\epsilon}}^{cr},\mathrm{time},\mathrm{\dots}\right),$$
$$\dot{{\overline{\epsilon}}^{sw}}={g}^{sw}\left(p,\stackrel{~}{q},{\overline{\epsilon}}^{sw},{\overline{\epsilon}}^{cr},\mathrm{time},\mathrm{\dots}\right),$$
where
The user subroutine must define the increments of inelastic strain, $\mathrm{\u25b3}{\overline{\epsilon}}^{cr}$ and $\mathrm{\u25b3}{\overline{\epsilon}}^{sw}$, as functions of p and $\stackrel{~}{q}$ and any other variables used in the definitions of ${g}^{cr}$ and ${g}^{sw}$ (such as solution-dependent state variables introduced by you) and of the time increment, $\mathrm{\u25b3}t$. If any solution-dependent state variables are included in the definitions of ${g}^{cr}$ and ${g}^{sw}$, they must also be integrated forward in time in this routine. Abaqus computes the incremental creep strain (or the incremental viscoplastic strain) components as $$\mathrm{\Delta}{\mathit{\epsilon}}^{cr}=\frac{1}{3}\mathrm{\Delta}{\overline{\epsilon}}^{sw}\mathbf{R}+\mathrm{\Delta}{\overline{\epsilon}}^{cr}\mathbf{n},$$
where $\mathbf{n}$ is the gradient of the deviatoric stress potential, defined as $$\mathbf{n}=\frac{\partial \stackrel{~}{q}}{\partial \mathit{\sigma}},$$
and $\mathbf{R}$ is a matrix with the anisotropic swelling ratios in the diagonal if anisotropic swelling is defined; otherwise, $\mathbf{R}=\mathbf{I}$. Drucker-Prager materialsFor materials that yield according to the extended Drucker-Prager plasticity models using Drucker-Prager creep, the routine allows any “creep” laws (viscoplastic behavior) of the following general form to be defined: $$\dot{{\overline{\epsilon}}^{cr}}={g}^{cr}\left({\overline{\sigma}}^{cr},{\overline{\epsilon}}^{cr},\mathrm{time},\mathrm{\dots}\right),$$
where
The user subroutine must define the increment of inelastic strain, $\mathrm{\u25b3}{\overline{\epsilon}}^{cr}$, as a function of ${\overline{\sigma}}^{cr}$ and any other variables used in the definitions of ${g}^{cr}$ (such as solution-dependent state variables introduced by you) and of the time increment, $\mathrm{\u25b3}t$. If any solution-dependent state variables are included in the definitions of ${g}^{cr}$, they must also be integrated forward in time in this routine. Abaqus computes the incremental creep strain (or the incremental viscoplastic strain) components as $$\mathrm{\Delta}{\mathit{\epsilon}}^{cr}=\frac{\mathrm{\Delta}{\overline{\epsilon}}^{cr}}{{f}^{cr}}\left(\frac{q}{\sqrt{{\left({\u03f5\overline{\sigma}|}_{0}\mathrm{tan}\psi \right)}^{2}+{q}^{2}}}\mathbf{n}+\frac{1}{3}\mathrm{tan}\psi \mathbf{I}\right),$$
where $\mathbf{n}=\partial \stackrel{~}{q}/\partial \mathit{\sigma}.$ The variable ${f}^{cr}$ is determined in such a way that $${f}^{cr}=\frac{1}{{\overline{\sigma}}^{cr}}\mathit{\sigma}:\frac{\partial {G}^{cr}}{\partial \mathit{\sigma}},$$
and $${G}^{cr}=\sqrt{{\left({\u03f5\overline{\sigma}|}_{0}\mathrm{tan}\psi \right)}^{2}+{q}^{2}}-p\mathrm{tan}\psi $$
is the hyperbolic creep potential, where $\psi \left(\theta ,{f}^{\alpha}\right)$ is the dilation angle measured in the p–q plane at high confining pressure, ${\overline{\sigma}|}_{0}={\overline{\sigma}|}_{{\overline{\epsilon}}^{pl}=0,{\dot{\overline{\epsilon}}}^{pl}=0}$ is the initial yield stress, and $\u03f5$ is the eccentricity. See Extended Drucker-Prager models for a discussion of $\psi $, $\u03f5$, and ${\overline{\sigma}|}_{0}$. Capped Drucker-Prager materialsFor materials that yield according to the modified Drucker-Prager/Cap plasticity model using cap creep, the routine allows any “cohesion creep” and “consolidation creep” laws (viscoplastic behavior) of the following general form to be defined: $$\dot{{\overline{\epsilon}}_{s}^{cr}}={g}_{s}^{cr}\left({\overline{\sigma}}^{cr},{\overline{\epsilon}}_{s}^{cr},\mathrm{time},\mathrm{\dots}\right),$$
$$\dot{{\overline{\epsilon}}_{c}^{cr}}={g}_{c}^{cr}\left({\overline{p}}^{cr},{\overline{\epsilon}}_{c}^{cr},\mathrm{time},\mathrm{\dots}\right),$$
where
The user subroutine must define the increments of inelastic strain, $\mathrm{\u25b3}{\overline{\epsilon}}_{s}^{cr}$ and/or $\mathrm{\u25b3}{\overline{\epsilon}}_{c}^{cr}$, as functions of ${\overline{\sigma}}^{cr}$ and/or ${\overline{p}}^{cr}$ and any other variables used in the definitions of ${g}_{s}^{cr}$ and ${g}_{c}^{cr}$ (such as solution-dependent state variables introduced by you) and of the time increment, $\mathrm{\u25b3}t$. If any solution-dependent state variables are included in the definitions of ${g}_{s}^{cr}$and ${g}_{c}^{cr}$, they must also be integrated forward in time in this routine. Calculation of incremental creep strains for the cohesion mechanismAbaqus computes the incremental creep strain (or the incremental viscoplastic strain) components of the cohesion mechanism as $$\mathrm{\Delta}{\mathit{\epsilon}}_{s}^{cr}=\frac{\mathrm{\Delta}{\overline{\epsilon}}_{s}^{cr}}{{f}^{cr}}\left(\frac{q}{\sqrt{{\left(0.1\frac{d}{\left(1-\frac{1}{3}\mathrm{tan}\beta \right)}\mathrm{tan}\beta \right)}^{2}+{q}^{2}}}\mathbf{n}+\frac{1}{3}\mathrm{tan}\beta \mathbf{I}\right),$$
where $\mathbf{n}=\partial \stackrel{~}{q}/\partial \mathit{\sigma},$d is the material cohesion, the variable ${f}^{cr}$ is determined in such a way that $${f}^{cr}=\frac{1}{{\overline{\sigma}}^{cr}}\mathit{\sigma}:\frac{\partial {G}_{s}^{cr}}{\partial \mathit{\sigma}},$$
and ${G}_{s}^{cr}$ is the cohesion creep potential $${G}_{s}^{cr}=\sqrt{{\left(0.1\frac{d}{\left(1-\frac{1}{3}\mathrm{tan}\beta \right)}\mathrm{tan}\beta \right)}^{2}+{q}^{2}}-p\mathrm{tan}\beta .$$ Calculation of incremental creep strains for the consolidation mechanismAbaqus computes the incremental creep strain (or the incremental viscoplastic strain) components of the consolidation mechanism as $$\mathrm{\Delta}{\mathit{\epsilon}}_{c}^{cr}=\frac{\mathrm{\u25b3}{\overline{\epsilon}}_{c}^{cr}}{{G}_{c}^{cr}}\left({R}^{2}\text{\hspace{0.17em}}\text{\hspace{0.17em}}\text{\hspace{0.17em}}q\text{\hspace{0.17em}}\text{\hspace{0.17em}}\text{\hspace{0.17em}}\mathbf{n}-\frac{1}{3}\left(p-{p}_{a}\right)\text{\hspace{0.17em}}\text{\hspace{0.17em}}\text{\hspace{0.17em}}\mathbf{I}\right),$$
where R controls the shape of the cap, and ${G}_{c}^{cr}$ is the consolidation creep potential $${G}_{c}^{cr}=\sqrt{{\left(p-{p}_{a}\right)}^{2}+{\left(Rq\right)}^{2}}.$$
Cohesion material properties are determined with a uniaxial compression test in which $d{\overline{\epsilon}}_{s}^{cr}=\parallel d{\u03f5}_{11}^{cr}\parallel $, and consolidation material properties are determined with a volumetric compression test in which $d{\overline{\epsilon}}_{c}^{cr}=\parallel d{\u03f5}_{vol}^{cr}\parallel $. Most likely, ${g}_{s}^{cr}$ is a positive function of ${\overline{\sigma}}^{cr}$, and ${g}_{c}^{cr}$ is a positive function of ${\overline{p}}^{cr}$. GasketsFor gaskets whose behavior includes creep, the routine allows any “creep” law of the following general form to be defined: $${\dot{\epsilon}}^{cr}={g}^{cr}\left(\sigma ,{\epsilon}^{cr},\mathrm{time},\mathrm{\dots}\right),$$
where ${\epsilon}^{cr}$ is the compressive creep strain, conjugate to $\sigma $, the compressive stress in the gasket. The user subroutine must define the increments of inelastic creep strain, $\mathrm{\u25b3}{\epsilon}^{cr}$, as functions of $\sigma $ and any other variables used in the definitions of ${g}^{cr}$ (such as solution-dependent state variables introduced by you) and of the time increment, $\mathrm{\u25b3}t$. If any solution-dependent state variables are included in the definitions of ${g}^{cr}$, they must also be integrated forward in time in this routine. Abaqus will automatically multiply this creep strain by the proper thickness (see Defining the gasket behavior directly using a gasket behavior model) to obtain a creep closure. Integration schemesAbaqus provides both explicit and implicit time integration of creep and swelling behavior defined in this routine. The choice of the time integration scheme depends on the procedure type, the procedure definition, and whether a geometric linear or nonlinear analysis is requested (see Rate-dependent plasticity: creep and swelling). Implicit integration is generally more effective when the response period is long relative to typical relaxation times for the material. Simple high-temperature structural design applications usually do not need implicit integration, but more complicated problems (such as might arise in manufacturing processes), creep buckling applications, or nonstructural problems (such as geotechnical applications) often are integrated more efficiently by the implicit method provided in the program. If implicit integration is used with this subroutine, nonlinear equations must be solved at each time step and the variations of $\mathrm{\u25b3}{\overline{\epsilon}}^{cr}$, $\mathrm{\u25b3}{\overline{\epsilon}}^{sw}$, $\mathrm{\u25b3}{\overline{\epsilon}}_{s}^{cr}$, or $\mathrm{\u25b3}{\overline{\epsilon}}_{c}^{cr}$ with respect to ${\overline{\epsilon}}^{cr}$, ${\overline{\epsilon}}^{sw}$, ${\overline{\epsilon}}_{s}^{cr}$, ${\overline{\epsilon}}_{c}^{cr}$, p, $\stackrel{~}{q}$, ${\overline{p}}^{cr}$, or ${\overline{\sigma}}^{cr}$ must be defined in the subroutine. To obtain good convergence during implicit integration, it is essential to define these quantities accurately. At the start of a new increment the subroutine is called once for each integration point to calculate the estimated creep strain based on the state at the start of the increment. Subsequently, it is called twice for each iteration if explicit integration is used: once to calculate the creep strain increment at the start of the increment and once to calculate it at the end of the increment. This is needed to test the validity of the time increment with respect to the user-specified maximum allowable difference in the creep strain increment. The flag LEND indicates whether the routine is called at the start or the end of the increment. The subroutine must use the corresponding values of time, temperature, field variables, and solution-dependent state variables in the calculation of the creep strain increment. For implicit integration Abaqus uses a local iteration procedure to solve the nonlinear constitutive equations, and the subroutine is called multiple times. The exact number of calls depends on the convergence rate of the local iteration procedure and, hence, will vary from point to point. During these iterations it is possible for the values of the state variables to be far from their final values when the equations are solved. Therefore, the coding in the subroutine must adequately protect against arithmetic failures (such as floating point overflows) even when variables are passed in with physically unreasonable values. As in explicit integration, the variable LEND indicates whether the routine is called at the start or the end of the increment. Constant stress assumption when defining creep and swellingWhen the creep and swelling behavior are defined by simple formulæ, it is often possible to calculate the increments of equivalent creep and swelling strain exactly if it is assumed that the stress is constant during the increment. This approach has the advantage that it provides very good accuracy within the constant stress assumption. It also avoids the problem that arises for some creep behavior definitions: that the creep strain rate becomes infinite at zero time (or strain). Otherwise, in such a case you must protect against causing arithmetic failures at the start of the solution. Defining both plasticity and creepIf both plasticity and creep are defined for a material, Abaqus will calculate the creep strain before entering the plasticity routines. The stresses passed into the creep routine may, therefore, exceed the yield stress. Interpretation of stress and strain variablesIn finite-strain applications strain variables should be interpreted as logarithmic strains and stresses as “true” stress. User subroutine interface SUBROUTINE CREEP(DECRA,DESWA,STATEV,SERD,EC,ESW,P,QTILD,
1 TEMP,DTEMP,PREDEF,DPRED,TIME,DTIME,CMNAME,LEXIMP,LEND,
2 COORDS,NSTATV,NOEL,NPT,LAYER,KSPT,KSTEP,KINC)
C
INCLUDE 'ABA_PARAM.INC'
C
CHARACTER*80 CMNAME
C
DIMENSION DECRA(5),DESWA(5),STATEV(*),PREDEF(*),DPRED(*),
1 TIME(3),EC(2),ESW(2),COORDS(*)
user coding to define DECRA, DESWA
RETURN
END Variables to be defined
Variables that can be updated
Variables passed in for information
Example: Hyperbolic sine creep lawSuppose that we wish to model a metal using the creep behavior $$\dot{{\overline{\epsilon}}^{cr}}=A{\left(\mathrm{sinh}\frac{q}{{\sigma}_{0}}\right)}^{n},\dot{{\overline{\epsilon}}^{sw}}=0,$$
where A, ${\sigma}_{0}$, and n are constants. User subroutine CREEP can be coded as follows: SUBROUTINE CREEP(DECRA,DESWA,STATEV,SERD,EC,ESW,P,QTILD, 1 TEMP,DTEMP,PREDEF,DPRED,TIME,DTIME,CMNAME,LEXIMP,LEND, 2 COORDS,NSTATV,NOEL,NPT,LAYER,KSPT,KSTEP,KINC) C INCLUDE 'ABA_PARAM.INC' C CHARACTER*80 CMNAME C DIMENSION DECRA(5),DESWA(5),STATEV(*),PREDEF(*),DPRED(*), 1 TIME(3),COORDS(*),EC(2),ESW(2) C C DEFINE CONSTANTS C A= SIG0= AN= C T1=EXP(QTILD/SIG0) T2=EXP(−QTILD/SIG0) DECRA(1) = A*(.5*(T1−T2))**AN*DTIME IF(LEXIMP.EQ.1) THEN DECRA(5) = AN*A*(.5*(T1−T2))**(AN−1.)*DTIME/ 1 SIG0*.5*(T1+T2) END IF C RETURN END The derivative $$\frac{\partial \mathrm{\u25b3}{\overline{\epsilon}}^{cr}}{\partial q}=\frac{nA\mathrm{\Delta}t}{{\sigma}_{0}}{\left(\mathrm{sinh}\frac{q}{{\sigma}_{0}}\right)}^{n-1}\mathrm{cosh}\frac{q}{{\sigma}_{0}}$$
has been defined on the assumption that the subroutine will be used with implicit integration. |