Finite element formulation of plane stress plasticity
In [1], we stated the basic FEM procedures to deal with the elastic-plastic problem applicable to the general three-dimensional state of stress, plane strain, and an axisymmetric body. These problems are those in which all three components of the normal stress are free variables. However, in plane stress, the component perpendicular to the midplane of the body is equal to zero, but the component of the stress deviator in this direction is not zero, and these relationships cannot be used for this case without modification.
7.1 Plane stress linear elasticity
The plane stress assumption was introduced in the analysis of bodies in which one dimension was significantly smaller than the other dimensions. Consider a loaded body in equilibrium (Fig. 1), where the plane (x, y) is the plane of symmetry (midplane $S$) of the body. Let all external loads (including reactions) be distributed symmetrically to the relatively small thickness $t$ (x, y) of the body. Thus, the load resultants acting in the midplane, that is, the continuous line load $\mathbf{p}(x,y)$ and body load $\mathbf{b}(x,y)$, are independent of $z$. Under these conditions, it is enough to consider only the displacement functions of the points on the midplane of the body
$$\mathbf{u}=\begin{bmatrix} u(x,y) \\ v(x,y) \end{bmatrix}$$
(7.1)
Fig. 7.1 The midplane of the body and a 2D finite element (hrúbka = thickness)
The non-zero components of the stress tensor placed in the column vector $\boldsymbol{\sigma}$ are only the components that lie in the plane (x, y)
$$\boldsymbol{\sigma}=\begin{bmatrix} \sigma_x & \sigma_y & \tau_{xy} \end{bmatrix}^T$$
(7.2)
Hence, we say that the body (wall, membrane) is in a plane stress state.
In the column vector $\mathbf{\varepsilon}$ of the strain components, we will also consider only three components (In fact material reacts to the plane stress state by the transverse deformation $\varepsilon_z$, but this can be determined from the deformations in the midplane.)
$$\boldsymbol{\varepsilon}=\begin{bmatrix} \varepsilon_x & \varepsilon_y & 2\varepsilon_{xy} \end{bmatrix}^T$$
(7.3)
After simplifications
$$\sigma_z = \tau_{yz} = \tau_{zx} = \varepsilon_{yz} = \varepsilon_{zx} = 0$$
(7.4)
the strains in the plane (x,y) are given by
$$\varepsilon_x = \frac{\partial u}{\partial x},\quad \varepsilon_y = \frac{\partial v}{\partial y},\quad 2\varepsilon_{xy} = \frac{\partial u}{\partial y} + \frac{\partial v}{\partial x}$$
(7.5)
From the physical (material) equations we have
$$\varepsilon_x = \frac{1}{E}\left(\sigma_x - \nu\sigma_y\right),\quad \varepsilon_y = \frac{1}{E}\left(-\nu\sigma_x + \sigma_y\right),\quad 2\varepsilon_{xy} = \frac{2(1+\nu)}{E}\tau_{xy} = \frac{\tau_{xy}}{G}$$
(7.6)
and from the condition $\sigma_z = 0$
$$\varepsilon_z = -\frac{\nu}{E}\left(\sigma_x + \sigma_y\right)$$
(7.7)
Inverting (7.6) we get the stress components
$$\sigma_x = \frac{E}{1-\nu^2}\left(\varepsilon_x + \nu\varepsilon_y\right),\quad \sigma_y = \frac{E}{1-\nu^2}\left(\nu\varepsilon_x + \varepsilon_y\right),\quad \tau_{xy}=G\gamma_{xy}$$
(7.8)
Now the strain $\varepsilon_z$ can be expressed by substitution (7.8) to (7.7)
$$\varepsilon_z = -\frac{\nu}{1-\nu}\left(\varepsilon_x + \varepsilon_y\right)$$
(7.9)
The physical (constitutive) relationships in the matrix form are given by
$$\boldsymbol{\sigma}=\mathbf{D}^e\boldsymbol{\varepsilon}=\frac{E}{1-\nu^2}\begin{bmatrix} 1 & \nu & 0 \\ \nu & 1 & 0 \\ 0 & 0 & (1-\nu)/2 \end{bmatrix}\begin{bmatrix} \varepsilon_x \\ \varepsilon_y \\ 2\varepsilon_{xy} \end{bmatrix}$$
(7.10)
In the equations above $E$ is the Young modulus, $\nu$ denotes the Poisson ratio and
$$G = \frac{E}{2(1+\nu)}$$
(7.11)
is the shear modulus of the material.
7.2 Von Mises plane stress isotropic small strain plasticity with the linear hardening
In this case, we again consider only those strain components that lie in the midplane because $\varepsilon_z$ can be expressed by using these components, and for the plastic strain $\varepsilon_z^p$, we consider an incompressible material at plastic yielding ($\nu =0.5$). Thus, we have
$$\varepsilon_z = \varepsilon_z^e + \varepsilon_z^p = -\left[ \frac{\nu}{1-\nu}(\varepsilon_x^e + \varepsilon_y^e) + \varepsilon_x^p + \varepsilon_y^p \right]$$
(7.12)
where the splitting of $\varepsilon_z$ into elastic and plastic parts is introduced based on the assumption of small strain.
We need the von Mises equivalent stress $\bar{\sigma}$ for the plasticity condition
$$f = \bar{\sigma} - \bar{\sigma}_k(\bar{\varepsilon}^p) = 0$$
(7.13)
which at the plane stress state has form
$$\bar{\sigma} = \sqrt{\sigma_x^2 + \sigma_y^2 - \sigma_x\sigma_y + 3\tau_{xy}^2}$$
(7.14)
where $\bar{\sigma}_k(\bar{\varepsilon}^p)$ is the uniaxial hardened yield stress, which is a function of the accumulated plastic strain $\bar{\varepsilon}^p$.
Then the vector of plastic yielding is given by
$$\mathbf{f} = \left\{ \frac{\partial f}{\partial \boldsymbol{\sigma}} \right\} = \frac{1}{2\bar{\sigma}}\left\{ \begin{matrix} 2\sigma_x - \sigma_y \\ 2\sigma_y - \sigma_x \\ 6\tau_{xy} \end{matrix} \right\}$$
(7.15)
7.3 Stress increment specification
For the elastic test (trial) stress in the numerical incremental integration step from $n$ to $n+1$ we have
$$\mathsf{\sigma}_{n+1}^{test} = \begin{bmatrix} \sigma_{0x} \\ \sigma_{0y} \\ \tau_{0xy} \end{bmatrix} = \begin{bmatrix} \sigma_{nx} \\ \sigma_{ny} \\ \tau_{nxy} \end{bmatrix} + \frac{E}{1-\nu^2}\begin{bmatrix} 1 & \nu & 0 \\ \nu & 1 & 0 \\ 0 & 0 & (1-\nu)/2 \end{bmatrix}\begin{bmatrix} \Delta\varepsilon_x \\ \Delta\varepsilon_y \\ 2\Delta\varepsilon_{xy} \end{bmatrix} = \mathsf{\sigma}_n + \mathbf{D}^e\Delta\mathsf{\varepsilon}$$
(7.16)
and the equations of stress components after the stress point projection onto the updated yield surface are
$$\mathsf{\sigma}_{n+1} = \begin{bmatrix} \sigma_x \\ \sigma_y \\ \tau_{xy} \end{bmatrix} = \mathsf{\sigma}_{n+1}^{test} - \Delta\lambda \mathbf{D}^e\mathbf{f}_{n+1} = \begin{bmatrix} \sigma_{0x} \\ \sigma_{0y} \\ \tau_{0xy} \end{bmatrix} - \Delta\lambda \frac{E}{1-\nu^2}\begin{bmatrix} 1 & \nu & 0 \\ \nu & 1 & 0 \\ 0 & 0 & (1-\nu)/2 \end{bmatrix}\frac{1}{2\bar{\sigma}}\begin{bmatrix} 2\sigma_x - \sigma_y \\ 2\sigma_y - \sigma_x \\ 6\tau_{xy} \end{bmatrix}$$
(7.17)
where $\Delta\lambda$ is the unknown incremental plastic multiplier.
After an arrangement of equations (7.17), we get
$$\sigma_x + \sigma_y = \frac{\sigma_{0x} + \sigma_{0y}}{1 + K\Delta\bar{\lambda}}$$
(7.18)
$$\sigma_x - \sigma_y = \frac{\sigma_{0x} - \sigma_{0y}}{1 + 3G\Delta\bar{\lambda}}$$
(7.19)
$$\tau_{xy} = \frac{\tau_{0xy}}{1 + 3G\Delta\bar{\lambda}}$$
(7.20)
where
$$K = \frac{E}{2(1-\nu)},\quad \Delta\bar{\lambda} = \frac{\Delta\lambda}{\bar{\sigma}}$$
(7.21)
The unknown plastic multiplier $\Delta\bar{\lambda}$ has to satisfy the plasticity condition (7.13)
$$f_{n+1}(\Delta\bar{\lambda}) = \bar{\sigma}_{n+1}(\Delta\bar{\lambda}) - \bar{\sigma}_k(\Delta\bar{\lambda}) = 0$$
(7.22)
where for a linear hardening material the hardened yield stress $\bar{\sigma}_k$ is
$$\bar{\sigma}_k(\Delta\bar{\lambda}) = \sigma_k + H\bar{\varepsilon}_p = \sigma_k + H\Delta\lambda = \sigma_k + H\bar{\sigma}_{n+1}\Delta\bar{\lambda}$$
(7.23)
depending on the initial yield stress $\sigma_k$, the accumulated plastic strain $\bar{\varepsilon}_p$, and the hardening modulus
$$H = \frac{E E_t}{E - E_t}$$
(7.24)
where $E_t$ is the elastoplastic tangent modulus.
The relationship for the $\Delta\lambda$ determination has a more simple form when one uses the square of the condition (7.22)
$$q(\Delta\bar{\lambda}) = f_{n+1}^2(\Delta\bar{\lambda}) = \bar{\sigma}_{n+1}^2(\Delta\bar{\lambda}) - \bar{\sigma}_k^2(\Delta\bar{\lambda}) = 0$$
(7.25)
Squaring the von Mises stress $\bar{\sigma}$ (7.14) we get
$$\bar{\sigma}_{n+1}^2 = \frac{1}{4}\left[ (\sigma_x + \sigma_y)^2 + 3(\sigma_x - \sigma_y)^2 + 12\tau_{xy}^2 \right]$$
(7.26)
and after substituting (7.18)-(7.20)
$$\bar{\sigma}_{n+1}^2 = \frac{(\sigma_{0x} + \sigma_{0y})^2}{4(1 + K\Delta\bar{\lambda})^2} + \frac{3(\sigma_{0x} - \sigma_{0y})^2 + 12\tau_{0xy}^2}{4(1 + 3G\Delta\bar{\lambda})^2}$$
(7.27)
Then the auxiliary function $q$ (7.25) is given by
$$q(\Delta\bar{\lambda}) = \frac{(\sigma_{0x} + \sigma_{0y})^2}{4(1 + K\Delta\bar{\lambda})^2} + \frac{3(\sigma_{0x} - \sigma_{0y})^2 + 12\tau_{0xy}^2}{4(1 + 3G\Delta\bar{\lambda})^2} - \bar{\sigma}_k^2(\Delta\bar{\lambda}) = 0$$
(7.28)
The nonlinear equation (7.28), in fact, the other form of the consistency condition (7.22), enables us to solve $\Delta\bar{\lambda}$ using the Newton-Raphson iteration. Decomposition of the function $q$ in the reduced Taylor series gives the iterative relationship
$$\Delta\bar{\lambda}_{k+1} = \Delta\bar{\lambda}_k - \frac{q(\Delta\bar{\lambda}_k)}{q'(\Delta\bar{\lambda}_k)}$$
(7.29)
where $q'$ is the derivative of function $q$ by $\Delta\bar{\lambda}$ and which form according to (7.28) and (7.23) is as follows
$$q'(\Delta\bar{\lambda}) = \frac{\partial q}{\partial\Delta\bar{\lambda}} = 2\bar{\sigma}_{n+1}\frac{\partial\bar{\sigma}_{n+1}}{\partial\Delta\bar{\lambda}} - 2\bar{\sigma}_k\frac{\partial\bar{\sigma}_k}{\partial\Delta\bar{\lambda}} = 2\bar{\sigma}_{n+1}\frac{\partial\bar{\sigma}_{n+1}}{\partial\Delta\bar{\lambda}} - 2H(\sigma_k + H\bar{\sigma}_{n+1}\Delta\bar{\lambda})\left(\bar{\sigma}_{n+1} + \Delta\bar{\lambda}\frac{\partial\bar{\sigma}_{n+1}}{\partial\Delta\bar{\lambda}}\right)$$
(7.30)
From (7.27) after extraction and differentiation by $\Delta\bar{\lambda}$ we get the last needed relationship for the iterative procedure
$$\frac{\partial\bar{\sigma}_{n+1}}{\partial\Delta\bar{\lambda}} = -\frac{1}{\bar{\sigma}_{n+1}}\left( \frac{K(\sigma_{0x} + \sigma_{0y})^2}{4(1 + K\Delta\bar{\lambda})^3} + \frac{3G[(\sigma_{0x} + \sigma_{0y})^2 + 12\tau_{0xy}^2]}{4(1 + 3G\Delta\bar{\lambda})^3} \right)$$
(7.31)
The calculation of $\Delta\bar{\lambda}$ and the resulting stress $\mathsf{\sigma}_{n+1}$ are shown in the following example (the numerical results were calculated using the Mathematica 7 program, as shown in Fig. 7.2).
Example 7.1
Consider a body made of steel material and loaded with plane stress. Its properties were approximated using the von Mises loading function and linear hardening model. Consider a material particle, which previous state is without stress, deformed by strains $\varepsilon_x = 0,002$, $\varepsilon_y = -\,0,001$ and $\gamma_{xy} = 2\varepsilon_{xy} = 0,002$ and determine from the explicit relationships given above the final values of the stress components in the next integration step, that is, $\mathsf{\sigma}_{n+1}$. Given is E = 200000 MPa, $\sigma_k$ = 200 MPa, the linear elastoplastic tangent modulus $E_t = 100000$ MPa, $\nu = 0,3$. The required accuracy was $f_{n+1} = \bar{\sigma}_{n+1} - \bar{\sigma}_k < 0,001$ MPa.
Solution
The test stress is
$$\mathbf{\sigma}_0 = \begin{bmatrix} \sigma_{0x} \\ \sigma_{0y} \\ \tau_{0xy} \end{bmatrix} = \begin{bmatrix} 0 \\ 0 \\ 0 \end{bmatrix} + \frac{E}{1-\nu^2}\begin{bmatrix} 1 & \nu & 0 \\ \nu & 1 & 0 \\ 0 & 0 & (1-\nu)/2 \end{bmatrix}\begin{bmatrix} \Delta\varepsilon_x \\ \Delta\varepsilon_y \\ \Delta\gamma_{xy} \end{bmatrix} = \cdots = \begin{bmatrix} 373,6 \\ -87,9 \\ 153,8 \end{bmatrix}\ \text{MPa}$$
Test of plasticity condition (7.14) gives
$$\bar{\sigma}_0 = \sqrt{\sigma_{0x}^2 + \sigma_{0y}^2 - \sigma_{0x}\sigma_{0y} + 3\tau_{0xy}^2} = \sqrt{373,6^2 + (-87,9)^2 - 373,6(-87,9) + 3\cdot153,8^2} = 501,1\ \text{MPa} > \sigma_k = 200\ \text{MPa}$$
Because the test elastic stress $\bar{\sigma}_0$ is greater than the initial yield stress $\sigma_k$ of the material point in the investigation, it follows that an elastic-plastic deformation will occur. The resulting stress in such case must be determined from backward integration relationships.
The initial values for the calculation of stress at the elastic-plastic loading were $\Delta\bar{\lambda}_0 = 0$ and $\bar{\sigma}_{k0} = \sigma_k = 200$. Then, according to (7.24) - (7.28), the iterative calculation was performed by the program (the used relations do not contain matrices, and so we have chosen program Mathematica 7), as shown in Fig. 7.2.
(* Backward-Euler, Plane stress - explicitly *)
Off[General::spell,General::spell1]
(* Input values *)
EE=200000; mi=0.3; Sigk0=200; G=EE/(2+2*mi); Et=100000; H=EE*Et/(EE-Et);
(* Start point *)
sxn=0;
syn=0;
sxyn=0;
(* Deformation increment *)
EpsX= 0.002;
EpsY=-0.001;
EpsXY=0.002;
(* Elastic trial stress *)
K=EE/2/(1-mi);
K1=EE/(1-mi^2);
sx0=sxn+K1*(EpsX+mi*EpsY);
sy0=syn+K1*(EpsY+mi*EpsX);
sxy0=sxyn+K1/2*(1-mi)*EpsXY;
(* Initial values of iteration *)
La=0;
Sigk=Sigk0;
Sekv=0;
c1=(sx0+sy0)^2;
c2=3*(sx0-sy0)^2+12*sxy0^2;
(* Iterative correction *)
While[Abs[Sigk-Sekv]>0.001,
Sekv2=0.25*(c1/(1+K*La)^2+c2/(1+3*La*G)^2);
q=Sekv2-Sigk^2;
Sekv=Sqrt[Sekv2];
dSekv=-1/(Sekv)*(K*c1/(1+K*La)^3+3*G*c2/(1+3*G*La)^3);
dq=2*Sekv*dSekv-2*Sigk*(H*Sekv+La*H*dSekv);
La=La-q/dq;
Sigk=Sigk0+H*La*Sekv
];
(* Stess calculation *)
A1=1+0.5*La*EE/(1-mi);
A2=1+3*La*G;
sps=(sx0+sy0)/A1;
sms=(sx0-sy0)/A2;
SXdef=(sps+sms)/2;
SYdef=(sps-sms)/2;
SXYdef=sxy0/A2;
(* Value of the new yield stress *)
SigkDef=Sigk;
(* Equivalent plastic deformation *)
EplastPruh=La*Sekv;
Print["Výsledky"/TableForm[{{"SX =", SXdef,"MPa"},
{"SY =", SYdef,"MPa"},
{"SXY =", SXYdef,"MPa"},
{"SigK =", SigkDef,"MPa"},
{"EpsPlast =", EplastPruh}
}]]
The components of the resulting stress at the investigated point of the body are as follows:
$$\begin{aligned} & \sigma_x = 266,0\ \text{MPa} \\ & \sigma_y = -45,8\ \text{MPa} \\ & \tau_{xy} = 103,9\ \text{MPa} \end{aligned}$$
The resulting (hardened) yield stress of the material and resulting the equivalent plastic strain are as follows:
$$\bar{\sigma}_{kn+1} = 342,7\ \text{MPa}$$
$$\bar{\varepsilon}_p = 7,135\cdot10^{-4}$$
Example 7.2
The previous example was solved using ANSYS Mechanical APDL.
Solution
The material particle of the body can be replaced by a single plane stress finite element of unit thickness with given material properties. The problem of the $\gamma_{xy}$ input can be solved by placing the element edges in the directions of the main strains $\varepsilon_1$ and $\varepsilon_2$ for which we have
$$\begin{aligned} & \varepsilon_{1,2}=\frac{\varepsilon_x+\varepsilon_y}{2}\pm\frac12\sqrt{(\varepsilon_x-\varepsilon_y)^2+(\gamma_{xy})^2}=\frac{0,002-0,001}{2}\pm\frac12\sqrt{(0,002+0,001)^2+(0,002)^2}= \\ & =0,0005\pm0,0018027\quad\to\quad\varepsilon_1=0,0023027\text{;}\quad\varepsilon_2=-0,0013027 \end{aligned}$$
and for the direction of $\varepsilon_1$ we receive
$$tg2\varphi=\frac{\gamma_{xy}}{\varepsilon_x-\varepsilon_y}=\frac{0,002}{0,002+0,001}=\frac23\quad\to\quad\varphi=16,845^\circ$$
The example can be solved in the ANSYS interactive environment using the following steps:
1. Job name
Utility Menu>File>Change Jobname..., /FILNAM = PlaneStress1, OK;
2. Element type
Main Menu>Preprocessor>Element Type>Add/Edit/Delete, Add..., Solid Quad 8 node 183, OK, Close;
3. Material properties
Linear
Preprocessor>Material Props>Material Models, Structural, Linear, Elastic, Isotropic, EX = 2E5, PRXY = 0.3, OK,
Nonlinear
Nonlinear, Inelastic, Rate Independent, Isotropic Hardening Plasticity, Mises Plasticity, Bilinear, Yield Strss = 200, Tang Mod = 1E5, OK, Material, Exit;
4. Element keypoints (numbering is automatic)
Utility Menu>Work Plane>Offset WP by Increments..., Degrees = 16.845, 0, 0, OK;
Utility Menu>Work Plane>Local Coordinate Systems>Create Local CS>At WP Origin..., OK;
Preprocessor>Modeling>Create>Keypoints>In Active CS: X = 0, Y = 0, Apply, X = 1, Y = 0, Apply, X = 1, Y = 1, Apply, X = 0, Y = 1, OK;
5. Element area
Preprocessor>Modeling>Create>Areas>Arbitrary>Trough KPs: KP1,KP2,KP3,KP4, OK;
6. Element creating
Preprocessor>Meshing>Mesh Tool: Size Controls: Lines, Set: Pick All, NDIV = 1, OK; (Preprocessor>Meshing>Mesh Tool): Mesh, Pick All, Close;
7. $\varepsilon_1$ and $\varepsilon_2$ input
Preprocessor>Modeling>Move/Modify>Rotate Node CS>To Active CS, Pick All;
Main Menu>Solution>Define Loads>Apply>Structural>Displacement>On Nodes
List of Items: 1, 8, 6, OK, UX, Value = 0, OK, On Nodes 1, 3, 2, OK, UY, Value = 0, OK, On Nodes 2, 5, 4, OK, UX, Value = 0.0023027, OK, On Nodes 6, 7, 4, OK, UY, Value = -0.0013027, OK;
8. Solution
Main Menu>Solution>Analysis Type>Sol'n Controls...,Time at end of loadstep = 1, Number of substeps = 1, OK; Solution>Solve>Current LS, Solve Current Load Step, OK;
9. Stress results
Main Menu>General Postproc>List Results> Nodal Solution..., Stress, X-Component of stress, OK;
PRINT S NODAL SOLUTION PER NODE
THE FOLLOWING X,Y,Z VALUES ARE IN GLOBAL COORDINATES
NODE SX SY SZ SXY SYZ SXZ
1 265.99 -45.766 0.0000 103.92 0.0000 0.0000
2 265.99 -45.766 0.0000 103.92 0.0000 0.0000
4 265.99 -45.766 0.0000 103.92 0.0000 0.0000
6 265.99 -45.766 0.0000 103.92 0.0000 0.0000
10. End of job
Ansys Toolbar>Quit>Save Geom+Loads, OK;
The results were identical to those of the analytical solution.
7.4 Matrix formulation
The analytical determination of the stress state in the elastic-plastic load step is indeed an elegant and simple procedure; however, if we are interested in creating an FEM program for solving elastic-plastic plane stress problems, it is necessary to establish basic relations and save the necessary values for the next load step in the matrix form. In such case, the state variables are written to the column matrices (vectors)
$$\begin{aligned} & \mathbf{\varepsilon}=\left[\varepsilon_x,\varepsilon_y,2\varepsilon_{xy}\right]^T,\quad\mathbf{\varepsilon}^e=\left[\varepsilon_x^e,\varepsilon_y^e,2\varepsilon_{xy}^e\right]^T,\quad\mathbf{\varepsilon}^p=\left[\varepsilon_x^p,\varepsilon_y^p,2\varepsilon_{xy}^p\right]^T \\ & \mathbf{\sigma}=\left[\sigma_x,\sigma_y,\tau_{xy}\right]^T,\quad\mathbf{s}=\left[s_x,s_y,s_{xy}\right]^T \end{aligned}$$
(7.32)
where at the deformation variables we consider tensor components for shear strain ($\gamma_{xy}=2\varepsilon_{xy}$) and for the deviatoric stress component we will implement
$$\mathbf{s}=\mathbf{P}\mathsf{\sigma}$$
(7.33)
where
$$\mathbf{P}=\mathbf{P}^T=\begin{bmatrix} \tfrac23 & -\tfrac13 & 0 \\ -\tfrac13 & \tfrac23 & 0 \\ 0 & 0 & 2 \end{bmatrix}$$
(7.34)
Now we can express the von Mises equivalent stress as follows
$$\bar{\sigma}=\sqrt{\sigma_x^2+\sigma_y^2-\sigma_x\sigma_y+3\tau_{xy}^2}=\sqrt{\tfrac32\mathbf{s}^T\mathsf{\sigma}}=\sqrt{\tfrac32\mathsf{\sigma}^T\mathbf{P}\mathsf{\sigma}}$$
(7.35)
The plasticity condition is given by
$$f=\sqrt{\tfrac32\mathsf{\sigma}^T\mathbf{P}\mathsf{\sigma}}-\bar{\sigma}_k(\bar{\varepsilon}^p)=0$$
(7.36)
and its preferred squared form is
$$f_2=\tfrac12\mathsf{\sigma}^T\mathbf{P}\mathsf{\sigma}-\tfrac13\bar{\sigma}_k^2(\bar{\varepsilon}^p)=0$$
(7.37)
The easiest way to get the increment of the plastic deformation vector is by using the formula for deriving the scalar quadratic form
$$\Delta\mathsf{\varepsilon}^p=\Delta\lambda\frac{\partial f_2}{\partial\mathsf{\sigma}}=\Delta\lambda\frac{\partial}{\partial\mathsf{\sigma}}(\tfrac12\mathsf{\sigma}^T\mathbf{P}\mathsf{\sigma})=\Delta\lambda\,\mathbf{P}\mathsf{\sigma}$$
(7.38)
where for the vector of plasticity in this case we have
$$\mathbf{f}=\frac{\partial f_2}{\partial\mathsf{\sigma}}=\mathbf{P}\mathsf{\sigma}=\mathbf{s}$$
(7.39)
The increment of plastic deformation is
$$\Delta\bar{\varepsilon}^p=\Delta\lambda\sqrt{\tfrac23\mathbf{s}^T\mathsf{\sigma}}=\Delta\lambda\sqrt{\tfrac23\mathsf{\sigma}^T\mathbf{P}\mathsf{\sigma}}$$
(7.40)
In an increment step from time $t_n$ to time $t_{n+1}$, the values of the elastic predictor are
$$\begin{aligned} & \mathsf{\varepsilon}_{n+1}^{e\,test}=\mathsf{\varepsilon}_n^e+\Delta\mathsf{\varepsilon} \\ & \sigma_{n+1}^{test}=\mathbf{D}^e\mathsf{\varepsilon}_{n+1}^{e\,test} \\ & \bar{\varepsilon}_{n+1}^{p\,test}=\bar{\varepsilon}_n^p \end{aligned}$$
(7.41)
where $\Delta\mathsf{\varepsilon}$ is the known linear strain increment calculated from the load increment. In these equations all values are known, and we can check the plasticity condition (7.37). First, we calculate
$$f_2^{test}=\tfrac12(\mathsf{\sigma}_{n+1}^{test})^T\mathbf{P}\mathsf{\sigma}_{n+1}^{test}-\tfrac13\bar{\sigma}_k^2(\bar{\varepsilon}_{n+1}^{test})$$
(7.42)
If $f_2^{test}\le0$, then the test values are valid for this (elastic) load step; otherwise, these values must be returned to the changed plasticity area using the plastic corrector.
7.5 Equations for the return of the stress point on the yield area (plastic corrector)
The first equation, which the unknown stress $\mathsf{\sigma}_{n+1}$ have to fulfill at a plastic load step, is the condition (7.37) at the time $t_{n+1}$
$$f_2=\tfrac12\mathsf{\sigma}_{n+1}^T\mathbf{P}\mathsf{\sigma}_{n+1}-\tfrac13\bar{\sigma}_k^2(\bar{\varepsilon}_{n+1})=0$$
(7.43)
The equivalent plastic deformation in the load step will change by the increment (7.40) to
$$\bar{\varepsilon}_{n+1}^p=\bar{\varepsilon}_n^p+\Delta\lambda\sqrt{\tfrac23\mathsf{\sigma}_{n+1}^T\mathbf{P}\mathsf{\sigma}_{n+1}}$$
(7.44)
and the last equation in this system of nonlinear equations is the implicit relationship of the backward Euler method for calculation of the elastic deformation
$$\mathsf{\varepsilon}_{n+1}^e=\mathsf{\varepsilon}_{n+1}^{e\,test}-\Delta\lambda\mathbf{f}_{n+1}=\mathsf{\varepsilon}_{n+1}^{e\,test}-\Delta\lambda\mathbf{P}\mathsf{\sigma}_{n+1}$$
(7.45)
After a suitable arrangement the system of equations to can be changed to only one nonlinear equation with only one unknown $\Delta\lambda$. Starting with the elastic constitutive equations [1]
$$\mathsf{\sigma}_{n+1}=\mathbf{D}^e\mathsf{\varepsilon}_{n+1}^e=\mathbf{D}^e(\mathsf{\varepsilon}_{n+1}^{e\,test}-\Delta\lambda\mathbf{P}\mathsf{\sigma}_{n+1})=\mathbf{D}^e(\mathsf{\varepsilon}_{n+1}-\mathsf{\varepsilon}_n^p-\Delta\lambda\mathbf{P}\mathsf{\sigma}_{n+1})$$
(7.46)
gradually we get
$$\begin{aligned} & (\mathbf{I}+\Delta\lambda\mathbf{D}^e\mathbf{P})\,\mathsf{\sigma}_{n+1}=\mathbf{D}^e(\mathsf{\varepsilon}_{n+1}-\mathsf{\varepsilon}_n^p) \\ & \quad\quad\quad\quad\quad\mathsf{\sigma}_{n+1}=(\mathbf{I}+\Delta\lambda\mathbf{D}^e\mathbf{P})^{-1}\mathbf{D}^e(\mathsf{\varepsilon}_{n+1}-\mathsf{\varepsilon}_n^p) \\ & \quad\quad\quad\quad\quad\mathsf{\sigma}_{n+1}=(\mathbf{D}^{e-1}+\Delta\lambda\mathbf{P})^{-1}(\mathsf{\varepsilon}_{n+1}-\mathsf{\varepsilon}_n^p) \end{aligned}$$
(7.47)
With the known $\Delta\lambda$ it is possible, according to (7.47), to calculate the stress components from
$$\mathsf{\sigma}_{n+1}=\mathbf{\hat{D}}\,(\mathsf{\varepsilon}_{n+1}-\mathsf{\varepsilon}_n^p)$$
(7.48)
or, because $\mathsf{\sigma}_{n+1}^{test}=\mathbf{D}^e(\mathsf{\varepsilon}_{n+1}-\mathsf{\varepsilon}_n^p)$, from
$$\mathsf{\sigma}_{n+1}=\mathbf{\hat{D}}\,\mathbf{D}^{e-1}\mathsf{\sigma}_{n+1}^{test}$$
(7.49)
where
$$\mathbf{\hat{D}}=(\mathbf{D}^{e-1}+\Delta\lambda\mathbf{P})^{-1}$$
(7.50)
7.6 Specifying the plastic multiplier from the consistency condition
There is only one unknown in the above equations, namely the plastic multiplier $\Delta\lambda$. Its value must fulfill the consistency condition (7.43). Direct substitution of the matrix relations for $\mathsf{\sigma}_{n+1}$ (7.49) under this condition leads to an unpleasant matrix form of a nonlinear equation; therefore, it is better to use an explicit form, the derivation of which is presented in this section. In the case of isotropic elastic material, the matrices $\mathbf{D}^e$ and $\mathbf{P}$ have the same eigenvectors, and it is possible to change them to diagonal by their orthogonal transformation in the plasticity condition, and thus obtain an explicit equation form suitable for calculation. The transformation relations are
$$\mathbf{P}=\mathbf{Q}\mathsf{\Lambda}_P\mathbf{Q}^T;\quad\mathbf{D}^e=\mathbf{Q}\mathsf{\Lambda}_D\mathbf{Q}^T;\quad\mathbf{Q}=\frac1{\sqrt2}\begin{bmatrix}1&-1&0\\1&1&0\\0&0&\sqrt2\end{bmatrix};\quad\mathbf{Q}^{-1}=\mathbf{Q}^T$$
(7.51)
where
$$\mathbf{\Lambda}_P=\begin{bmatrix}1/3&0&0\\0&1&0\\0&0&2\end{bmatrix};\quad\quad\mathbf{\Lambda}_D=\begin{bmatrix}E/(1-\nu)&0&0\\0&2G&0\\0&0&G\end{bmatrix}$$
(7.52)
and $\mathbf{D}^e$ is given by (7.10). From we get
$$\mathsf{\sigma}_{n+1}=(\mathbf{I}+\Delta\lambda\mathbf{D}^e\mathbf{P})^{-1}\mathsf{\sigma}_{n+1}^{test}=\mathbf{Q}\mathbf{\Gamma}\mathbf{Q}^T\mathsf{\sigma}_{n+1}^{test}$$
(7.53)
where
$$\mathbf{\Gamma}=(\mathbf{I}+\mathbf{\Lambda}_D\mathbf{\Lambda}_P)^{-1}=\begin{bmatrix}(1+\frac{\Delta\lambda E}{3(1-\nu)})^{-1}&0&0\\0&(1+2\Delta\lambda G)^{-1}&0\\0&0&(1+2\Delta\lambda G)^{-1}\end{bmatrix}$$
(7.54)
Substituting (7.53) into the consistency condition (7.43) gives the simplified explicit equation
$$\tfrac12(\mathsf{\sigma}_{n+1}^{test})^T\mathbf{Q}\mathsf{\Gamma}\mathsf{\Lambda}_P\mathsf{\Gamma}\mathbf{Q}^T\mathsf{\sigma}_{n+1}^{test}-\tfrac13\bar{\sigma}_k^2(\bar{\varepsilon}_{n+1}^p)=\tfrac12\phi^2-\tfrac13S^2=0$$
(7.55)
where
$$\phi^2=\frac{A}{(1+a\Delta\lambda)^2}+\frac{B}{(1+b\Delta\lambda)^2}+\frac{C}{(1+b\Delta\lambda)^2}$$
(7.56)
with
$$\begin{aligned} & A=\tfrac16(\sigma_x^{test}+\sigma_y^{test})^2;\quad B=\tfrac12(\sigma_x^{test}-\sigma_y^{test})^2;\quad C=2(\tau_{xy}^{test})^2 \\ & a=\tfrac13\Delta\lambda E/(1-\nu);\quad b=2G \end{aligned}$$
(7.57)
For the yield stress at the end of the load step we have
$$\bar{\sigma}_k^2(\bar{\varepsilon}_{n+1}^p)=S^2=\sigma_k+H\left(\bar{\varepsilon}_n^p+\Delta\lambda\sqrt{\tfrac23}\phi\right)$$
(7.58)
The last problem is to calculate $\Delta\lambda$ from the nonlinear equation (7.55).
7.7 Determination of the plastic multiplier by the Newton-Raphson method
We are searching for the value of the plastic multiplier at which the equation (7.55) will be fulfilled with sufficient accuracy. In other words at the Newton-Raphson method the value of $\Delta\lambda$ has to change in such way that function
$$q(\Delta\lambda)=\tfrac12\phi^2-\tfrac13S^2$$
(7.59)
converges to zero. The classical iterative formula for an equation with one unknown in our case gives
$$\Delta\lambda^{k+1}=\Delta\lambda^k-\frac{q(\Delta\lambda^k)}{q'(\Delta\lambda^k)}$$
(7.60)
where
$$q'(\Delta\lambda^k)=\frac{\partial q}{\partial\Delta\lambda}=\phi\frac{\partial\phi}{\partial\Delta\lambda}-\frac23S\frac{\partial S}{\partial\Delta\lambda}$$
(7.61)
The partial derivatives needed for $q'$ can be determined from (7.56) and (7.58)
$$\frac{\partial\phi}{\partial\Delta\lambda}=-\frac1{2\phi}\left(\frac{2Aa}{(1+a\Delta\lambda)^3}+\frac{2Bb}{(1+b\Delta\lambda)^3}+\frac{2Cb}{(1+b\Delta\lambda)^3}\right)$$
(7.62)
$$\frac{\partial S}{\partial\Delta\lambda}=H\sqrt{\tfrac23}\left(\phi+\Delta\lambda\frac{\partial\phi}{\partial\Delta\lambda}\right)$$
(7.63)
7.8 Matrix relations in Fortran
In the FEM programs above relationships are written in the form of a subroutine which is called in the cycle for each integration element point of the body model. To conclude this section, we show such a subroutine in the form of an executable program. The program is based on the above relations and should be comprehensible for people with elementary knowledge of FORTRAN language. The program solves the same example as that solved above with other programs (examples 1 and 2).
PROGRAM RETURN
IMPLICIT DOUBLE PRECISION (A-H,O-Z)
DIMENSION STRES(3),SVECT(3),EPS(3),A(3,3),B(3,3),P(3,3),D(3,3)
DATA R0,R1,R2,R3 /0.D0,1.D0,2.D0,3.D0/
E=2.0D5
POIS=0.3D0
F=E/(3*(1-POIS))
G=E/(2*(1+POIS))
CALL MATICA(D)
EPS(1)=2.0D-3
EPS(2)=-1.0D-3
EPS(3)=2.0D-3
STRES(1)=D(1,1)*EPS(1)+D(1,2)*EPS(2)
STRES(2)=D(2,1)*EPS(1)+D(2,2)*EPS(2)
STRES(3)=D(3,3)*EPS(3)
H=2.0D5
SIGK0=200
A1=(STRES(1)+STRES(2))**2
A2=(STRES(1)-STRES(2))**2
A3=2*STRES(3)**2
DLAMBDA=0
I=0
210 I=I+1
D1=1+DLAMBDA*F
D2=1+2*DLAMBDA*G
FI=A1/(6*D1*D1)+A2/(2*D2*D2)+A3/(D2*D2)
FI=SQRT(FI)
DFI=-2*A1*F/(6*D1**3)-4*A2*G/(2*D2**3)-4*A3*G/(D2**3)
DFI=DFI/(2*FI)
EPEKV=DLAMBDA*FI*SQRT(2.0/3.0)
SIGK=SIGK0+H*EPEKV
DSIGK=H*SQRT(2.0/3.0)*(FI+DLAMBDA*DFI)
GFCIA=FI*FI/2-SIGK*SIGK/3
DGFCIE=FI*DFI-2*SIGK*DSIGK/3
DLAMBDA=DLAMBDA-GFCIA/DGFCIE
IF(GFCIA.GT.1E-5) GOTO 210
P(1,1)=2.0/3.0
P(1,2)=-1.0/3.0
P(2,1)=-1.0/3.0
P(2,2)=2.0/3.0
P(3,3)=2.0
CALL INVERT(D,A)
DO I=1,3
DO J=1,3
D(I,J)=A(I,J)+DLAMBDA*P(I,J)
ENDDO
ENDDO
CALL INVERT(D,B)
DO I=1,3
DO J=1,3
D(I,J)=0
DO K=1,3
D(I,J)=D(I,J)+B(I,K)*A(K,J)
ENDDO
ENDDO
ENDDO
DO I=1,3
SVECT(I)=0
DO J=1,3
SVECT(I)=SVECT(I)+D(I,J)*STRES(J)
ENDDO
ENDDO
write(*,300) SVECT(1),SVECT(2),SVECT(3)
300 FORMAT(' Napatia SX, SY, SXY =',3F10.2)
write(*,200) SIGK
200 FORMAT(' Medza sklzu =',F10.2)
STOP
END
Results (Napätia = Stresses, Medza sklzu = Yield stress):
Napätia SX, SY, SXY = 265.99 -45.77 103.92
Medza sklzu = 342.67
Stop - Program terminated.
Press any key to continue
7.9 Consistent tangent material modulus
The global tangential stiffness matrix of an FE model is created by an organized summation of its element tangential stiffness matrices
$$\mathbf{K}_T^e=\int\limits_S\mathbf{B}^T\mathbf{D}\mathbf{B}\,dV$$
(7.64)
where, in a material nonlinear problem, the matrix $\mathbf{D}$ is the so-called consistent tangential material modulus of the element. The term consistent expresses a requirement that its value must be in every incremental step consistent with the integration procedure for the solution of the stress $\mathsf{\sigma}_{n+1}$. The definition of the tangential material modulus is
$$\mathbf{D}=\frac{\partial\mathsf{\sigma}_{n+1}}{\partial\mathsf{\varepsilon}_{n+1}}=\frac{\partial\mathsf{\sigma}_{n+1}}{\partial\mathsf{\varepsilon}_{n+1}^{e\,test}}$$
(7.65)
The derivations equality in (7.65) follows from validity
$$\mathsf{\varepsilon}_{n+1}^{e\,test}=\mathsf{\varepsilon}_{n+1}-\mathsf{\varepsilon}_n^p$$
(7.66)
The consistent linearization of the local material element matrices produces the global tangent stiffness matrix in such a form, which guarantees the quadratic convergence of the global Newton-Raphson iteration in the load step.
The derivation of the $\mathbf{D}$ matrix begins with differentiation of expression for stress (7.46)
$$d\mathsf{\sigma}_{n+1}=d\mathbf{D}^e\mathsf{\varepsilon}_{n+1}^{test}-d\Delta\lambda\mathbf{D}^e\mathbf{P}\mathsf{\sigma}_{n+1}-\Delta\lambda\mathbf{D}^e\mathbf{P}d\mathsf{\sigma}_{n+1}$$
(7.67)
and after similar arrangements as at (7.46) we get
$$d\mathsf{\sigma}_{n+1}=\mathbf{\hat{D}}(d\mathsf{\varepsilon}_{n+1}^{test}-d\Delta\lambda\mathbf{P}d\mathsf{\sigma}_{n+1})$$
(7.68)
It remains to express $d\Delta\lambda$ in (7.68) from the consistency condition. Differentiation of the consistency condition (7.43) gives (note: $d(\mathbf{x}^T\mathbf{x})=2\mathbf{x}^Td\mathbf{x}$)
$$df_2=\mathsf{\sigma}_{n+1}^T\mathbf{P}d\mathsf{\sigma}_{n+1}-\tfrac23\bar{\sigma}_kHd\bar{\varepsilon}_{n+1}^p=0$$
(7.69)
From (7.44) we have
$$d\bar{\varepsilon}_{n+1}^p=d\Delta\lambda a+\frac23\frac{\Delta\lambda}{a}\mathsf{\sigma}_{n+1}^T\mathbf{P}d\mathsf{\sigma}_{n+1}$$
(7.70)
where
$$a=(\tfrac23\mathsf{\sigma}_{n+1}^T\mathbf{P}\mathsf{\sigma}_{n+1})^{\tfrac12}=\tfrac23\bar{\sigma}_k$$
(7.71)
By substituting (7.70) in (7.69) we have
$$\mathsf{\sigma}_{n+1}^T\mathbf{P}d\mathsf{\sigma}_{n+1}-\tfrac23\bar{\sigma}_kH(d\Delta\lambda a+\frac23\frac{\Delta\lambda}{a}\mathsf{\sigma}_{n+1}^T\mathbf{P}d\mathsf{\sigma}_{n+1})=0$$
(7.72)
and after substitute a we get a simplified equation
$$\mathsf{\sigma}_{n+1}^T\mathbf{P}d\mathsf{\sigma}_{n+1}-\frac49\frac{H\bar{\sigma}_k^2}{b}d\Delta\lambda=0$$
(7.73)
where
$$b=1-\tfrac23H\Delta\lambda$$
(7.74)
Substitution (7.68) into (7.73) gives the following relationship
$$\mathsf{\sigma}_{n+1}^T\mathbf{P\hat{D}}d\mathsf{\varepsilon}_{n+1}^{test}-d\Delta\lambda\mathsf{\sigma}_{n+1}^T\mathbf{P\hat{D}P}\mathsf{\sigma}_{n+1}-\frac49\frac{H\bar{\sigma}_k^2}{b}d\Delta\lambda=0$$
(7.75)
and from this equation the wanted differential is given by
$$d\Delta\lambda=\frac{\mathsf{\sigma}_{n+1}^T\mathbf{P\hat{D}}}{\mathsf{\sigma}_{n+1}^T\mathbf{P\hat{D}P}\mathsf{\sigma}_{n+1}+\frac49\frac{H\bar{\sigma}_k^2}{b}}d\mathsf{\varepsilon}_{n+1}^{test}$$
(7.76)
The use of $d\Delta\lambda$ in (7.68) gives the resulting expression for the stress increment
$$d\mathsf{\sigma}_{n+1}=\mathbf{D}d\mathsf{\varepsilon}_{n+1}^{test}$$
(7.77)
with the consistent tangential modulus
$$\mathbf{D}=\mathbf{\hat{D}}-\frac{\mathbf{\hat{D}P}\mathsf{\sigma}_{n+1}\mathsf{\sigma}_{n+1}^T\mathbf{P\hat{D}}}{\mathsf{\sigma}_{n+1}^T\mathbf{P\hat{D}P}\mathsf{\sigma}_{n+1}+\frac49\frac{H\bar{\sigma}_k^2}{b}}=\mathbf{\hat{D}}-\frac{\mathbf{\hat{D}s}_{n+1}\mathbf{s}_{n+1}^T\mathbf{\hat{D}}}{\mathbf{s}_{n+1}^T\mathbf{\hat{D}s}_{n+1}+\frac49\frac{H\bar{\sigma}_k^2}{b}}$$
(7.78)
Thus, if an FEM program for solving the elastic-plastic plane stress problem uses the incremental calculation of the stress according to equations (7.48) or (7.49) , then to ensure the quadratic convergence of the Newton-Raphson method at the solution of the global nonlinear system, it is necessary to use the material modulus (7.78) at the tangential element matrices (7.64) calculation. Use of the classical tangential material modulus (so-called elastoplastic continuum tangent operator)
$$\mathbf{D}_{cont}=\mathbf{D}^e-\frac{9G^2}{\bar{\sigma}_k^2(3G+H)}\mathbf{s}\mathbf{s}^T$$
(7.79)
leads to a rapid decline in convergence.
7.10 Consistent material modulus computation in FORTRAN.
According to the relationships in the previous section, we processed the program MATMODUL2D for a consistent tangential material modulus with linear isotropic hardening in FORTRAN. In a real FEM program, such a part acts as a subroutine called for every integral point from the subroutine, which calculates the tangential element stiffness matrices. The input variables come to such subroutine as parameters of the calling command, but in this program illustration, we have input them directly in the program part noted as Input values.
PROGRAM MATMODUL2D
C***************************************************
C CONSISTENT MATERIAL MODULUS VON MISES 2D *
C***************************************************
IMPLICIT DOUBLE PRECISION (A-H,O-Z)
DIMENSION
1 D(3,3),A(3,3),P(3,3),AVECT(3),BVECT(3),
3 STRES(3),B(3,3)
DATA R0 ,R1 ,R2 ,R3 ,R4 ,R9
1 /0.0D0 ,1.0D0 ,2.0D0 ,3.0D0 ,4.0D0 ,9.0D0/
C Input values
E=2.0D5
H=2.0D5
POIS=R0
DLAMBDA=6.6851D-4
STRES(1)=385.3D0
STRES(2)=197.9D0
STRES(3)=R0
SIGEF=333.7D0
SIGK=333.7D0
C
BETA = R1-H*DLAMBDA/(R3*SIGEF)
DO 10 I=1,3
DO 10 J=1,3
10 D(I,J)=R0
C Elastic matrix De calculation
CONST=E/(R1-POIS*POIS)
D(1,1)=CONST
D(2,2)=CONST
D(1,2)=CONST*POIS
D(2,1)=CONST*POIS
D(3,3)=(R1-POIS)*CONST/R2
D(4,4)=R1
C P-matrix
P(1,1) = R2/R3
P(1,2) = -R1/R3
P(1,3) = R0
P(2,1) = -R1/R3
P(2,2) = R2/R3
P(2,3) = R0
P(3,1) = R0
P(3,2) = R0
P(3,3) = R2
C Expanded D-matrix
CALL INVERT(D,A)
DO 120 I=1,3
DO 120 J=1,3
B(I,J) = A(I,J)+DLAMBDA*P(I,J)
120 CONTINUE
CALL INVERT(B,A)
C Consistent tangential matrix calculation
DO 140 I=1,3
AVECT(I) = R0
DO 140 J=1,3
AVECT(I) = AVECT(I)+P(I,J)*STRES(J)
140 CONTINUE
DO 150 I=1,3
BVECT(I) = R0
DO 150 J=1,3
BVECT(I) = BVECT(I)+A(I,J)*AVECT(J)
150 CONTINUE
RMENOV = R0
DO 160 I=1,3
160 RMENOV = RMENOV+AVECT(I)*BVECT(I)
BETA = R1-R2*H*DLAMBDA/R3
H2 = R4*H*SIGK*SIGK/(R9*BETA)
RMENOV = RMENOV+H2
DO 170 I=1,3
DO 170 J=1,3
B(I,J) = BVECT(I)*BVECT(J)
170 CONTINUE
DO 180 I=1,3
DO 180 J=1,3
D(I,J) = A(I,J)-B(I,J)/RMENOV
180 CONTINUE
WRITE(*,11)
WRITE(*,12)D
11 FORMAT( ' D = ')
12 FORMAT(3f15.3)
STOP
END
The calculated consistent tangential modulus is as follows:
D =
99868.323 50710.778 .000
50710.778 27969.175 .000
.000 .000 742.379
Stop - Program terminated.
Table 1 presents the results of the iterative procedure of the test program, which illustrates the effectiveness of using the tangential material modulus consistent with the integration procedure (third column), where Fnorma is the norm of the residual forces and ITE is the number of iteration steps. The first two columns in the table indicate these values using the elastic material modulus $\mathbf{D}^e$ and the classical modulus of continuous integration $\mathbf{D}_{cont}$. During the integration procedures, the convergence criterion Fnorma should fall below 0.001.
| Elastic material modulus $\mathbf{D}^e$ |
Modulus $\mathbf{D}_{cont}$ |
Consistent modulus $\mathbf{D}_{cons}$ |
ite = 1 Fnorma = 81.9361 ite = 2 Fnorma = 45.0528 ite = 3 Fnorma = 24.1507 ite = 4 Fnorma = 12.7373 ite = 5 Fnorma = 6.64959 ite = 6 Fnorma = 3.44982 ite = 7 Fnorma = 1.78315 ite = 8 Fnorma = .919702 ite = 9 Fnorma = .473786 ite = 10 Fnorma = .243908
|
ite = 1 Fnorma = 81.9361 ite = 2 Fnorma = 18.1286 ite = 3 Fnorma = 6.25226 ite = 4 Fnorma = 1.70708 ite = 5 Fnorma = .430342 ite = 6 Fnorma = .104781 ite = 7 Fnorma = .250916E-01 ite = 8 Fnorma = .595902E-02 ite = 9 Fnorma = .140928E-02 ite = 10 Fnorma = .332571E-03
|
ite = 1 Fnorma = 81.9361 ite = 2 Fnorma = 4.06090 ite = 3 Fnorma = .142896E-02 ite = 4 Fnorma = .113480E-06 .
|
Table 7.1 Iteration steps at different moduli
It is seen that only the consistent tangent modulus preserves the quadratic convergence of the global equilibrium iteration.
[1] Benča Š.: Aplikovaná nelineárna mechanika kontinua, Vydavateľstvo 1000knih.sk, 2013
(Applied nonlinear continuum mechanics – in Slovak).