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.