Skip to content

refactor: Phase-field and damage solid model cleanup, refactor - #4096

Open
frankfeifan wants to merge 25 commits into
developfrom
refactor/frankfei/phaseFieldRefactor
Open

refactor: Phase-field and damage solid model cleanup, refactor#4096
frankfeifan wants to merge 25 commits into
developfrom
refactor/frankfei/phaseFieldRefactor

Conversation

@frankfeifan

@frankfeifan frankfeifan commented Jul 16, 2026

Copy link
Copy Markdown
Contributor

To remove dead codes, unify duplicated logic, rename unclear variables, and decouple crack model type from decomposition scheme to enable more options of the phase-field model.

  • Remove unnecessary macros in the solver and damage model
  • Unify LocalDissipationOption into a constitutive-level definition
  • Add FractureModelType (Brittle/Cohesive/Nucleation), and decouple it from decomposition scheme to allow for more phase-field model combinations, e.g.,
    - Brittle + Linear (AT1)/Quadratic (AT2) + No decomposition/Spectral/VolDev
    - Cohesive + Linear + No decomposition/Spectral/VolDev
    - Nucleation + Linear + No decomposition
  • Add check for invalid combinations (Nucleation+Spectral, Cohesive+Quadratic, etc.)
  • Update existing phase-field xml decks and add new examples
  • Enable co-existence of no-phase-field regions (only solid mech, and no damage dof) and phase-field regions. The previous code will complain about empty damage dof set even the regions are not defined in PhaseFieldFracture or PhaseFieldDamageFEM.
  • Add viscous regularization for the phase-field equation
  • Rebaseline integrated tests

@frankfeifan frankfeifan self-assigned this Jul 16, 2026
@frankfeifan frankfeifan added ci: run CUDA builds Allows to triggers (costly) CUDA jobs changes XML input ci: run integrated tests Allows to run the integrated tests in GEOS CI ci: run code coverage enables running of the code coverage CI jobs labels Jul 16, 2026

@joshua-white joshua-white left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice cleanup

@frankfeifan

frankfeifan commented Aug 6, 2026

Copy link
Copy Markdown
Contributor Author

Added a few well-known benchmark examples in inputFiles/phaseField/benchmark which can be used for future phase-field documentation.

A short report summarizing these examples is attached here:
phase_field_benchmarks_report.pdf

@frankfeifan frankfeifan added flag: ready for review flag: requires rebaseline Requires rebaseline branch in integratedTests labels Aug 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

changes XML input ci: run code coverage enables running of the code coverage CI jobs ci: run CUDA builds Allows to triggers (costly) CUDA jobs ci: run integrated tests Allows to run the integrated tests in GEOS CI flag: ready for review flag: requires rebaseline Requires rebaseline branch in integratedTests

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants