Closed baagaard-usgs closed 5 years ago
Update: Incorrect solution when using Neumann BC with hex cells.
PyLith branch: baagaard/reorganize-examples
Simulation with tet mesh passes test. Hex fails for both Dirichlet BC and Neumann BC.
cd tests_auto/linearelasticity/nofaults-3d
make export-data
nemesis TestShearTraction.py
@baagaard-usgs I just ran this and the Dirichlet tests for Hex also fail, which suggest it might be something other than the surface integration. Do you see that?
In the shear traction example, we have both Dirichlet and Neumann BC. The Dirichlet BC do not constrain all three components, just the x and y DOF. This is why the error in the integration results in the z DOF being wrong. It still looks like the error is in the hex surface integration. The corresponding test in 2-D passes. That is, the 2-D test cases (nofaults-2d) all pass.
test_bcdirichlet_solution
- Test of solution field on Dirichlet boundariestest_bcneumann_solution
- Test of solution field on Neumann boundaries@knepley says the face quadrature for hex cells is wrong. Neumann BCs work for tets and Matt says his face integration tests all use tets
Need to remove all noncell info from material-id
label after refining in RefineUniform.cc
.
@baagaard I just tried to run this again to see the error, and I see no error if I run in the branch where I fixed refinement. Can you try running there to see if this indeed solves the issue?
@knepley I still get the same error. Are you sure you ran the 3-D test in nofaults-3d? and not the 2-D test?
PETSc error when integrating residual for a Neumann BC on a hex mesh.
PyLith branch: baagaard/feature-tests-auto-3d-nofault
Test case
Problem with tet mesh passes test. Hex mesh works fine with Dirichlet BC.
Output