I am using the Newton iteration to solve a nonlinear 1D heat equation problem by using FEM.
I attached my source code named "SNES_heat.cpp" when I run the code 0 SNES Function norm 1.206289245288e+01 1 SNES Function norm 7.128802192789e+00 2 SNES Function norm 6.608812909525e+00 you can find that it only iterate 3 steps, and then do all the function evaluation and finally just stop the program. I think it is not reasonble. I check my code, it is correct if I set it as a linear problem. it means my Jacobian and Residual function is correct. But when I set it as a nonlinear, the residual seems reduces as not expected. I doubt that whether my understanding of the newton iteration is different from SNES's newton iteration process. David Jiawei LUO LIANG 南方科技大学/学生/研究生/2024 广东省深圳市南山区学苑大道1088号
SNES_heat.cpp
Description: Binary data