-
Notifications
You must be signed in to change notification settings - Fork 251
Move InversseVelocityBlock to a header file for block Stokes preconditioning and add template arguments for vector/matrix type. #6711
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
base: main
Are you sure you want to change the base?
Conversation
4cb9ca7
to
4f98075
Compare
is this ready to go, @quangx ? |
* This operator can either just apply the preconditioner (AMG) | ||
* or perform an inner CG solve with the same preconditioner. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
* This operator can either just apply the preconditioner (AMG) | |
* or perform an inner CG solve with the same preconditioner. | |
* This operator can either just apply the preconditioner | |
* or perform an inner CG / BiCGStab solve with the same preconditioner. |
* @param do_solve_A A flag indicating whether we should actually solve with | ||
* the matrix $A$, or only apply one preconditioner step with it. | ||
* @param A_block_is_symmetric A flag indicating whether the matrix $A$ is symmetric. | ||
* @param A_block_tolerance The tolerance for the CG solver which computes | ||
* the inverse of the A block. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
please update these comments
* @param do_solve_A A flag indicating whether we should actually solve with | ||
* the matrix $A$, or only apply one preconditioner step with it. | ||
* @param A_block_is_symmetric A flag indicating whether the matrix $A$ is symmetric. | ||
* @param A_block_tolerance The tolerance for the CG solver which computes |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
* @param A_block_tolerance The tolerance for the CG solver which computes | |
* @param solver_tolerance The tolerance for the CG solver which computes |
c893790
to
0a35ab6
Compare
The purpose of restructuring the code is to use the same preconditioner class for AMG and GMG. Moving the InverseVelocityBlock to a header file and adding template arguments for vector/matrix should help with achieving that.