sandialabs / lgrtk

Tool Kit for Lagrangian Grid Reconnection
23 stars 13 forks source link

tri3_buoyancy fails #20

Closed bgranzow closed 5 years ago

bgranzow commented 5 years ago

the test tri3_bouyancy fails on cee_lan after a number of steps with the error:

 +3.0e+03  +2.0e+00  +0.0e+00 
assertion determinant(incr_F) > 0.0 failed at /gpfs1/bngranz/archie/src/lgrtk/v2/src/lgr_deformation_gradient.cpp +35

when configuring with the script

make_threads=8
module load sems-env
module load sems-cmake/3.12.2
module load sems-gcc/7.3.0
module load sems-git/2.10.1
external_cmake_install=${SEMS_CMAKE_ROOT}
lgr_elements="Bar2\;Tri3\;Tri6\;Tet4\;CompTet"
ibaned commented 5 years ago

Does this still happen? I think it was due to the F update bug I fixed.

bgranzow commented 5 years ago

Yes. It was after that bug fix that I saw it. It will also just happen all the time if you just increase the final time slightly (say to 2.1) on any machine. The upper bubble just starts flying of to the left.

ibaned commented 5 years ago

Its still TBD whether this is a bug in remap or something more fundamental about timesteps...

ibaned commented 5 years ago

In particular, I think I tried a remap that just picks old F values and that still showed the same behavior

ibaned commented 5 years ago

Thankfully, it looks like this is an issue with linear elastic, if I switch to neo-Hookean things get better. Of course this is with many code edits...

ibaned commented 5 years ago

Let me know if my most recent push to use neo-Hookean fixed it, it ran fine for me with the original code

bgranzow commented 5 years ago

Yea that seems to work. Can this be explained by the fact that linear elastic isn't valid for large rotations?

ibaned commented 5 years ago

Yea large deformations would be one thing to think about... I'd say we simply steer clear of linear elastic for anything that is adapting