5. Tensile Strip with Hole

Stresses in a tensile strip with a circular hole are computed in order to obtain the stress intensity factor in a post-processing step. The analytical solution [7] σmax for the stress intensity factor is

σ max = k σ nom = k P t ( D 2r ) , k = 3.00 3.13 ( 2r D ) + 3.66 ( 2r D ) 2 1.53 ( 2r D ) 3

where P is the force with the strip is pulled, D is the width of the strip, t the thickness of the strip, and r the radius of the hole.

The FE model consist of a single branch meshed with either HE8 or HE20 solid elements (mesh provided by CIRA). As the material can be isotropic or laminated the complete model has been meshed.

Tensile strip: Outline of model

Figure 11. Tensile strip: Outline of model

Tensile strip: Detail of mesh

Figure 12. Tensile strip: Detail of mesh

The width of the strip D=25.4, the thickness t=2.616, and the radius of the circular hole r=3.18. The strip is clamped at one end and loaded with a 'displacement load', i.e an essential boundary condition, at the other end, where a the DOF 1 (x-direction) is constrained to 0.013. To obtain the total reaction force and to compute the theoretical solution a Python script is included in the test directory (see file theor_stress_conc.py).

The analysis is performed with HE8.S.TL or HE20.S.TL total Lagrange formulation elements and a material with E=146.86 103 and ν=0.3. Note that the material has no influence on the stress concentration factor, as long as the material is isotropic and elastic and the calculations are linear. The following files are available:

MDL file he8.mdl (8 node solid elements mesh).
he20.mdl (20 node solid elements mesh).
Viewer files view.py plots stresses.
compute_stress_intensity_factors.py calculates stress intensity factors.

When executing the test example with the make he8 or make he20 shell command (see Makefile for details), the Python programs theor_stress_conc.py is invoked after running B2000++. It extracts the reaction forces at the constrained nodes, sums them up to get the total reaction force P, and calculates the theoretical σmax for the given P:

Total reaction force = 614.221 for component Sxx
Theoretical stress concentration factor h = 2.422
sigma-nominal = 12.332
sigma-max = h*S_nominal = 29.864
sigma-max (computed) = 27.400
Error (percent): 8.251

The maximum calculated stress can also be extracted from a stress sampling plot as the one of the figure below.

With higher order elements (HE20.S.TL) the result is - as can be expected - better:

Total reaction force = 613.414 for component Syy
Theoretical stress concentration factor h = 2.422
sigma_nominal = 12.315
sigma_max = h*sigmal_nominal = 29.824
sigma_max (computed) = 29.935
Error (percent): -0.370

The stress plot as illustrated below is obtained with the make view shell command (see Makefile for details).

Tensile strip: Von Mises stress, sampling point[8] display method (HE8 mesh)

Figure 13. Tensile strip: Von Mises stress, sampling point[8] display method (HE8 mesh)

[7] R.J. Roarke; Formulas for stress and strain; McGraw-Hill 975; ISBN 0-07-053031-9

[8] Each sampling point (here: Gauss integration point) value is represented by a sphere. The size of the sphere is proportional to the magnitude of the field value, and the colour corresponds to the colour map.