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号




 

Attachment: SNES_heat.cpp
Description: Binary data

Reply via email to