LEFM
Module for computing stress intensity factor (SIF) influence functions and energy release rates.
This module provides functions to compute the functions F_ij and G_i as described in Amestoy and Leblond (1992). These functions are used to calculate the SIFs at the tip of an infinitesimal straight crack extension with a given bifurcation angle.
References
Amestoy, M., & Leblond, J. B. (1992). Crack paths in plane situations—II. Detailed form of the expansion of the stress intensity factors. International Journal of Solids and Structures, 29(4), 465–501. https://doi.org/10.1016/0020-7683(92)90210-K
F11(m)
Computes F11 function for a given normalized crack angle.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
m
|
float
|
Normalized crack angle, defined as (phi - phi0) / pi. |
required |
Returns:
| Name | Type | Description |
|---|---|---|
float |
float
|
The value of the F11 for the given normalized crack angle. |
Source code in src/gcrack/lefm.py
F12(m)
Computes F12 function for a given normalized crack angle.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
m
|
float
|
Normalized crack angle, defined as (phi - phi0) / pi. |
required |
Returns:
| Name | Type | Description |
|---|---|---|
float |
float
|
The value of the F12 for the given normalized crack angle. |
Source code in src/gcrack/lefm.py
F21(m)
Computes F21 function for a given normalized crack angle.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
m
|
float
|
Normalized crack angle, defined as (phi - phi0) / pi. |
required |
Returns:
| Name | Type | Description |
|---|---|---|
float |
float
|
The value of the F21 for the given normalized crack angle. |
Source code in src/gcrack/lefm.py
F22(m)
Computes F22 function for a given normalized crack angle.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
m
|
float
|
Normalized crack angle, defined as (phi - phi0) / pi. |
required |
Returns:
| Name | Type | Description |
|---|---|---|
float |
float
|
The value of the F22 for the given normalized crack angle. |
Source code in src/gcrack/lefm.py
Fmat(m)
Construct the matrix F containing the Fij functions of Amestoy-Leblond.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
m
|
float
|
Normalized crack angle, defined as (phi - phi0) / pi. |
required |
Returns:
| Type | Description |
|---|---|
ndarray
|
jnp.ndarray: The 2x2 matrix F for the given normalized crack angle. |
Source code in src/gcrack/lefm.py
G1(m)
Computes G1 function for a given normalized crack angle.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
m
|
float
|
Normalized crack angle, defined as (phi - phi0) / pi. |
required |
Returns:
| Name | Type | Description |
|---|---|---|
float |
float
|
The value of the G1 for the given normalized crack angle. |
Source code in src/gcrack/lefm.py
G2(m)
Computes G2 function for a given normalized crack angle.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
m
|
float
|
Normalized crack angle, defined as (phi - phi0) / pi. |
required |
Returns:
| Name | Type | Description |
|---|---|---|
float |
float
|
The value of the G2 for the given normalized crack angle. |
Source code in src/gcrack/lefm.py
G_star(phi, phi0, KI, KII, T, Ep, s)
Computes the energy release rate G* after a infinitesimal kink of angle.
This function computes the energy release rate G* using the Irwin formula. The SIFs are calculated as described in Amestoy and Leblond (1992).
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
phi
|
float
|
Current crack angle. |
required |
phi0
|
float
|
Initial crack angle. |
required |
KI
|
float
|
Mode I stress intensity factor. |
required |
KII
|
float
|
Mode II stress intensity factor. |
required |
T
|
float
|
T-stress. |
required |
Ep
|
float
|
Plane strain/stress modulus. |
required |
s
|
float
|
Internal length associated with T-stress. |
required |
Returns:
| Name | Type | Description |
|---|---|---|
float |
float
|
The energy release rate G* for the given crack angle and stress intensity factors. |
Source code in src/gcrack/lefm.py
G_star_coupled(phi, phi0, KI1, KII1, T1, KI2, KII2, T2, Ep, s)
Computes the coupled energy release rate G* for two sets of stress intensity factors.
It is used to evaluate the energy release rate for two interacting loading conditions.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
phi
|
float
|
Current crack angle. |
required |
phi0
|
float
|
Initial crack angle. |
required |
KI1
|
float
|
Mode I stress intensity factor for the first load. |
required |
KII1
|
float
|
Mode II stress intensity factor for the first load. |
required |
T1
|
float
|
T-stress for the first load. |
required |
KI2
|
float
|
Mode I stress intensity factor for the second load. |
required |
KII2
|
float
|
Mode II stress intensity factor for the second load. |
required |
T2
|
float
|
T-stress for the second load. |
required |
Ep
|
float
|
Plane strain modulus. |
required |
s
|
float
|
Internal length associated with T-stress. |
required |
Returns:
| Name | Type | Description |
|---|---|---|
float |
float
|
The coupled energy release rate G* for the given crack angle and stress intensity factors. |
Source code in src/gcrack/lefm.py
Gvec(m)
Construct the vector G containing the Gi functions of Amestoy-Leblond.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
m
|
float
|
Normalized crack angle, defined as (phi - phi0) / pi. |
required |
Returns:
| Type | Description |
|---|---|
ndarray
|
jnp.ndarray: The vector G for the given normalized crack angle. |