Skip to content

Commit

Permalink
Inputs for kinetic electron runs with adaptive ion timesteps
Browse files Browse the repository at this point in the history
Includes inputs for runs both with and without wall boundary conditions
included in the Jacobian matrix.
  • Loading branch information
johnomotani committed Dec 7, 2024
1 parent 34dc561 commit a7c6aa1
Show file tree
Hide file tree
Showing 8 changed files with 1,295 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,162 @@
[r]
ngrid = 1
nelement = 1

[evolve_moments]
parallel_pressure = true
density = true
moments_conservation = true
parallel_flow = true

[reactions]
electron_ionization_frequency = 0.0
ionization_frequency = 0.5
charge_exchange_frequency = 0.75

[vz]
ngrid = 6
discretization = "gausslegendre_pseudospectral"
nelement = 31
L = 36.0
element_spacing_option = "coarse_tails"
bc = "zero"

[ion_species_1]
initial_temperature = 0.1
initial_density = 1.0

[krook_collisions]
use_krook = true

[vpa]
ngrid = 6
discretization = "gausslegendre_pseudospectral"
nelement = 31
L = 30.0
element_spacing_option = "coarse_tails"
bc = "zero"

[z]
ngrid = 5
discretization = "gausslegendre_pseudospectral"
nelement = 32
nelement_local = 4
bc = "wall"
element_spacing_option = "sqrt"

[vpa_IC_ion_species_1]
initialization_option = "gaussian"
density_amplitude = 1.0
temperature_amplitude = 0.0
density_phase = 0.0
upar_amplitude = 0.0
temperature_phase = 0.0
upar_phase = 0.0

[z_IC_neutral_species_1]
initialization_option = "gaussian"
temperature_amplitude = 0.0
density_amplitude = 0.001
density_phase = 0.0
upar_amplitude = -1.0
temperature_phase = 0.0
upar_phase = 0.0

[composition]
T_wall = 0.1
T_e = 0.2
electron_physics = "kinetic_electrons"
recycling_fraction = 0.5
n_ion_species = 1
n_neutral_species = 1

[vz_IC_neutral_species_1]
initialization_option = "gaussian"
density_amplitude = 1.0
temperature_amplitude = 0.0
density_phase = 0.0
upar_amplitude = 0.0
temperature_phase = 0.0
upar_phase = 0.0

[z_IC_ion_species_1]
initialization_option = "gaussian"
density_amplitude = 0.001
temperature_amplitude = 0.0
density_phase = 0.0
upar_amplitude = 1.0
temperature_phase = 0.0
upar_phase = 0.0

[neutral_species_1]
initial_temperature = 1.0
initial_density = 1.0

[timestepping]
type = "KennedyCarpenterARK324"
implicit_electron_advance = false
implicit_electron_ppar = true
implicit_ion_advance = false
implicit_vpa_advection = false
nstep = 1000000
dt = 1.0e-5
nwrite = 1000
nwrite_dfns = 1000
steady_state_residual = true
converged_residual_value = 1.0e-3

#write_after_fixed_step_count = true
#nstep = 1
#nwrite = 1
#nwrite_dfns = 1

[electron_timestepping]
nstep = 5000000
#nstep = 1
dt = 1.0e-5
#maximum_dt = 1.0e-8
nwrite = 10000
nwrite_dfns = 100000
#type = "SSPRK4"
type = "Fekete4(3)"
rtol = 1.0e-3
atol = 1.0e-14
minimum_dt = 1.0e-9
decrease_dt_iteration_threshold = 100
increase_dt_iteration_threshold = 20
cap_factor_ion_dt = 10.0
initialization_residual_value = 2.5
converged_residual_value = 1.0e-2
include_wall_bc_in_preconditioner = true

#debug_io = 1

[nonlinear_solver]
nonlinear_max_iterations = 100
rtol = 1.0e-6 #1.0e-8
atol = 1.0e-14 #1.0e-16
linear_restart = 5
preconditioner_update_interval = 100

[ion_source_1]
active = true
z_profile = "gaussian"
z_width = 0.125
source_strength = 2.0
source_T = 2.0

[ion_numerical_dissipation]
#vpa_dissipation_coefficient = 1.0e-1
#vpa_dissipation_coefficient = 1.0e-2
#vpa_dissipation_coefficient = 1.0e-3
force_minimum_pdf_value = 0.0

[electron_numerical_dissipation]
vpa_dissipation_coefficient = 2.0
force_minimum_pdf_value = 0.0

[neutral_numerical_dissipation]
#vz_dissipation_coefficient = 1.0e-1
#vz_dissipation_coefficient = 1.0e-2
#vz_dissipation_coefficient = 1.0e-3
force_minimum_pdf_value = 0.0
Original file line number Diff line number Diff line change
@@ -0,0 +1,161 @@
[r]
ngrid = 1
nelement = 1

[evolve_moments]
parallel_pressure = true
density = true
moments_conservation = true
parallel_flow = true

[reactions]
electron_ionization_frequency = 0.0
ionization_frequency = 0.5
charge_exchange_frequency = 0.75

[vz]
ngrid = 6
discretization = "gausslegendre_pseudospectral"
nelement = 31
L = 36.0
element_spacing_option = "coarse_tails"
bc = "zero"

[ion_species_1]
initial_temperature = 0.1
initial_density = 1.0

[krook_collisions]
use_krook = true

[vpa]
ngrid = 6
discretization = "gausslegendre_pseudospectral"
nelement = 31
L = 30.0
element_spacing_option = "coarse_tails"
bc = "zero"

[z]
ngrid = 5
discretization = "gausslegendre_pseudospectral"
nelement = 32
nelement_local = 4
bc = "wall"
element_spacing_option = "sqrt"

[vpa_IC_ion_species_1]
initialization_option = "gaussian"
density_amplitude = 1.0
temperature_amplitude = 0.0
density_phase = 0.0
upar_amplitude = 0.0
temperature_phase = 0.0
upar_phase = 0.0

[z_IC_neutral_species_1]
initialization_option = "gaussian"
temperature_amplitude = 0.0
density_amplitude = 0.001
density_phase = 0.0
upar_amplitude = -1.0
temperature_phase = 0.0
upar_phase = 0.0

[composition]
T_wall = 0.1
T_e = 0.2
electron_physics = "kinetic_electrons"
recycling_fraction = 0.5
n_ion_species = 1
n_neutral_species = 1

[vz_IC_neutral_species_1]
initialization_option = "gaussian"
density_amplitude = 1.0
temperature_amplitude = 0.0
density_phase = 0.0
upar_amplitude = 0.0
temperature_phase = 0.0
upar_phase = 0.0

[z_IC_ion_species_1]
initialization_option = "gaussian"
density_amplitude = 0.001
temperature_amplitude = 0.0
density_phase = 0.0
upar_amplitude = 1.0
temperature_phase = 0.0
upar_phase = 0.0

[neutral_species_1]
initial_temperature = 1.0
initial_density = 1.0

[timestepping]
type = "KennedyCarpenterARK324"
implicit_electron_advance = false
implicit_electron_ppar = true
implicit_ion_advance = false
implicit_vpa_advection = false
nstep = 1000000
dt = 1.0e-5
nwrite = 1000
nwrite_dfns = 1000
steady_state_residual = true
converged_residual_value = 1.0e-3

#write_after_fixed_step_count = true
#nstep = 1
#nwrite = 1
#nwrite_dfns = 1

[electron_timestepping]
nstep = 5000000
#nstep = 1
dt = 1.0e-5
#maximum_dt = 1.0e-8
nwrite = 10000
nwrite_dfns = 100000
#type = "SSPRK4"
type = "Fekete4(3)"
rtol = 1.0e-3
atol = 1.0e-14
minimum_dt = 1.0e-9
decrease_dt_iteration_threshold = 100
increase_dt_iteration_threshold = 20
cap_factor_ion_dt = 10.0
initialization_residual_value = 2.5
converged_residual_value = 1.0e-2

#debug_io = 1

[nonlinear_solver]
nonlinear_max_iterations = 100
rtol = 1.0e-6 #1.0e-8
atol = 1.0e-14 #1.0e-16
linear_restart = 5
preconditioner_update_interval = 100

[ion_source_1]
active = true
z_profile = "gaussian"
z_width = 0.125
source_strength = 2.0
source_T = 2.0

[ion_numerical_dissipation]
#vpa_dissipation_coefficient = 1.0e-1
#vpa_dissipation_coefficient = 1.0e-2
#vpa_dissipation_coefficient = 1.0e-3
force_minimum_pdf_value = 0.0

[electron_numerical_dissipation]
vpa_dissipation_coefficient = 2.0
force_minimum_pdf_value = 0.0

[neutral_numerical_dissipation]
#vz_dissipation_coefficient = 1.0e-1
#vz_dissipation_coefficient = 1.0e-2
#vz_dissipation_coefficient = 1.0e-3
force_minimum_pdf_value = 0.0
Loading

0 comments on commit a7c6aa1

Please sign in to comment.