Fortran runtime error:Bad repeat count in item 2 of list input

Fortran runtime error:Bad repeat count in item 2 of list input

Open(unit=17, file='d_R.dat', status='old')
x=x_min+INT(abs(-1.0-x_min_0)/d_x_0)*d_x_0
Do mx=INT(abs(-1.0-x_min_0)/d_x_0)+1, INT(abs(-1.0-x_min_0)/d_x_0)+N_x_0
    read(17,*)  x, d_R(mx)   
End do
CLOSE(17) 

Open(unit=3, file='Eigen_wave0.dat', status='old')
x=x_min+INT(abs(-1.0-x_min_0)/d_x_0)*d_x_0
Do mx=INT(abs(-1.0-x_min_0)/d_x_0)+1, INT(abs(-1.0-x_min_0)/d_x_0)+N_x_0
    Read(3,*) x, RPsi6    !, IPsi6
    IPsi6=0.0D0
    Psi_xz_0(mx)=CMPLX(RPsi6,IPsi6)
    Psi_xz_R(mx)=d_max(mx)*Psi_xz_0(mx)
    Psi_xz(mx)=Psi_xz_R(mx)
    norm_t=norm_t+d_x*ABS(Psi_xz_R(mx))**2

    
!    Psi_x_t(mx,1)=Psi_xz_0(mx)
!    RPsi_x_t(mx,1)=RPsi6
!    IPsi_x_t(mx,1)=IPsi6
!    RPsi_px_t(mx,1)=ZERO
!    IPsi_px_t(mx,1)=ZERO  

Enddo
CLOSE(17)
CLOSE(3)
CLOSE(16)

我想搞清楚出现这个错误的原因,以及如何改正,谢谢

这个重复了2次,检查下你的代码的具体错误情况。

"Fortran runtime error: Bad repeat count in item 2 of list input" 的错误通常是由于读取数据时出现了格式错误导致的。

在您这段代码中,第一个文件的读取是正确的,但是在第二个文件的读取中,由于没有指定读取数据的格式,系统会按照默认格式进行读取,但是如果默认格式与实际格式不一致,就会导致出现这种错误。因此,建议在读取数据时,根据实际情况指定数据的格式。例如:

read(3,*) x, RPsi6    !, IPsi6

在这个语句中,第一个星号表示按照默认格式读取数据,但是由于IPsi6这个变量没有被读取,因此可以直接注释掉。如果实际数据的格式与默认格式不一致,可以根据实际情况修改这个语句,例如:

read(3,*) x, RPsi6, IPsi6

这个语句表示按照格式"x RPsi6 IPsi6"读取数据,其中"x"表示忽略一个数据项,RPsi6和IPsi6表示读取两个实数变量。根据实际情况修改数据格式,可以避免出现这种错误。


如果以上回答对您有所帮助,望采纳~谢谢

bad integer for item....
这是读取文件出问题。比如想要读取数据到整型变量,但实际读取到了文件中的字母,就会这个报错。