Failure Criteria for Stress Analysis

In this chapter, the available failure criteria and the corresponding MDL commands are described.

1. Maximum Principal Stress Failure Criterion

material id type t
  ...
  failure max_principal_stress
    t v
    c v
    s v
    filter max_of_element
    fi_min v
  end
  ...
end

The following parameters are specified:

t v

Specifies the maximum tensile stress, that is, the maximum value of the largest of the 3 principal stresses.

c v

Specifies the maximum compressive stress, that is, the minimum value of the smallest of the 3 principal stresses.

s v

Specifies the maximum shear stress.

filter max_of_element

Specifies that for each element, gradient data (of any kind) is stored only for the integration point with the maximum failure index. This option significantly reduces gradient storage requirements and is recommended for use with large meshes with layered materials, where the total amount gradient data can be very large.

fi_min v

Specifies the minimum failure index which is required to store the evaluated failure criterion on the database (B2000++). Default is 0.0, which means that storage is always performed. A value of 0.25 means that storage is performed only when the failure index is greater than or equal to 25%.

In addition to the FAILURE_INDEX dataset/baspl++ Field, the values of the failure criterion evaluated at the element integration points are stored in the FC_MAX_PRINCIPAL_STRESS dataset/baspl++ Field. For each element integration point, the maximum failure index, the corresponding margin-of-safety, the number of the failure mode ("component") are stored, and the failure indices for the tensile, compressive, and shear stresses are stored. The convention is such that a failure mode of 1 corresponds to the tensile stress, a failure mode of 2 corresponds to the compressive stress, and a failure mode of 3 to the shear stress.

Example:

material 1 type isotropic
  # Aluminium 2024-T3
  e     72400.     # [MPa]
  nu        0.33
  density   2.8e-9 # [t/mm^3]
  alpha    22.8e-6 # [1/K]
  failure max_principal_stress
    t 138.0 # [MPa]
    c 138.0 # [MPa]
    s 138.0 # [MPa]
  end
end

2. Maximum Stress Failure Criterion

material id type t
  ...
  failure max_stress
    t|t1|t2|t3 v
    c|c1|c2|c3 v
    s|s12|s23|s13 v
    filter max_of_element
    fi_min v
  end
  ...
end

The following parameters are specified:

t|t1|t2|t3 v

Specifies the value v of the tension failure stresses. t1 is defined in the material direction 1, t2 in the material direction 2, and t3 in the material direction 3. Except for plane-stress conditions, where t3 can be omitted, all parameters must be specified and positive. Specification of t implies t1=t2=t3=t.

c|c1|c2|c3 v

Specifies the value v of the compression failure stresses. c1 is defined in the material direction 1, c2 in the material direction 2, and c3 in the material direction 3. Except for plane-stress conditions, where c3 can be omitted, all parameters must be specified and positive. Specification of c implies c1=c2=c3=c.

s|s12|s23|s13 v

Specifies the value v of the shear failure stresses. Except for plane-stress conditions, where s23 and s13 can be omitted, all parameters must be specified and positive. Specification of s implies s12=s23=s13=s.

filter max_of_element

Specifies that for each element, gradient data (of any kind) is stored only for the integration point with the maximum failure index. This option significantly reduces gradient storage requirements and is recommended for use with large meshes with layered materials, where the total amount gradient data can be very large.

fi_min v

Specifies the minimum failure index which is required to store the evaluated failure criterion on the database (B2000++). Default is 0.0, which means that storage is always performed. A value of 0.25 means that storage is performed only when the failure index is greater than or equal to 25%.

In addition to the FAILURE_INDEX dataset/baspl++ Field, the values of the failure criterion evaluated at the element integration points are stored in the FC_MAX_STRESS dataset/baspl++ Field. For each element integration point, the maximum failure index, the corresponding margin-of-safety, and the number of the failure mode ("component") are stored. The convention is that the components of the stress tensor are arranged in the sequence

[Sxx, Syy, Szz, Sxy, Syz, Sxz]

and that a failure mode of 1 corresponds to the first stress component, a failure mode of 2 corresponds to the second stress component, etc.

Example:

material 1 type isotropic
  # Aluminium 2024-T3
  e     72400.     # [MPa]
  nu        0.33
  density   2.8e-9 # [t/mm^3]
  alpha    22.8e-6 # [1/K]
  failure max_stress
    t 138.0 # [MPa]
    c 138.0 # [MPa]
    s 138.0 # [MPa]
  end
end

3. Maximum Principal Strain Failure Criterion

material id type t
  ...
  failure max_principal_stress
    t v
    c v
    s v
    filter max_of_element
    fi_min v
  end
  ...
end

The following parameters are specified:

t v

Specifies the maximum tensile strain, that is, the maximum value of the largest of the 3 principal strains.

c v

Specifies the maximum compressive strain, that is, the minimum value of the smallest of the 3 principal strains.

s v

Specifies the maximum shear strain.

filter max_of_element

Specifies that for each element, gradient data (of any kind) is stored only for the integration point with the maximum failure index. This option significantly reduces gradient storage requirements and is recommended for use with large meshes with layered materials, where the total amount gradient data can be very large.

fi_min v

Specifies the minimum failure index which is required to store the evaluated failure criterion on the database (B2000++). Default is 0.0, which means that storage is always performed. A value of 0.25 means that storage is performed only when the failure index is greater than or equal to 25%.

In addition to the FAILURE_INDEX dataset/baspl++ Field, the values of the failure criterion evaluated at the element integration points are stored in the FC_MAX_PRINCIPAL_STRAIN dataset/baspl++ Field. For each element integration point, the maximum failure index, the corresponding margin-of-safety, the number of the failure mode ("component") are stored, and the failure indices for the tensile, compressive, and shear strains are stored. The convention is such that a failure mode of 1 corresponds to the tensile strain, a failure mode of 2 corresponds to the compressive strain, and a failure mode of 3 to the shear strain.

Example:

material 1 type isotropic
  # Aluminium 2024-T3
  e     72400.     # [MPa]
  nu        0.33
  density   2.8e-9 # [t/mm^3]
  alpha    22.8e-6 # [1/K]
  failure max_principal_strain
    t +4500.e-6
    c -3000.e-6
    s +5000.e-6
    filter max_of_element
  end
end

4. Maximum Strain Failure Criterion

material id type t
  ...
  failure max_principal_stress
    t|t1|t2|t3 v
    c|c1|c2|c3 v
    s|s12|s23|s13 v
    filter max_of_element
    fi_min v
  end
  ...
end

The following parameters are specified:

t|t1|t2|t3 v

Specifies the value v of the tension failure strains. t1 is defined in the material direction 1, t2 in the material direction 2, and t3 in the material direction 3. Except for plane-strain conditions, where t3 can be omitted, all parameters must be specified and positive. Specification of t implies t1=t2=t3=t.

c|c1|c2|c3 v

Specifies the value v of the compression failure strains. c1 is defined in the material direction 1, c2 in the material direction 2, and c3 in the material direction 3. Except for plane-strain conditions, where c3 can be omitted, all parameters must be specified and positive. Specification of c implies c1=c2=c3=c.

s|s12|s23|s13 v

Specifies the value v of the shear failure strains. Except for plane-strain conditions, where s23 and s13 can be omitted, all parameters must be specified and positive. Specification of s implies s12=s23=s13=s. The shear strengths should be given as true strains (not as engineering strains, that is, not multiplied by 2).

filter max_of_element

Specifies that for each element, gradient data (of any kind) is stored only for the integration point with the maximum failure index. This option significantly reduces gradient storage requirements and is recommended for use with large meshes with layered materials, where the total amount gradient data can be very large.

fi_min v

Specifies the minimum failure index which is required to store the evaluated failure criterion on the database (B2000++). Default is 0.0, which means that storage is always performed. A value of 0.25 means that storage is performed only when the failure index is greater than or equal to 25%.

In addition to the FAILURE_INDEX dataset/baspl++ Field, the values of the failure criterion evaluated at the element integration points are stored in the FC_MAX_STRAIN dataset/baspl++ Field. For each element integration point, the maximum failure index, the corresponding margin-of-safety, and the number of the failure mode ("component") are stored.

5. Von Mises Failure Criterion

material id type t
  ...
  failure von_mises
    r v
    filter max_of_element
    fi_min v
  end
  ...
end

The following parameters are specified:

r v

Specifies the value v for the (isotropic) strength for tension, compression, and shear. This parameter is required and must be positive.

filter max_of_element

Specifies that for each element, gradient data (of any kind) is stored only for the integration point with the maximum failure index. This option significantly reduces gradient storage requirements and is recommended for use with large meshes with layered materials, where the total amount gradient data can be very large.

fi_min v

Specifies the minimum failure index which is required to store the evaluated failure criterion on the database (B2000++). Default is 0.0, which means that storage is always performed. A value of 0.25 means that storage is performed only when the failure index is greater than or equal to 25%.

In addition to the FAILURE_INDEX dataset/baspl++ Field, the values of the failure criterion evaluated at the element integration points are stored in the FC_VON_MISES dataset/baspl++ Field. For each element integration point, the maximum failure index and the corresponding margin-of-safety are stored.

6. Tsai-Hill Failure Criterion

The Tsai-Hill criterion is a special case of the Tsai-Wu criterion, where only in-plane tensor components and in-plane strengths are considered, and where the tensile strengths are considered equal to the compressible strengths.

material id type t
  ...
  failure tsai_hill
    r1 v
    r2 v
    s12 v
    filter max_of_element
    fi_min v
  end
  ...
end

The following parameters are specified:

r1|r2|s12 v

The parameters r1 and r2 define the in-plane strengths (no distinction is made between tensile and compressible strengths), and s12 the in-plane shear strength. All parameters must be specified and must be positive.

filter max_of_element

Specifies that for each element, gradient data (of any kind) is stored only for the integration point with the maximum failure index. This option significantly reduces gradient storage requirements and is recommended for use with large meshes with layered materials, where the total amount gradient data can be very large.

fi_min v

Specifies the minimum failure index which is required to store the evaluated failure criterion on the database (B2000++). Default is 0.0, which means that storage is always performed. A value of 0.25 means that storage is performed only when the failure index is greater than or equal to 25%.

In addition to the FAILURE_INDEX dataset/baspl++ Field, the values of the failure criterion evaluated at the element integration points are stored in the FC_TSAI_HILL dataset/baspl++ Field. For each element integration point, the maximum failure index and the corresponding margin-of-safety are stored.

7. Tsai-Wu Failure Criterion

material id type t
  ...
  failure tsai_wu
    t|t1|t2|t3 v
    c|c1|c2|c3 v
    s|s12|s23|s13 v
    f12i v
    f13i v
    filter max_of_element
    fi_min v
  end
  ...
end

The following parameters are specified:

MDL coefficients specification syntax:

failure tsai_wu parameters end

Specifies the Tsai-Wu failure criterion. The parameters are specified as follows:

t|t1|t2|t3 v

Specifies the value v of the tension failure stresses. t1 is defined in the material direction 1, t2 in the material direction 2, and t3 in the material direction 3. Except for plane-stress conditions, where t3 can be omitted, all parameters must be specified and positive. Specification of t implies t1=t2=t3=t.

c|c1|c2|c3 v

Specifies the value v of the compression failure stresses. c1 is defined in the material direction 1, c2 in the material direction 2, and c3 in the material direction 3. Except for plane-stress conditions, where c3 can be omitted, all parameters must be specified and positive. Specification of c implies c1=c2=c3=c.

s|s12|s23|s13 v

Specifies the value v of the shear failure stresses. Except for plane-stress conditions, where s23 and s13 can be omitted, all parameters must be specified and positive. Specification of s implies s12=s23=s13=s.

f12i|f23i v

Specifies the Tsai-Wu interaction coefficients. v must be in [-1, 1].

filter max_of_element

Specifies that for each element, gradient data (of any kind) is stored only for the integration point with the maximum failure index. This option significantly reduces gradient storage requirements and is recommended for use with large meshes with layered materials, where the total amount gradient data can be very large.

fi_min v

Specifies the minimum failure index which is required to store the evaluated failure criterion on the database (B2000++). Default is 0.0, which means that storage is always performed. A value of 0.25 means that storage is performed only when the failure index is greater than or equal to 25%.

In addition to the FAILURE_INDEX dataset/baspl++ Field, the values of the failure criterion evaluated at the element integration points are stored in the FC_TSAI_WU dataset/baspl++ Field. For each element integration point, the maximum failure index and the corresponding margin-of-safety are stored.

8. Hashin Failure Criterion

Specifies the Hashin failure criterion ([Hashin80]). This failure criterion is intended for transversely isotropic materials. For a consistent response when σ 11 is almost zero, the shear stresses τ 12 and τ 23 are not used to detect fiber tensile failure, that is, fi1+ = σ 11 t1 .

material id type t
  ...
  failure max_principal_stress
    t v
    c v
    s v
    filter max_of_element
    fi_min v
  end
  ...
end

The following parameters are specified:

The parameters are specified as follows:

inplane yes|no

If set to yes, assume a plane stress state and use the plane stress failure criterion rather than the 3D failure criterion which is the default.

t1 v

The axial tensile failure stress.

c1 v

The axial compressive failure stress.

t2 v

The transverse tensile failure stress.

c2 v

The transverse compressive failure stress.

s12 v

The axial shear failure stress.

s23 v

The transverse shear failure stress. If not available from material data, it can be obtained, assuming pure compression and an angle of 53 degrees for the fracture surface, using equation 68 in [LaRC04]: s23 = 0.378 * c2

filter max_of_element

Specifies that for each element, gradient data (of any kind) is stored only for the integration point with the maximum failure index. This option significantly reduces gradient storage requirements and is recommended for use with large meshes with layered materials, where the total amount gradient data can be very large.

fi_min v

Specifies the minimum failure index which is required to store the evaluated failure criterion on the database. Default is 0.0, which means that storage is always performed. A value of 0.25 means that storage is performed only when the failure index is greater than or equal to 25%.

In addition to the FAILURE_INDEX dataset/baspl++ Field, the values of the failure criterion evaluated at the element integration points are stored in the FC_HASHIN dataset/baspl++ Field. For each element integration point, the maximum failure index, the corresponding margin-of-safety, and the number of the failure mode ("component") are stored: 1 means fiber tensile, 2 fiber compression, 3 matrix tensile, and 4 means matrix compression.

Example:

material 1 type orthotropic
  # T300/1034-C graphite/epoxy, units in [MPa]
  e1 146.86e+03
  e2 11.376e+03
  e3 11.376e+03
  nu12 0.3
  nu13 0.3
  nu23 0.3
  g1 6.186e+03
  g2 6.186e+03
  g3 6.186e+03

  failure hashin
    t1  1730.0
    t2    66.5
    c1  1379.0
    c2   268.2
    s12  133.763
    s23  101.4
  end
end

9. LaRC04 Failure Criterion

material id type t
  ...
  failure max_principal_stress
    t1|t2 v
    c1 v
    s12 v
    g12 v
    [g2p v]
    filter max_of_element
    fi_min v
  end
  ...
end

The following parameters are specified:

MDL coefficients specification syntax:

failure larc04 parameters end

Specifies the LaRC04 failure criterion. It is implemented according to [MCMD06] (and therefore plane stress failure criterion), rather than according to the original LaRC04 description ([LaRC04], which describes a 3D failure criterion). The parameters are specified as follows:

t1|t2 v

Specifies the values of the in-plane tensile strengths. Both parameters must be specified and must be positive.

c1 v

Specifies the value of the in-plane compressible strength in x-direction. Must be specified and must be positive.

s12 v

Specifies the value of the in-plane shear strength. Must be specified and must be positive.

g12|g2p v

Specifies the values of the fracture toughness parameters. g12 must be specified while g2p may be omitted. All specified values must be positive.

filter max_of_element

Specifies that for each element, gradient data (of any kind) is stored only for the integration point with the maximum failure index. This option significantly reduces gradient storage requirements and is recommended for use with large meshes with layered materials, where the total amount gradient data can be very large.

fi_min v

Specifies the minimum failure index which is required to store the evaluated failure criterion on the database. Default is 0.0, which means that storage is always performed. A value of 0.25 means that storage is performed only when the failure index is greater than or equal to 25%.

In addition to the FAILURE_INDEX dataset/baspl++ Field, the values of the failure criterion evaluated at the element integration points are stored in the FC_LARC04 dataset/baspl++ Field. For each element integration point, the maximum failure index, the corresponding margin-of-safety, and the number of the failure mode ("component") are stored: 1 means fiber tensile, 2 fiber compression, 3 matrix tensile, and 4 means matrix compression.

Example:

material 1 type orthotropic
  # T300/1034-C graphite/epoxy, units in [MPa]
  e1 146.86e+03
  e2 11.376e+03
  e3 11.376e+03
  nu12 0.3
  nu13 0.3
  nu23 0.3
  g1 6.186e+03
  g2 6.186e+03
  g3 6.186e+03

  failure larc04
    t1  1730.0
    t2    66.5
    c1  1379.0
    c2   268.2
    s12  133.763
    g2p    0.23
    g12    0.46
    fi_min 0.5
    filter max_of_element
  end
end

10. Post-Processing of Failure Criteria

With the baspl++ post-processor, the evaluated failure criteria can be extracted and visualized on the mesh. In this section, a number of basic examples are given.

The first example displays the maximum failure index per element:

if len(sys.argv) != 2:
    print 'usage: baspl++ plot_fi_solid.py database'
    sys.exit(1)

m = Model(sys.argv[1])
p = NPart(m)
p.edge.show = True
p.elements.extract = 1
f = Field(m, 'FAILURE_INDEX', case_index=0, cycle_index=-1)
p.contour.colmap.min = 0
p.contour.colmap.max = 1
p.contour.field = f

The next example displays the failure index per element at each element integration point.

if len(sys.argv) != 2:
    print 'usage: baspl++ plot_fi_ip.py database'
    sys.exit(1)

m = Model(sys.argv[1])
p = NPart(m)
p.edge.show = True
p.face.show = False
p.elements.extract = 1
f = Field(m, 'FAILURE_INDEX', case_index=0, cycle_index=-1)
p.sampling.compname = 'fi'
p.sampling.colmap.min = 0
p.sampling.colmap.max = 1
p.sampling.field = f