Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

R21B in IC4 #1176

Merged
merged 6 commits into from
Jan 23, 2024
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Branch=1167-R21B-in-IC4
Adding regtest for IC4M8 and IC4M9
Examples:
cd $REGTESTDIR
./bin/run_test -i input_IC4_M8 -w work_IC4_M8 $MODELDIR ww3_tic1.1
./bin/run_test -i input_IC4_M9 -w work_IC4_M9 $MODELDIR ww3_tic1.1

I also edited the info file.

I did not include ww3_shel.nml for these regtests, since this feature is apparently broken. I did include the other .nml files.
(Specifics about the thing that is broken: the option to have homogeneous input field in ww3_shel.nml. Either it is broken in the code, or it is broken in the examples provided for IC4M1, IC4M2, IC4M3, IC4M4, IC4M5, IC4M7. Regtest IC4M6 *does* run with ww3_shel.nml, since it does not use any homogeneous input field. Failure mode: seg fault)
In any case, regtest with -N with these new regtests will only run if you exclude ww3_shel.nml using -r or -q options of run_test.

Regtests w/out -N *do* work, for all cases.
  • Loading branch information
ErickRogers committed Jan 17, 2024
commit d4640abf74bb4e8a63b4a9a69d502044ba885812
4 changes: 2 additions & 2 deletions model/nml/ww3_shel.nml
Original file line number Diff line number Diff line change
Expand Up @@ -319,9 +319,9 @@
! * the number of each homogeneous input is defined by HOMOG_COUNT
! * the total number of homogeneous input is automatically calculated
! * the homogeneous input must start from index 1 to N
! * if VALUE1 is equal 0, then the homogeneous input is desactivated
! * if VALUE1 is equal 0, then the homogeneous input is deactivated
! * NAME can be IC1, IC2, IC3, IC4, IC5, MDN, MTH, MVS, LEV, CUR, WND, ICE, MOV
! * each homogeneous input is defined over a maximum of 3 values detailled below :
! * each homogeneous input is defined over a maximum of 3 values detailed below :
! - IC1 is defined by thickness
! - IC2 is defined by viscosity
! - IC3 is defined by density
Expand Down
3 changes: 3 additions & 0 deletions regtests/ww3_tic1.1/info
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,9 @@
# IC4METHOD = 5 - Simple ki step function #
# IC4METHOD = 6 - Simple ki step function via namelist #
# IC4METHOD = 7 - Doble et al. (GRL 2015) #
# IC4METHOD = 8 - Meylan et al. (2018) ; Liu et al. (2020) #
# (NB: redundant with IC5+IC5VEMOD=3) #
# IC4METHOD = 9 - Rogers et al. (2021b) ; Yu et al. (2022) #
# IC5 = Choose from three different effective medium models #
# IC5VEMOD = 1 - Extended Fox and Squire model (EFS) #
# IC5VEMOD = 2 - Robinson and Palmer model (RP) #
Expand Down
2 changes: 2 additions & 0 deletions regtests/ww3_tic1.1/input_IC4_M8/namelists_1-D.nml
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
&SIC4 IC4METHOD = 8 /
END OF NAMELISTS
16 changes: 16 additions & 0 deletions regtests/ww3_tic1.1/input_IC4_M8/points.list
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
0.00 0. 'Point 1 '
1.00E3 0. 'Point 2 '
2.00E3 0. 'Point 3 '
3.00E3 0. 'Point 4 '
4.00E3 0. 'Point 5 '
5.00E3 0. 'Point 6 '
6.00E3 0. 'Point 7 '
7.00E3 0. 'Point 8 '
8.00E3 0. 'Point 9 '
9.00E3 0. 'Point 10 '
10.00E3 0. 'Point 11 '
11.00E3 0. 'Point 12 '
12.00E3 0. 'Point 13 '
13.00E3 0. 'Point 14 '
14.00E3 0. 'Point 15 '
15.00E3 0. 'Point 16 '
1 change: 1 addition & 0 deletions regtests/ww3_tic1.1/input_IC4_M8/switch
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
NOGRB SHRD PR3 UQ FLX2 LN0 ST0 NL0 BT0 DB0 TR0 BS0 IC4 IS0 REF0 WNT1 WNX1 CRT1 CRX1 O0 O1 O2 O3 O4 O5 O6 O7
42 changes: 42 additions & 0 deletions regtests/ww3_tic1.1/input_IC4_M8/ww3_grid.inp
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
$ WAVEWATCH III Grid preprocessor input file
$ ------------------------------------------
'1-D parameterized ice test '
$
$ 1.1 0.04118 25 24 0.0
1.1 0.0418 31 36 5.0
$
F T F F F T
60. 60. 60. 60.
$
$ IC4METHOD determines calculation
$ IC4METHOD = 1 - Wadhams et al. (1988)
$ IC4METHOD = 2 - Meylan et al. (2014)
$ IC4METHOD = 3 - Kohout & Meylan (2008) in Horvat & Tziperman (2015)
$ IC4METHOD = 4 - Kohout et al. (2014)
$ IC4METHOD = 5 - Simple ki step function
$ IC4METHOD = 6 - Simple ki step function via namelist
$ IC4METHOD = 7 - Doble et al. (GRL 2015)
$ IC4METHOD = 8 - Meylan et al. (2018) ; Liu et al. (2020)
$ IC4METHOD = 9 - Rogers et al. (2021b) ; Yu et al. (2022)
$ IC4M8 Fit to R21A L ChfM2=0.059
&SIC4 IC4METHOD = 8 , IC4CN = 0.059/
END OF NAMELISTS
$
'RECT' F 'NONE'
156 3
1.0E3 1.0E3 1.
-1.0E3 -1.0E3 1.
$ dlim dmin file# scale layout# format# formatdescrip filetype# filenm
-0.1 0.1 401 -1.0 1 1 '(....)' 'NAME' '../input_IC1/depth1d.flat'
$
10 1 1 '(....)' 'PART' 'input'
$
$ First grid
$
2 2 F
$
0 0 F
0 0 F
0 0
$
0. 0. 0. 0. 0
81 changes: 81 additions & 0 deletions regtests/ww3_tic1.1/input_IC4_M8/ww3_grid.nml
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
! -------------------------------------------------------------------- !
! WAVEWATCH III - ww3_grid.nml - Grid pre-processing !
! -------------------------------------------------------------------- !

! -------------------------------------------------------------------- !
! Define the spectrum parameterization via SPECTRUM_NML namelist
! -------------------------------------------------------------------- !
&SPECTRUM_NML
SPECTRUM%XFR = 1.1
SPECTRUM%FREQ1 = 0.0418
SPECTRUM%NK = 31
SPECTRUM%NTH = 36
SPECTRUM%THOFF = 5.0
/

! -------------------------------------------------------------------- !
! Define the run parameterization via RUN_NML namelist
! -------------------------------------------------------------------- !
&RUN_NML
RUN%FLCX = T
RUN%FLSOU = T
/

! -------------------------------------------------------------------- !
! Define the timesteps parameterization via TIMESTEPS_NML namelist
! -------------------------------------------------------------------- !
&TIMESTEPS_NML
TIMESTEPS%DTMAX = 60.
TIMESTEPS%DTXY = 60.
TIMESTEPS%DTKTH = 60.
TIMESTEPS%DTMIN = 60.
/

! -------------------------------------------------------------------- !
! Define the grid to preprocess via GRID_NML namelist
! -------------------------------------------------------------------- !
&GRID_NML
GRID%NAME = '1-D parameterized ice test'
GRID%NML = '../input_IC4_M8/namelists_1-D.nml'
GRID%TYPE = 'RECT'
GRID%COORD = 'CART'
GRID%CLOS = 'NONE'
GRID%ZLIM = -0.1
GRID%DMIN = 0.1
/

! -------------------------------------------------------------------- !
! Define the rectilinear grid type via RECT_NML namelist
! -------------------------------------------------------------------- !
&RECT_NML
RECT%NX = 156
RECT%NY = 3
RECT%SX = 1.0E3
RECT%SY = 1.0E3
RECT%X0 = -1.0E3
RECT%Y0 = -1.0E3
/

! -------------------------------------------------------------------- !
! Define the depth to preprocess via DEPTH_NML namelist
! -------------------------------------------------------------------- !
&DEPTH_NML
DEPTH%SF = -1.0
DEPTH%FILENAME = '../input_IC1/depth1d.flat'
/

! -------------------------------------------------------------------- !
! Define the input boundary points via INBND_COUNT_NML and
! INBND_POINT_NML namelist
! -------------------------------------------------------------------- !
&INBND_COUNT_NML
INBND_COUNT%N_POINT = 1
/

&INBND_POINT_NML
INBND_POINT(1) = 2 2 F
/

! -------------------------------------------------------------------- !
! WAVEWATCH III - end of namelist !
! -------------------------------------------------------------------- !
20 changes: 20 additions & 0 deletions regtests/ww3_tic1.1/input_IC4_M8/ww3_ounf.inp
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
$ WAVEWATCH III Grid output post-processing (netcdf)
$---------------------------------------------------
19680606 000000 3600. 99
N
$ Options: DPT CUR WND DT WLV ICE HS L T02 T01 TM1 FP DIR SPR DP EF
$ TH1M STH1M PHS PTP PLP PDIR PSP WSF TWS PNR UST CHA CGE FAW
$ TAW TWA WCC WCF WCH WCM SXY TWO BHD FOC TUS USS P2S WN USF
$ P2L ABR UBR BED FBB TBB MSS MSC DTD FCT CFX CFT CFK US1 US2
DPT WLV HS DIR
$
3 4
0 1 2
F
ww3.
4
1 999 1 999 3 2
$
$ -------------------------------------------------------------------- $
$ End of input file $
$ -------------------------------------------------------------------- $
29 changes: 29 additions & 0 deletions regtests/ww3_tic1.1/input_IC4_M8/ww3_ounf.nml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
! -------------------------------------------------------------------- !
! WAVEWATCH III ww3_ounf.nml - Grid output post-processing !
! -------------------------------------------------------------------- !

! -------------------------------------------------------------------- !
! Define the output fields to postprocess via FIELD_NML namelist
! -------------------------------------------------------------------- !
&FIELD_NML
FIELD%TIMESTART = '19680606 000000'
FIELD%TIMESTRIDE = '3600.'
FIELD%TIMECOUNT = '99'
FIELD%TIMESPLIT = 4
FIELD%LIST = 'DPT WLV HS DIR'
FIELD%PARTITION = '0 1 2'
FIELD%SAMEFILE = F
FIELD%TYPE = 4
/

! -------------------------------------------------------------------- !
! Define the content of the output file via FILE_NML namelist
! -------------------------------------------------------------------- !
&FILE_NML
FILE%IXN = 999
FILE%IYN = 999
/

! -------------------------------------------------------------------- !
! WAVEWATCH III - end of namelist !
! -------------------------------------------------------------------- !
13 changes: 13 additions & 0 deletions regtests/ww3_tic1.1/input_IC4_M8/ww3_outf.inp
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
$ WAVEWATCH III Grid output post-processing
$ -----------------------------------------
19680606 000000 3600. 99
N
$ Options: DPT CUR WND DT WLV ICE HS L T02 T01 TM1 FP DIR SPR DP EF
$ TH1M STH1M PHS PTP PLP PDIR PSP WSF TWS PNR UST CHA CGE FAW
$ TAW TWA WCC WCF WCH WCM SXY TWO BHD FOC TUS USS P2S WN USF
$ P2L ABR UBR BED FBB TBB MSS MSC DTD FCT CFX CFT CFK US1 US2
DPT WLV HS DIR
$
3 0
$
1 999 1 999 1 1
19 changes: 19 additions & 0 deletions regtests/ww3_tic1.1/input_IC4_M8/ww3_outp_spec.inp
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
$ WAVEWATCH III Point output post-processing
$ ------------------------------------------
19680606 120000 3600. 1
$
1
2
3
4
5
6
7
8
9
10
11
-1
$
1
2 -1. 0. 33 F
19 changes: 19 additions & 0 deletions regtests/ww3_tic1.1/input_IC4_M8/ww3_outp_tab50.inp
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
$ WAVEWATCH III Point output post-processing
$ ------------------------------------------
19680606 000000 600. 9999
$
1
2
3
4
5
6
7
8
9
10
11
-1
$
2
2 50
10 changes: 10 additions & 0 deletions regtests/ww3_tic1.1/input_IC4_M8/ww3_outp_tab51.inp
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
$ WAVEWATCH III Point output post-processing
$ ------------------------------------------
19680606 000000 900. 49
$
$ 1
11
-1
$
2
2 51
38 changes: 38 additions & 0 deletions regtests/ww3_tic1.1/input_IC4_M8/ww3_prep_icecon.inp
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
$ -------------------------------------------------------------------- $
$ WAVEWATCH III Field preprocessor input file $
$ -------------------------------------------------------------------- $
$ Mayor types of field and time flag
$ Field types : IC1, IC2, IC3, IC4, IC5 => Ice parameters (5)
$ MDN => Mud densities
$ MTH => Mud thicknesses
$ MVS => Mud viscosities
$ ICE => Ice concentrations.
$ LEV => Water levels.
$ WND => Winds.
$ WNS => Winds (including air-sea temp. dif.)
$ CUR => Currents.
$ Format types : AI Transfer field 'as is'.
$ LL Field defined on longitude-latitude grid.
$ F1 Arbitrary grid, longitude and latitude of
$ each grid point given in separate file.
$ F2 Like F1, composite of 2 fields.
$ Time flag : If true, time is included in file.
$ Header flag : If true, write header on "*.ww3" data file
$
'ICE' 'AI' T T
$
$ Additional time input ---------------------------------------------- $
$ If time flag is .FALSE., give time of field in yyyymmdd hhmmss format.
$
$ 19680606 000000
$
$ Define data files -------------------------------------------------- $
$ The first input line identifies the file format with FROM, IDLA and
$ IDFM, the second (third) lines give the file unit number and name.
$
'NAME' 1 2 '(I10,1x,I10)' '(1000(F6.2))'
2345 '../input_IC2_nondisp/icecon.156x3.txt'
$
$ -------------------------------------------------------------------- $
$ End of input file $
$ -------------------------------------------------------------------- $
68 changes: 68 additions & 0 deletions regtests/ww3_tic1.1/input_IC4_M8/ww3_shel.inp
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
$ WAVEWATCH III shell input file
$ ------------------------------
T T Ice parameter 1
F F Ice parameter 2
F F Ice parameter 3
F F Ice parameter 4
F F Ice parameter 5
F F Mud parameter 1
F F Mud parameter 2
F F Mud parameter 3
F F Water levels
F F Currents
F F Winds
T F Ice concentrations
F F Atmospheric momentum
F F Air density
F Assimilation data : Mean parameters
F Assimilation data : 1-D spectra
F Assimilation data : 2-D spectra.
$
19680606 000000
19680606 120000
$
1
$
19680606 000000 900 19680606 120000
N
$ Options: DPT CUR WND DT WLV ICE HS L T02 T01 TM1 FP DIR SPR DP EF
$ TH1M STH1M PHS PTP PLP PDIR PSP WSF TWS PNR UST CHA CGE FAW
$ TAW TWA WCC WCF WCH WCM SXY TWO BHD FOC TUS USS P2S WN USF
$ P2L ABR UBR BED FBB TBB MSS MSC DTD FCT CFX CFT CFK US1 US2
DPT HS ICE DIR EF
19680606 000000 900 19680606 120000
0.00 0. 'Point 1 '
1.00E3 0. 'Point 2 '
2.00E3 0. 'Point 3 '
3.00E3 0. 'Point 4 '
4.00E3 0. 'Point 5 '
5.00E3 0. 'Point 6 '
6.00E3 0. 'Point 7 '
7.00E3 0. 'Point 8 '
8.00E3 0. 'Point 9 '
9.00E3 0. 'Point 10 '
10.00E3 0. 'Point 11 '
11.00E3 0. 'Point 12 '
12.00E3 0. 'Point 13 '
13.00E3 0. 'Point 14 '
14.00E3 0. 'Point 15 '
15.00E3 0. 'Point 16 '
0. 0. 'STOPSTRING'
19680606 000000 0 19680606 120000
19680606 000000 0 19680606 120000
19680606 000000 0 19680606 120000
19680606 000000 0 19680606 120000
$
$ Testing of output through parameter list (C/TPAR) ------------------ $
$ Time for output and field flags as in above output type 1.
$
$ 19680606 014500
$ T T T T T T T T T T T T T T T T
$
$ Homogeneous field data --------------------------------------------- $
$ constant case:
'IC1' 19680606 000000 0.2
$ 'IC1' 19680606 000000 2.00
'STP'
$
$ -------------------------------------------------------------------- $
Loading