Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error in residual for cohesive cells when created using transform #812

Open
baagaard-usgs opened this issue Mar 1, 2025 · 5 comments
Open
Assignees
Labels
bug:petsc PETSc related bug bug General bug

Comments

@baagaard-usgs
Copy link
Contributor

Describe the bug

The residual is incorrect for one or more cohesive cells when we are using the transform to create the cohesive cells.

To Reproduce

PETSc branch: knepley/pylith
PyLith fork: https://github.com/baagaard-usgs/pylith.git
PyLith branch: feature-create-fault-parallel

make install
cd tests/mmstests/linearelasticity/faults-2d
make export-data -C data
make mmstest_linearelasticity_faults2d
.libs/mmstest_linearelasticity_faults2d OneFaultShearNoSlip::QuadQ1::testResidual --journal.debug=OneFaultShearNoSlip

Expected behavior

Cell 11 Element Hybrid Residual
  | 0. |
  | 1.2 |
  | 0. |
  | 1.2 |
  | 0. |
  | -1.2 |
  | 0. |
  | -1.2 |
  | -1.6 | // Should be 0
  | 0.8 | // Should be 0
  | -0.8 | // Should be 0
  | 1.6 | // Should be 0
@baagaard-usgs baagaard-usgs added bug General bug bug:petsc PETSc related bug labels Mar 1, 2025
@baagaard-usgs baagaard-usgs added this to the Release v5.0.0 milestone Mar 1, 2025
@baagaard-usgs
Copy link
Contributor Author

@knepley I suspect the orientation of one edge is flipped. I will check this and let you know.

@baagaard-usgs
Copy link
Contributor Author

There is a PETSc branch knepley/fix-hybrid-geometry which has not been merged to main and may have relevant fixes. knepley/fix-hybrid-geometry is old and may be difficult to rebase, so @knepley will create a new branch with the fixes, so we can check if these resolve these errors.

@baagaard-usgs
Copy link
Contributor Author

@knepley I get similar errors in the Element hybrid residual cell vectors for both TriP1 and QuadQ1 MMS tests. The fault slip constraint equations should be zero, but they are not for 1 cell in the QuadQ1 case and 2 cells in the TriP1 case.

@knepley
Copy link
Contributor

knepley commented Apr 3, 2025

@baagaard-usgs I think I fixed the problem we know about. Pull knepley/feature-plex-transform-cohesive

@baagaard-usgs
Copy link
Contributor Author

Update

  • In the integration of cohesive cells, dim passed to the hybrid Jacobian kernels is spaceDim-1 rather than spaceDim as in the case of the hybrid residual kernels.
  • Displacements used in the hybrid residual kernel in TwoFaultsShearNoSlip are incorrect. For some locations, the displacements correspond to vertices that are not adjacent to the fault, similar to the problem we had with one fault.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug:petsc PETSc related bug bug General bug
Projects
None yet
Development

No branches or pull requests

2 participants