Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
fa8cd8f
- Add option where IG source term uses mean wave energy Eprev_ig in s…
Leynse Feb 12, 2026
3713e3b
- Also add a 4th option where dSxx/dx is based on the mean incident w…
Leynse Feb 12, 2026
6d021b7
- Start igopt5 with addition to limit srcig around incident wave brea…
Leynse Feb 25, 2026
3339c8b
- Try lower beta5 (/only in shallow water part)
Leynse Feb 25, 2026
d9b5b4c
- Fix Hmx vs Hmx_ig inconsistency in SnapWave code, as found by Maarten
Leynse Feb 25, 2026
ab2767d
- Add option 6 where there is no energy transfer anymore after incide…
Leynse Feb 26, 2026
dab2264
- Add igopt 7 where srcig is multiplied by (-Qb), similar to Reniers&…
Leynse Feb 27, 2026
0617660
- igopt 8 option that is same as 6, but with changing cg_ig to sqrt(g…
Leynse Feb 27, 2026
6113058
- Add percentage of breaking waves qb to his output
Leynse Feb 27, 2026
c9bc56f
- Add cg_ig to netcdf his output for testing igopt=8 where after brea…
Leynse Feb 28, 2026
1db5716
- Add ig_opt = 9 with bound/free wave criterion based on Hm0,inc / h …
Leynse Feb 28, 2026
9b1fa7e
- Seems more robust as fraction of gamma, 2/3 seems to work quite wel…
Leynse Feb 28, 2026
c942b81
- Also set cg_ig to sqrt(g*h) after breaking for ig_opt 9
Leynse Mar 2, 2026
86c7a17
- Add igopt 10 with first version SxxoverE
Leynse Mar 3, 2026
ba99dcb
- Add igopt 11 with better rewritten code for determining srcig based…
Leynse Mar 3, 2026
9773193
- first version moving srcig term over from 'R' to 'B', for igopt=11
Leynse Mar 3, 2026
5ad4779
- Not fully working yet, so end now by last working step of having sr…
Leynse Mar 3, 2026
8759ada
- Add again suggestion of calculation beta in shorter way, to test
Leynse Mar 3, 2026
9c4ff32
- Latest version for ig_opt 12 wth srcif in B-term
Leynse Mar 3, 2026
498fa38
- Make ig_opt 11 default for now
Leynse Mar 3, 2026
962cbf2
- Commit comment of Maarten - to be checked later
Leynse Mar 6, 2026
bf406b6
- Change default snapwave_gammaig to 0.7
Leynse Mar 9, 2026
5aedb82
- Add variable 'snapwave_gamma_fac_br' instead of the fixed 2.0/3.0 v…
Leynse Mar 9, 2026
4894a9a
- For instance in shadow zone of Boers tests, changing the cg_ig did …
Leynse Mar 9, 2026
937c206
- bump date
Leynse Mar 9, 2026
5a95122
- Big cleanup
Leynse Mar 9, 2026
a1ede23
- Rename subroutine to original name of 'determine_infragravity_sourc…
Leynse Mar 9, 2026
2971fdd
- Fix change indexing
Leynse Mar 9, 2026
2519daf
- Actually set default to 1 again
Leynse Mar 9, 2026
533fe33
- Add a smooth transition function as suggested by Maarten. Now there…
Leynse Mar 10, 2026
4648636
- Redo ig_opt 12 to be same as ig_opt 1 (current best default), with …
Leynse Mar 16, 2026
53ecdfc
- Add ig_opt 13, where based on beta_local, snapwave_gamma_fac_br is …
Leynse Mar 16, 2026
7b643b9
- Better result for 1:20 slope if beta_limit_2 = 0.005
Leynse Mar 16, 2026
989af68
- clean repo
Leynse Mar 24, 2026
fdd1ad7
- Remove references to ig_opt 20+ in main solver
Leynse Apr 1, 2026
596e42d
- Remove cg_ig adjustment option
Leynse Apr 1, 2026
3f83248
- Added subroutine 'estimate_shoaling_parameter_alphaig_steep_slopes'…
Leynse Apr 1, 2026
61c890c
- Add back an option 11 that does have the beta lim, but no srcig to …
Leynse Apr 1, 2026
deb83be
- Make the 5 steep_fac options user defineable, with defaults as hard…
Leynse Apr 1, 2026
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
7 changes: 7 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -65,3 +65,10 @@ source/third_party_open/netcdf/x64
source/sfincs/sfincs.opt.yaml
/source/sfincs_lib/*.yaml
/source/third_party_open/netcdf/netcdf-fortran-4.6.1/Debug
/source/build_nvfortran_gpu_h7.sh
/source/build_nvfortran_gpu.sh
/source/Singularityfile-gpu.def
/source/Dockerfile.gpu.update01
/source/Dockerfile.gpu.test
/source/Dockerfile.gpu.25.5.ccall
/source/Dockerfile.gpu
31 changes: 0 additions & 31 deletions source/Dockerfile.gpu

This file was deleted.

32 changes: 0 additions & 32 deletions source/Dockerfile.gpu.25.5.ccall

This file was deleted.

15 changes: 0 additions & 15 deletions source/Dockerfile.gpu.test

This file was deleted.

32 changes: 0 additions & 32 deletions source/Dockerfile.gpu.update01

This file was deleted.

58 changes: 0 additions & 58 deletions source/Singularityfile-gpu.def

This file was deleted.

35 changes: 0 additions & 35 deletions source/build_nvfortran_gpu.sh

This file was deleted.

21 changes: 0 additions & 21 deletions source/build_nvfortran_gpu_h7.sh

This file was deleted.

5 changes: 4 additions & 1 deletion source/src/sfincs_data.f90
Original file line number Diff line number Diff line change
Expand Up @@ -589,7 +589,10 @@ module sfincs_data
real*4, dimension(:), allocatable :: df
real*4, dimension(:), allocatable :: dwig
real*4, dimension(:), allocatable :: dfig
real*4, dimension(:), allocatable :: cg
real*4, dimension(:), allocatable :: cg
real*4, dimension(:), allocatable :: cgig
real*4, dimension(:), allocatable :: qb
real*4, dimension(:), allocatable :: gam
real*4, dimension(:), allocatable :: betamean
real*4, dimension(:), allocatable :: srcig
real*4, dimension(:), allocatable :: alphaig
Expand Down
6 changes: 6 additions & 0 deletions source/src/sfincs_domain.f90
Original file line number Diff line number Diff line change
Expand Up @@ -2581,6 +2581,12 @@ subroutine initialize_hydro()
dfig = 0.0
allocate(cg(np))
cg = 0.0
allocate(cgig(np))
cgig = 0.0
allocate(qb(np))
qb = 0.0
allocate(gam(np))
gam = 0.0
allocate(betamean(np))
betamean = 0.0
allocate(srcig(np))
Expand Down
4 changes: 2 additions & 2 deletions source/src/sfincs_lib.f90
Original file line number Diff line number Diff line change
Expand Up @@ -92,8 +92,8 @@ function sfincs_initialize() result(ierr)
!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!
build_revision = "$Rev: v2.3.1 mt. Faber"
build_date = "$Date: 2025-12-18"
build_revision = "$Rev: v2.3.0+ mt. Faber:branch-281"
build_date = "$Date: 2026-04-01"
!
call write_log('', 1)
call write_log('------------ Welcome to SFINCS ------------', 1)
Expand Down
42 changes: 38 additions & 4 deletions source/src/sfincs_ncoutput.F90
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ module sfincs_ncoutput
integer :: patm_varid, wind_speed_varid, wind_dir_varid
integer :: inp_varid, total_runtime_varid, average_dt_varid, status_varid
integer :: hm0_varid, hm0ig_varid, zsm_varid, tp_varid, tpig_varid, wavdir_varid, dirspr_varid
integer :: dw_varid, df_varid, dwig_varid, dfig_varid, cg_varid, beta_varid, srcig_varid, alphaig_varid
integer :: dw_varid, df_varid, dwig_varid, dfig_varid, cg_varid, cgig_varid, beta_varid, srcig_varid, alphaig_varid, qb_varid, gam_varid
integer :: runup_gauge_name_varid, runup_gauge_zs_varid
!
end type
Expand Down Expand Up @@ -1849,6 +1849,27 @@ subroutine ncoutput_his_init()
NF90(nf90_put_att(his_file%ncid, his_file%cg_varid, 'long_name', 'wave group velocity'))
NF90(nf90_put_att(his_file%ncid, his_file%cg_varid, 'coordinates', 'station_id station_name point_x point_y'))
!
NF90(nf90_def_var(his_file%ncid, 'cgig', NF90_FLOAT, (/his_file%points_dimid, his_file%time_dimid/), his_file%cgig_varid)) ! time-varying water level point
NF90(nf90_put_att(his_file%ncid, his_file%cgig_varid, '_FillValue', FILL_VALUE))
NF90(nf90_put_att(his_file%ncid, his_file%cgig_varid, 'units', 'm/s'))
NF90(nf90_put_att(his_file%ncid, his_file%cgig_varid, 'standard_name', 'infragravity_wave_velocity'))
NF90(nf90_put_att(his_file%ncid, his_file%cgig_varid, 'long_name', 'infragravity wave velocity'))
NF90(nf90_put_att(his_file%ncid, his_file%cgig_varid, 'coordinates', 'station_id station_name point_x point_y'))
!
NF90(nf90_def_var(his_file%ncid, 'qb', NF90_FLOAT, (/his_file%points_dimid, his_file%time_dimid/), his_file%qb_varid)) ! time-varying water level point
NF90(nf90_put_att(his_file%ncid, his_file%qb_varid, '_FillValue', FILL_VALUE))
NF90(nf90_put_att(his_file%ncid, his_file%qb_varid, 'units', '-'))
NF90(nf90_put_att(his_file%ncid, his_file%qb_varid, 'standard_name', 'fraction_breaking_waves'))
NF90(nf90_put_att(his_file%ncid, his_file%qb_varid, 'long_name', 'fraction breaking incident waves'))
NF90(nf90_put_att(his_file%ncid, his_file%qb_varid, 'coordinates', 'station_id station_name point_x point_y'))
!
NF90(nf90_def_var(his_file%ncid, 'gam', NF90_FLOAT, (/his_file%points_dimid, his_file%time_dimid/), his_file%gam_varid)) ! time-varying water level point
NF90(nf90_put_att(his_file%ncid, his_file%gam_varid, '_FillValue', FILL_VALUE))
NF90(nf90_put_att(his_file%ncid, his_file%gam_varid, 'units', '-'))
NF90(nf90_put_att(his_file%ncid, his_file%gam_varid, 'standard_name', 'local_wave_height_water_depth_ratio'))
NF90(nf90_put_att(his_file%ncid, his_file%gam_varid, 'long_name', 'local wave height water depth ratio'))
NF90(nf90_put_att(his_file%ncid, his_file%gam_varid, 'coordinates', 'station_id station_name point_x point_y'))
!
NF90(nf90_def_var(his_file%ncid, 'beta', NF90_FLOAT, (/his_file%points_dimid, his_file%time_dimid/), his_file%beta_varid)) ! time-varying water level point
NF90(nf90_put_att(his_file%ncid, his_file%beta_varid, '_FillValue', FILL_VALUE))
NF90(nf90_put_att(his_file%ncid, his_file%beta_varid, 'units', '-'))
Expand Down Expand Up @@ -2915,6 +2936,9 @@ subroutine ncoutput_update_his(t,nthisout)
real*4, dimension(nobs) :: dwigobs
real*4, dimension(nobs) :: dfigobs
real*4, dimension(nobs) :: cgobs
real*4, dimension(nobs) :: cgigobs
real*4, dimension(nobs) :: qbobs
real*4, dimension(nobs) :: gamobs
real*4, dimension(nobs) :: betaobs
real*4, dimension(nobs) :: srcigobs
real*4, dimension(nobs) :: alphaigobs
Expand All @@ -2938,6 +2962,9 @@ subroutine ncoutput_update_his(t,nthisout)
dwobs = FILL_VALUE
dfobs = FILL_VALUE
cgobs = FILL_VALUE
cgigobs = FILL_VALUE
qbobs = FILL_VALUE
gamobs = FILL_VALUE
betaobs = FILL_VALUE
srcigobs = FILL_VALUE
alphaigobs = FILL_VALUE
Expand Down Expand Up @@ -3038,7 +3065,10 @@ subroutine ncoutput_update_his(t,nthisout)
dfobs(iobs) = df(nm)
dwigobs(iobs) = dwig(nm)
dfigobs(iobs) = dfig(nm)
cgobs(iobs) = cg(nm)
cgobs(iobs) = cg(nm)
cgigobs(iobs) = cgig(nm)
qbobs(iobs) = qb(nm)
gamobs(iobs) = gam(nm)
betaobs(iobs) = betamean(nm)
srcigobs(iobs) = srcig(nm)
alphaigobs(iobs) = alphaig(nm)
Expand Down Expand Up @@ -3101,6 +3131,9 @@ subroutine ncoutput_update_his(t,nthisout)
NF90(nf90_put_var(his_file%ncid, his_file%dfig_varid, dfigobs, (/1, nthisout/)))
!
NF90(nf90_put_var(his_file%ncid, his_file%cg_varid, cgobs, (/1, nthisout/)))
NF90(nf90_put_var(his_file%ncid, his_file%cgig_varid, cgigobs, (/1, nthisout/)))
NF90(nf90_put_var(his_file%ncid, his_file%qb_varid, qbobs, (/1, nthisout/)))
NF90(nf90_put_var(his_file%ncid, his_file%gam_varid, gamobs, (/1, nthisout/)))
!
NF90(nf90_put_var(his_file%ncid, his_file%beta_varid, betaobs, (/1, nthisout/)))
NF90(nf90_put_var(his_file%ncid, his_file%srcig_varid, srcigobs, (/1, nthisout/)))
Expand Down Expand Up @@ -3690,7 +3723,7 @@ subroutine ncoutput_add_params(ncid, varid)
!
! Because of overlapping names, only important specific values from snapwave_data
use snapwave_data, only: gamma, gammax, alpha, hmin, fw0, fw0_ig, dt, tol, dtheta, crit, nr_sweeps, baldock_opt, baldock_ratio, &
igwaves_opt, alpha_ig, gamma_ig, shinc2ig, alphaigfac, baldock_ratio_ig, ig_opt, herbers_opt, tpig_opt, eeinc2ig, tinc2ig, &
igwaves_opt, alpha_ig, gamma_ig, gamma_fac_br, shinc2ig, alphaigfac, baldock_ratio_ig, ig_opt, herbers_opt, tpig_opt, eeinc2ig, tinc2ig, &
snapwave_jonswapfile, snapwave_encfile, snapwave_bndfile, snapwave_bhsfile, snapwave_btpfile, snapwave_bwdfile, snapwave_bdsfile, upwfile, gridfile

!
Expand Down Expand Up @@ -3883,7 +3916,8 @@ subroutine ncoutput_add_params(ncid, varid)
!
NF90(nf90_put_att(ncid, varid, 'snapwave_igwaves',igwaves_opt))
NF90(nf90_put_att(ncid, varid, 'snapwave_alpha_ig',alpha_ig))
NF90(nf90_put_att(ncid, varid, 'snapwave_gammaig',gamma_ig))
NF90(nf90_put_att(ncid, varid, 'snapwave_gammaig',gamma_ig))
NF90(nf90_put_att(ncid, varid, 'snapwave_gamma_fac_br',gamma_fac_br))
NF90(nf90_put_att(ncid, varid, 'snapwave_shinc2ig',shinc2ig))
NF90(nf90_put_att(ncid, varid, 'snapwave_alphaigfac',alphaigfac))
NF90(nf90_put_att(ncid, varid, 'snapwave_baldock_ratio_ig',baldock_ratio_ig))
Expand Down
Loading