Skip to content

Commit

Permalink
Rename cicedynB to cicedyn, update test suites (#790)
Browse files Browse the repository at this point in the history
* Rename cicedynB to cicedyn, update test suites

- Rename cicedynB directory to cicedyn (See #660)
  - Add softlink for cicedynB
  - Update path in cice.build
  - Update documentation
- Fix sig1, sig2, sigP grid on history file (See #789)
- Fix Fortran warning messages for long lines
- Fix test suite order in cice.setup
- Update test suites to reduce bfbcomp failures due to time outs
  - Add tests to first_suite to help
- Add dyneap and dynpicard decomp tests, add set_nml.dyneap
- Add TAB check in github actions in all .F90 and .c files
  github actions will fail if source files have TABs

* Remove tabs

* Update documentation

* Update documentation
  • Loading branch information
apcraig committed Nov 18, 2022
1 parent 99daf69 commit 9104a8c
Show file tree
Hide file tree
Showing 71 changed files with 231 additions and 119 deletions.
14 changes: 14 additions & 0 deletions .github/workflows/test-cice.yml
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,20 @@ jobs:
ln -s ${GITHUB_WORKSPACE}/../CICE ${HOME}/cice
# ls -al ${HOME}/
# ls -al ${GITHUB_WORKSPACE}/
- name: check for tabs
run: |
cd $HOME/cice/cicecore
set cnt = 0
set ffiles = `find -P . -iname "*.f*"`
set cfiles = `find -P . -iname "*.c*"`
foreach file ($ffiles $cfiles)
set fcnt = `sed -n '/\t/p' $file | wc -l`
@ cnt = $cnt + $fcnt
if ($fcnt > 0) then
echo "TAB found: $fcnt $file"
endif
end
exit $cnt
- name: setup conda env
shell: /bin/bash {0}
run: |
Expand Down
17 changes: 16 additions & 1 deletion cice.setup
Original file line number Diff line number Diff line change
Expand Up @@ -455,7 +455,22 @@ if ( ${dosuite} == 0 ) then
set sets = ""
else
set tarrays = `echo ${testsuite} | sed 's/,/ /g' | fmt -1 | sort -u`
# generate unique set of suites in tarrays in order they are set
set tarrays0 = `echo ${testsuite} | sed 's/,/ /g' | fmt -1 `
#echo "${0}: tarrays0 = ${tarrays0}"
set tarrays = $tarrays0[1]
foreach t1 ( ${tarrays0} )
set found = 0
foreach t2 ( ${tarrays} )
if ( ${t1} == ${t2} ) then
set found = 1
endif
end
if ( ${found} == 0 ) then
set tarrays = ( ${tarrays} ${t1} )
endif
end
#echo "${0}: tarrays = ${tarrays}"
set testsuitecnt = 0
foreach tarray ( ${tarrays} )
@ testsuitecnt = ${testsuitecnt} + 1
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,8 @@ subroutine init_hist (dt)
character (len=25) :: &
cstr_gat, cstr_gau, cstr_gav, & ! mask area name for t, u, v atm grid (ga)
cstr_got, cstr_gou, cstr_gov ! mask area name for t, u, v ocn grid (go)
character (len=25) :: &
gridstr2D, gridstr ! temporary string names
character(len=char_len) :: description

character(len=*), parameter :: subname = '(init_hist)'
Expand Down Expand Up @@ -1307,21 +1309,25 @@ subroutine init_hist (dt)
select case (grid_ice)
case('B')
description = ", on U grid (NE corner values)"
gridstr2d = trim(ustr2D)
gridstr = trim(ucstr)
case ('CD','C')
description = ", on T grid"
gridstr2d = trim(tstr2D)
gridstr = trim(tcstr)
end select

call define_hist_field(n_sig1,"sig1","1",ustr2D, ucstr, &
call define_hist_field(n_sig1,"sig1","1",gridstr2d, gridstr, &
"norm. principal stress 1", &
"sig1 is instantaneous" // trim(description), c1, c0, &
ns1, f_sig1)

call define_hist_field(n_sig2,"sig2","1",ustr2D, ucstr, &
call define_hist_field(n_sig2,"sig2","1",gridstr2d, gridstr, &
"norm. principal stress 2", &
"sig2 is instantaneous" // trim(description), c1, c0, &
ns1, f_sig2)

call define_hist_field(n_sigP,"sigP","1",ustr2D, ucstr, &
call define_hist_field(n_sigP,"sigP","1",gridstr2d, gridstr, &
"ice pressure", &
"sigP is instantaneous" // trim(description), c1, c0, &
ns1, f_sigP)
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -5684,7 +5684,7 @@ subroutine wave_spec_data

integer (kind=int_kind) :: &
ncid , & ! netcdf file id
i, j, freq , &
i, j, freq , &
ixm,ixx,ixp , & ! record numbers for neighboring months
recnum , & ! record number
maxrec , & ! maximum record number
Expand Down Expand Up @@ -5785,7 +5785,7 @@ subroutine wave_spec_data
call ice_read_nc_xyf(ncid,recnum,'efreq',wave_spectrum_data(:,:,:,2,:),debug_n_d, &
field_loc=field_loc_center, &
field_type=field_type_scalar)
call ice_close_nc(ncid)
call ice_close_nc(ncid)


! Interpolate
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2027,11 +2027,14 @@ subroutine input_data
if (trim(wave_spec_type) == 'none') then
tmpstr2 = ' : no wave data provided, no wave-ice interactions'
elseif (trim(wave_spec_type) == 'profile') then
tmpstr2 = ' : use fixed dummy wave spectrum for testing, sea surface height generated using constant phase (1 iteration of wave fracture)'
tmpstr2 = ' : use fixed dummy wave spectrum for testing, sea surface height generated '// &
'using constant phase (1 iteration of wave fracture)'
elseif (trim(wave_spec_type) == 'constant') then
tmpstr2 = ' : wave spectrum data file provided, sea surface height generated using constant phase (1 iteration of wave fracture)'
tmpstr2 = ' : wave spectrum data file provided, sea surface height generated '// &
'using constant phase (1 iteration of wave fracture)'
elseif (trim(wave_spec_type) == 'random') then
tmpstr2 = ' : wave spectrum data file provided, sea surface height generated using random number (multiple iterations of wave fracture to convergence)'
tmpstr2 = ' : wave spectrum data file provided, sea surface height generated using '// &
'random number (multiple iterations of wave fracture to convergence)'
else
tmpstr2 = ' : unknown value'
endif
Expand Down
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -6915,9 +6915,6 @@ subroutine primary_grid_lengths_global_ext( &
! This subroutine adds ghost cells to global primary grid lengths array
! ARRAY_I and outputs result to array ARRAY_O

! Note duplicate implementation of this subroutine in:
! cicecore/cicedynB/infrastructure/comm/serial/ice_boundary.F90

use ice_constants, only: c0
use ice_domain_size, only: nx_global, ny_global

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4686,9 +4686,6 @@ subroutine primary_grid_lengths_global_ext( &
! This subroutine adds ghost cells to global primary grid lengths array
! ARRAY_I and outputs result to array ARRAY_O

! Note duplicate implementation of this subroutine in:
! cicecore/cicedynB/infrastructure/comm/mpi/ice_boundary.F90

use ice_constants, only: c0
use ice_domain_size, only: nx_global, ny_global

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -196,7 +196,7 @@ int ice_memusage_gptl (int *size, int *rss, int *share, int *text, int *datastac
*/

ret = fscanf (fd, "%d %d %d %d %d %d %d",
size, rss, share, text, datastack, &dum, &dum);
size, rss, share, text, datastack, &dum, &dum);
ret = fclose (fd);
return 0;

Expand Down
1 change: 1 addition & 0 deletions cicecore/cicedynB
12 changes: 6 additions & 6 deletions configuration/scripts/cice.build
Original file line number Diff line number Diff line change
Expand Up @@ -128,12 +128,12 @@ endif
### List of source code directories (in order of importance).
cat >! Filepath << EOF
${ICE_SANDBOX}/cicecore/drivers/${ICE_DRVOPT}
${ICE_SANDBOX}/cicecore/cicedynB/dynamics
${ICE_SANDBOX}/cicecore/cicedynB/general
${ICE_SANDBOX}/cicecore/cicedynB/analysis
${ICE_SANDBOX}/cicecore/cicedynB/infrastructure
${ICE_SANDBOX}/cicecore/cicedynB/infrastructure/io/$IODIR
${ICE_SANDBOX}/cicecore/cicedynB/infrastructure/comm/${ICE_COMMDIR}
${ICE_SANDBOX}/cicecore/cicedyn/dynamics
${ICE_SANDBOX}/cicecore/cicedyn/general
${ICE_SANDBOX}/cicecore/cicedyn/analysis
${ICE_SANDBOX}/cicecore/cicedyn/infrastructure
${ICE_SANDBOX}/cicecore/cicedyn/infrastructure/io/$IODIR
${ICE_SANDBOX}/cicecore/cicedyn/infrastructure/comm/${ICE_COMMDIR}
${ICE_SANDBOX}/cicecore/shared
${ICE_SANDBOX}/icepack/columnphysics
EOF
Expand Down
1 change: 0 additions & 1 deletion configuration/scripts/options/set_nml.dyneap
Original file line number Diff line number Diff line change
@@ -1,2 +1 @@
kdyn = 2

2 changes: 2 additions & 0 deletions configuration/scripts/tests/decomp_suite.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@ restart gx3 4x2x25x29x4 dslenderX2
restart gx1 64x1x16x16x10 dwghtfile
restart gbox180 16x1x6x6x60 dspacecurve,debugblocks
decomp gx3 4x2x25x29x5 none
decomp gx3 4x2x25x29x5 dynpicard,reprosum
decomp gx3 4x2x25x29x5 dyneap
restart gx3 1x1x50x58x4 droundrobin,thread restart_gx3_4x2x25x29x4_dslenderX2
restart gx3 4x1x25x116x1 dslenderX1,thread restart_gx3_4x2x25x29x4_dslenderX2
restart gx3 6x2x4x29x18 dspacecurve restart_gx3_4x2x25x29x4_dslenderX2
Expand Down
6 changes: 6 additions & 0 deletions configuration/scripts/tests/first_suite.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,9 @@ restart gx3 4x2x25x29x4 dslenderX2
smoke gx3 4x2x25x29x4 debug,run2day,dslenderX2
smoke gx3 4x2x25x29x4 dslenderX2,diag1,reprosum,cmplog
smoke gx3 1x2 run2day
smoke gx3 1x1x100x116x1 reprosum,run10day
smoke gx1 32x1x16x16x32 reprosum,run10day
smoke gx3 1x1x100x116x1 reprosum,run10day,gridcd
smoke gx1 32x1x16x16x32 reprosum,run10day,gridcd
smoke gx3 1x1x100x116x1 reprosum,run10day,gridc
smoke gx1 32x1x16x16x32 reprosum,run10day,gridc
13 changes: 7 additions & 6 deletions configuration/scripts/tests/gridsys_suite.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,11 @@
# Test Grid PEs Sets BFB-compare
smoke gx3 1x1x100x116x1 reprosum,run10day
smoke gx1 32x1x16x16x32 reprosum,run10day
smoke gx3 1x1x100x116x1 reprosum,run10day,gridcd
smoke gx1 32x1x16x16x32 reprosum,run10day,gridcd
smoke gx3 1x1x100x116x1 reprosum,run10day,gridc
smoke gx1 32x1x16x16x32 reprosum,run10day,gridc

smoke gx3 8x2 diag1,run5day
smoke gx3 8x4 diag1,run5day,debug
restart gx3 4x2 debug,diag1
Expand All @@ -12,11 +19,9 @@ smoke gbox80 4x2 boxclosed,boxforcee,run1day
smoke gbox80 4x1 boxclosed,boxforcene,run1day,kmtislands
smoke gbox80 4x2 boxopen,kmtislands,boxforcee,run1day
smoke gbox80 2x2 boxclosed,boxforcen,run1day,vargrid
smoke gx3 1x1x100x116x1 reprosum,run10day
smoke gx3 1x1x25x29x16 reprosum,run10day,dwblockall smoke_gx3_1x1x100x116x1_reprosum_run10day
smoke gx3 1x1x5x4x580 reprosum,run10day,dwblockall smoke_gx3_1x1x100x116x1_reprosum_run10day
smoke gx3 1x1x5x4x580 reprosum,run10day smoke_gx3_1x1x100x116x1_reprosum_run10day
smoke gx1 32x1x16x16x32 reprosum,run10day
smoke gx1 32x1x16x16x32 reprosum,run10day,cmplogrest,dwblockall smoke_gx1_32x1x16x16x32_reprosum_run10day
smoke gx1 32x1x16x12x40 reprosum,run10day,cmplogrest,dwblockall smoke_gx1_32x1x16x16x32_reprosum_run10day
smoke gx1 32x1x16x12x40 reprosum,run10day,cmplogrest smoke_gx1_32x1x16x16x32_reprosum_run10day
Expand All @@ -34,11 +39,9 @@ smoke gbox80 4x2 boxclosed,boxforcee,run1day,gridcd
smoke gbox80 4x1 boxclosed,boxforcene,run1day,kmtislands,gridcd
smoke gbox80 4x2 boxopen,kmtislands,boxforcee,run1day,gridcd
smoke gbox80 2x2 boxclosed,boxforcen,run1day,vargrid,gridcd
smoke gx3 1x1x100x116x1 reprosum,run10day,gridcd
smoke gx3 1x1x25x29x16 reprosum,run10day,dwblockall,gridcd smoke_gx3_1x1x100x116x1_gridcd_reprosum_run10day
smoke gx3 1x1x5x4x580 reprosum,run10day,dwblockall,gridcd smoke_gx3_1x1x100x116x1_gridcd_reprosum_run10day
smoke gx3 1x1x5x4x580 reprosum,run10day,gridcd smoke_gx3_1x1x100x116x1_gridcd_reprosum_run10day
smoke gx1 32x1x16x16x32 reprosum,run10day,gridcd
smoke gx1 32x1x16x16x32 reprosum,run10day,cmplogrest,dwblockall,gridcd smoke_gx1_32x1x16x16x32_gridcd_reprosum_run10day
smoke gx1 32x1x16x12x40 reprosum,run10day,cmplogrest,dwblockall,gridcd smoke_gx1_32x1x16x16x32_gridcd_reprosum_run10day
smoke gx1 32x1x16x12x40 reprosum,run10day,cmplogrest,gridcd smoke_gx1_32x1x16x16x32_gridcd_reprosum_run10day
Expand All @@ -56,11 +59,9 @@ smoke gbox80 4x2 boxclosed,boxforcee,run1day,gridc
smoke gbox80 4x1 boxclosed,boxforcene,run1day,kmtislands,gridc
smoke gbox80 4x2 boxopen,kmtislands,boxforcee,run1day,gridc
smoke gbox80 2x2 boxclosed,boxforcen,run1day,vargrid,gridc
smoke gx3 1x1x100x116x1 reprosum,run10day,gridc
smoke gx3 1x1x25x29x16 reprosum,run10day,dwblockall,gridc smoke_gx3_1x1x100x116x1_gridc_reprosum_run10day
smoke gx3 1x1x5x4x580 reprosum,run10day,dwblockall,gridc smoke_gx3_1x1x100x116x1_gridc_reprosum_run10day
smoke gx3 1x1x5x4x580 reprosum,run10day,gridc smoke_gx3_1x1x100x116x1_gridc_reprosum_run10day
smoke gx1 32x1x16x16x32 reprosum,run10day,gridc
smoke gx1 32x1x16x16x32 reprosum,run10day,cmplogrest,dwblockall,gridc smoke_gx1_32x1x16x16x32_gridc_reprosum_run10day
smoke gx1 32x1x16x12x40 reprosum,run10day,cmplogrest,dwblockall,gridc smoke_gx1_32x1x16x16x32_gridc_reprosum_run10day
smoke gx1 32x1x16x12x40 reprosum,run10day,cmplogrest,gridc smoke_gx1_32x1x16x16x32_gridc_reprosum_run10day
Loading

0 comments on commit 9104a8c

Please sign in to comment.