问题1:
IF(E.EQ.0.1) THEN
e 是一个浮点数。浮点数最好不要做想等的判断。
因为计算机存储浮点数是有一定误差的,很难实现完全的相等。
建议用
IF( abs(E-0.1)<0.0001 ) THEN
来替代。也就是输出 e 在 0.1 附近的值。其中的 0.0001 代表精度,具体需要多少,你自己判断。
问题2:
循环变量 kx , ky 最好是整数,而不是要浮点数。原因跟问题1一样,循环终止条件时,需要做相等判断。
解决方法是这样:
Do i = 1 , N
Do j = 1 , M
kx = i * ....
N , M 你自己想想应该是多少,给 i 循环变量乘一个系数,使之变成你想要的 kx 和 ky