Help picking out preconditioners #32340
Unanswered
TheGreatCid
asked this question in
Q&A General
Replies: 1 comment 11 replies
-
|
Hello
Is the Jacobian fully implemented? What do you get from the finite difference based testing you can find here (-snes test jacobian)
are you using scaling factors? The equations for conservation of energy and mechanics don't have the same magnitude of coefficients |
Beta Was this translation helpful? Give feedback.
11 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Check these boxes if you have followed the posting rules.
Question
Hi all,
I am looking for some insight into the best preconditioners to use for a large 3D problem.
I am performing a monolithic solve between displacements and temperature. I am using an Implicit Euler time integrator, with all the HHT alpha parameters provided to the relevant inertial Kernels/AuxKernels.
Here are the specifics for each model:
Solid Mechanics
Temperature
The mechanical and temperature solves are coupled through the J2 plasticity solve. Plastic work generates heat while the temperature degrades the yield surface. Steep temperature and plastic strain gradients form over the course of the simulation.
I am looking for advice on speeding up the calculation (if possible) and improving overall performance (fewer NL its, less ping-ponging, etc.). At a certain point in the simulation, the NL It's will ping-pong, requiring a very small timestep to avoid this behavior. I use a Newton NL solver.
By default, I use
boomeramgfor everything, with the following values,Which tends to work. This performs many linear iterations very quickly. However, I am suspicious that lumping the displacements and the Temp together might be causing issues, as the temperature typically has the outlier residual at the end of a timestep.
I have been trying to implement Schur splitting and run difference PCs on the Temperature variable, but I have found this to be pretty slow. Also, I have been playing a guessing game about what would be best for the Temp variable...
I am curious if anything immediately stands out to anyone who is more experienced in fine-tuning PCs.
Beta Was this translation helpful? Give feedback.
All reactions