WARPXM v1.10.0
Loading...
Searching...
No Matches
1d1v_double_rarefaction Namespace Reference

Variables

str torder = 'TVDRK2'
 
str sorder = 'secondOrder'
 
float cfl = 0.1
 
float gamma = 1.4
 
float skin_depth_norm = 1.0
 
float omega_p_norm = 1.0
 
float charge = 0.0
 
int mass = 1
 
float charge_to_mass = charge/mass
 
float thermal_velocity = 1.0
 
float density = 1.0
 
list v_space_num_elements = [40]
 
list min_v = [-10]
 
list dv = [0.5]
 
int num_physical_elements = 128
 
bool periodic_boundary_conditions = False
 
int nu_p_tau = 1E-6
 
int nu = 1
 
warpy mesh
 
warpy distribution
 
warpy field
 
warpy fluid
 
warpy distribution_ic
 Initial conditions-------------------------------— Step 1: define the function as an application:
 
warpy ic_va
 
warpy ic_ha
 
list apps_kinetic = []
 Initial conditions-------------------------------—.
 
list apps_physical
 
list applications_moments = []
 
list applications_2nd_moments = []
 
list bc_apps_dirichlet_field = []
 
list Ex = [0.0,0.0]
 
list Ey = [0.0,0.0]
 
list Ez = [0.0,0.0]
 
list Bx = [0.0,0.0]
 
list By = [0.0,0.0]
 
list Bz = [0.0,0.0]
 
warpy writer = warpy.host_actions.writer(name='writer', ReadVars=[distribution, fluid, field])
 
warpy spatial_solver_kinetic
 
warpy spatial_solver_physical
 
list variable_adjusters = []
 
warpy time_integrator
 Variable adjusters variable_adjusters = [].
 
int dt = 1e-4
 
int nout = 100
 
warpy dt_controller = warpy.dt_calc.fixed_dt(init_dt=dt)
 
warpy sim
 
datetime now = datetime.datetime.now()
 
 category
 
 gen_xdmf
 
 True
 
 detect_nonscalar
 

Variable Documentation

◆ applications_2nd_moments

list 1d1v_double_rarefaction.applications_2nd_moments = []

◆ applications_moments

list 1d1v_double_rarefaction.applications_moments = []

◆ apps_kinetic

list 1d1v_double_rarefaction.apps_kinetic = []

Initial conditions-------------------------------—.

Applications (consists of equation sets and boundary conditions)

◆ apps_physical

list 1d1v_double_rarefaction.apps_physical
Initial value:
1= [warpy.apps.maxwell.flux(name='maxwell',
2 field=field,
3 skin_depth_norm=skin_depth_norm,
4 omega_p_norm=omega_p_norm)]
Maxwell flux.
Definition: maxwell.py:4

◆ bc_apps_dirichlet_field

list 1d1v_double_rarefaction.bc_apps_dirichlet_field = []

◆ Bx

list 1d1v_double_rarefaction.Bx = [0.0,0.0]

◆ By

list 1d1v_double_rarefaction.By = [0.0,0.0]

◆ Bz

list 1d1v_double_rarefaction.Bz = [0.0,0.0]

◆ category

1d1v_double_rarefaction.category

◆ cfl

float 1d1v_double_rarefaction.cfl = 0.1

◆ charge

float 1d1v_double_rarefaction.charge = 0.0

◆ charge_to_mass

float 1d1v_double_rarefaction.charge_to_mass = charge/mass

◆ density

float 1d1v_double_rarefaction.density = 1.0

◆ detect_nonscalar

1d1v_double_rarefaction.detect_nonscalar

◆ distribution

warpy 1d1v_double_rarefaction.distribution
Initial value:
1= warpy.variable(name = 'distribution',
2 components = ['f'],
3 basis_array_set = sorder,
4 phase_space_basis_array_set = sorder,
5 v_space_num_elements = v_space_num_elements)
Definition: variable.py:4

◆ distribution_ic

warpy 1d1v_double_rarefaction.distribution_ic
Initial value:
1= warpy.apps.functions.kinetics.kinetics1d1v_double_rarefaction(name='double_rarefaction_problem_1d1v',
2 distribution=distribution,
3 mass=mass)
Function which sets kinetic shock tube conditions double rarefaction problem.
Definition: kinetics.py:46

Initial conditions-------------------------------— Step 1: define the function as an application:

◆ dt

int 1d1v_double_rarefaction.dt = 1e-4

◆ dt_controller

warpy 1d1v_double_rarefaction.dt_controller = warpy.dt_calc.fixed_dt(init_dt=dt)

◆ dv

list 1d1v_double_rarefaction.dv = [0.5]

◆ Ex

list 1d1v_double_rarefaction.Ex = [0.0,0.0]

◆ Ey

list 1d1v_double_rarefaction.Ey = [0.0,0.0]

◆ Ez

list 1d1v_double_rarefaction.Ez = [0.0,0.0]

◆ field

warpy 1d1v_double_rarefaction.field
Initial value:
1= warpy.variable(name = 'field',
2 components = ['Ex','Ey','Ez','Bx','By','Bz'],
3 basis_array_set = sorder)

◆ fluid

warpy 1d1v_double_rarefaction.fluid
Initial value:
1= warpy.variable(name = 'fluid',
2 components = ['n','nvx','nvy','nvz','nT'],
3 basis_array_set = sorder,
4 explodable=False)

◆ gamma

float 1d1v_double_rarefaction.gamma = 1.4

◆ gen_xdmf

1d1v_double_rarefaction.gen_xdmf

◆ ic_ha

warpy 1d1v_double_rarefaction.ic_ha
Initial value:
2 variable_adjusters=[ic_va])
Runs a list of host actions.
Definition: va_runner.py:5

◆ ic_va

warpy 1d1v_double_rarefaction.ic_va
Initial value:
2 priority=0,
3 spatial_order=sorder,
4 phase_space_spatial_order=sorder,
5 v_space_num_elements=v_space_num_elements,
6 min_v=min_v,
7 dv=dv,
8 on_subdomains=['all'],
9 applications=[distribution_ic])
phase_space function evaluator
Definition: function_evaluation.py:42

◆ mass

int 1d1v_double_rarefaction.mass = 1

◆ mesh

warpy 1d1v_double_rarefaction.mesh
Initial value:
1= warpy.mesh.block(Bounds=[-0.5, 0.5],
2 NumCells=[num_physical_elements],
3 NodeSets=['Left', 'Right'],
4 PeriodicBoundaries = ['Left','Right'] if periodic_boundary_conditions else None,
5 NumLayers=1,
6 basis_array_set=sorder)
block mesh generator
Definition: mesh.py:87

◆ min_v

list 1d1v_double_rarefaction.min_v = [-10]

◆ nout

int 1d1v_double_rarefaction.nout = 100

◆ now

datetime 1d1v_double_rarefaction.now = datetime.datetime.now()

◆ nu

int 1d1v_double_rarefaction.nu = 1

◆ nu_p_tau

int 1d1v_double_rarefaction.nu_p_tau = 1E-6

◆ num_physical_elements

int 1d1v_double_rarefaction.num_physical_elements = 128

◆ omega_p_norm

float 1d1v_double_rarefaction.omega_p_norm = 1.0

◆ periodic_boundary_conditions

bool 1d1v_double_rarefaction.periodic_boundary_conditions = False

◆ sim

warpy 1d1v_double_rarefaction.sim
Initial value:
1= warpy.dg_sim(name='test',
2 meshes=[mesh],
3 initial_conditions=[ic_ha],
4 temporal_solvers=[time_integrator],
5 writers=[writer],
6 time=[0,0.15],
7 # time=[0,dt*nout],
8 dt_controller = dt_controller,
9 flexible_writeout=True,
10 write_steps=nout,
11 verbosity='info')
Discontinuous finite element RK simulation.
Definition: dg_sim.py:11

◆ skin_depth_norm

float 1d1v_double_rarefaction.skin_depth_norm = 1.0

◆ sorder

str 1d1v_double_rarefaction.sorder = 'secondOrder'

◆ spatial_solver_kinetic

warpy 1d1v_double_rarefaction.spatial_solver_kinetic
Initial value:
1= warpy.spatial_solvers.dg_kinetic(name="dg_kinetic",
2 spatial_order = sorder,
3 phase_space_spatial_order = sorder,
4 v_space_num_elements = v_space_num_elements,
5 min_v = min_v,
6 dv = dv,
7 applications = apps_kinetic,
8 on_subdomains = ['all'],
9 cfl = cfl)

◆ spatial_solver_physical

warpy 1d1v_double_rarefaction.spatial_solver_physical
Initial value:
1= warpy.spatial_solvers.dg(name="dg_physical",
2 spatial_order=sorder,
3 applications=apps_physical,
4 cfl = cfl)

◆ thermal_velocity

float 1d1v_double_rarefaction.thermal_velocity = 1.0

◆ time_integrator

warpy 1d1v_double_rarefaction.time_integrator
Initial value:
1= warpy.host_actions.erk(name="ti",
2 scheme=torder,
3 spatial_solvers=[spatial_solver_physical, spatial_solver_kinetic],
4 variable_adjusters=variable_adjusters)
Explicit Runge-Kutta temporal solver Note: Dormand45 currently will not work correctly with limiters ...
Definition: erk.py:5

Variable adjusters variable_adjusters = [].

◆ torder

str 1d1v_double_rarefaction.torder = 'TVDRK2'

◆ True

1d1v_double_rarefaction.True

◆ v_space_num_elements

list 1d1v_double_rarefaction.v_space_num_elements = [40]

◆ variable_adjusters

list 1d1v_double_rarefaction.variable_adjusters = []

◆ writer

warpy 1d1v_double_rarefaction.writer = warpy.host_actions.writer(name='writer', ReadVars=[distribution, fluid, field])