Williams series
Module for computing Williams series functions for crack tip fields.
This module provides functions to compute the Williams series functions (Gamma_I, Gamma_II, Gamma_III) for crack tip displacement fields in linear elastic fracture mechanics. These functions are used to represent the displacement fields around a crack tip using complex variable methods.
Functions:
| Name | Description |
|---|---|
Gamma_I |
Computes the Williams series function for mode I. |
Gamma_II |
Computes the Williams series function for mode II. |
Gamma_III |
Computes the Williams series function for mode III. |
Gamma_I(n, z, mu, ka)
Computes the Williams series function for mode I crack tip displacement fields.
This function calculates the function for the mode I (opening mode) term in the Williams series expansion of the displacement field around a crack tip. The function is expressed in terms of complex coordinates and material properties.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
n
|
int
|
The order of the term in the Williams series expansion. |
required |
z
|
complex
|
Complex coordinate relative to the crack tip. |
required |
mu
|
float
|
Shear modulus of the material. |
required |
ka
|
float
|
Kolosov constant, which depends on the material properties and the 2D assumption. |
required |
Returns:
| Name | Type | Description |
|---|---|---|
complex |
The Williams series function for mode I at the given point. |
Notes
- The function uses polar coordinates derived from the complex coordinate z.
- The result is a complex number representing the function in the series expansion.
- The function is JIT-compiled using JAX for efficient execution.
Source code in src/gcrack/utils/williams_series.py
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 | |
Gamma_II(n, z, mu, ka)
Computes the Williams series function for mode II crack tip displacement fields.
This function calculates the function for the mode II (opening mode) term in the Williams series expansion of the displacement field around a crack tip. The function is expressed in terms of complex coordinates and material properties.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
n
|
int
|
The order of the term in the Williams series expansion. |
required |
z
|
complex
|
Complex coordinate relative to the crack tip. |
required |
mu
|
float
|
Shear modulus of the material. |
required |
ka
|
float
|
Kolosov constant, which depends on the material properties and the 2D assumption. |
required |
Returns:
| Name | Type | Description |
|---|---|---|
complex |
The Williams series function for mode II at the given point. |
Notes
- The function uses polar coordinates derived from the complex coordinate z.
- The result is a complex number representing the function in the series expansion.
- The function includes a negative sign to recover the classic mode II displacement field.
- The function is JIT-compiled using JAX for efficient execution.
Source code in src/gcrack/utils/williams_series.py
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 | |
Gamma_III(n, z, mu, ka)
Computes the Williams series function for mode III crack tip displacement fields.
This function calculates the function for the mode III (opening mode) term in the Williams series expansion of the displacement field around a crack tip. The function is expressed in terms of complex coordinates and material properties.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
n
|
int
|
The order of the term in the Williams series expansion. |
required |
z
|
complex
|
Complex coordinate relative to the crack tip. |
required |
mu
|
float
|
Shear modulus of the material. |
required |
ka
|
float
|
Kolosov constant, which depends on the material properties and the 2D assumption. |
required |
Returns:
| Name | Type | Description |
|---|---|---|
complex |
The Williams series function for mode III at the given point. |
Notes
- The function uses polar coordinates derived from the complex coordinate z.
- The result is a complex number representing the function in the series expansion.
- The function is JIT-compiled using JAX for efficient execution.
- The ka parameter is included for consistency with the other modes but is not used in the calculation.
Source code in src/gcrack/utils/williams_series.py
95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 | |