Skip to content

Commit a7c4891

Browse files
Allocate lon and lat first, then allocate dbllon and dbllat.
1 parent 6aa587b commit a7c4891

File tree

1 file changed

+7
-6
lines changed

1 file changed

+7
-6
lines changed

model/src/ww3_ounf.F90

+7-6
Original file line numberDiff line numberDiff line change
@@ -2210,6 +2210,8 @@ SUBROUTINE W3EXNC ( NX, NY, IX1, IXN, IY1, IYN, NSEA, &
22102210
IF(.NOT.ALLOCATED(smccy)) ALLOCATE(smccy(SMCNOUT))
22112211
ELSE
22122212
! Regular gridded file
2213+
IF(.NOT.ALLOCATED(lon)) ALLOCATE(lon(NXO))
2214+
IF(.NOT.ALLOCATED(lat)) ALLOCATE(lat(NYO))
22132215
IF(.NOT.ALLOCATED(dbllon)) ALLOCATE(dbllon(NXO))
22142216
IF(.NOT.ALLOCATED(dbllat)) ALLOCATE(dbllat(NYO))
22152217
#endif
@@ -2478,18 +2480,17 @@ SUBROUTINE W3EXNC ( NX, NY, IX1, IXN, IY1, IYN, NSEA, &
24782480
IF (GTYPE.EQ.RLGTYPE .OR. GTYPE.EQ.SMCTYPE) THEN
24792481
IF(SMCGRD) THEN ! CB: shelter original code from SMC grid
24802482
#ifdef W3_SMC
2483+
IRET=NF90_PUT_VAR(NCID,VARID(1),LON(:))
2484+
CALL CHECK_ERR(IRET)
2485+
IRET=NF90_PUT_VAR(NCID,VARID(2),LAT(:))
2486+
CALL CHECK_ERR(IRET)
24812487
IF(SMCOTYPE .EQ. 1) THEN
2482-
IRET=NF90_PUT_VAR(NCID,VARID(1),LON(:))
2483-
CALL CHECK_ERR(IRET)
2484-
IRET=NF90_PUT_VAR(NCID,VARID(2),LAT(:))
2485-
CALL CHECK_ERR(IRET)
2486-
24872488
! For type 1 SCM file also put lat/lons and cell sizes:
24882489
IRET=NF90_PUT_VAR(NCID,VARID(5),SMCCX)
24892490
CALL CHECK_ERR(IRET)
24902491
IRET=NF90_PUT_VAR(NCID,VARID(6),SMCCY)
24912492
CALL CHECK_ERR(IRET)
2492-
ELSE ! KS: Regridded SMC data - use double precision
2493+
ELSE ! KS: For regridded SMC data, change from real to double precision
24932494
IRET=NF90_PUT_VAR(NCID,VARID(1),dbllon(:))
24942495
CALL CHECK_ERR(IRET)
24952496
IRET=NF90_PUT_VAR(NCID,VARID(2),dbllat(:))

0 commit comments

Comments
 (0)