Custom Query (210 matches)
Results (28 - 30 of 210)
Ticket | Resolution | Summary | Owner | Reporter |
---|---|---|---|---|
#246 | fixed | Compilation error with Intel Fortran | ignacio | ahilboll |
Description |
When trying to compile the release-10 branch with Intel ifort, I get the error ifort -c -I/opt/software/eb/software/ecCodes/2.12.5-iimpi-2019a/include -I/opt/software/eb/software/netCDF-Fortran/4.4.5-iimpi-2019a/include -O3 -g -fpp -fp-model source -mcmodel=medium -unroll -ipo -inline -heap-arrays 32 -xHost -traceback assignland.f90 concoutput_inversion.f90(357): error #6503: This keyword is invalid for this intrinsic procedure reference. [UNIT] call flush(unit=unitrelnames) -----------------------^ compilation aborted for concoutput_inversion.f90 (code 1) make: *** [concoutput_inversion.o] Fehler 1 Compilation succeeds when I remove the call from that line, as shown in this patch: diff --git a/src/concoutput_inversion.f90 b/src/concoutput_inversion.f90 index fb327cf..9562bd2 100644 --- a/src/concoutput_inversion.f90 +++ b/src/concoutput_inversion.f90 @@ -354,7 +354,7 @@ subroutine concoutput_inversion(itime,outnum,gridtotalunc,wetgridtotalunc, & open(unit=unitrelnames, file=path(2)(1:length(2))//'releases_out',form='formatted', & & access='APPEND', iostat=ierr) write(unitrelnames,'(a)') areldate//areltime//'_'//anspec - call flush(unit=unitrelnames) + flush(unit=unitrelnames) close(unitrelnames) endif endif After checking https://gcc.gnu.org/onlinedocs/gcc-9.2.0/gfortran/FLUSH.html, it seems that recent Fortran compilers don't need the call any more. And indeed, on our system (gfortran 6.3.0) the modified code compiles as well. So I suggest to apply the above patch. |
|||
#186 | duplicate | Compile fails using gfortran due to error in erf.f90 | hcpxvi | |
Description |
I have built Flexpart from source on a couple of Linux machines and I always get a compile error due to a problem in erf.f90. The error message is: gfortran -c -O2 -m64 -mcmodel=medium -fconvert=little-endian -frecord-marker=4 -I/usr/lib64/gfortran/modules erf.f90 erf.f90:106.26:
Error: Return type mismatch of function 'gammln' at (1) (REAL(4)/REAL(8)) erf.f90:111.13:
Warning: Type mismatch in argument 'xx' at (1); passed REAL(4) to REAL(8) The same error happens at line 140. The following patch allows Flexpart to compile although it may not be the best way of achieving this: aurora.hcp>diff baderf.f90 erf.f90 106c106 < real, external :: gammln ---
111c111 < gln=gammln(a) ---
140c140 < real, external :: gammln ---
145c145 < gln=gammln(a) ---
The version of gfortran used does not appear to be important; the same thing happens with gfortran 4.8.5 on Scientific Linux 7 and with gfortran 6.3.0 on Debian 9.2. |
|||
#183 | fixed | Concentration Results of Flexpart-WRF Being Equal to Zero. | pesei | mhakimzadeh |
Description |
I got run from Flexpart-Wrf test case and I got the message that I have successfully completed a Flexpart-Wrf model run. However, when I see the netcdf result, all of the concentration values are equal to zero. I don't know why I get this result. Thanks in advance for your help. P.S: I changed line 233 of convmix_kfeta.f90 file as it was mentioned in ticket #107, but I still get zero as the result of model. |