|
str | khiA1_hybrid.torder = 'SSPRK3' |
|
str | khiA1_hybrid.sorder = 'thirdOrder' |
|
float | khiA1_hybrid.cfl = 0.209 |
|
float | khiA1_hybrid.gamma = 2.0 |
|
str | khiA1_hybrid.numerical_flux_type = 'Rusanov' |
|
int | khiA1_hybrid.nout = 100 |
|
float | khiA1_hybrid.target_tws = 60.0 |
|
float | khiA1_hybrid.dt_sim = 0.01 |
|
float | khiA1_hybrid.omega_s_over_omega_p = 0.2625 |
|
int | khiA1_hybrid.diag_writer_interval = 1e-2 |
|
bool | khiA1_hybrid.start_from_previous = False |
| if starting from previous sim
|
|
warpy | khiA1_hybrid.configs = warpy.load_configs() |
|
str | khiA1_hybrid.orig_loc = '/Users/imandatta/Documents/warpxm_runs/hyak_mox_outputs/hybrid/2d2v/khi/2021_02_19/' |
|
str | khiA1_hybrid.orig_sim = 'khiA1_hybrid_pert_3rd_tws60_32x8x32x32_mixed' |
|
warpy | khiA1_hybrid.orig_files = configs['test_rundir'](orig_loc, orig_sim) |
|
int | khiA1_hybrid.frame_start_from_previous = 10 |
|
os | khiA1_hybrid.source_file = os.path.join(orig_files,'data', '%s_%d.h5'%(orig_sim,frame_start_from_previous)) |
|
argparse | khiA1_hybrid.parser = argparse.ArgumentParser(description='1d Sheath problem') |
|
| khiA1_hybrid.type |
|
| khiA1_hybrid.str |
|
| khiA1_hybrid.nargs |
|
| khiA1_hybrid.help |
|
| khiA1_hybrid.default |
|
argparse | khiA1_hybrid.args = parser.parse_args() |
|
argparse | khiA1_hybrid.model = args.model |
|
list | khiA1_hybrid.tf_sds = ['left','right'] |
|
list | khiA1_hybrid.tf_vds = ['middle'] |
|
list | khiA1_hybrid.kinetic_sds = ['middle'] |
|
list | khiA1_hybrid.kinetic_vds = ['left','right'] |
|
| khiA1_hybrid.else : |
|
float | khiA1_hybrid.qe = 1.602177e-19 |
|
float | khiA1_hybrid.mp = 1.672622e-27 |
|
float | khiA1_hybrid.mu0 = 1.256637e-6 |
|
float | khiA1_hybrid.eps0 = 8.854187e-12 |
|
int | khiA1_hybrid.c_light = 1/(mu0*eps0)**.5 |
|
float | khiA1_hybrid.omega_p_tau = 1.00 |
|
float | khiA1_hybrid.omega_c_tau = 1.00 |
|
float | khiA1_hybrid.skin_depth_norm = 1.0 / (omega_c_tau) |
|
float | khiA1_hybrid.n0 = 2.00e20 |
|
math | khiA1_hybrid.omega_p = math.sqrt((qe**2 * n0)/(eps0 * mp)) |
|
float | khiA1_hybrid.tau = omega_p_tau / omega_p |
|
float | khiA1_hybrid.omega_c = omega_c_tau / tau |
|
float | khiA1_hybrid.B0 = omega_c * mp/qe |
|
float | khiA1_hybrid.v0 = B0/math.sqrt(mp*n0*mu0) |
|
float | khiA1_hybrid.L = v0*tau |
|
float | khiA1_hybrid.p0 = B0**2/mu0 |
|
float | khiA1_hybrid.T0 = p0/n0 |
|
float | khiA1_hybrid.T0_ev = T0 / qe |
|
math | khiA1_hybrid.v_th0 = math.sqrt(T0/mp) |
|
math | khiA1_hybrid.rl0 = v_th0/omega_c |
|
int | khiA1_hybrid.dp0 = c_light / omega_p |
|
tuple | khiA1_hybrid.L_debye0 = (eps0*T0/(n0*qe**2))**0.5 |
|
float | khiA1_hybrid.mass_ratio = 25.0 |
|
float | khiA1_hybrid.Ai = 1.0 |
|
float | khiA1_hybrid.Ae = Ai / mass_ratio |
|
float | khiA1_hybrid.Zi = 1.0 |
|
float | khiA1_hybrid.Ze = -1.0 |
|
float | khiA1_hybrid.d_width_sim = 1.0/20.0 |
|
float | khiA1_hybrid.b_sim = -10.0 |
|
float | khiA1_hybrid.T_sim = 6.25e-4 |
|
float | khiA1_hybrid.E0_sim = 2.00E-2 |
|
float | khiA1_hybrid.Ex0_sim = E0_sim / omega_c_tau |
|
float | khiA1_hybrid.Bz_x0_sim = 1.0 |
|
float | khiA1_hybrid.Tx_sim = T_sim / 2.0 |
|
float | khiA1_hybrid.ky_sim_d_sim = 0.4 |
|
float | khiA1_hybrid.Lx_sim = 1.0 |
|
float | khiA1_hybrid.Ly_sim = 2.0*math.pi*d_width_sim/ky_sim_d_sim |
|
list | khiA1_hybrid.center_sim = [0,0] |
|
float | khiA1_hybrid.perturbation_sim = 2.0E-4 |
|
float | khiA1_hybrid.fluid_ion_perturbation_sim = 0.0 |
|
float | khiA1_hybrid.fluid_electron_perturbation_sim = perturbation_sim |
|
float | khiA1_hybrid.omega_ci_sim = Ai*Zi/Bz_x0_sim |
|
float | khiA1_hybrid.omega_ce_sim = Ae*Ze/Bz_x0_sim |
|
math | khiA1_hybrid.rli_sim_over_d_sim = math.sqrt(T_sim/Ai)/omega_ci_sim / d_width_sim |
|
float | khiA1_hybrid.n_sim_ref = 1.0 |
|
math | khiA1_hybrid.Ld_sim_over_d_sim = math.sqrt(T_sim / n_sim_ref /Ze**2) / d_width_sim |
|
int | khiA1_hybrid.beta_sim_left = 2 * (2 * n_sim_ref)*T_sim/Bz_x0_sim**2 |
|
int | khiA1_hybrid.number_density_min = 1e-12 |
|
int | khiA1_hybrid.pressure_min = number_density_min*T_sim |
|
| khiA1_hybrid.ni_aux_fit_xvec = str2float(ni_aux_fit_xvec) |
|
| khiA1_hybrid.ni_aux_fit_a = str2float(ni_aux_fit_a) |
|
| khiA1_hybrid.ni_aux_fit_b = ni_aux_fit_b[0:2] |
|
csv | khiA1_hybrid.ni_aux_reader = csv.reader(ni_aux_file, delimiter=',') |
|
| khiA1_hybrid.phi_fit_xvec = str2float(phi_fit_xvec) |
|
| khiA1_hybrid.phi_fit_a = str2float(phi_fit_a) |
|
| khiA1_hybrid.phi_fit_b = phi_fit_b[0:2] |
|
csv | khiA1_hybrid.phi_reader = csv.reader(phi_file, delimiter=',') |
|
| khiA1_hybrid.Bz_fit_xvec = str2float(Bz_fit_xvec) |
|
| khiA1_hybrid.Bz_fit_a = str2float(Bz_fit_a) |
|
| khiA1_hybrid.Bz_fit_b = Bz_fit_b[0:2] |
|
csv | khiA1_hybrid.Bz_reader = csv.reader(Bz_file, delimiter=',') |
|
| khiA1_hybrid.Ex_fit_xvec = str2float(Ex_fit_xvec) |
|
| khiA1_hybrid.Ex_fit_a = str2float(Ex_fit_a) |
|
| khiA1_hybrid.Ex_fit_b = Ex_fit_b[0:2] |
|
csv | khiA1_hybrid.Ex_reader = csv.reader(Ex_file, delimiter=',') |
|
| khiA1_hybrid.Ay_fit_xvec = str2float(Ay_fit_xvec) |
|
| khiA1_hybrid.Ay_fit_a = str2float(Ay_fit_a) |
|
| khiA1_hybrid.Ay_fit_b = Ay_fit_b[0:2] |
|
csv | khiA1_hybrid.Ay_reader = csv.reader(Ay_file, delimiter=',') |
|
| khiA1_hybrid.ni_fit_xvec = str2float(ni_fit_xvec) |
|
| khiA1_hybrid.ni_fit_a = str2float(ni_fit_a) |
|
| khiA1_hybrid.ni_fit_b = ni_fit_b[0:2] |
|
csv | khiA1_hybrid.ni_reader = csv.reader(ni_file, delimiter=',') |
|
| khiA1_hybrid.ne_fit_xvec = str2float(ne_fit_xvec) |
|
| khiA1_hybrid.ne_fit_a = str2float(ne_fit_a) |
|
| khiA1_hybrid.ne_fit_b = ne_fit_b[0:2] |
|
csv | khiA1_hybrid.ne_reader = csv.reader(ne_file, delimiter=',') |
|
| khiA1_hybrid.vyi_fit_xvec = str2float(vyi_fit_xvec) |
|
| khiA1_hybrid.vyi_fit_a = str2float(vyi_fit_a) |
|
| khiA1_hybrid.vyi_fit_b = vyi_fit_b[0:2] |
|
csv | khiA1_hybrid.vyi_reader = csv.reader(vyi_file, delimiter=',') |
|
| khiA1_hybrid.vye_fit_xvec = str2float(vye_fit_xvec) |
|
| khiA1_hybrid.vye_fit_a = str2float(vye_fit_a) |
|
| khiA1_hybrid.vye_fit_b = vye_fit_b[0:2] |
|
csv | khiA1_hybrid.vye_reader = csv.reader(vye_file, delimiter=',') |
|
| khiA1_hybrid.Tyi_fit_xvec = str2float(Tyi_fit_xvec) |
|
| khiA1_hybrid.Tyi_fit_a = str2float(Tyi_fit_a) |
|
| khiA1_hybrid.Tyi_fit_b = Tyi_fit_b[0:2] |
|
csv | khiA1_hybrid.Tyi_reader = csv.reader(Tyi_file, delimiter=',') |
|
| khiA1_hybrid.Tye_fit_xvec = str2float(Tye_fit_xvec) |
|
| khiA1_hybrid.Tye_fit_a = str2float(Tye_fit_a) |
|
| khiA1_hybrid.Tye_fit_b = Tye_fit_b[0:2] |
|
csv | khiA1_hybrid.Tye_reader = csv.reader(Tye_file, delimiter=',') |
|
float | khiA1_hybrid.min_vx_ion = -0.2 |
|
float | khiA1_hybrid.min_vy_ion = -0.2 |
|
float | khiA1_hybrid.max_vx_ion = +0.2 |
|
float | khiA1_hybrid.max_vy_ion = +0.2 |
|
float | khiA1_hybrid.min_vx_electron = -1.0 |
|
float | khiA1_hybrid.min_vy_electron = -1.0 |
|
float | khiA1_hybrid.max_vx_electron = +1.0 |
|
float | khiA1_hybrid.max_vy_electron = +1.0 |
|
int | khiA1_hybrid.v_space_num_vx = 32 |
|
int | khiA1_hybrid.v_space_num_vy = 32 |
|
list | khiA1_hybrid.v_space_num_elements = [v_space_num_vx, v_space_num_vy] |
|
list | khiA1_hybrid.min_v_ion = [min_vx_ion, min_vy_ion] |
|
list | khiA1_hybrid.dv_ion = [(max_vx_ion-min_vx_ion)/v_space_num_vx, (max_vy_ion-min_vy_ion)/v_space_num_vy] |
|
list | khiA1_hybrid.min_v_electron = [min_vx_electron, min_vy_electron] |
|
list | khiA1_hybrid.dv_electron = [(max_vx_electron-min_vx_electron)/v_space_num_vx, (max_vy_electron-min_vy_electron)/v_space_num_vy] |
|
warpy | khiA1_hybrid.config_args = warpy.load_configs() |
|
str | khiA1_hybrid.meshfile = '../../../../../../user_runs/andrew_ho/meshes/khi_xl8m16r8_y8.inp' |
|
warpy | khiA1_hybrid.mesh |
|
list | khiA1_hybrid.fluid_comps = ['rho', 'px', 'py', 'pz', 'e'] |
|
warpy | khiA1_hybrid.ion_fluid |
|
warpy | khiA1_hybrid.electron_fluid |
|
list | khiA1_hybrid.field_comps = ['Ex', 'Ey', 'Ez', 'Bx', 'By', 'Bz'] |
|
warpy | khiA1_hybrid.field |
|
warpy | khiA1_hybrid.ion_distribution |
|
warpy | khiA1_hybrid.electron_distribution |
|
warpy | khiA1_hybrid.kinetic_ion_fluid |
|
warpy | khiA1_hybrid.kinetic_electron_fluid |
|
warpy | khiA1_hybrid.chi_metric_i |
|
warpy | khiA1_hybrid.chi_metric_e |
|
warpy | khiA1_hybrid.ion_fluid_ic |
|
warpy | khiA1_hybrid.electron_fluid_ic |
|
warpy | khiA1_hybrid.ion_distribution_ic |
|
warpy | khiA1_hybrid.electron_distribution_ic |
|
warpy | khiA1_hybrid.field_ic |
|
warpy | khiA1_hybrid.fluid_ic_va |
|
warpy | khiA1_hybrid.ion_distribution_ic_va |
|
warpy | khiA1_hybrid.electron_distribution_ic_va |
|
warpy | khiA1_hybrid.field_ic_va |
|
warpy | khiA1_hybrid.tf_ic_ha |
| load from file
|
|
warpy | khiA1_hybrid.distribution_ic_ha |
|
warpy | khiA1_hybrid.field_ic_ha |
|
list | khiA1_hybrid.ic_ha = [] |
|
list | khiA1_hybrid.variable_adjusters_tf = [] |
|
list | khiA1_hybrid.variable_adjusters_field = [] |
|
list | khiA1_hybrid.variable_adjusters_kinetic = [] |
|
list | khiA1_hybrid.applications_moments_ions = [] |
|
list | khiA1_hybrid.applications_2nd_moments_ions = [] |
|
list | khiA1_hybrid.applications_moments_electrons = [] |
|
list | khiA1_hybrid.applications_2nd_moments_electrons = [] |
|
list | khiA1_hybrid.applications_maxwellian_metric_ions = [] |
|
list | khiA1_hybrid.applications_maxwellian_metric_electrons = [] |
|
list | khiA1_hybrid.kinetic_to_tf_va = [] |
|
list | khiA1_hybrid.tf_to_kinetic_va = [] |
|
list | khiA1_hybrid.virtual_bc_apps_tf = [] |
|
list | khiA1_hybrid.virtual_bc_apps_kinetic_ions = [] |
|
list | khiA1_hybrid.virtual_bc_apps_kinetic_electrons = [] |
|
warpy | khiA1_hybrid.ion_timestep_start_moment_taker |
|
warpy | khiA1_hybrid.ion_timestep_start_second_moment_taker |
|
warpy | khiA1_hybrid.ion_timestep_start_chi_metric_moment_taker |
|
warpy | khiA1_hybrid.electron_timestep_start_moment_taker |
|
warpy | khiA1_hybrid.electron_timestep_start_second_moment_taker |
|
warpy | khiA1_hybrid.electron_timestep_start_chi_metric_moment_taker |
|
list | khiA1_hybrid.extra_timestep_start_writer = [] |
|
warpy | khiA1_hybrid.moment_takers_timestep_start_ha |
|
list | khiA1_hybrid.solver_apps_tf = [] |
|
list | khiA1_hybrid.solver_apps_kinetic_ions = [] |
|
list | khiA1_hybrid.solver_apps_kinetic_electrons = [] |
|
list | khiA1_hybrid.solver_apps_maxwell_flux = [] |
|
list | khiA1_hybrid.solver_apps_maxwell_tf_fluid_source = [] |
|
list | khiA1_hybrid.solver_apps_maxwell_kinetic_fluid_source = [] |
|
list | khiA1_hybrid.spatial_solver_tf = [] |
|
list | khiA1_hybrid.spatial_solver_kinetic = [] |
|
list | khiA1_hybrid.spatial_solver_kinetic_field = [] |
|
list | khiA1_hybrid.ss_s = spatial_solver_tf |
|
list | khiA1_hybrid.va_s = variable_adjusters_tf + variable_adjusters_field |
|
warpy | khiA1_hybrid.time_integrator |
|
list | khiA1_hybrid.time_sim = [0, target_tws / omega_p_tau / omega_s_over_omega_p ] |
|
warpy | khiA1_hybrid.dt_controller = warpy.dt_calc.stability_dt(init_dt = dt_sim) |
|
warpy | khiA1_hybrid.ion_probe_fluid = kinetic_ion_fluid |
|
list | khiA1_hybrid.ion_probe_fluid_components = ['ni_0', 'nvxi_0', 'nvyi_0', 'nvzi_0', 'nTi_0'] |
|
warpy | khiA1_hybrid.ions_probe0 |
|
warpy | khiA1_hybrid.integ_Ex2 |
|
warpy | khiA1_hybrid.integ_Ey2 |
|
warpy | khiA1_hybrid.integ_Ez2 |
|
warpy | khiA1_hybrid.integ_Bx2 |
|
warpy | khiA1_hybrid.integ_By2 |
|
warpy | khiA1_hybrid.integ_Bz2 |
|
warpy | khiA1_hybrid.diag_writer |
|
list | khiA1_hybrid.write_vars = [ion_fluid, electron_fluid, field] |
|
warpy | khiA1_hybrid.writer |
|
datetime | khiA1_hybrid.now = datetime.datetime.now().strftime("%Y_%m_%d") |
|
f | khiA1_hybrid.sim_name = f'khiA1_hybrid_pert_3rd_tws60_32x8x32x32_{model}' |
|
warpy | khiA1_hybrid.case_loc = config_args['test_rundir'](f'hybrid/2d2v/khi/{now}', '') |
|
f | khiA1_hybrid.sim_param |
|
warpy | khiA1_hybrid.sim |
|
| khiA1_hybrid.gen_xdmf |
| Run Simulation ... now = datetime.datetime.now()
|
|
| khiA1_hybrid.detect_nonscalar |
|