Quantcast
Channel: Recent posts
Viewing all articles
Browse latest Browse all 415

Input statement requires too much data

$
0
0

I get the following error message:

forrtl: severe (67): input statement requires too much data

when running a program that reads a sequential unformatted file (see below) compiled with ifort 16.0.3.

The interesting fact is that this error disappears if I compile with ifort 12.1.0 or if I compile with ifort 16.0.3 using the -qopenmp flag (which is very weird because I don't write the file using this flag).

This is the program that produces the error,

      program read
      integer n0,n1,n2,n3,m1,m2,m3,m4
      integer itol, ifr
      integer i, j, k, l
      logical ifrhf
      real*8 eref, erepul, shift, shift1
      real*8, allocatable :: fockr(:,:), fockb(:,:)
      real*8, allocatable :: intr(:,:,:,:),intb(:,:,:,:),intm(:,:,:,:)

      open(unit=33,file='h8.inf',form='unformatted',&     status='old',access='sequential')
      rewind(33)
      read(33) n0,n1,n2,n3,ifrhf,itol,ifr,idiis,eref,erepul,shift,&     shift1,m1,m2,m3,m4
      print *, n0,n1,n2,n3,ifrhf,itol,ifr,idiis,eref,erepul,shift,&     shift1,m1,m2,m3,m4
      allocate(FockR(N3,N3))
      allocate(FockB(N3,N3))
      allocate(IntR(N0+1:N3,N0+1:N3,N0+1:N3,N0+1:N3))
      allocate(IntB(N0+1:N3,N0+1:N3,N0+1:N3,N0+1:N3))
      allocate(IntM(N0+1:N3,N0+1:N3,N0+1:N3,N0+1:N3))
      read(33) ((FockR(i,j),i=1,N3),j=1,N3)
      read(33) ((FockB(i,j),i=1,N3),j=1,N3)
      read(33) ((((IntR(i,j,k,l),i=N0+1,N3),j=N0+1,N3),&     k=N0+1,N3),l=N0+1,N3)
      read(33) ((((IntM(i,j,k,l),i=N0+1,N3),j=N0+1,N3),&     k=N0+1,N3),l=N0+1,N3)
      read(33) ((((IntB(i,j,k,l),i=N0+1,N3),j=N0+1,N3),&     k=N0+1,N3),l=N0+1,N3)
      deallocate(FockR)
      deallocate(FockB)
      deallocate(IntR)
      deallocate(IntB)
      deallocate(IntM)
      close(33)
      end

Thank you in advance for any advice.


Viewing all articles
Browse latest Browse all 415

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>