Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
0cb5390
PhaseFieldFractureSolver cleanup
frankfeifan Jul 16, 2026
baf40f8
PhaseFieldDamageFEM cleanup, fix typo, condense, rename
frankfeifan Jul 16, 2026
24f37b0
added a check for nucleation model to see if the dissipaiton option i…
frankfeifan Jul 16, 2026
9b33c2c
move localDissipationoption to constitutive model and added FractureM…
frankfeifan Jul 18, 2026
f2818e7
updated xmls
frankfeifan Jul 18, 2026
7dad7b3
renamed sed to crackDrivingForce
frankfeifan Jul 19, 2026
0188a02
cleaned up PhaseFieldPoromechanicsSolver
frankfeifan Jul 19, 2026
f492395
apply Damage default field values after array allocation
frankfeifan Jul 19, 2026
50c014c
refactored and added spectral/vol-dev split test decks for all fractu…
frankfeifan Jul 22, 2026
488e537
fix save history of crack driving force
frankfeifan Jul 29, 2026
801b32b
enabled multi-region run with certain defined regions have no damage dof
frankfeifan Aug 4, 2026
964926b
register nodal damage as a field trait instead of an XML fieldName
frankfeifan Aug 6, 2026
41ea53a
Add phase-field benchmark
frankfeifan Aug 6, 2026
fc8a886
Merge remote-tracking branch 'origin/refactor/frankfei/phaseFieldRefa…
frankfeifan Aug 7, 2026
55946f0
add viscous regularization
frankfeifan Aug 7, 2026
869c804
removed fieldName in benchmarks, updated schemas
frankfeifan Aug 7, 2026
95a1925
Merge remote-tracking branch 'origin/develop' into refactor/frankfei/…
frankfeifan Aug 7, 2026
2ce049a
use internal meshes for single notch examples and stop tracking lfs
frankfeifan Aug 10, 2026
eb576ff
removed useless coeffField and call setConstitutiveNamesCallSuper
frankfeifan Aug 11, 2026
c2e253a
Error out on unimplemented ExplicitTransient time integration
frankfeifan Aug 12, 2026
be936f3
Merge remote-tracking branch 'origin/develop' into refactor/frankfei/…
frankfeifan Aug 13, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 26 additions & 2 deletions inputFiles/phaseField/PhaseFieldFracture.ats
Original file line number Diff line number Diff line change
Expand Up @@ -28,21 +28,45 @@ decks = [
check_step=10,
restartcheck_params=RestartcheckParameters(**restartcheck_params)),
TestDeck(
name="PhaseFieldFracture_SpectralSplit",
name="PhaseFieldFracture_SpectralSplit_Cohesive",
description=
'Testing the spectral split of the stress tensor in PF Fracture',
partitions=((1, 1, 1), (2, 2, 1)),
restart_step=15,
check_step=30,
restartcheck_params=RestartcheckParameters(**restartcheck_params)),
TestDeck(
name="PhaseFieldFracture_VolDevSplit",
name="PhaseFieldFracture_SpectralSplit_Brittle",
description=
'Testing the spectral split with the brittle degradation function in PF Fracture',
partitions=((1, 1, 1), (2, 2, 1)),
restart_step=15,
check_step=30,
restartcheck_params=RestartcheckParameters(**restartcheck_params)),
TestDeck(
name="PhaseFieldFracture_VolDevSplit_Brittle",
description=
'Testing the volumetric-deviatoric split of the stress tensor in PF Fracture',
partitions=((1, 1, 1), (2, 2, 1)),
restart_step=15,
check_step=30,
restartcheck_params=RestartcheckParameters(**restartcheck_params)),
TestDeck(
name="PhaseFieldFracture_VolDevSplit_Cohesive",
description=
'Testing the volumetric-deviatoric split with the cohesive degradation function in PF Fracture',
partitions=((1, 1, 1), (2, 2, 1)),
restart_step=15,
check_step=30,
restartcheck_params=RestartcheckParameters(**restartcheck_params)),
TestDeck(
name="PhaseFieldFracture_MultiRegion",
description=
'Testing PF Fracture on one region of a multi-region problem, with mechanics only elsewhere',
partitions=((1, 1, 1), (2, 2, 1)),
restart_step=10,
check_step=20,
restartcheck_params=RestartcheckParameters(**restartcheck_params)),
TestDeck(name="PhaseFieldFracture_Nucleation_smoke",
description='Testing the nucleation model for PF Fracture',
partitions=((1, 1, 1), (2, 2, 1)),
Expand Down
22 changes: 2 additions & 20 deletions inputFiles/phaseField/PhaseFieldFracture_CohesiveModel.xml
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,6 @@
name="DamageSolve"
discretization="FE1"
timeIntegrationOption="SteadyState"
fieldName="Damage"
localDissipation="Linear"
logLevel="1"
targetRegions="{ Region1 }">
<NonlinearSolverParameters
Expand Down Expand Up @@ -119,14 +117,6 @@
objectPath="nodeManager"
scale="0"
setNames="{xneg, xpos, yneg, ypos, zneg, zpos}"/> -->
<FieldSpecification
name="Gc"
initialCondition="1"
setNames="{ all }"
objectPath="ElementRegions/Region1"
fieldName="shale_criticalFractureEnergy"
scale="2.7"/>

<FieldSpecification
name="xpos"
objectPath="nodeManager"
Expand Down Expand Up @@ -167,25 +157,17 @@
setNames="{ all }"/>

<!-- <FieldSpecification name="pointSource"
fieldName="Damage"
fieldName="damage"
initialCondition="0"
objectPath="nodeManager"
scale="1"
setNames="{centerLine}"/> -->
<!-- FieldSpecification name="pointSource2"
fieldName="Damage"
fieldName="damage"
initialCondition="0"
objectPath="nodeManager"
scale="0"
setNames="{xneg,xpos}"/> -->
<!-- <FieldSpecification name="diffusionCoeff"
initialCondition="1"
setNames="{all}"
objectPath="ElementRegions"
fieldName="coeffField"
scale="2e3"
functionName="f_b"
/> -->
</FieldSpecifications>

<Functions>
Expand Down
16 changes: 3 additions & 13 deletions inputFiles/phaseField/PhaseFieldFracture_DamageAndLoad.xml
Original file line number Diff line number Diff line change
Expand Up @@ -34,9 +34,6 @@
name="DamageSolve"
discretization="FE1"
timeIntegrationOption="SteadyState"
fieldName="Damage"

localDissipation="Quadratic"
logLevel="1"
targetRegions="{ Region1 }">
<NonlinearSolverParameters
Expand Down Expand Up @@ -114,18 +111,11 @@
defaultShearModulus="3.00e5"
lengthScale="0.2"
defaultCriticalFractureEnergy="2.7"
criticalStrainEnergy="0"/>
criticalStrainEnergy="0"
localDissipationOption="Quadratic"/>
</Constitutive>

<FieldSpecifications>
<FieldSpecification
name="Gc"
initialCondition="1"
setNames="{ all }"
objectPath="ElementRegions/Region1"
fieldName="shale_criticalFractureEnergy"
scale="2.7"/>

<FieldSpecification
name="xtraction"
fieldName="totalDisplacement"
Expand Down Expand Up @@ -158,7 +148,7 @@

<FieldSpecification
name="pointSource"
fieldName="Damage"
fieldName="damage"
objectPath="nodeManager"
scale="1"
setNames="{ middle }"/>
Expand Down
13 changes: 1 addition & 12 deletions inputFiles/phaseField/PhaseFieldFracture_DamageOnly.xml
Original file line number Diff line number Diff line change
Expand Up @@ -34,9 +34,6 @@
name="DamageSolve"
discretization="FE1"
timeIntegrationOption="SteadyState"
fieldName="Damage"

localDissipation="Linear"
logLevel="1"
targetRegions="{ Region1 }">
<NonlinearSolverParameters
Expand Down Expand Up @@ -120,14 +117,6 @@
</Constitutive>

<FieldSpecifications>
<FieldSpecification
name="Gc"
initialCondition="1"
setNames="{ all }"
objectPath="ElementRegions/Region1"
fieldName="shale_criticalFractureEnergy"
scale="2.7"/>

<FieldSpecification
name="xboundary"
fieldName="totalDisplacement"
Expand All @@ -151,7 +140,7 @@

<FieldSpecification
name="pointSource"
fieldName="Damage"
fieldName="damage"
objectPath="nodeManager"
scale="1"
setNames="{ centerPoint }"/>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,11 @@
name="PhaseFieldSolve"
solidSolverName="SolidMechSolve"
damageSolverName="DamageSolve"
logLevel="2"
logLevel="1"
targetRegions="{ Region1 }">
<NonlinearSolverParameters
couplingType="Sequential"
lineSearchAction="None"
lineSearchAction="None"
newtonMaxIter="100"/>
</PhaseFieldFracture>

Expand All @@ -32,9 +32,6 @@
name="DamageSolve"
discretization="FE1"
timeIntegrationOption="SteadyState"
fieldName="Damage"

localDissipation="Quadratic"
logLevel="1"
targetRegions="{ Region1 }">
<NonlinearSolverParameters
Expand Down Expand Up @@ -73,37 +70,6 @@
xMax="{ 1.01, 1.01, 0.11 }"/>
</Geometry>

<Events
maxTime="30.0">
<!-- <SoloEvent name="siloOutput0"
target="/Outputs/SiloOutput"/> -->
<!-- This event is applied every cycle, and overrides the
solver time-step request -->
<PeriodicEvent
name="solverApplications"
forceDt="1.0"
target="/Solvers/PhaseFieldSolve"/>

<!-- This event is applied every 1.0s. The targetExactTimestep
flag allows this event to request a dt modification to match an
integer multiple of the timeFrequency. -->
<PeriodicEvent
name="vtkOutput"
timeFrequency="1.0"
target="/Outputs/Mode2VolDev_VTKOutput"/>

<PeriodicEvent
name="siloOutputs"
timeFrequency="1.0"
target="/Outputs/Mode2VolDev_SiloOutput"/>

<PeriodicEvent
name="restarts"
timeFrequency="15.0"
targetExactTimestep="0"
target="/Outputs/restartOutput"/>
</Events>

<NumericalMethods>
<FiniteElements>
<FiniteElementSpace
Expand All @@ -119,26 +85,7 @@
materialList="{ shale }"/>
</ElementRegions>

<Constitutive>
<DamageVolDevElasticIsotropic
name="shale"
defaultDensity="2700"
defaultBulkModulus="1.750e5"
defaultShearModulus="8.077e4"
lengthScale="0.25"
defaultCriticalFractureEnergy="54.0"
criticalStrainEnergy="14.88"/>
</Constitutive>

<FieldSpecifications>
<FieldSpecification
name="Gc"
initialCondition="1"
setNames="{ all }"
objectPath="ElementRegions/Region1"
fieldName="shale_criticalFractureEnergy"
scale="54.0"/>

<FieldSpecification
name="shearLoad"
fieldName="totalDisplacement"
Expand Down Expand Up @@ -178,22 +125,4 @@
values="{ -1, 100 }"/>
</Functions>

<Outputs>
<Silo
name="Mode2VolDev_SiloOutput"/>

<VTK
name="Mode2VolDev_VTKOutput"
plotFileRoot="plot"/>

<Restart
name="restartOutput"/>
</Outputs>

<!-- <Geometry> -->
<!-- <Box name="bottom" xMin="{-0.51, -0.51, -0.01" xMax="0.51, -0.49, +0.11"/> -->
<!-- <Box name="top" xMin="{-0.51, 0.49, -0.01" xMax="0.51, 0.51, +0.11"/> -->
<!-- <Box name="left" xMin="{-0.51, -0.51, -0.01" xMax="-0.49, 0.51, +0.11"/> -->
<!-- <Box name="right" xMin="0.49, -0.51, -0.01" xMax="0.51, 0.51, +0.11"/> -->
<!-- </Geometry> -->
</Problem>
</Problem>
Loading
Loading