pihnn.utils.compute_J_integral#
- pihnn.utils.compute_J_integral(model, tip, radius=1.0, integration_points=1000, crack_curve=None)#
Compute the J-integral.
\[J = \oint_{\gamma} \left(w n_x - (\sigma \cdot n)\cdot\frac{\partial u}{\partial x}\right) d\gamma,\]where \(\gamma\) is a closed curve around a crack tip and \(w=\frac{1}{2}\sigma:\varepsilon\). In particular, a first-order discretization is used and \(\gamma\) is taken as a circle around the crack tip plus, if required, the crack faces.
- Parameters:
model (
pihnn.nn.PIHNN
/pihnn.nn.DD_PIHNN
) – Neural network model, the function is meaningful only if model.PDE is either ‘km’ or ‘km-so’.tip (
pihnn.geometries.crack_tip
) – Crack tip where the J-integral is evaluated.radius (float) – Radius of the circumference where the J-integral is evaluated.
integration_points (int) – Number of integration points on the circumference.
crack_curve (
pihnn.geometries.curve
) – Curve associated to the crack tip, for the evaluation of the I-integral on the crack faces, if needed.
- Returns:
J (float) - Evaluation of the J-integral.