Custom Query (964 matches)
Results (595 - 597 of 964)
Ticket | Owner | Reporter | Resolution | Summary |
---|---|---|---|---|
#555 | Fixed | Corrections due to F90/F95 strict compliance | ||
Description |
Corrected several routines to impose strict compliance of the F90/F95 standard. These error appear when using the following flags in the ifort compiler: -g -check bounds -traceback -check uninit -warn interfaces,nouncalled -gen-interfaces For example, we cannot pass a scalar argument to a routine is an array is expected. In read_phypar.F we need to have: integer :: Ivalue(1) ... CASE ('Ngrids') Npts=load_i(Nval, Rval, 1, Ivalue) Ngrids=Ivalue(1) instead of CASE ('Ngrids') Npts=load_i(Nval, Rval, 1, Ngrids) The load_* routines expect a vector in the output argument. So for processing scalars we need an array of size one. Also, several routines including get_data.F, get_idata.F, set_data.F, and their TLM, RPM, and ADM versions were modified to strict compliance with the pointer arguments in the calling routines and dummy arguments in the generic NetCDF processing routines. Many thanks to Mathieu Dutour-Sikiric and Aron Roland for pointing this to my attention. |
|||
#556 | Fixed | falling off end of Cval in decode_line | ||
Description |
I've got a biological model with more than 25 tracers. The reading of LBC fails after the 25th with Nval getting larger than 100, since Nval is four times the tracer number (four values per tracer). There's a Cval array dimensioned 100 in decode_line. I can change that to 200 in decode_line, but then I'll have to track down that 100 up the chain... |
|||
#557 | Fixed | Multi-file, multi-var issue on input | ||
Description |
I propose a change to inquire.F looking like: @@ -378,7 +378,7 @@ IF (label(1:3).eq.'FRC') THEN DO ifile=1,nfiles IF ((TRIM(ncfile).eq.TRIM(S(ifile)%name)).and. & - & ((ncid.eq.-1).and.(FRCids(ifile,ng).ne.-1))) THEN + & (ncid.ne.FRCids(ifile,ng))) THEN ncid=FRCids(ifile,ng) EXIT END IF The reason for this is if you have say both Uwind and Vwind in the same file, but one file per year. In the transition from one file to the next, there can be trouble. Specifically, when reading Uwind, inquire knows to close out the old file and update ncFRCid, FRC%ncid and FRCids. No problem. Now we come to Vwind which still has the old value for ncFRCid, getting into inquire as ncid. This is no longer pointing to a valid file handle, but inquire doesn't actually use it. However, the calling get_2dfld does use it and will fail on reading ocean_time or wind_time or whatever. Mysterious when you know that field is in the file you think it should be reading. This updates the ncid and therefore the calling ncFRCid. |