Abstract
In this work the finite element (FE) implementation of the small strain cyclic plasticity is discussed. The family of elastoplastic constitutive models is considered which uses the mixed, kinematic-isotropic hardening rule. It is assumed that the kinematic hardening is governed by the Armstrong–Frederick law. The radial return mapping algorithm is utilized to discretize the general form of the constitutive equation. A relation for the consistent elastoplastic tangent operator is derived. To the best of the author’s knowledge, this formula has not been presented in the literature yet. The obtained set of equations can be used to implement the cyclic plasticity models into numerous commercial or non-commercial FE packages. A user subroutine UMAT (User’s MATerial) has been developed in order to implement the cyclic plasticity model by Yoshida into the open-source FE program CalculiX. The coding is included in the Appendix. It can be easily modified to implement any isotropic hardening rule for which the yield stress is a function of the effective plastic strain. The number of the utilized backstress variables can be easily increased as well. Several validation tests which have been performed in order to verify the code’s performance are discussed.
Similar content being viewed by others
Avoid common mistakes on your manuscript.
1 Introduction
The classical flow plasticity based on the Huber-von Mises-Hencky (HMH) yield criterion is the theory which is the most commonly used for the description of the mechanical properties of metals, e.g., [27]. The constitutive equations of small strain plasticity utilizing the isotropic, the kinematic or the mixed hardening rules are available in practically every finite element (FE) program used for solving engineering problems, e.g., [6, 7, 9, 19]. The standard formulation of the kinematic hardening makes use of the linear rule developed by Prager [20]. This version of the kinematic hardening model is widely used for solving different boundary value problems of elastoplasticity. However, the Prager’s model is the most basic one, and often a need arises for a constitutive relation that would describe the material response more accurately.
Armstrong and Frederick [2] proposed an elastoplastic constitutive model which utilizes a more elaborate relation to describe the backstress evolution during the kinematic hardening phenomenon. This model is more suitable for the description of material behaviors associated with the cyclic loadings such as the Bauschinger effect. The model by Armstrong and Frederick was further extended by Chaboche and Rousselier by adding the isotropic hardening behavior [4, 5]. Thus, a mixed hardening rule was obtained this way. For the purpose of modeling the kinematic hardening, this constitutive model assumes that the total backstress is a sum of several components, each one evolving according to a separate Armstrong–Frederick (A-F) equation. The Voce law [25] was used by Chaboche and Rousselier in order to simulate the isotropic hardening behavior. It was assumed that the total yield stress is a sum of terms which evolve according to separate differential equations of the type defined by the Voce rule. The Chaboche and Rousselier (Ch-R) model and its modifications are often used for simulating the material response in the case of cyclic loadings, e.g., [6, 9, 19, 26]. A special case of the elastoplastic Ch-R model was considered by Yoshida et al. [29] where a single Voce term was used to describe the isotropic hardening behavior, whereas the total backstress associated with the kinematic hardening was assumed as a sum of two components. The evolution of the first backstress component was governed by the A-F law, while the second component was defined by the Prager rule. The rate-independent plasticity Ch-R model was generalized to take into account the viscous effects, cf [4, 5]. The Ch-R model is also a basis for the formulation of more elaborate constitutive equations which can take into account such effects as the cyclic shear softening, for instance, e.g., Kowalewski et al. [13].
The Ch-R constitutive model and its various modifications have been implemented into several commercial and non-commercial FE analysis programs, e.g., [6, 9, 19]. However, usually the details of the FE implementation, such as: the integration of the constitutive equation and the derivation of the tangent operator, are not covered in the available program’s documentation. On the other hand, Auricchio et al. [3] discussed the FE implementation of a small strain cyclic plasticity model being a slight modification of the constitutive relation by Chaboche and Rousselier. In the aforementioned work a modified formulation of the HMH yield criterion was utilized. The isotropic hardening was described by a linear function of the effective plastic strain, and a single backstress which evolves according to the A-F rule was used to simulate the kinematic hardening. This approach was further extended by Artioli et al. [1]. Moreover, Kobayashi and Ohno discussed the FE implementation of selected cyclic plasticity models [12]. Kullig and Wippler [14] utilized the implicit backward Euler method and the radial return mapping algorithm to develop an integration scheme for the viscoplastic Chaboche model. A method for calculating the tangent operator was presented as well. The obtained integration algorithm was used to implement the considered constitutive model into the FE system ABAQUS by taking advantage of the UMAT subroutine (User’s MATerial), cf [9]. Yang and Feng [28] used the radial return algorithm to implement a viscoplastic material model based on the A-F kinematic hardening law into ABAQUS. A proper UMAT code was written for that purpose.
In this work the FE implementation of the small strain cyclic plasticity is discussed. The radial return mapping algorithm is utilized to develop an integration scheme which is valid for a family of elastoplastic constitutive models assuming the mixed hardening behavior. The general form of the isotropic hardening rule is considered where the yield stress is an arbitrary function of the effective plastic strain. It is assumed that the kinematic hardening behavior is determined by a number of backstress variables which evolve according to the separate A-F equations. In the special case, when the function describing the isotropic hardening behavior is assumed in the form of the Voce law, the considered constitutive model takes the form of the Ch-R model.
A general relation for the consistent fourth-order tangent operator is derived. To the best of the author’s knowledge, this formula for the tangent operator of the considered model formulation has not been presented in the literature before. The fact that the fourth-order operator is consistent, i.e., in agreement with the radial return mapping algorithm used for the integration of the model equations, guarantees a quadratic rate of convergence during the numerical computations when the operator is entirely coded in an FE program, cf e.g., [1].
The developed model integration algorithm along with the tangent operator is utilized to implement the elastoplastic model proposed by Yoshida et al. [29] into the FE program CalculiX. For that purpose, the user subroutine UMAT has been written. Numerous FE simulations have been performed in order to verify the performance of the developed code. The obtained results are presented in this work. The UMAT code has been attached in the Appendix Section. It has a general form and can be easily modified to incorporate some different isotropic hardening laws (Ludwik [16], Swift [24] or numerous Voce terms etc.). The number of programmed backstresses defined by the A-F or the Prager laws can be easily increased as well.
2 Basic notions
The total stress tensor \({\varvec{\sigma }}\) can be decomposed into the volumetric stress p (opposite to the pressure) and the deviatoric stress \(\mathbf{s}\), e.g., [23], i.e.,
The volumetric stress and the stress deviator are associated with the elastic strain by the following relationships:
where K is the bulk (Helmholtz) modulus and \(\mu =G\) is the shear (Kirchhoff) modulus, whereas \(\epsilon ^{e}\) and \(\mathbf{e}^{e}\) are the elastic dilatation and the elastic deviatoric strain, respectively, i.e.,
where \({\varvec{\varepsilon }}^{e}\) is the total elastic strain tensor. The shear and the bulk moduli are related to the engineering constants, i.e., Young’s modulus E and Poisson’s ratio \(\nu \), via the following equalities:
It is assumed that the total small strain tensor \({\varvec{\varepsilon }}\) can be additively decomposed into its elastic and plastic components, i.e., \({\varvec{\varepsilon }}^{e}\) and \({\varvec{\varepsilon }}^{p}\), respectively [20, 23, 27]:
where \({\varvec{\varepsilon }}^{p}\) is the plastic strain tensor. The volume change is treated as fully elastic, thus \({{\,\mathrm{tr}\,}}{\varvec{\varepsilon }}^{p}=0\), so that \({\varvec{\varepsilon }}^{p}=\mathbf{e}^{p}\). It follows that in Eqs. (2) \(\epsilon ^{e}=\epsilon ={{\,\mathrm{tr}\,}}{\varvec{\varepsilon }}\) while \(\mathbf{e}^{e}=\mathbf{e}-\mathbf{e}^{p}\). Thus, another equation which governs the evolution of the plastic strain tensor is required.
The Huber-von Mises-Hencky (HMH) yield criterion has to be satisfied when plastic flow occurs [4, 5]:
where \(\mathbf{X}\) is the backstress tensor, k is the initial yield stress, while \(R(\bar{e}^{p})\) is a function responsible for the isotropic hardening behavior (the expansion or the reduction in size of the yield function \(F({\varvec{\sigma }},\mathbf{X}, \bar{e}^{p})\)). The effective plastic strain \(\bar{e}^{p}\) is given by the following formulas:
The evolution of the plastic strain is governed by the equation:
where \(\mathrm {d}\lambda \) is the plastic multiplier. After some manipulation, it can be found from Eq. (8) that \(\mathrm {d}\lambda = \mathrm {d}{\bar{e}}^{p}\). Thus:
where \(\bar{\mathbf{n}}\) is the normalized effective stress tensor.
The total backstress tensor \(\mathbf{X}\) is assumed to be a sum of M components \(\mathbf{X}^{(i)}\) (\(i=1,2,\dots ,M\)) [4, 5], i.e.,
which evolve according to the separate Armstrong–Frederick (A-F) equations, cf [2]:
where \(C_{i}\) and \(\gamma _{i}\) are the kinematic hardening parameters. Some specific forms of \(R(\bar{e}^{p})\) are considered further in the text. In the following Section the discretization of the constitutive model equations is discussed.
3 Numerical integration of the constitutive model
The radial return mapping algorithm is utilized for the integration of the constitutive model, e.g., [1, 3, 14, 22]. The deviatoric stress in the increment \(n+1\) is given by the following relation:
thus:
with \(\mathbf{s}_{n+1}^{pr}\) being the predictor stress. Equations (11) are discretized by replacing the differentials with the finite differences, i.e.,
After some rearrangements Eq. (14) can be rewritten as follows:
Equations (9) can be written in incremental form, i.e.,
Subtracting Eq. (10) from Eq. (13.1) and substituting Eqs. (15.1) and (16.1) yields
After some manipulation Eq. (17) can be written as:
Using Eq. (16.2) in Eq. (18) and some rearrangements lead to:
where
when the material is yielding. The following notations are introduced:
and
After inserting Eqs. (20)–(22) into Eq. (19) it is found that:
By performing some manipulations Eq. (23) can be converted into a scalar equation, i.e.,
where \(J_{2}(\mathbf{Z})=\sqrt{\frac{3}{2}{} \mathbf{Z}\cdot \mathbf{Z}}\) and \(\bar{e}^{p}_{n+1}=\bar{e}^{p}_{n}+\Delta \bar{e}^{p}\). Equation (24) is a nonlinear algebraic equation which has to be solved numerically for the effective plastic strain increment \(\Delta \bar{e}^{p}\). The solution of Eq. (24) by means of Newton’s iterative method is discussed in the Appendix. After determining the value of \(\Delta \bar{e}^{p}\) the backstress components can be updated according to Eq. (15.1) and the total backstress is calculated using Eq. (10). Subsequently, the deviatoric stress is updated using Eq. (23), i.e.,
It is important to note that using Eqs. (20), (23), and (24) it can be found that:
4 Consistent tangent operator
Taking the variation of Eq. (13.1) with respect to all quantities gives:
where the formulas for the variations \(\delta \bar{e}^{p}\) and \(\delta \bar{\mathbf{n}}_{n+1}\) have to be found. For the purpose of finding \(\delta \bar{e}^{p}\), the variation of Eq. (24) is taken, i.e.,
with \(\delta R (\bar{e}^{p})=\frac{\mathrm {d}R (\bar{e}^{p})}{\mathrm {d}\bar{e}^{p}} \delta \bar{e}^{p}\) which depends on the specific form of \(R (\bar{e}^{p})\) (see Table 1), whereas \(\delta \alpha (\Delta \bar{e}^{p})=\frac{\mathrm {d}\alpha (\Delta \bar{e}^{p})}{\mathrm {d}\Delta \bar{e}^{p}} \delta \bar{e}^{p}\) takes the form:
see Appendix for the derivation. The variation \(\delta J_{2} (\mathbf{Z})\) is given by the following equation (see Appendix):
Substituting Eqs. (29) and (30) into Eq. (28) and solving it for \(\delta \bar{e}^{p}\) leads to the following relation:
It is convenient to introduce the so-called effective hardening modulus:
Thus, using Eq. (32) the formula for the effective plastic strain variation can be written as:
The variation of the normalized effective stress is given as (see Appendix):
Inserting Eqs. (33) and (34) into Eq. (27) leads to:
which after some rearrangements can be expressed as:
The effective shear modulus \(\mu ^{*}\) is introduced as:
Moreover, the following relations are utilized:
and
Substituting Eqs. (37)–(39) into Eq. (36) yields:
where the fact that \(\mathbf{1} \cdot \bar{\mathbf{n}}_{n+1}={{\,\mathrm{tr}\,}}(\bar{\mathbf{n}}_{n+1})=0\) has been utilized. The variation of the total stress tensor at the increment \(n+1\), i.e., \({\varvec{\sigma }}_{n+1}\), is given as:
A relation between the stress and the strain variations can be obtained by inserting Eqs. (40) and (41.2) into Eq. (41.1), i.e.,
where is the consistent algorithmic tangent operator which is given by the following relation:
with
being the effective Lamé parameter. It should be emphasized that the tangent operator given by Eq. (43) is non-symmetric, cf [3, 14]. For \(M=1\) and \(\gamma _{1}=0\) the tangent operator simplifies to the form corresponding to the mixed hardening model (with the kinematic hardening governed by the rule by Prager, cf [11]). Moreover, if it is further assumed that \(R(\bar{e}^{p})=0\) the tangent operator of the Prager’s kinematic hardening model is obtained, cf [22]. If one assumes \(M=0\) in Eq. (43) the tangent operator is reduced to the one of the isotropic hardening model [22].
If the equivalent HMH predictor stress does not satisfy the condition \(\overline{\sigma }^{pr}=J_{2}(\mathbf{s}^{pr}_{n+1}-\mathbf{X}_{n})>k+R(\bar{e}^{p}_{n})\), the tangent operator takes the form of the elasticity tensor, i.e.,
where \(\lambda =K-\frac{2}{3}\mu \) is the Lamé constant.
5 User material (UMAT) subroutine for cyclic elastoplasticity
Most of the commercial and non-commercial FE programs offer the option of using a user-written subroutine to define a constitutive relation which is unavailable in the program’s material library, e.g., [6, 7, 9, 19]. Usually such subroutines require from the user to define the stress update rule and the material tangent operator also known as the material Jacobian. The FE program CalculiX utilizes alternatively two different interfaces which can be used for coding a user-defined constitutive law, cf [7]. The first is the ABAQUS interface with the second being the CalculiX native interface.
In this study the stress update algorithm described in Section 3 and the tangent operator given by Eq. (43) were used to implement the small strain cyclic plasticity constitutive model into the FE program CalculiX via the UMAT subroutine (User MATerial). It was decided to utilize the CalculiX native interface due to its better performance compared to the ABAQUS UMAT used under CalculiX. The subroutine UMAT uses the small mechanical strain tensor components (the “emec” column matrix) as an input which is further used to calculate the stress tensor component matrix (“stre”) and the components of the tangent operator stored in a column matrix (“stiff”). It is assumed that the tangent operator is symmetric [7], i.e., when the tangent operator is written as a \(6\times 6\) matrix only the upper half of the components should be defined. The non-symmetric tangent operator tensors should be symmetrized as shown in the exemplary source files provided with CalculiX. It has been demonstrated in the literature that the performed symmetrization has no negative influence on the accuracy of the FE computations and very limited influence on their robustness, e.g., [10, 12]. Below the indexes of the fourth-order tensor components have been listed in the \(6\times 6\) matrix (the indexes of the “stiff” column matrix components are given in the brackets; the Voigt notation is not used):
The subroutine UMAT calculates the components of stress and material tangent operator at each Gauss integration point. These quantities are subsequently used by CalculiX to form up the element stiffness matrix. Finally, the global stiffness matrix is assembled by CalculiX using the element stiffness matrices. This procedure is repeated during every iteration of the Newton–Raphson process for all increments of the analysis (Fig. 1).
The UMAT subroutine is written in Fortran 77 language. In order to use it with CalculiX the code should be compiled to the dynamic link library file (DLL)Footnote 1. The DLL file should be placed in the same folder on the computer’s hard drive as the CalculiX solver executable. Proper references to the user subroutine should be included in the CalculiX input file on the *MATERIAL and *SOLID SECTION cards. That is:
*MATERIAL, NAME=@YOSHIDA
*USER MATERIAL, CONSTANTS=8
79308.361,0.3,843.902,-216.91355,213.92731,58791.656,147.73622,1803.7759
284
*DEPVAR 25
and
*SOLID SECTION, ELSET=SOLIDPART-1, MATERIAL=@YOSHIDA
where “YOSHIDA” is the name of the DLL file containing the compiled UMAT code for the elastoplastic model by Yoshida [29]. This UMAT code can be found in the Appendix Section. The calculations performed by the developed subroutine follow the list in the box below. In the case of the Yoshida elastoplastic model \(M=2\) with \(\gamma _{2}=0\), whereas the isotropic hardening behavior is simulated using the rule by Voce, cf [29].
The number of the utilized backstresses can be easily increased by a proper modification to the attached code. The UMAT subroutine has been written in a general form so that any other function than Voce defining the isotropic hardening behavior can be easily implemented by modifying the code. Some alternative forms of the function \(R(\bar{e}^{p})\) and its derivative are listed in Table 1.
It should be emphasized that the maximum number of material parameters which can be listed in a single row in the *Material card is eight. If there are more parameters, they should be listed in the subsequent rows. Moreover, if the number of the model’s parameters is precisely eight (as in the example given above) the temperature should be given in the subsequent row of the input file, regardless of the type of analysis [7].
6 Exemplary problems
Below some exemplary simulations are discussed which were utilized to verify the performance of the developed UMAT code. The verification tests included simulating processes with homogenous strain and stress fields: uniaxial tension/compression (UT/UC), equibiaxial tension/compression (BT/BC) and simple shear (SS). The radial return mapping algorithm was used to derive equation sets which describe the aforementioned processes. These equations were utilized to write simulation programs in Scilab software [21] which were further used to verify the results of the FE simulations performed with CalculiX. In addition to the problems mentioned above some more complex examples were considered as well.
6.1 Uniaxial tension/compression (UT/UC)
A uniaxial stress state is assumed. The matrices containing the components of the total stress tensor, its deviator (according to Eq. (1.3)) and the backstress tensor are given as:
Thus:
and the HMH equivalent stress takes the form:
It follows from the generalized Hooke’s law given by Eqs. (1.1) and (2) that the axial elastic strain component is
where according to the assumed boundary conditions:
thus:
The axial stress component in the increment \(n+1\) is given as:
with the axial elastic strain component
The total strain and plastic strain matrices take the form:
where \(\varepsilon _{a}\) is the total axial strain, \(\varepsilon _{l}\) is the total lateral strain, whereas \(\varepsilon ^{p}\) is the axial plastic strain component. It follows from Eqs. (54) and (55) that Eq. (53) can be rewritten as:
The components of the \(\mathbf{Z}\) stress are assumed in the following form:
Thus, it follows from Eq. (26) that the axial component of the normalized effective stress is:
After substituting Eq. (58) into Eq. (16.1) it is found that:
Inserting Eq. (59) into Eq. (56.1) results in
According to Eq. (15.1) the axial component of the i-th backstress in the increment \(n+1\) is
while it follows from Eq. (10) that the total axial backstress is
whereas \(X_{11}=\frac{2}{3}X\) and \(X_{11}^{(i)}=\frac{2}{3}X^{(i)}\), thus
After inserting Eq. (59) into Eq. (61) it is found that
Subtracting Eq. (63) from Eq. (60) and substituting Eq. (64) gives:
It follows from Eqs. (26), (47), and (57) that
thus
According to Eq. (20) the following equality should hold when the material is actively yielding:
Substituting Eq. (68) into Eq. (67) leads to:
Thus, after inserting Eq. (69) into Eq. (65) and some rearrangements it is found that:
where \(\bar{e}^{p}_{n+1}=\bar{e}^{p}_{n}+\Delta \bar{e}^{p}\). The following notation is used:
It follows from Eqs. (22), (47), and (57) that
Substituting Eqs. (71) and (72) into Eq. (70) after some rearrangements gives:
The following equation is also valid:
Inserting Eq. (68) into Eq. (74) and further rearrangement yields:
which is the nonlinear algebraic equation that should be solved for the effective plastic strain increment \(\Delta \bar{e}^{p}\). If the isotropic hardening function is assumed in the form proposed by Chaboche and Rousselier, then:
The derived set of equations was utilized to write a Scilab program designated for simulating uniaxial tension and compression processes. The computations performed by the program have been listed in the box below. The Scilab function fsolve [21] was used for solving the nonlinear algebraic equation given by Eq. (75). The developed program was used to verify the results of the FE simulations performed using the UMAT code.
The data for DP1000 steel by Zimniak and Wiewiórska [30] were utilized to determine the material parameters of the elastoplastic constitutive model by Yoshida. The evaluated parameter values are listed in Table 2. This material parameter set was used for the numerical simulations both in CalculiX and Scilab. In the case of the Yoshida model \(M=2\) in Eq. (62) with \(\gamma _{2}=0\) and \(N=1\) in Eq. (76).
The simulation of the uniaxial tension/compression process was performed in CalculiX using a cubic geometrical model with the dimensions 1mm\(\times \)1mm\(\times \)1mm. The cube was meshed with a single C3D8 elementFootnote 2. In Fig. 2a the applied boundary conditions have been illustrated. A kinematic excitation was assumed. A ramp displacement \(\delta \) in the direction “1” of the rectangular coordinate system was applied to the cube’s frontal face ABCD (see Fig. 2c). The following boundary conditions were applied to the other faces of the cube: a zero displacement in the direction “1” was set on the face EFGH, a zero displacement in the direction “2” on the face AEHD, and a zero displacement in the direction “3” on the face ABFE. After reaching the maximum value of \(\delta =0.07\) mm the displacement started decreasing linearly with the analysis time. The simulation ended with \(\delta =0\) mm. The axial strain is calculated as: \(\varepsilon _{a}=\delta /1=\delta \).
The results obtained using the finite element method (FEM) in CalculiX were compared to those generated by the simulation using the Scilab program. In Fig. 3a the comparison of the stress–axial strain responses produced independently by the two aforementioned methods can be seen. In Fig. 3b the obtained plots of the axial strain (\(\varepsilon _{a}\)) vs the lateral strain (\(\varepsilon _{l}\)) are compared. An excellent agreement is found in both cases.
Another uniaxial tension/compression simulation was performed using the same FE model and set of boundary conditions with a more complex loading history. In this approach the displacement of the cube’s ABCD face was defined using the increasing saw function. It can be seen in Fig. 4a and b that again an excellent agreement was found between the results produced by CalculiX and Scilab. In Fig. 4c the assumed complex loading history can be seen.
Both of the described FE simulations were repeated for the cube meshed with twenty-seven C3D8 elements. Again a very good agreement was observed between the results generated using CalculiX and Scilab. The simulations described above were also performed for different types of finite elements, i.e., C3D20Footnote 3, C3D4Footnote 4 and C3D10Footnote 5. No decrease in the performance of the developed UMAT code was observed.
6.2 Equibiaxial tension/compression (BT/BC)
An equibiaxial stress state is assumed. The stress tensor components and the volumetric stress are given as:
It follows that the components of the stress deviator take the form:
The backstress and the auxiliary stress \(\mathbf{Z}\) are assumed in a similar form to the stress deviator, i.e.,
whereas, due to the plastic incompressibility (\({{\,\mathrm{tr}\,}}({\varvec{\varepsilon }}^{p})=0\)), the plastic strain has the following components:
It follows from Eqs. (78) and (79.1) that
thus the HMH equivalent stress takes the form:
According to the generalized Hooke’s law as given by Eqs. (1.1) and (2) after some rearrangements the elastic strain components are given as:
After taking into account that \(\sigma _{11}=\sigma _{22}=\sigma \) and \(\sigma _{33}=0\) and some further manipulations it is found that:
The matrix of the components of the total strain tensor takes the form:
It follows from Eqs. (85) and (5) that:
Thus, Eq. (84.1) can be written in the following incremental form:
so that the stress in the increment \(n+1\) is given as:
After introducing the predictor stress Eq. (88) takes the form:
It follows from Eqs. (79.1,2) and (26) that
According to Eqs. (16.1) and (90.2) the plastic strain increment \(\Delta \varepsilon ^{p}_{11}\) is given by the following relation:
Assuming \(X_{11}^{(i)}=\frac{1}{3}X^{(i)}\), it follows from Eqs. (79.1), (10), (15.1) and (91) that
Subtracting Eq. (92.1) from Eq. (89.1) and substituting Eq. (92.2) after some rearrangements gives:
It follows from Eqs. (26), (78), and (79.2) that
whereas inserting Eq. (82) into Eq. (20) results in
The \(Z_{11}\) component of the auxiliary stress is given as:
Thus, according to Eqs. (79.2) and (96):
After substituting Eqs. (94), (95) and (97.2) into Eq. (93) and some manipulations it is found that:
where the following notation is adapted:
with \(w_{i}\) (\(i=1,2,\dots ,M\)) given by Eq. (15.2). Equation (98) can be transformed into the form:
which is the nonlinear algebraic equation that has to be solved numerically for the effective plastic strain increment \(\Delta \bar{e}^{p}\). The following relation which follows from Eq. (98) is used for updating the stress when the plastic strain increment is determined:
In the case of the Yoshida model \(M=2\) with \(\gamma _{2}=0\), whereas the isotropic hardening is described using the model by Voce (\(N=1\) in Eq. (76)).
The derived equations were used to write a Scilab program designated for simulating the equibiaxial tension/compression processes. The calculations performed by the program during every computational step have been gathered in the box below. The fsolve function offered by Scilab was utilized for solving Eq. (100). The developed Scilab program was used to verify the results of the FE simulations performed using the UMAT code. In Table 2 the material parameter values which were used for the simulations are gathered.
The simulation of the equibiaxial tension/compression process was performed in CalculiX using a cubic geometrical model with the dimensions 1mm\(\times \)1mm\(\times \)1mm. The cube was meshed with a single C3D8 element. In Fig. 2b the applied boundary conditions have been illustrated. A kinematic excitation was assumed. A ramp displacement \(\delta \) in the direction “1” of the rectangular coordinate system was applied to the two of the cube’s faces, i.e., ABCD and BFGC (see Fig. 2c). The following boundary conditions were applied to the other faces of the cube: a zero displacement in the direction “1” was set on the face EFGH, a zero displacement in the direction “2” on the face AEHD, and a zero displacement in the direction “3” on the face ABFE. After reaching the maximum value of \(\delta =0.05\) mm the displacement started decreasing linearly with the analysis time. The simulation ended when \(\delta =0\) mm.
The results obtained in CalculiX were compared with those generated by Scilab program. In Fig. 5a the stress–axial strain (the strain in the axes of tension) response produced by FEM simulation was compared with that generated by the Scilab program. In Fig. 5b the obtained plots of the lateral strain vs the axial strain are compared. In both cases an excellent agreement is found between the results generated by CalculiX and Scilab. The same analysis was repeated for a larger number and different types of finite elements (C3D4, C3D10, C3D20). Again, a very good agreement between the results obtained using CalculiX and Scilab was found.
6.3 Simple shear (SS)
In the case of SS process the stress, the backstress, and the auxiliary stress tensors have the following components:
It follows from Eqs. (2) and (5) that the total shear stress in the \(n+1\) increment can be expressed as
It is seen in Eq. (102.2) that \(X_{12}=X\), whereas \(X_{12}^{(i)}=X^{(i)}\); thus, according to Eqs. (10) and (15.1) for the increment \(n+1\) we have:
where \(w_{i}\) (\(i=1,2,\dots ,M\)) is given by Eq. (15.2). Subtracting Eq. (104.1) from Eq. (103.1) and substituting Eq. (104.2) yields
It follows from Eqs. (22) and (102.3) that
According to Eqs. (102.3) and (26):
Thus, using Eqs. (16.1) and (107.2) the following relation for the component of the shear plastic strain increment is found:
Utilizing Eqs. (106) and (108) in Eq. (105) leads to the following relationship:
It follows from Eqs. (102.1) and (102.2) that the HMH equivalent stress is in the considered case given by the formula:
Thus, according to Eqs. (26), (107.1,2), and (110) we have:
while inserting Eq. (110) into Eq. (20) gives
Substituting Eqs. (111.2) and (112) into Eq. (109) after some rearrangements yields
where
It follows from Eq. (113) that
Inserting Eq. (112) into Eq. (115) gives
which is the nonlinear algebraic equation that has to be solved numerically for \(\Delta \bar{e}^{p}\) at every computational step of the simulation. When the law by Chaboche and Rousselier is applied to simulate the isotropic hardening behavior, the function \(R(\bar{e}^{p}_{n}+\Delta \bar{e}^{p})\) is given by Eq. (76). Substituting Eq. (108) into Eq. (104.2) results in the following formula for updating the backstress:
The derived set of equations was utilized to write a Scilab program which can be used for performing simulations of the SS processes. The calculations performed by the Scilab program at every computational step of the numerical simulation are listed in the box. The fsolve function was utilized for solving Eq. (116). Again, in the considered case of the Yoshida model \(M=2\), \(\gamma _{2}=0\), while the isotropic hardening behavior is governed by the Voce rule (\(N=1\) in Eq. (76)).
The developed Scilab program was used to validate the results generated by CalculiX during the SS process simulation. The material parameter set given in Table 2 was utilized. The boundary conditions used for the simulation performed in CalculiX are illustrated in Fig. 6a. A cube was meshed with a single C3D8 finite element. The displacements on the ABCD face of the cube (see Fig. 6b) were set to zero. The displacements in the directions “2” and “3” were set to zero on the face EFGH. The displacement \(\delta \) of the face EFGH in the direction “1” was used as the kinematic excitation which increased linearly up to the maximum value of \(\delta =0.2\) mm. After reaching the maximum the displacement value started decreasing linearly to zero. Since \(\delta = \tan \gamma \approx \gamma \) (Fig. 6), it follows that the shear strain \(\varepsilon =\gamma /2=\delta /2\). In Fig. 7 the comparison of the results produced by Scilab and CalculiX is presented. An excellent agreement was found. The simulation was repeated for the cube meshed using C3D4, C3D10, and C3D20 elements. In all the considered cases a very good agreement was found between the results generated by the Scilab program and those obtained from the FE simulation in CalculiX.
6.4 Cyclic biaxial tension/compression
In order to investigate the accuracy of the FE computations performed using the developed UMAT subroutine a simulation of cyclic biaxial tension/compression was performed in CalculiX. Again, a cube with the edge length of 1mm, meshed with a single C3D8 element, was used for the simulation. A kinematic excitation was assumed. A displacement \(\delta _{1}\) in the direction “1” of the rectangular coordinate system was applied to the cube’s face ABCD, Fig. 2c. The time history of \(\delta _{1}\) is shown in Fig. 8. Another displacement \(\delta _{2}\) in the direction “2” was defined on the cube’s BFGC face. The history of \(\delta _{2}\) can be seen in Fig. 8. The following boundary conditions were applied to the other faces of the cube: a zero displacement in the direction “1” was set on the face EFGH, a zero displacement in the direction “2” on the face AEHD, and a zero displacement in the direction “3” on the face ABFE.
The simulation was repeated for different sizes of the fixed time increment \(\Delta t\), i.e., 1E-2, 1E-3, 1E-4, and 1E-5 s. The FE solution obtained for \(\Delta t= 1E-5\) s was assumed as exact. The following normalized error function was used to estimate the accuracy of FE computations for different incrementation size:
with \({\varvec{\sigma }}^{exa}\) being the Cauchy stress tensor calculated for \(\Delta t= 1E-5\) s, whereas \({\varvec{\sigma }}^{com}\) is the stress tensor computed for another increment size for which the error value is being calculated. In Fig. 9a and b the stress–strain histories that were computed for the selected increment sizes are shown. In Fig. 9c the time history of the error calculated using Eqs. (118) for different incrementations can be seen. The obtained error values are negligible and proportional to the increment size value. By comparing Figs. 8 and 9c it can be noticed that any non-smoothness in the assumed displacement history results in an instantaneous jump of the error.
6.5 Flat bar with hole in tension
6.5.1 Ramp loading
A notched bar in tension was considered as a performance test for the developed UMAT subroutine. Due to the symmetries of the problem only one 8-th of the bar can be considered. The dimensions of the bar and the applied boundary conditions are shown in Fig. 10a. A ramp displacement \(\delta \) of the bar’s upper face was used as a kinematic excitation. The bar was elongated until the maximum value of \(\delta =1\) mm was reached. The bar was meshed using C3D8 elements (see Fig. 10b). The material parameter values gathered in Table 2 were used for the Yoshida elastoplastic model defined by subroutine UMAT.
In Fig. 11 the results of the FE simulation are presented. The largest residual force (LRF) values recorded during the subsequent iterations are gathered in Table 3. It can be seen that for some increments the quadratic convergence of solution was achieved.
6.5.2 Cyclic loading
In the second approach the same set of boundary conditions as before was used; however, the time history of the displacement \(\delta \) (Fig. 10a) was defined using a triangular wave function, Fig. 12a. The simulation was performed for different fixed increment sizes, i.e., 5E-3, 2.5E-3, and 1E-3 s. The total reaction force F at the bar’s upper face was calculated for each increment. The plot of F vs. \(\delta \) for selected incrementations can be seen in Fig. 12b.
In Table 4 the analysis time values obtained for different increment sizes are gatheredFootnote 6. It is seen that the analysis time is approximately inversely proportional to the increment size.
6.6 Hollow cylinder under cyclic tension/compression and torsion
A hollow cylinder subjected to cyclic axial tension/compression and torsion was considered. The cylinder was meshed with 19440 C3D8 elements, Fig. 13a. One end of the cylinder was assumed fixed with all displacements set to zero. An axial displacement was defined on the cylinder’s frontal face. Moreover, a rotation of the frontal face around the cylinder’s axis was applied. The assumed time histories of the axial displacement \(\delta \) and the angle of twist \(\alpha \) are shown in Fig. 13b. The maximum values were \(\delta _{max}=1.08\) mm for the axial displacement and \(\alpha _{max}=9.8^{o}\) for the angle of twist.
The simulation was performed in two variants using the automatic incrementation option. For the first variant the maximum time increment size \(\Delta t_{max}\) was set to 1E-1 s, while for the second variant it was set to 2.5E-2 s. The computed results that were saved for the selected finite element no. 29983 (Fig. 13a) can be seen in Fig. 14. Very similar results were obtained for both considered incrementation methods.
7 Conclusions
In this work the FE implementation of cyclic elastoplasticity was discussed. The radial return mapping algorithm was used to develop a numerical integration scheme for a group of constitutive equations based on the elastoplastic model proposed by Chaboche and Rousselier [4, 5]. A fourth-order tangent operator was derived which is consistent with the utilized algorithm of integrating the constitutive model. To the best of the author’s knowledge this particular form of the tangent operator has not been presented in the literature before.
A subroutine UMAT was developed which allows to implement the elastoplastic model by Yoshida [29] into the FE program CalculiX. The UMAT code has a general form which allows to easily modify the isotropic hardening rule used by the model. The number of the utilized backstress variables can be increased easily as well. Many validation tests were performed in order to verify the performance of the developed UMAT subroutine. An excellent agreement was found between the results produced by UMAT and those of the verification programs. What is more, a quadratic convergence was observed during the Newton–Raphson iterative process.
Notes
This can be performed using the MinGW free and open-source software development environment, for instance.
Cubic, three-dimensional, eight nodes.
Cubic, three-dimensional, twenty nodes.
Tetrahedral, three-dimensional, four nodes.
Tetrahedral, three-dimensional, ten nodes.
A PC with Intel i7 processor (7th generation) and 16 GB RAM was used to perform the FE simulations.
Abbreviations
- c :
-
Correction to effective plastic strain increment
- \(b_\mathrm{{i}}\) :
-
i-th isotropic hardening function parameter (\(i=1,2,\dots ,N\))
- \(C_\mathrm{{i}}\) :
-
i-th kinematic hardening parameter (\(i=1,2,\dots ,M\))
- \({{\varvec{\mathcal {C}}}^\mathrm{{e-p}}}\) :
-
Consistent elastoplastic tangent operator fourth-order tensor
- E :
-
Young’s modulus
- \(\bar{e}^\mathrm{{p}}\) :
-
Effective plastic strain
- \(\mathbf{e}^\mathrm{{e}}\) :
-
Elastic strain deviator
- \(\varepsilon _\mathrm{{a}}\) :
-
Axial strain component
- \(\varepsilon _\mathrm{{l}}\) :
-
Lateral strain component
- \(\varepsilon ^\mathrm{{p}}\) :
-
Axial plastic strain component
- \({\varvec{\varepsilon }}^\mathrm{{e}}\) :
-
Elastic small strain tensor
- \({\varvec{\varepsilon }}^\mathrm{{p}}\) :
-
Plastic small strain tensor
- \(h^{*}\) :
-
Effective hardening modulus
- \(\mathbf{I}\) :
-
Fourth-order identity tensor
- \(J_{2}(\bullet )\) :
-
Second-order tensor second invariant
- k :
-
Initial yield stress
- K :
-
Bulk (Helmholtz) modulus
- \(\bar{\mathbf{n}}\) :
-
Normalized effective stress tensor
- p :
-
Volumetric stress
- \(Q_\mathrm{{i}}\) :
-
i-th isotropic hardening function parameter (\(i=1,2,\dots ,N\))
- r :
-
Function of effective plastic strain increment
- R :
-
Isotropic hardening function
- \(R_\mathrm{{i}}\) :
-
i-th isotropic hardening function term (\(i=1,2,\dots ,N\))
- \(\mathbf{s}\) :
-
Stress deviator
- \(\mathbf{s}^\mathrm{{pr}}\) :
-
Stress deviator predictor
- \(w_\mathrm{{i}}\) :
-
i-th auxiliary effective plastic strain increment function (\(i=1,2,\dots ,M\))
- \(\mathbf{X}\) :
-
backstress tensor
- \(\mathbf{X}^\mathrm{{(i)}}\) :
-
i-th backstress tensor component (\(i=1,2,\dots ,M\))
- \(\mathbf{Z}\) :
-
Auxiliary second-order stress tensor
- \(\alpha \) :
-
Auxiliary function of effective plastic strain increment
- \(\gamma \) :
-
Engineering shear strain
- \(\gamma _\mathrm{{i}}\) :
-
i-th kinematic hardening parameter (\(i=1,2,\dots ,M\))
- \({\varvec{\sigma }}\) :
-
Stress tensor
- \(\overline{\sigma }^\mathrm{{pr}}\) :
-
Equivalent HMH predictor stress
- \(\sigma _\mathrm{{y}}\) :
-
Yield stress
- \(\lambda \) :
-
Lamé elastic parameter
- \(\lambda ^{*}\) :
-
Effective Lamé parameter
- \(\mu \) :
-
Shear (Kirchhoff) modulus
- \(\mu ^{*}\) :
-
Effective shear modulus
- \(\nu \) :
-
Poisson’s ratio
- \(\epsilon \) :
-
Total dilatation
- \(\epsilon ^\mathrm{{e}}\) :
-
Elastic dilatation
- \(\mathbf{1} \) :
-
Second-order identity tensor
- \({{\,\mathrm{tr}\,}}(\bullet )\) :
-
Trace operator
- \(\otimes \) :
-
Dyadic product
- \(\cdot \) :
-
Double contraction product
- \({{\,\mathrm{sgn}\,}}(\bullet )\) :
-
Signum function
- \((\bullet )^{\cdot }\) :
-
Time derivative operator
References
Artioli, E., Auricchio, F., Beirão da Veiga, L.: Second-order accurate integration algorithms for von-Mises plasticity with a nonlinear kinematic hardening mechanism. Comput. Methods Appl. Mech. Engg. 196, 1827–1846 (2007)
Armstrong, P.J., Frederick, C.O.: A mathematical representation of the multiaxial Bauschinger effect. GEGB report RD/B/N731, Berkley Nuclear Laboratories (1966)
Auricchio, F., Taylor, R.L.: Two material models for cyclic plasticity: nonlinear kinematic hardening and generalized plasticity. Int. J. Plast. 11, 65–98 (1995)
Chaboche, J.L., Rousselier, G.: On the plastic and viscoplastic constitutive equations - part I: rules developed with internal variable concept. J. Press. Vessel Technol. 105, 153–158 (1983)
Chaboche, J.L., Rousselier, G.: On the plastic and viscoplastic constitutive equations - part II: application of internal variable concepts to the 316 stainless steel. J. Press. Vessel Technol. 105, 159–164 (1983)
Code Aster: Documentation 15, https://www.code-aster.org/V2/doc/default/en/index.php?man=R (2020). Accessed 26 April 2021
Dhondt, G.: CalculiX CrunchiX USER’S MANUAL version 2.17. (2020)
Dhondt, G.: The finite element method for three-dimensional thermomechanical applications. Wiley, Chichester (2004)
Hibbit, B., Karlsson, B., Sorensen, P.: ABAQUS Theory Manual. Hibbit, Karlsson & Sorensen Inc., Pawtucket (2008)
Hopperstad, O.S., Remseth, S.: A return mapping algorithm for a class of cyclic plasticity models. Int. J. Numer. Meth. Engng 38, 549–564 (1995)
Jemioło, S., Gajewski, M.: Hyperelastoplasticity. Monographs of Department of Strength of Materials, Theory of Elasticity and plasticity. Warsaw University of Technology Publishing House, Warsaw (2017) [in Polish]
Kobayashi, M., Ohno, N.: Implementation of cyclic plasticity models based on a general form of kinematic hardening. Int. J. Numer. Meth. Engng 53, 2217–2238 (2002)
Kowalewski, Z.L., Szymczak, T., Maciejewski, J.: Material effects during monotonic-cyclic loading. Int. J. Solids Struct. 51, 740–753 (2014)
Kullig, E., Wippler, S.: Numerical integration and FEM-implementation of a viscoplastic Chaboche-model with static recovery. Comput. Mech. 38, 491–503 (2006)
Ludwigson, D.C.: Modified stress-strain relation for FCC metals and alloys. Metall. Trans. 2, 2825–2828 (1971)
Ludwik, P.: Elemente der technologischen Mechanik. Springer Verlag, Berlin (1909) ([in German])
Marciniak, Z., Kuczyński, K.: The forming limit curve for bending processes. Int. J. Mech. Sci. 21, 609–621 (1979)
Mróz, Z., Maciejewski, J.: Constitutive modeling of cyclic deformation of metals under strain controlled axial extension and cyclic torsion. Acta Mech. 229, 475–496 (2018)
Marc 2008 r1, volume A: theory and user information. MSC.Software corporation, Santa Ana (2008)
Prager, W.: A new method of analyzing stresses and strains in work hardening plastic solids. J. Appl. Mech. 23, 795–810 (1956)
Scilab: Documentation, https://wiki.scilab.org/Documentation (2020). Accessed 11 May 2021
Simo, J.C., Hughes, T.J.R.: Computational inelasticity. Springer-Verlag, New York (2000)
Spencer, A.J.M.: Continuum mechanics. Dover Publications Inc, Mineola, New York (2004)
Swift, H.W.: Plastic instability under plane stress. J. Mech. Phys. Solids 1, 1–18 (1952)
Voce, E.: The relationship between stress and strain for homogeneous deformation. J. Inst. Metals 74, 537–562 (1948)
Wójcik, M., Skrzat, A.: Identification of Chaboche-Lemaitre combined isotropic-kinematic hardening model parameters assisted by the fuzzy logic analysis. Acta Mech. 232, 685–708 (2021)
Wu, H.-C.: Continuum mechanics and plasticity. Chapman & Hall/CRC Press, New York (2005)
Yang, M., Feng, M.: Finite element implementation of non-unified visco-plasticity model considering static recovery. Mech. Time-Depend. Mater. 24, 59–72 (2020)
Yoshida, F., Urabe, M., Hino, R., Toropov, V.V.: Inverse approach to identification of material parameters of cyclic elasto-plasticity for component layers of a bimetallic sheet. Int. J. Plast. 19, 2149–2170 (2003)
Zimniak, Z., Wiewiórska, M.: Material parameters identification method considering the Bauschinger effect in sheet metal forming modeling. In: Physical and mathematical modeling of metal forming processes, Scientific Surveys of Warsaw University of Technology 238, 65-72. Warsaw University of Technology Publishing House, Warsaw (2011) [in Polish]
Acknowledgements
This work was supported by NCN Project No. 2019/35/B/ST8/03151, entitled “Yield Surface Identification of Functional Materials and Its Evolution Reflecting Deformation History under Complex Loadings.”
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Appendices
Appendix—Solution of nonlinear algebraic equation
The increment of effective plastic strain has to be found by solving Eq. (24) which is a nonlinear algebraic equation with respect to \(\Delta \bar{e}^{p}\). It can be written as:
The Newton–Raphson method is utilized for the purpose of solving this equation. If we expand \(r(\Delta \bar{e}^{p})\) in a series around \(\Delta \bar{e}^{p}\) and limit ourselves to the first two terms, for the i-th iteration we obtain:
with \(c_{i+1}\) being the correction term which is given as
At every step of the iterative procedure the calculated value of the correction term is used to update the value of the searched effective plastic strain increment, i.e.,
The derivative of \(r(\Delta \bar{e}^{p})\) with respect to \(\Delta \bar{e}^{p}\) is calculated as follows:
The function \(\alpha (\Delta \bar{e}^{p})\) is defined by Eq. (21). Its derivative with respect to \(\Delta \bar{e}^{p}\) is given as:
where it follows from Eq. (15.2) that
Substituting Eq. (125) into Eq. (124) leads to:
Using Eq. (21) after some further rearrangements it is found that:
The differential of \(J_{2} (\mathbf{Z})\) with respect to \(\Delta \bar{e}^{p}\) follows from the chain rule, i.e.,
with
Inserting Eqs. (129.1,2) into Eq. (128) leads to:
The differential of \(R (\bar{e}^{p}_{n+1})\) with respect to \(\Delta \bar{e}^{p}\) is given by the following relation:
and has to be calculated for the specific form of the isotropic hardening function, cf Table 1.
Equations (119), (121), (123), (127), (130), and (131) are used to calculate the correction term \(c_{i+1}\) during every step of the Newton–Raphson iterative procedure. Subsequently, the effective plastic strain is updated according to Eq. (122). These actions are repeated in a loop until the demanded accuracy of the solution is reached.
Appendix—Calculating variations
It follows from the chain rule that the variation \(\delta J_{2} (\mathbf{Z})\) can be expressed as:
where according to Eqs. (22) and (15.2)
Taking the variation of Eq. (113.1) leads to:
Inserting Eq. (125) into Eq. (134) gives:
Thus, substitution of Eqs. (129.1) and (135) into Eq. (132) results in:
The variation of the normalized effective stress given by Eq. (26) takes the form:
After inserting Eqs. (135) and (136) into Eq. (137) the following relation is found:
Appendix—Coding in Fortran 77
The following UMAT code is provided under the terms of the GNU General Public License (GPL). If you use the UMAT code please cite this article in your work (book, article, report, etc.).
Rights and permissions
Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article’s Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article’s Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/.
About this article
Cite this article
Suchocki, C. On finite element implementation of cyclic elastoplasticity: theory, coding, and exemplary problems. Acta Mech 233, 83–120 (2022). https://doi.org/10.1007/s00707-021-03069-3
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00707-021-03069-3