Skip to content

Commit 78ca686

Browse files
Set option to SMC grid only, remove .inp support
1 parent 4a8353a commit 78ca686

File tree

4 files changed

+29
-24
lines changed

4 files changed

+29
-24
lines changed

model/inp/ww3_ounf.inp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,12 +26,12 @@ $ netCDF version [3,4]
2626
$ and variable type 4 [2 = SHORT, 3 = it depends , 4 = REAL]
2727
$ swell partitions [0 1 2 3 4 5]
2828
$ variables in same file [T] or not [F]
29-
$ double precision output [T] or single precision [F]
29+
$ double precision output [T] or single precision [F] NOT CURRENTLY SUPPORTED IN .inp
3030
$
3131
3 4
3232
0 1 2
3333
T
34-
T
34+
$ T
3535
$
3636
$ -------------------------------------------------------------------- $
3737
$ File prefix

model/nml/ww3_ounf.nml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@
2727
! FIELD%LIST = 'unset' ! List of output fields
2828
! FIELD%PARTITION = '0 1 2 3' ! List of wave partitions ['0 1 2 3 4 5']
2929
! FIELD%SAMEFILE = T ! All the variables in the same file
30-
! FIELD%DOUBLE = T ! Return coordinates as double precision floats
3130
! FIELD%VECTOR = T ! Vector [T] or dir/magnitude [F] for
3231
! ! directional fields
3332
! FIELD%TYPE = 3 ! [2 = SHORT, 3 = it depends , 4 = REAL]
@@ -55,7 +54,6 @@
5554
FIELD%TIMESTRIDE = '3600'
5655
FIELD%LIST = 'DPT WND HS FP DIR SPR MSS'
5756
FIELD%SAMEFILE = F
58-
FIELD%DOUBLE = T
5957
FIELD%TYPE = 4
6058
FIELD%FCVARS = F
6159
/
@@ -101,6 +99,7 @@
10199
! SMC%EYO = -999.9 ! Last latitude
102100
! SMC%CELFAC = 1 ! Cell size factor (SMCTYPE=2 only)
103101
! SMC%NOVAL = UNDEF ! Fill value for wet cells with no data
102+
! SMC%DOUBLE_COORD = F ! Return coordinates as double precision floats
104103
! -------------------------------------------------------------------- !
105104
&SMC_NML
106105
/

model/src/w3nmlounfmd.F90

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,6 @@ MODULE W3NMLOUNFMD
3232
CHARACTER(1024) :: LIST
3333
CHARACTER(15) :: PARTITION
3434
LOGICAL :: SAMEFILE
35-
LOGICAL :: DOUBLE_COORD
3635
LOGICAL :: VECTOR
3736
INTEGER :: TYPE
3837
CHARACTER(15) :: TIMEREF
@@ -62,6 +61,7 @@ MODULE W3NMLOUNFMD
6261
REAL :: EXO
6362
REAL :: EYO
6463
INTEGER :: CELFAC
64+
LOGICAL :: DOUBLE_COORD
6565
END TYPE NML_SMC_T
6666

6767
! miscellaneous
@@ -288,7 +288,6 @@ SUBROUTINE READ_FIELD_NML (NDSI, NML_FIELD)
288288
FIELD%LIST = 'unset'
289289
FIELD%PARTITION = '0 1 2 3'
290290
FIELD%SAMEFILE = .TRUE.
291-
FIELD%DOUBLE_COORD = .TRUE.
292291
FIELD%VECTOR = .TRUE.
293292
FIELD%TYPE = 3
294293
FIELD%TIMEREF = 'unset'
@@ -517,6 +516,7 @@ SUBROUTINE READ_SMC_NML (NDSI, NML_SMC)
517516
SMC%EYO = -999.9
518517
SMC%CELFAC = 1
519518
SMC%TYPE = 1
519+
SMC%DOUBLE_COORD = .FALSE.
520520

521521
! read smc namelist
522522
REWIND (NDSI)
@@ -620,7 +620,6 @@ SUBROUTINE REPORT_FIELD_NML (NML_FIELD)
620620
WRITE (NDSN,10) TRIM(MSG),'LIST = ', TRIM(NML_FIELD%LIST)
621621
WRITE (NDSN,10) TRIM(MSG),'PARTITION = ', TRIM(NML_FIELD%PARTITION)
622622
WRITE (NDSN,13) TRIM(MSG),'SAMEFILE = ', NML_FIELD%SAMEFILE
623-
WRITE (NDSN,13) TRIM(MSG),'DOUBLE_COORD = ', NML_FIELD%DOUBLE_COORD
624623
WRITE (NDSN,11) TRIM(MSG),'TYPE = ', NML_FIELD%TYPE
625624
WRITE (NDSN,10) TRIM(MSG),'FCVARS = ', NML_FIELD%FCVARS
626625
WRITE (NDSN,10) TRIM(MSG),'TIMEREF = ', NML_FIELD%TIMEREF
@@ -809,8 +808,10 @@ SUBROUTINE REPORT_SMC_NML (NML_SMC)
809808
WRITE (NDSN,14) TRIM(MSG),'EXO = ', NML_SMC%EXO
810809
WRITE (NDSN,14) TRIM(MSG),'EYO = ', NML_SMC%EYO
811810
WRITE (NDSN,11) TRIM(MSG),'CELFAC = ', NML_SMC%CELFAC
811+
WRITE (NDSN,13) TRIM(MSG),'DOUBLE_COORD = ', NML_SMC%DOUBLE_COORD
812812

813813
11 FORMAT (A,2X,A,I12)
814+
13 FORMAT (A,2X,A,L1)
814815
14 FORMAT (A,2X,A,F8.2)
815816

816817
END SUBROUTINE REPORT_SMC_NML

model/src/ww3_ounf.F90

Lines changed: 22 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -371,7 +371,6 @@ PROGRAM W3OUNF
371371
TIMEUNIT = NML_FIELD%TIMEUNIT
372372
NOVAL = NML_FIELD%NOVAL
373373
MAPSTAOUT = NML_FIELD%MAPSTA
374-
ISDOUBLE = NML_FIELD%DOUBLE_COORD
375374
IF(SMCGRD) THEN
376375
#ifdef W3_SMC
377376
SMCOTYPE = NML_SMC%TYPE
@@ -380,6 +379,7 @@ PROGRAM W3OUNF
380379
EXO = NML_SMC%EXO
381380
EYO = NML_SMC%EYO
382381
CELFAC = NML_SMC%CELFAC
382+
ISDOUBLE = NML_SMC%DOUBLE_COORD
383383
SMCNOVAL = NOVAL
384384
#endif
385385
ELSE
@@ -436,9 +436,10 @@ PROGRAM W3OUNF
436436
CALL NEXTLN ( COMSTR , NDSI , NDSE )
437437
READ (NDSI,*,IOSTAT=IERR) TOGETHER
438438
IF (IERR.NE.0) CALL EXTIOF(NDSE,IERR,'W3OUNF','INPUT',11)
439-
CALL NEXTLN ( COMSTR , NDSI , NDSE )
440-
READ (NDSI,*,IOSTAT=IERR) ISDOUBLE
441-
IF (IERR.NE.0) CALL EXTIOF(NDSE,IERR,'W3OUNF','INPUT',11)
439+
!CALL NEXTLN ( COMSTR , NDSI , NDSE )
440+
!READ (NDSI,*,IOSTAT=IERR) ISDOUBLE
441+
!IF (IERR.NE.0) CALL EXTIOF(NDSE,IERR,'W3OUNF','INPUT',11) Not yet supported for .inp
442+
ISDOUBLE = .FALSE.
442443

443444
! The following are only configurable via the namelist input
444445
! and are hardcoded for .inp files:
@@ -2554,19 +2555,23 @@ SUBROUTINE W3EXNC ( NX, NY, IX1, IXN, IY1, IYN, NSEA, &
25542555
CALL CHECK_ERR(IRET)
25552556
ENDIF ! SMCGRD
25562557
#ifdef W3_RTD
2557-
IF ( RTDL ) THEN
2558-
IF (ISDOUBLE .AND. (SMCOTYPE .NE. 1)) THEN
2559-
IRET=NF90_PUT_VAR(NCID,VARID(7),LON2DRGRD(IX1:IXN,IY1:IYN))
2560-
CALL CHECK_ERR(IRET)
2561-
IRET=NF90_PUT_VAR(NCID,VARID(8),LAT2DRGRD(IX1:IXN,IY1:IYN))
2562-
CALL CHECK_ERR(IRET)
2563-
ELSE
2564-
IRET=NF90_PUT_VAR(NCID,VARID(7),LON2D(IX1:IXN,IY1:IYN))
2565-
CALL CHECK_ERR(IRET)
2566-
IRET=NF90_PUT_VAR(NCID,VARID(8),LAT2D(IX1:IXN,IY1:IYN))
2567-
CALL CHECK_ERR(IRET)
2568-
ENDIF
2569-
END IF
2558+
IF ( RTDL ) THEN
2559+
#ifdef W3_SMC
2560+
IF (ISDOUBLE .AND. (SMCOTYPE .NE. 1)) THEN
2561+
IRET=NF90_PUT_VAR(NCID,VARID(7),LON2DRGRD(IX1:IXN,IY1:IYN))
2562+
CALL CHECK_ERR(IRET)
2563+
IRET=NF90_PUT_VAR(NCID,VARID(8),LAT2DRGRD(IX1:IXN,IY1:IYN))
2564+
CALL CHECK_ERR(IRET)
2565+
ELSE
2566+
#endif
2567+
IRET=NF90_PUT_VAR(NCID,VARID(7),LON2D(IX1:IXN,IY1:IYN))
2568+
CALL CHECK_ERR(IRET)
2569+
IRET=NF90_PUT_VAR(NCID,VARID(8),LAT2D(IX1:IXN,IY1:IYN))
2570+
CALL CHECK_ERR(IRET)
2571+
#ifdef W3_SMC
2572+
ENDIF
2573+
#endif
2574+
END IF
25702575
#endif
25712576
END IF
25722577

0 commit comments

Comments
 (0)