From 462cb8e9ec9b7f0d52f8b839ab1426ff4d8bff71 Mon Sep 17 00:00:00 2001 From: ChrisZYJ Date: Fri, 21 Jun 2024 03:05:05 -0700 Subject: [PATCH] example cases --- .../README.md | 0 .../{1D_shuosher => 1D_shuosher_old}/case.py | 0 .../initial.png | Bin .../result.png | Bin examples/1D_shuosher_teno/case.py | 91 ++++++++++++++++++ examples/1D_shuosher_wenojs/case.py | 90 +++++++++++++++++ examples/1D_shuosher_wenom/case.py | 90 +++++++++++++++++ examples/1D_shuosher_wenoz/case.py | 90 +++++++++++++++++ 8 files changed, 361 insertions(+) rename examples/{1D_shuosher => 1D_shuosher_old}/README.md (100%) rename examples/{1D_shuosher => 1D_shuosher_old}/case.py (100%) rename examples/{1D_shuosher => 1D_shuosher_old}/initial.png (100%) rename examples/{1D_shuosher => 1D_shuosher_old}/result.png (100%) create mode 100644 examples/1D_shuosher_teno/case.py create mode 100644 examples/1D_shuosher_wenojs/case.py create mode 100644 examples/1D_shuosher_wenom/case.py create mode 100644 examples/1D_shuosher_wenoz/case.py diff --git a/examples/1D_shuosher/README.md b/examples/1D_shuosher_old/README.md similarity index 100% rename from examples/1D_shuosher/README.md rename to examples/1D_shuosher_old/README.md diff --git a/examples/1D_shuosher/case.py b/examples/1D_shuosher_old/case.py similarity index 100% rename from examples/1D_shuosher/case.py rename to examples/1D_shuosher_old/case.py diff --git a/examples/1D_shuosher/initial.png b/examples/1D_shuosher_old/initial.png similarity index 100% rename from examples/1D_shuosher/initial.png rename to examples/1D_shuosher_old/initial.png diff --git a/examples/1D_shuosher/result.png b/examples/1D_shuosher_old/result.png similarity index 100% rename from examples/1D_shuosher/result.png rename to examples/1D_shuosher_old/result.png diff --git a/examples/1D_shuosher_teno/case.py b/examples/1D_shuosher_teno/case.py new file mode 100644 index 000000000..16b46a03c --- /dev/null +++ b/examples/1D_shuosher_teno/case.py @@ -0,0 +1,91 @@ +#!/usr/bin/env python3 + +import math +import json + +# Numerical setup +Nx = 1000 +dx = 1./(1.*(Nx+1)) + +Tend, Nt = 1.8, 2000 +mydt = Tend/(1.*Nt) + +# Configuring case dictionary +print(json.dumps({ + # Logistics ================================================================ + 'run_time_info' : 'T', + # ========================================================================== + + # Computational Domain Parameters ========================================== + 'x_domain%beg' : 0., + 'x_domain%end' : 10., + 'm' : Nx, + 'n' : 0, + 'p' : 0, + 'dt' : mydt, + 't_step_start' : 0, + 't_step_stop' : int(Nt), + 't_step_save' : int(math.ceil(Nt/10.0)), + # ========================================================================== + + # Simulation Algorithm Parameters ========================================== + 'num_patches' : 2, + 'model_eqns' : 2, + 'alt_soundspeed' : 'F', + 'num_fluids' : 1, + 'adv_alphan' : 'T', + 'mpp_lim' : 'F', + 'mixture_err' : 'F', + 'time_stepper' : 3, + 'weno_order' : 5, + 'weno_eps' : 1.E-40, + 'teno' : 'T', + 'teno_CT' : 1.E-6, + 'null_weights' : 'F', + 'mp_weno' : 'F', + 'riemann_solver' : 2, + 'wave_speeds' : 1, + 'avg_state' : 2, + 'bc_x%beg' : -3, + 'bc_x%end' : -3, + # ========================================================================== + + # Formatted Database Files Structure Parameters ============================ + 'format' : 2, + 'precision' : 2, + 'prim_vars_wrt' :'T', + 'rho_wrt' :'T', + 'parallel_io' :'T', + # ========================================================================== + + + # Background to cover whole domain with basic line patch + # Patch 1 Left (0 < x < 1) =============================================== + 'patch_icpp(1)%geometry' : 1, + 'patch_icpp(1)%x_centroid' : 0.5, + 'patch_icpp(1)%length_x' : 1., + 'patch_icpp(1)%vel(1)' : 2.629, + 'patch_icpp(1)%pres' : 10.333, + 'patch_icpp(1)%alpha_rho(1)' : 3.857, + 'patch_icpp(1)%alpha(1)' : 1., + # ========================================================================== + + + # One anlytic patch to take care of 1 < x < 10 + # Patch 2 Analytic ========================================================= + 'patch_icpp(2)%geometry' : 1, + 'patch_icpp(2)%x_centroid' : 5.5, + 'patch_icpp(2)%length_x' : 9., + 'patch_icpp(2)%vel(1)' : 0., + 'patch_icpp(2)%pres' : 1., + 'patch_icpp(2)%alpha_rho(1)' : '1 + 0.2*sin(5*x)', + 'patch_icpp(2)%alpha(1)' : 1., + # ========================================================================== + + # Fluids Physical Parameters =============================================== + 'fluid_pp(1)%gamma' : 1.E+00/(1.4-1.E+00), + 'fluid_pp(1)%pi_inf' : 0.0, + # ========================================================================== +})) + +# ============================================================================== diff --git a/examples/1D_shuosher_wenojs/case.py b/examples/1D_shuosher_wenojs/case.py new file mode 100644 index 000000000..d688517d6 --- /dev/null +++ b/examples/1D_shuosher_wenojs/case.py @@ -0,0 +1,90 @@ +#!/usr/bin/env python3 + +import math +import json + +# Numerical setup +Nx = 1000 +dx = 1./(1.*(Nx+1)) + +Tend, Nt = 1.8, 2000 +mydt = Tend/(1.*Nt) + +# Configuring case dictionary +print(json.dumps({ + # Logistics ================================================================ + 'run_time_info' : 'T', + # ========================================================================== + + # Computational Domain Parameters ========================================== + 'x_domain%beg' : 0., + 'x_domain%end' : 10., + 'm' : Nx, + 'n' : 0, + 'p' : 0, + 'dt' : mydt, + 't_step_start' : 0, + 't_step_stop' : int(Nt), + 't_step_save' : int(math.ceil(Nt/10.0)), + # ========================================================================== + + # Simulation Algorithm Parameters ========================================== + 'num_patches' : 2, + 'model_eqns' : 2, + 'alt_soundspeed' : 'F', + 'num_fluids' : 1, + 'adv_alphan' : 'T', + 'mpp_lim' : 'F', + 'mixture_err' : 'F', + 'time_stepper' : 3, + 'weno_order' : 5, + 'weno_eps' : 1.E-40, + 'mapped_weno' : 'F', + 'null_weights' : 'F', + 'mp_weno' : 'F', + 'riemann_solver' : 2, + 'wave_speeds' : 1, + 'avg_state' : 2, + 'bc_x%beg' : -3, + 'bc_x%end' : -3, + # ========================================================================== + + # Formatted Database Files Structure Parameters ============================ + 'format' : 2, + 'precision' : 2, + 'prim_vars_wrt' :'T', + 'rho_wrt' :'T', + 'parallel_io' :'T', + # ========================================================================== + + + # Background to cover whole domain with basic line patch + # Patch 1 Left (0 < x < 1) =============================================== + 'patch_icpp(1)%geometry' : 1, + 'patch_icpp(1)%x_centroid' : 0.5, + 'patch_icpp(1)%length_x' : 1., + 'patch_icpp(1)%vel(1)' : 2.629, + 'patch_icpp(1)%pres' : 10.333, + 'patch_icpp(1)%alpha_rho(1)' : 3.857, + 'patch_icpp(1)%alpha(1)' : 1., + # ========================================================================== + + + # One anlytic patch to take care of 1 < x < 10 + # Patch 2 Analytic ========================================================= + 'patch_icpp(2)%geometry' : 1, + 'patch_icpp(2)%x_centroid' : 5.5, + 'patch_icpp(2)%length_x' : 9., + 'patch_icpp(2)%vel(1)' : 0., + 'patch_icpp(2)%pres' : 1., + 'patch_icpp(2)%alpha_rho(1)' : '1 + 0.2*sin(5*x)', + 'patch_icpp(2)%alpha(1)' : 1., + # ========================================================================== + + # Fluids Physical Parameters =============================================== + 'fluid_pp(1)%gamma' : 1.E+00/(1.4-1.E+00), + 'fluid_pp(1)%pi_inf' : 0.0, + # ========================================================================== +})) + +# ============================================================================== diff --git a/examples/1D_shuosher_wenom/case.py b/examples/1D_shuosher_wenom/case.py new file mode 100644 index 000000000..d8f6a2b8a --- /dev/null +++ b/examples/1D_shuosher_wenom/case.py @@ -0,0 +1,90 @@ +#!/usr/bin/env python3 + +import math +import json + +# Numerical setup +Nx = 1000 +dx = 1./(1.*(Nx+1)) + +Tend, Nt = 1.8, 2000 +mydt = Tend/(1.*Nt) + +# Configuring case dictionary +print(json.dumps({ + # Logistics ================================================================ + 'run_time_info' : 'T', + # ========================================================================== + + # Computational Domain Parameters ========================================== + 'x_domain%beg' : 0., + 'x_domain%end' : 10., + 'm' : Nx, + 'n' : 0, + 'p' : 0, + 'dt' : mydt, + 't_step_start' : 0, + 't_step_stop' : int(Nt), + 't_step_save' : int(math.ceil(Nt/10.0)), + # ========================================================================== + + # Simulation Algorithm Parameters ========================================== + 'num_patches' : 2, + 'model_eqns' : 2, + 'alt_soundspeed' : 'F', + 'num_fluids' : 1, + 'adv_alphan' : 'T', + 'mpp_lim' : 'F', + 'mixture_err' : 'F', + 'time_stepper' : 3, + 'weno_order' : 5, + 'weno_eps' : 1.E-40, + 'mapped_weno' : 'T', + 'null_weights' : 'F', + 'mp_weno' : 'F', + 'riemann_solver' : 2, + 'wave_speeds' : 1, + 'avg_state' : 2, + 'bc_x%beg' : -3, + 'bc_x%end' : -3, + # ========================================================================== + + # Formatted Database Files Structure Parameters ============================ + 'format' : 2, + 'precision' : 2, + 'prim_vars_wrt' :'T', + 'rho_wrt' :'T', + 'parallel_io' :'T', + # ========================================================================== + + + # Background to cover whole domain with basic line patch + # Patch 1 Left (0 < x < 1) =============================================== + 'patch_icpp(1)%geometry' : 1, + 'patch_icpp(1)%x_centroid' : 0.5, + 'patch_icpp(1)%length_x' : 1., + 'patch_icpp(1)%vel(1)' : 2.629, + 'patch_icpp(1)%pres' : 10.333, + 'patch_icpp(1)%alpha_rho(1)' : 3.857, + 'patch_icpp(1)%alpha(1)' : 1., + # ========================================================================== + + + # One anlytic patch to take care of 1 < x < 10 + # Patch 2 Analytic ========================================================= + 'patch_icpp(2)%geometry' : 1, + 'patch_icpp(2)%x_centroid' : 5.5, + 'patch_icpp(2)%length_x' : 9., + 'patch_icpp(2)%vel(1)' : 0., + 'patch_icpp(2)%pres' : 1., + 'patch_icpp(2)%alpha_rho(1)' : '1 + 0.2*sin(5*x)', + 'patch_icpp(2)%alpha(1)' : 1., + # ========================================================================== + + # Fluids Physical Parameters =============================================== + 'fluid_pp(1)%gamma' : 1.E+00/(1.4-1.E+00), + 'fluid_pp(1)%pi_inf' : 0.0, + # ========================================================================== +})) + +# ============================================================================== diff --git a/examples/1D_shuosher_wenoz/case.py b/examples/1D_shuosher_wenoz/case.py new file mode 100644 index 000000000..a7df52c54 --- /dev/null +++ b/examples/1D_shuosher_wenoz/case.py @@ -0,0 +1,90 @@ +#!/usr/bin/env python3 + +import math +import json + +# Numerical setup +Nx = 1000 +dx = 1./(1.*(Nx+1)) + +Tend, Nt = 1.8, 2000 +mydt = Tend/(1.*Nt) + +# Configuring case dictionary +print(json.dumps({ + # Logistics ================================================================ + 'run_time_info' : 'T', + # ========================================================================== + + # Computational Domain Parameters ========================================== + 'x_domain%beg' : 0., + 'x_domain%end' : 10., + 'm' : Nx, + 'n' : 0, + 'p' : 0, + 'dt' : mydt, + 't_step_start' : 0, + 't_step_stop' : int(Nt), + 't_step_save' : int(math.ceil(Nt/10.0)), + # ========================================================================== + + # Simulation Algorithm Parameters ========================================== + 'num_patches' : 2, + 'model_eqns' : 2, + 'alt_soundspeed' : 'F', + 'num_fluids' : 1, + 'adv_alphan' : 'T', + 'mpp_lim' : 'F', + 'mixture_err' : 'F', + 'time_stepper' : 3, + 'weno_order' : 5, + 'weno_eps' : 1.E-40, + 'wenoz' : 'T', + 'null_weights' : 'F', + 'mp_weno' : 'F', + 'riemann_solver' : 2, + 'wave_speeds' : 1, + 'avg_state' : 2, + 'bc_x%beg' : -3, + 'bc_x%end' : -3, + # ========================================================================== + + # Formatted Database Files Structure Parameters ============================ + 'format' : 2, + 'precision' : 2, + 'prim_vars_wrt' :'T', + 'rho_wrt' :'T', + 'parallel_io' :'T', + # ========================================================================== + + + # Background to cover whole domain with basic line patch + # Patch 1 Left (0 < x < 1) =============================================== + 'patch_icpp(1)%geometry' : 1, + 'patch_icpp(1)%x_centroid' : 0.5, + 'patch_icpp(1)%length_x' : 1., + 'patch_icpp(1)%vel(1)' : 2.629, + 'patch_icpp(1)%pres' : 10.333, + 'patch_icpp(1)%alpha_rho(1)' : 3.857, + 'patch_icpp(1)%alpha(1)' : 1., + # ========================================================================== + + + # One anlytic patch to take care of 1 < x < 10 + # Patch 2 Analytic ========================================================= + 'patch_icpp(2)%geometry' : 1, + 'patch_icpp(2)%x_centroid' : 5.5, + 'patch_icpp(2)%length_x' : 9., + 'patch_icpp(2)%vel(1)' : 0., + 'patch_icpp(2)%pres' : 1., + 'patch_icpp(2)%alpha_rho(1)' : '1 + 0.2*sin(5*x)', + 'patch_icpp(2)%alpha(1)' : 1., + # ========================================================================== + + # Fluids Physical Parameters =============================================== + 'fluid_pp(1)%gamma' : 1.E+00/(1.4-1.E+00), + 'fluid_pp(1)%pi_inf' : 0.0, + # ========================================================================== +})) + +# ==============================================================================