Changeset 441
- Timestamp:
- 11/27/08 13:12:24 (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
IOIPSL/trunk/src/histcom.f90
r440 r441 243 243 IF (l_dbg) WRITE(*,*) "histbeg_totreg" 244 244 !- 245 ALLOCATE 245 ALLOCATE(lon_tmp(pim,pjm),lat_tmp(pim,pjm)) 246 246 !- 247 247 lon_tmp(:,:) = SPREAD(plon(:),2,pjm) … … 254 254 & .TRUE.,domain_id) 255 255 !- 256 DEALLOCATE 256 DEALLOCATE(lon_tmp,lat_tmp) 257 257 !---------------------------- 258 258 END SUBROUTINE histbeg_totreg … … 780 780 INTEGER :: iret,ncid,twoid 781 781 LOGICAL :: transp = .FALSE. 782 REAL,ALLOCATABLE,DIMENSION(:,:) ,SAVE:: bounds_trans782 REAL,ALLOCATABLE,DIMENSION(:,:) :: bounds_trans 783 783 LOGICAL :: l_dbg 784 784 !--------------------------------------------------------------------- … … 814 814 ENDIF 815 815 !- 816 IF (.NOT.ALLOCATED(bounds_trans)) THEN 817 ALLOCATE(bounds_trans(nbbounds,pim)) 818 ENDIF 816 ALLOCATE(bounds_trans(nbbounds,pim)) 819 817 !- 820 818 iret = NF90_DEF_DIM (ncid,'nbnd',nbbounds,twoid) … … 918 916 ENDIF 919 917 iret = NF90_PUT_VAR (ncid,nlatidb,bounds_trans(1:nbbounds,1:pim)) 918 !- 919 DEALLOCATE(bounds_trans) 920 920 !- 921 921 iret = NF90_REDEF (ncid) … … 1877 1877 & datasz_max(pfileid,varid) 1878 1878 ENDIF 1879 ALLOCATE 1879 ALLOCATE(buff_tmp(datasz_max(pfileid,varid))) 1880 1880 buff_tmp_sz = datasz_max(pfileid,varid) 1881 1881 ELSE IF (datasz_max(pfileid,varid) > buff_tmp_sz) THEN … … 1885 1885 & datasz_max(pfileid,varid) 1886 1886 ENDIF 1887 DEALLOCATE 1888 ALLOCATE 1887 DEALLOCATE(buff_tmp) 1888 ALLOCATE(buff_tmp(datasz_max(pfileid,varid))) 1889 1889 buff_tmp_sz = datasz_max(pfileid,varid) 1890 1890 ENDIF … … 1983 1983 IF (l_dbg) WRITE (*,*) 'histwrite : buffer has been used. ', & 1984 1984 & 'We have to save it before re-allocating.' 1985 ALLOCATE 1985 ALLOCATE(buffer_used(buffer_sz)) 1986 1986 buffer_used(:)=buffer(:) 1987 DEALLOCATE 1988 ALLOCATE 1987 DEALLOCATE(buffer) 1988 ALLOCATE(buffer(buff_pos)) 1989 1989 buffer_sz = buff_pos 1990 1990 buffer(:)=0.0 1991 1991 buffer(:SIZE(buffer_used))=buffer_used 1992 DEALLOCATE 1992 DEALLOCATE(buffer_used) 1993 1993 ELSE 1994 1994 IF (l_dbg) WRITE (*,*) 'histwrite : buffer has not been used. ', & 1995 1995 & 'We have just to re-allocate it.' 1996 DEALLOCATE 1997 ALLOCATE 1996 DEALLOCATE(buffer) 1997 ALLOCATE(buffer(buff_pos)) 1998 1998 buffer_sz = buff_pos 1999 1999 buffer(:)=0.0 … … 2008 2008 WRITE(*,*) "histwrite_real 1.1 allocate buff_tmp2 ",SIZE(buff_tmp) 2009 2009 ENDIF 2010 ALLOCATE 2010 ALLOCATE(buff_tmp2(datasz_max(pfileid,varid))) 2011 2011 buff_tmp2_sz = datasz_max(pfileid,varid) 2012 2012 ELSE IF (datasz_max(pfileid,varid) > buff_tmp2_sz) THEN … … 2015 2015 & SIZE(buff_tmp)," instead of ",SIZE(buff_tmp2) 2016 2016 ENDIF 2017 DEALLOCATE 2018 ALLOCATE 2017 DEALLOCATE(buff_tmp2) 2018 ALLOCATE(buff_tmp2(datasz_max(pfileid,varid))) 2019 2019 buff_tmp2_sz = datasz_max(pfileid,varid) 2020 2020 ENDIF
Note: See TracChangeset
for help on using the changeset viewer.