-
Notifications
You must be signed in to change notification settings - Fork 89
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
feat: mgr strategy for lagrangeContactBubbleStabilization #3492
feat: mgr strategy for lagrangeContactBubbleStabilization #3492
Conversation
...nearAlgebra/interfaces/hypre/mgrStrategies/LagrangianContactMechanicsBubbleStabilization.hpp
Outdated
Show resolved
Hide resolved
…s/LagrangianContactMechanicsBubbleStabilization.hpp Co-authored-by: Nicola Castelletto <[email protected]>
…StrategyForLagrangeContactBubble
void setILUCoarseSolver( HyprePrecWrapper & solver ) | ||
{ | ||
/* (Required) Create ILU solver */ | ||
HYPRE_ILUCreate(&solver.ptr); | ||
|
||
/* (Recommended) General solver options */ | ||
int const ilu_type = 0; /* 0, 1, 10, 11, 20, 21, 30, 31, 40, 41, 50 */ | ||
int const max_iter = 1; | ||
double const tol = 0.0; | ||
int const reordering = 0; /* 0: none, 1: RCM */ | ||
int const print_level = 0; | ||
HYPRE_ILUSetType(solver.ptr, ilu_type); | ||
HYPRE_ILUSetMaxIter(solver.ptr, max_iter); | ||
HYPRE_ILUSetTol(solver.ptr, tol); | ||
HYPRE_ILUSetLocalReordering(solver.ptr, reordering); | ||
HYPRE_ILUSetPrintLevel(solver.ptr, print_level); | ||
|
||
solver.setup = HYPRE_ILUSetup; | ||
solver.solve = HYPRE_ILUSolve; | ||
solver.destroy = HYPRE_ILUDestroy; | ||
} |
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.
we could remove this. Unless we want it as an example of how to set a different coarse solver.
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.
Let's keep it
src/coreComponents/physicsSolvers/contact/SolidMechanicsLagrangeContactBubbleStab.cpp
Outdated
Show resolved
Hide resolved
inputFiles/lagrangianContactMechanics/LagrangeContactBubbleStab_FixedSlip_smoke.xml
Outdated
Show resolved
Hide resolved
setupLabels(); | ||
|
||
// Level 0 | ||
m_levelFRelaxType[0] = MGRFRelaxationType::l1jacobi; |
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.
We should investigate with @victorapm the blockJacobi
option at some point. Not needed in this PR.
m_levelGlobalSmootherType[0] = MGRGlobalSmootherType::none; | ||
|
||
// Level 1 | ||
m_levelFRelaxType[1] = MGRFRelaxationType::l1jacobi; |
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.
Same here.
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.
Looks good to me, thanks!
inputFiles/lagrangianContactMechanics/LagrangeContactBubbleStab_FixedSlip_smoke.xml
Outdated
Show resolved
Hide resolved
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## develop #3492 +/- ##
===========================================
- Coverage 56.87% 56.85% -0.02%
===========================================
Files 1157 1158 +1
Lines 101244 101273 +29
===========================================
Hits 57580 57580
- Misses 43664 43693 +29 ☔ View full report in Codecov by Sentry. |
Adds and MGR strategy for the saddle point system of:
lagrangeContactBubbleStabilization
.