我的目标是系统地将e1
的值从-1增加到0,步长为0.001。对于e1
的每个值,计算变量uNew
,变量r
的值增加dr
= 0.01,直到r
= 25;
但是能量始终从0开始而不是-1,而且我无法弄清楚如何实现它,我是否应该使用两个For循环?
for(int i = 0; i < 1000 ; i++) {
do {
e1 = e1 + 0.001;
}while(e1 < 0 );
r = i*dr;
uNew = 2*u1-u0+dr*dr*(2/r - 2*e1)*u0;
dr += 0.01;
u0 = u1;
u1 = uNew;
}
答案 0 :(得分:0)
您是否已将变量e1初始化为-1?你只是在do while循环中递增值。我认为你需要在循环内计算uNew值。