WARPXM v1.10.0
Loading...
Searching...
No Matches
examples.dg.open_bc.lobc_maxwell_2D Namespace Reference

Variables

str torder = 'RK2'
 
str sorder = 'thirdOrder'
 
int dt = 1e-3
 
int dt_final = 8
 
warpy dt_controller = warpy.dt_calc.fixed_dt(dt)
 
int write_steps = 100
 
str mesh_file = "meshes/mesh_2D_3subdomain_i2t1e4_n140x10"
 
list interior_subdomains = ['interior']
 
list tran_subdomains = ['transition']
 
list exterior_subdomains = ['exterior']
 
list interior_to_transition_boundary = ['leftWallTran']
 
list open_boundary = ['rightWallTran']
 
list exterior_boundary = ['rightWall']
 
list physical_tran_boundaries = ['lowerWallTran','upperWallTran']
 
list physical_ext_boundaries = ['lowerWallExt','upperWallExt','rightWall']
 
list transition_center = [-1.,0.,0.]
 
int transition_width = 1.
 
float skin_depth_norm = 1.0
 
float omega_p_norm = 1.0
 
bool use_limiters = False
 
str variable_name = 'field'
 
list fluid_components = ['Ex','Ey','Ez','Bx','By','Bz']
 
float lacuna_time = 1.0,
 
float reintegration_time = 3.0,
 
bool cond_wall = True
 
None periodic_boundaries = None
 
 else :
 
warpy mesh
 
warpy q
 
warpy null_function
 
list ic_applicators = []
 
warpy app_flux_q
 
list interior_bc_apps = []
 
list spatial_solvers = []
 
list variable_adjusters = []
 
warpy temporal_solver
 
warpy q_lobc_right
 
warpy ic_applicators_lobc
 
warpy host_action_lobc_mu = q_lobc_right.calc_dmu()
 
 app_flux_w
 
 app_flux_wlacuna
 
list apps_bc_physics = []
 
warpy temporal_solver_lobc
 
warpy host_actions_lobc_pre_ti = q_lobc_right.create_pre_ti_hostactions()
 
warpy writer
 
warpy sim
 
 gen_xdmf
 
 True
 
 detect_nonscalar
 

Variable Documentation

◆ app_flux_q

warpy examples.dg.open_bc.lobc_maxwell_2D.app_flux_q
Initial value:
2 name = 'app_flux_q',
3 field = q,
4 skin_depth_norm = skin_depth_norm,
5 omega_p_norm = omega_p_norm
6)
Maxwell flux.
Definition: maxwell.py:4

◆ app_flux_w

examples.dg.open_bc.lobc_maxwell_2D.app_flux_w

◆ app_flux_wlacuna

examples.dg.open_bc.lobc_maxwell_2D.app_flux_wlacuna

◆ apps_bc_physics

list examples.dg.open_bc.lobc_maxwell_2D.apps_bc_physics = []

◆ cond_wall

bool examples.dg.open_bc.lobc_maxwell_2D.cond_wall = True

◆ detect_nonscalar

examples.dg.open_bc.lobc_maxwell_2D.detect_nonscalar

◆ dt

int examples.dg.open_bc.lobc_maxwell_2D.dt = 1e-3

◆ dt_controller

warpy examples.dg.open_bc.lobc_maxwell_2D.dt_controller = warpy.dt_calc.fixed_dt(dt)

◆ dt_final

int examples.dg.open_bc.lobc_maxwell_2D.dt_final = 8

◆ else

examples.dg.open_bc.lobc_maxwell_2D.else :

◆ exterior_boundary

list examples.dg.open_bc.lobc_maxwell_2D.exterior_boundary = ['rightWall']

◆ exterior_subdomains

list examples.dg.open_bc.lobc_maxwell_2D.exterior_subdomains = ['exterior']

◆ fluid_components

list examples.dg.open_bc.lobc_maxwell_2D.fluid_components = ['Ex','Ey','Ez','Bx','By','Bz']

◆ gen_xdmf

examples.dg.open_bc.lobc_maxwell_2D.gen_xdmf

◆ host_action_lobc_mu

warpy examples.dg.open_bc.lobc_maxwell_2D.host_action_lobc_mu = q_lobc_right.calc_dmu()

◆ host_actions_lobc_pre_ti

warpy examples.dg.open_bc.lobc_maxwell_2D.host_actions_lobc_pre_ti = q_lobc_right.create_pre_ti_hostactions()

◆ ic_applicators

list examples.dg.open_bc.lobc_maxwell_2D.ic_applicators = []

◆ ic_applicators_lobc

warpy examples.dg.open_bc.lobc_maxwell_2D.ic_applicators_lobc
Initial value:
1= q_lobc_right.vars_setup(
2 direction = [1, 0, 0],
3 center = transition_center,
4 transitionwidth = transition_width
5)

◆ interior_bc_apps

list examples.dg.open_bc.lobc_maxwell_2D.interior_bc_apps = []

◆ interior_subdomains

list examples.dg.open_bc.lobc_maxwell_2D.interior_subdomains = ['interior']

◆ interior_to_transition_boundary

list examples.dg.open_bc.lobc_maxwell_2D.interior_to_transition_boundary = ['leftWallTran']

◆ lacuna_time

float examples.dg.open_bc.lobc_maxwell_2D.lacuna_time = 1.0,

◆ mesh

warpy examples.dg.open_bc.lobc_maxwell_2D.mesh
Initial value:
2 MeshFile = str(mesh_file + '.inp'),
3 NumLayers = 1,
4 PeriodicBoundaries = periodic_boundaries,
5 basis_array_set = sorder
6 )
general unstructured mesh
Definition: mesh.py:56

◆ mesh_file

str examples.dg.open_bc.lobc_maxwell_2D.mesh_file = "meshes/mesh_2D_3subdomain_i2t1e4_n140x10"

◆ null_function

warpy examples.dg.open_bc.lobc_maxwell_2D.null_function
Initial value:
2 name = 'null_func',
3 value = 0.
4)
Function which sets field to a given uniform value.
Definition: set_to.py:4

◆ omega_p_norm

examples.dg.open_bc.lobc_maxwell_2D.omega_p_norm = 1.0

◆ open_boundary

list examples.dg.open_bc.lobc_maxwell_2D.open_boundary = ['rightWallTran']

◆ periodic_boundaries

list examples.dg.open_bc.lobc_maxwell_2D.periodic_boundaries = None

◆ physical_ext_boundaries

list examples.dg.open_bc.lobc_maxwell_2D.physical_ext_boundaries = ['lowerWallExt','upperWallExt','rightWall']

◆ physical_tran_boundaries

list examples.dg.open_bc.lobc_maxwell_2D.physical_tran_boundaries = ['lowerWallTran','upperWallTran']

◆ q

warpy examples.dg.open_bc.lobc_maxwell_2D.q
Initial value:
2 name = variable_name,
3 components = fluid_components,
4 subdomains = interior_subdomains + tran_subdomains,
5 virtual_subdomains = exterior_subdomains,
6 basis_array_set = sorder
7)
Definition: variable.py:4

◆ q_lobc_right

warpy examples.dg.open_bc.lobc_maxwell_2D.q_lobc_right
Initial value:
2 interior_variable = q,
3 sorder = sorder,
4 lacuna_time = lacuna_time,
5 reintegration_time = reintegration_time,
6 interior_subdomains = interior_subdomains,
7 tran_subdomains = tran_subdomains,
8 exterior_subdomains = exterior_subdomains,
9 interior_to_transition_boundary = interior_to_transition_boundary,
10 open_boundary = open_boundary,
11 exterior_boundary = exterior_boundary,
12 other_tran_subdomain_boundaries = physical_tran_boundaries# + physical_ext_boundaries
13)
A class that automates Lacuna based open boundary (LOBC) setup.
Definition: lobc.py:5

Lacuna-based open boundary condition (LOBC) setup

◆ reintegration_time

float examples.dg.open_bc.lobc_maxwell_2D.reintegration_time = 3.0,

◆ sim

warpy examples.dg.open_bc.lobc_maxwell_2D.sim
Initial value:
2 name = 'lobc_maxwell_2D',
3 meshes = [mesh],
4 initial_conditions = ic_applicators + ic_applicators_lobc,
5 extra_start_host_actions = [host_action_lobc_mu],
6 temporal_solvers = [temporal_solver, temporal_solver_lobc],
7 pre_ti_host_actions = host_actions_lobc_pre_ti,
8 writers = [writer],
9 time = [0, dt_final],
10 dt_controller = dt_controller,
11 flexible_writeout = False,
12 write_steps = write_steps,
13 verbosity = 'info'
14)
Discontinuous finite element RK simulation.
Definition: dg_sim.py:11

◆ skin_depth_norm

examples.dg.open_bc.lobc_maxwell_2D.skin_depth_norm = 1.0

◆ sorder

str examples.dg.open_bc.lobc_maxwell_2D.sorder = 'thirdOrder'

◆ spatial_solvers

list examples.dg.open_bc.lobc_maxwell_2D.spatial_solvers = []

◆ temporal_solver

warpy examples.dg.open_bc.lobc_maxwell_2D.temporal_solver
Initial value:
2 name = 'rk',
3 scheme = torder,
4 spatial_solvers = spatial_solvers,
5 variable_adjusters = variable_adjusters
6)
Explicit Runge-Kutta temporal solver Note: Dormand45 currently will not work correctly with limiters ...
Definition: erk.py:5

◆ temporal_solver_lobc

warpy examples.dg.open_bc.lobc_maxwell_2D.temporal_solver_lobc
Initial value:
1= q_lobc_right.create_temporal_solver(
2 torder = torder,
3 apps_flux_interior_var = [app_flux_q],
4 apps_source_interior_var = None,
5 apps_flux_aux_vars = [app_flux_w, app_flux_wlacuna],
6 apps_source_aux_vars = None,
7 apps_bc_physics = apps_bc_physics if cond_wall else None
8)

◆ torder

str examples.dg.open_bc.lobc_maxwell_2D.torder = 'RK2'

◆ tran_subdomains

list examples.dg.open_bc.lobc_maxwell_2D.tran_subdomains = ['transition']

◆ transition_center

list examples.dg.open_bc.lobc_maxwell_2D.transition_center = [-1.,0.,0.]

◆ transition_width

int examples.dg.open_bc.lobc_maxwell_2D.transition_width = 1.

◆ True

examples.dg.open_bc.lobc_maxwell_2D.True

◆ use_limiters

bool examples.dg.open_bc.lobc_maxwell_2D.use_limiters = False

◆ variable_adjusters

list examples.dg.open_bc.lobc_maxwell_2D.variable_adjusters = []

◆ variable_name

str examples.dg.open_bc.lobc_maxwell_2D.variable_name = 'field'

◆ write_steps

int examples.dg.open_bc.lobc_maxwell_2D.write_steps = 100

◆ writer

warpy examples.dg.open_bc.lobc_maxwell_2D.writer
Initial value:
2 name = 'writer',
3 ReadVars = [q, q_lobc_right.w, q_lobc_right.wlacuna, q_lobc_right.mu, q_lobc_right.dmu]
4)
Writes out a list of variables.
Definition: writer.py:4