Add normal NCP options for mortar contact - #33323
Conversation
|
Job Documentation, step Docs: sync website on d89a464 wanted to post the following: View the site here This comment will be updated on new commits. |
4dc38ad to
92ccec4
Compare
|
Can you rebase to remove all the recipe failures? It would be great to see some results (perhaps tabular) that shows some solver characteristics with the different NCP choices |
I used the mortar LM 3D ironing problem also used in: #33358 The three new options all let the simulation run a littlle bit further before failure for the frictional case. For the frictionless case the
|
|
92ccec4 to
68bf3fe
Compare
Add selectable normal nonlinear complementarity functions for LM mortar normal contact, including smooth min and Fischer-Burmeister variants. refs idaholab#33322 Co-authored-by: Andreas Henrik Frederiksen <andreas.frederiksen@inl.gov> Co-authored-by: OpenAI Codex <codex@openai.com>
68bf3fe to
d89a464
Compare
|
Job Test, step Results summary on d89a464 wanted to post the following: Framework test summaryCompared against a3c1a50 in job civet.inl.gov/job/3983715. No change Modules test summaryCompared against a3c1a50 in job civet.inl.gov/job/3983715. Added tests
|
I can't tell exactly what input this is. You're putting up a lot of PRs; it would help me if you can be as explicit as possible. So it seems like the min function is superior to FB for frictionless contact. Frictional is a little harder for me to parse. Could you maybe post another table with the number of accepted and failed timestep counts and the number of nonlinear iterations removed and instead have two columns, one with average dt per (accepted) time step and another with average number of nonlinear iterations per (accepted) time step? |

closes #33322
Reason
LM mortar normal contact currently exposes only the min-function NCP residual for the normal weighted-gap constraint. That preserves exact complementarity, but it gives users no input-level way to try smooth-min or Fischer-Burmeister forms when active-set transitions make nonlinear solves difficult.
Design
normal_ncp_function = MIN | SMOOTH_MIN | FISCHER_BURMEISTER | SMOOTH_FISCHER_BURMEISTER.normal_ncp_smoothing_widthfor the smooth normal NCP functions.ContactActionforformulation = mortarand reject them for non-mortar contact formulations.Impact
Existing inputs and results are unchanged because
MINremains the default. Users gain optional smooth-min and Fischer-Burmeister normal NCP residuals for LM mortar contact. Penalty mortar and node-face contact are unchanged.