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
Resolve issues related to variable point-block Jacobi for fault preconditioner #677
Comments
DescriptionI pulled PETSc and now SNES fails to converge. How to reproducePETSc branch:
|
@baagaard-usgs I think this is fixed. I have force pushed the PETSc branch. The problem was that the residual is cloned from the solution, and clone did not copy the rordering flags. Ugh. Putting in a new flag is hard. Let me know if this works for you. |
The residual and Jacobian are now consistent. The output is still scrambled. |
How do I see the output from the minmesh example I am running?
|
The Lagrange multipliers should be nearly 0 and the displacements should +1 and -1 on each side of the fault.
|
Only the displacement outputs for me. These look like they are in the original order
|
The displacement solution field should be u(x=-2000) = (0, 1)
|
I have a fix. However, when I rebuilt PyLith everything started to fail, and I cannot understand why. Here is the beginning of the error messages
|
Okay, I resolved that. My fix appears to work, but I cannot push to your fork. Here is my diff:
Do you have to give me permission on your fork? |
Yes, I believe this is the fix. The fault full-scale tests pass with this fix. I will do more testing to verify completeness. What is the prospect of getting the mg levels set according to the problem? If we are able to do that, we might have this issue completely wrapped up.
|
I get a zero pivot in row 0 when I use a basis order of 2. I thought you had fixed the reordering for basis order 2. PETSc branch: How to reproduce
Error message
|
@knepley mg_fine* seems to work. I am still getting this error above with basis order 2. |
The basis order 2 fix is in knepley/fix-plex-reorder-hybrid |
I confimed that combining PETSc branches Will close this issue once PETSc branch |
@knepley It looks like we have an issue with using the new fault preconditioner settings in parallel in 3D. Error message
Steps to reproducePETSc branch:
|
This is not limited to 3D. It also shows up in 2D, but depends on the number of processes. |
The new |
@knepley Two faults that intersection (one through-going and one that ends at the intersection) seems to cause an error when permuting the section.
How to reproducePETSc branch:
|
@baagaard-usgs I believe this is fixed in https://gitlab.com/petsc/petsc/-/merge_requests/7417 |
Fix verified. |
--petsc.mg_levels_3_pc_type=vpbjacobi
) is basis function dependent; need to be able to set this automaticallyThe text was updated successfully, but these errors were encountered: