Fracture Field
FractureField evolves a scalar damage/fracture field on the simulation grid coupled to the mechanical and phase-field state. It complements the Damage module overview, which covers the constitutive slip-system–level damage models; this page documents the field-level fracture kernel and its input contract.
The model is based on an obstacle-type potential of width $SWidth controlled by a mobility $Mu, an initial surface energy $Sigma, and a threshold driving force $delta_g_0. An optional chemo-mechanical coupling ties the fracture rate to the concentration of a reference component ($RefElement).
Key Classes and Concepts
FractureField : public OPObject: the evolving scalar field and its increment kernel.$FractureModel=Obstacle(default): obstacle-potential formulation. Alternative values, if present in the source, are selected from the string chain downstream of the$FractureModelread.
Usage
Input
Defined in the @FractureField block.
@FractureField
$FractureModel Fracture kernel : Obstacle
$SWidth Obstacle width : 1.0
$Mu Fracture mobility : 1.0
$Sigma Initial surface energy : 1.0
$delta_g_0 Driving-force threshold : 30000
$ChemoMechanicalCoupling Couple fracture to composition : No
$Xi Coupling strength : 0.0
$RefElement Reference component for the coupling: Fe
$FractureFieldLaplacianStencil Laplacian stencil : ISOTROPIC
$FractureFieldGradientStencil Gradient stencil : ISOTROPIC$Xi and $RefElement are required only when $ChemoMechanicalCoupling = Yes.
Output
The fracture field is written via FractureField::WriteVTK; consult the header for the exact field name.
Example
#include "FractureField.h"
FractureField Frac(OPSettings, InputFile);
for(RTC.tStep = RTC.tStart; RTC.tStep <= RTC.nSteps; RTC.IncrementTimeStep())
{
// ... mechanical + phase-field updates ...
Frac.Solve(Phi, EP, BC, RTC.dt);
if (RTC.WriteVTK())
{
Frac.WriteVTK(OPSettings, RTC.tStep);
}
}Dependencies
- Damage — overview of damage / fracture models.
- PhaseField, BoundaryConditions, Settings.
- ElasticProperties — stress state drives fracture evolution.
- Composition — required when
$ChemoMechanicalCoupling = Yes.