我正在尝试使用 Newton Raphson 迭代来实现反向欧拉方案。我知道每次迭代都会进行初始猜测,计算残差并解决变化。就我而言,变化是del w。之后,我知道将值添加到 w^m 并在下一次 m 迭代中获取 w 的更新值。我知道随着迭代的进行检查解决方案的收敛性。我遇到的问题是如何将时间步长 dt 实现为 t=0:Tmax/dt,其中 Tmax 是 10。我对时间步长如何进入感到困惑。我一直在尝试解决这个问题同时,我们将不胜感激任何帮助。谢谢!
while Rw(m)>10^-6 % Convergence condition
drdw(m)=(1-2*dt+2*t(n+1)^2*w(m)*dt);
Dw(m)=Rw(m)\drdw(m); %Inverse
w(m+1)=w(m)+Dw(m); %Newton method
Rw(m+1)=(-(w(m)-v(1)-2*w(m)*dt+t(n+1)^2*w(m)^2*dt)); %New Residual value
if Rw(m+1)>10^-6 %Check on the level of convergence
m=m+1;
else
Rw=1; % I was thinking I should make the Residual 1 for the next time step.
break
end