Skip to content

Commit

Permalink
Feature results SHMIP (#8)
Browse files Browse the repository at this point in the history
* Add input files and scripts to generate results for the distributed test case presented in Sect. 4.1.
Data shown in the left of Fig.3 can be reproduced - a text file is generated by following the instructions provided in CONV_ANA/steps_to_run_CA.dat (a result data file is also provided)

* Add data of middle plot of Fig 3. There is a script to generate the data as well.

* Add results to generate plots of Fig. 5 and 6 -A and B SHMIP Suites

* forgotten files to run the distributed test cases

* Add results to generate plots of Fig. 7 and SM -E SHMIP Suites

* Add results to generate plots of Fig. 8 -F SHMIP Suites
  • Loading branch information
EnnaDelfen authored Dec 27, 2022
1 parent b285d7a commit cc689af
Show file tree
Hide file tree
Showing 42 changed files with 16,094 additions and 1 deletion.
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#errorL2
#case head gapHeight Pw Re RHS_moulin DT CD
32.0 1.6258 0.41929 15933.0 2280200.0 5.62e-05 2.6896e-06 0.30687
64.0 0.47969 0.13452 4701.0 746910.0 1.5886e-06 9.3538e-07 0.16011
128.0 0.11012 0.040056 1079.2 226580.0 2.7075e-08 3.9409e-07 0.04363
256.0 0.028409 0.013044 278.41 74565.0 4.308e-10 2.266e-07 0.014669
512.0 0.0082714 0.0025936 81.06 14465.0 6.1433e-12 1.6106e-07 0.0042241
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
#errorL2
#case head gapHeight Pw Re RHS_moulin DT CD
32.0 0.53233 0.13452 5216.9 746920.0 1.5903e-06 9.359e-07 0.15545
64.0 0.11003 0.040056 1078.3 226590.0 2.7075e-08 3.9411e-07 0.043508
128.0 0.015476 0.013042 151.67 74553.0 9.0329e-09 2.269e-07 0.033355
256.0 0.004707 0.0025933 46.128 14464.0 1.4602e-10 1.6122e-07 0.0077235
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
#errorL2
#case head gapHeight Pw Re RHS_moulin DT CD
32.0 2.426 2.1164 23775.0 14410000.0 0.0012701 2.1453e-05 1.641
64.0 1.4756 0.42025 14461.0 2299600.0 5.3099e-05 2.7385e-06 0.30563
128.0 0.43646 0.13422 4277.3 752460.0 1.1559e-06 9.5609e-07 0.11861
256.0 0.1066 0.040228 1044.6 229030.0 1.8298e-08 3.8741e-07 0.039964
512.0 0.023569 0.012944 230.98 74396.0 2.8682e-10 2.266e-07 0.013535
1024.0 0.0046591 0.0025814 45.659 14620.0 4.3975e-12 1.5978e-07 0.0030498
101 changes: 101 additions & 0 deletions exec/1_convergence_distributed/1024x256/input.hydro
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
# main - driver.cpp
main.domain_size=80000.00 20000.00 # physical dimensions of domain
main.problem_type=sqrt
main.maxTime = 1000000000000.0
main.maxStep= 5000 # approx 416 jours

# bc - 0 = diri / 1 = neum
bc.lo_bc = 0 1
bc.hi_bc = 1 1
x.lo_dirich_val = 0.0
y.lo_neumann_val = 0.0
x.hi_neumann_val = 0.0
y.hi_neumann_val = 0.0

# problem specific inputs
suhmo.basalFriction = true
suhmo.GeoFlux = 0.0
suhmo.LatHeat = 3.34e5
suhmo.IceHeight = 5000.0
suhmo.WaterViscosity = 1.787e-6
suhmo.ct = 7.5e-8
suhmo.cw = 4.22e3
suhmo.turbulentParam = 0.001

suhmo.SlidingVelocity = 1.0e-6 0.0
suhmo.br = 0.1
suhmo.lr = 2.0
suhmo.A = 2.5e-25
suhmo.cutOffbr = 0.0
suhmo.maxOffbr = 10000.0
suhmo.diffFactor= 1.0

suhmo.slope = 0.0
suhmo.GapInit = 0.01
suhmo.ReInit = 1000.0

suhmo.n_moulins=-1
suhmo.moulin_position = 400. 250.
suhmo.moulin_flux = 5.79e-9 # vol flux
suhmo.moulin_sigma = 30.0 # vol flux
suhmo.distributed_input = 5.79e-9 # vol flux
suhmo.time_varying_input = false
suhmo.deltaT = -4.0
suhmo.ramp = false
suhmo.ramp_up = 0.5
suhmo.duration_max = 3.0
suhmo.relax = 0.1
suhmo.floor_min = 0.001
suhmo.floor_max = 1.0

# Solver
solver.use_fas=true
solver.use_NL=true
solver.bcoeff_otf=true
solver.eps_PicardIte=0.0001
solver.use_ImplDiff=true

# class AmrHydro.cpp
# misc
AmrHydro.PrintCustom=false
AmrHydro.post_proc=false
AmrHydro.verbosity=5
# mesh and refinement
AmrHydro.num_cells=1024 256 # number of cells on coarsest domain
AmrHydro.max_level=0
AmrHydro.ref_ratios=2 2 2 2
AmrHydro.block_factor=2
AmrHydro.max_box_size=64
AmrHydro.max_base_grid_size=64
AmrHydro.regrid_lbase=0 # coarsest level that you regrid
AmrHydro.regrid_interval=25
AmrHydro.domainLoIndex=0 0 # 2D
AmrHydro.is_periodic=0 1 # 2D
AmrHydro.fill_ratio=0.5
AmrHydro.nestingRadius=4
AmrHydro.tags_grow = 2 # amount to buffer tags
AmrHydro.n_tag_variables = 1
AmrHydro.tag_variables=meltingRate
AmrHydro.tagging_mins=0
AmrHydro.tagging_caps=4
AmrHydro.tagging_values_min=0.02
AmrHydro.tagging_values_max=100000000.0
#AmrHydro.tagSubsetBoxesFile=somefile
#AmrHydro.grids_file=grids.dat
# Time Stepping params
AmrHydro.cfl=0.5
AmrHydro.initial_cfl=0.5
AmrHydro.max_dt_grow_factor=1.1
AmrHydro.fixed_dt=7200.0 # 2 h dt
AmrHydro.offsetTime=0.0
# Typically -1 for never, 0 for last step only, or integer interval (number of steps)
# Plot and output
AmrHydro.plot_interval=5000
AmrHydro.plot_time_interval=0.0 # If we want to plot at a given time interval (rather than number of steps)
AmrHydro.plot_prefix = plot
AmrHydro.write_gradPhi=false
# Typically -1 for never, 0 for last step only, or interval
AmrHydro.check_interval=5000
AmrHydro.check_prefix=chk
AmrHydro.check_overwrite=false # if true, rewrite old checkpoints with new ones.
AmrHydro.check_exit=false # if true, exit immediately after writing a checkpoint
101 changes: 101 additions & 0 deletions exec/1_convergence_distributed/128x32/input.hydro
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
# main - driver.cpp
main.domain_size=80000.00 20000.00 # physical dimensions of domain
main.problem_type=sqrt
main.maxTime = 1000000000000.0
main.maxStep= 5000 # approx 416 jours

# bc - 0 = diri / 1 = neum
bc.lo_bc = 0 1
bc.hi_bc = 1 1
x.lo_dirich_val = 0.0
y.lo_neumann_val = 0.0
x.hi_neumann_val = 0.0
y.hi_neumann_val = 0.0

# problem specific inputs
suhmo.basalFriction = true
suhmo.GeoFlux = 0.0
suhmo.LatHeat = 3.34e5
suhmo.IceHeight = 5000.0
suhmo.WaterViscosity = 1.787e-6
suhmo.ct = 7.5e-8
suhmo.cw = 4.22e3
suhmo.turbulentParam = 0.001

suhmo.SlidingVelocity = 1.0e-6 0.0
suhmo.br = 0.1
suhmo.lr = 2.0
suhmo.A = 2.5e-25
suhmo.cutOffbr = 0.0
suhmo.maxOffbr = 10000.0
suhmo.diffFactor= 1.0

suhmo.slope = 0.0
suhmo.GapInit = 0.01
suhmo.ReInit = 1000.0

suhmo.n_moulins=-1
suhmo.moulin_position = 400. 250.
suhmo.moulin_flux = 5.79e-9 # vol flux
suhmo.moulin_sigma = 30.0 # vol flux
suhmo.distributed_input = 5.79e-9 # vol flux
suhmo.time_varying_input = false
suhmo.deltaT = -4.0
suhmo.ramp = false
suhmo.ramp_up = 0.5
suhmo.duration_max = 3.0
suhmo.relax = 0.1
suhmo.floor_min = 0.001
suhmo.floor_max = 1.0

# Solver
solver.use_fas=true
solver.use_NL=true
solver.bcoeff_otf=true
solver.eps_PicardIte=0.0001
solver.use_ImplDiff=true

# class AmrHydro.cpp
# misc
AmrHydro.PrintCustom=false
AmrHydro.post_proc=false
AmrHydro.verbosity=5
# mesh and refinement
AmrHydro.num_cells=128 32 # number of cells on coarsest domain
AmrHydro.max_level=0
AmrHydro.ref_ratios=2 2 2 2
AmrHydro.block_factor=2
AmrHydro.max_box_size=64
AmrHydro.max_base_grid_size=64
AmrHydro.regrid_lbase=0 # coarsest level that you regrid
AmrHydro.regrid_interval=25
AmrHydro.domainLoIndex=0 0 # 2D
AmrHydro.is_periodic=0 1 # 2D
AmrHydro.fill_ratio=0.5
AmrHydro.nestingRadius=4
AmrHydro.tags_grow = 2 # amount to buffer tags
AmrHydro.n_tag_variables = 1
AmrHydro.tag_variables=meltingRate
AmrHydro.tagging_mins=0
AmrHydro.tagging_caps=4
AmrHydro.tagging_values_min=0.02
AmrHydro.tagging_values_max=100000000.0
#AmrHydro.tagSubsetBoxesFile=somefile
#AmrHydro.grids_file=grids.dat
# Time Stepping params
AmrHydro.cfl=0.5
AmrHydro.initial_cfl=0.5
AmrHydro.max_dt_grow_factor=1.1
AmrHydro.fixed_dt=7200.0 # 2 h dt
AmrHydro.offsetTime=0.0
# Typically -1 for never, 0 for last step only, or integer interval (number of steps)
# Plot and output
AmrHydro.plot_interval=5000
AmrHydro.plot_time_interval=0.0 # If we want to plot at a given time interval (rather than number of steps)
AmrHydro.plot_prefix = plot
AmrHydro.write_gradPhi=false
# Typically -1 for never, 0 for last step only, or interval
AmrHydro.check_interval=5000
AmrHydro.check_prefix=chk
AmrHydro.check_overwrite=false # if true, rewrite old checkpoints with new ones.
AmrHydro.check_exit=false # if true, exit immediately after writing a checkpoint
101 changes: 101 additions & 0 deletions exec/1_convergence_distributed/256x64/input.hydro
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
# main - driver.cpp
main.domain_size=80000.00 20000.00 # physical dimensions of domain
main.problem_type=sqrt
main.maxTime = 1000000000000.0
main.maxStep= 5000 # approx 416 jours

# bc - 0 = diri / 1 = neum
bc.lo_bc = 0 1
bc.hi_bc = 1 1
x.lo_dirich_val = 0.0
y.lo_neumann_val = 0.0
x.hi_neumann_val = 0.0
y.hi_neumann_val = 0.0

# problem specific inputs
suhmo.basalFriction = true
suhmo.GeoFlux = 0.0
suhmo.LatHeat = 3.34e5
suhmo.IceHeight = 5000.0
suhmo.WaterViscosity = 1.787e-6
suhmo.ct = 7.5e-8
suhmo.cw = 4.22e3
suhmo.turbulentParam = 0.001

suhmo.SlidingVelocity = 1.0e-6 0.0
suhmo.br = 0.1
suhmo.lr = 2.0
suhmo.A = 2.5e-25
suhmo.cutOffbr = 0.0
suhmo.maxOffbr = 10000.0
suhmo.diffFactor= 1.0

suhmo.slope = 0.0
suhmo.GapInit = 0.01
suhmo.ReInit = 1000.0

suhmo.n_moulins=-1
suhmo.moulin_position = 400. 250.
suhmo.moulin_flux = 5.79e-9 # vol flux
suhmo.moulin_sigma = 30.0 # vol flux
suhmo.distributed_input = 5.79e-9 # vol flux
suhmo.time_varying_input = false
suhmo.deltaT = -4.0
suhmo.ramp = false
suhmo.ramp_up = 0.5
suhmo.duration_max = 3.0
suhmo.relax = 0.1
suhmo.floor_min = 0.001
suhmo.floor_max = 1.0

# Solver
solver.use_fas=true
solver.use_NL=true
solver.bcoeff_otf=true
solver.eps_PicardIte=0.0001
solver.use_ImplDiff=true

# class AmrHydro.cpp
# misc
AmrHydro.PrintCustom=false
AmrHydro.post_proc=false
AmrHydro.verbosity=5
# mesh and refinement
AmrHydro.num_cells=256 64 # number of cells on coarsest domain
AmrHydro.max_level=0
AmrHydro.ref_ratios=2 2 2 2
AmrHydro.block_factor=2
AmrHydro.max_box_size=64
AmrHydro.max_base_grid_size=64
AmrHydro.regrid_lbase=0 # coarsest level that you regrid
AmrHydro.regrid_interval=25
AmrHydro.domainLoIndex=0 0 # 2D
AmrHydro.is_periodic=0 1 # 2D
AmrHydro.fill_ratio=0.5
AmrHydro.nestingRadius=4
AmrHydro.tags_grow = 2 # amount to buffer tags
AmrHydro.n_tag_variables = 1
AmrHydro.tag_variables=meltingRate
AmrHydro.tagging_mins=0
AmrHydro.tagging_caps=4
AmrHydro.tagging_values_min=0.02
AmrHydro.tagging_values_max=100000000.0
#AmrHydro.tagSubsetBoxesFile=somefile
#AmrHydro.grids_file=grids.dat
# Time Stepping params
AmrHydro.cfl=0.5
AmrHydro.initial_cfl=0.5
AmrHydro.max_dt_grow_factor=1.1
AmrHydro.fixed_dt=7200.0 # 2 h dt
AmrHydro.offsetTime=0.0
# Typically -1 for never, 0 for last step only, or integer interval (number of steps)
# Plot and output
AmrHydro.plot_interval=5000
AmrHydro.plot_time_interval=0.0 # If we want to plot at a given time interval (rather than number of steps)
AmrHydro.plot_prefix = plot
AmrHydro.write_gradPhi=false
# Typically -1 for never, 0 for last step only, or interval
AmrHydro.check_interval=5000
AmrHydro.check_prefix=chk
AmrHydro.check_overwrite=false # if true, rewrite old checkpoints with new ones.
AmrHydro.check_exit=false # if true, exit immediately after writing a checkpoint
Loading

0 comments on commit cc689af

Please sign in to comment.