Dear professor.
When I abinit the t12.in according to the guidance, the t12.out was terminated at the DATASET2. The log file contains some information at the end as follows:
ioarr: writing density data
ioarr: file name is t11o_DS2_DEN
ioarr: data written to disk file t11o_DS2_DEN
forrtl: severe (173): A pointer passed to DEALLOCATE points to an array that cannot be deallocated
Image PC Routine Line Source
libirc.so 00147CA1 Unknown Unknown Unknown
libirc.so 00146874 Unknown Unknown Unknown
libifcore.so.5 0025EA6D Unknown Unknown Unknown
libifcore.so.5 001EB271 Unknown Unknown Unknown
libifcore.so.5 0022AFBC Unknown Unknown Unknown
abinit 0821D860 Unknown Unknown Unknown
abinit 081FAE83 Unknown Unknown Unknown
abinit 0812A276 Unknown Unknown Unknown
abinit 08065D7E Unknown Unknown Unknown
abinit 08058E67 Unknown Unknown Unknown
abinit 0804BD88 Unknown Unknown Unknown
abinit 0804AB94 Unknown Unknown Unknown
libc.so.6 0042ECC6 Unknown Unknown Unknown
abinit 0804AAA1 Unknown Unknown Unknown
Could you tell me what problem happen to my machine. Thank you very much.
The problem for testing the example t12.in .
Moderator: bguster
Re: The problem for testing the example t12.in .
I have the same problem with the intel compiler (I'm using abinit 6.6.2 with ifort 2011 and mkl 2011). It comes from statements like 95_drive/scfcv.F90:1787
where grhor is a pointer. Apparently there is some controversy about the fortran standards regarding deallocating pointers; intel is very strict about it while gfortran is not as strict. If you switch to gfortran, this code does not (should not) produce an error. I'm new to fortran pointers so if anyone has a workaround, I'd appreciate it, otherwise I'll try some things and see what doesn't crash.
I think this may be the same error:
http://software.intel.com/en-us/forums/ ... hp?t=77891
Code: Select all
if(associated(grhor))then
deallocate(grhor)
nullify(grhor)
end if
where grhor is a pointer. Apparently there is some controversy about the fortran standards regarding deallocating pointers; intel is very strict about it while gfortran is not as strict. If you switch to gfortran, this code does not (should not) produce an error. I'm new to fortran pointers so if anyone has a workaround, I'd appreciate it, otherwise I'll try some things and see what doesn't crash.
I think this may be the same error:
http://software.intel.com/en-us/forums/ ... hp?t=77891
Re: The problem for testing the example t12.in .
Changing some of the pointer declarations to
real(dp),pointer :: elfr(:,:) => null(), grhor(:,:,:) => null(),lrhor(:,:) => null()
seems to fix the problem for me
real(dp),pointer :: elfr(:,:) => null(), grhor(:,:,:) => null(),lrhor(:,:) => null()
seems to fix the problem for me