afivo-streamer 1.1
1D/2D/3D streamer simulations with AMR
Loading...
Searching...
No Matches
Functions/Subroutines | Variables
m_dielectric Module Reference

Module with settings and routines to handle dielectrics. More...

Functions/Subroutines

subroutine, public dielectric_initialize (tree, cfg)
 
subroutine, public dielectric_update_surface_charge (box, surface, dt, n_prev, s_prev, w_prev, s_out)
 Update charge on dielectric surface based on particle fluxes. In case of secondary emission, also update the electron density next to the surface.
 
subroutine, public dielectric_photon_emission (box, surface, dt, s_out)
 
subroutine, public dielectric_photon_absorption (tree, xyz_start, xyz_end, n_dim, n_photons, photon_weight)
 Determine whether and where photons hit a dielectric, and change their absorption location to the first cell inside the surface. If photons_no_absorption is true, assume that photons are not absorbed by the gas (so extrapolate their path).
 
subroutine, public dielectric_reset_photons ()
 

Variables

integer, parameter, public i_photon_flux = 1
 
integer, parameter, public i_surf_dens = 2
 
type(surfaces_t), public diel
 To store dielectric surface.
 
logical, public, protected surface_output = .false.
 

Detailed Description

Module with settings and routines to handle dielectrics.

Todo:

Make sure species densities are initially zero inside the dielectric

Use special prolongation for multigrid when there are surface charges

Function/Subroutine Documentation

◆ dielectric_initialize()

subroutine, public m_dielectric::dielectric_initialize ( type(af_t), intent(in)  tree,
type(cfg_t), intent(inout)  cfg 
)

Definition at line 56 of file m_dielectric.f90.

◆ dielectric_photon_absorption()

subroutine, public m_dielectric::dielectric_photon_absorption ( type(af_t), intent(in)  tree,
real(dp), dimension(3, n_photons), intent(in)  xyz_start,
real(dp), dimension(3, n_photons), intent(inout)  xyz_end,
integer, intent(in)  n_dim,
integer, intent(in)  n_photons,
real(dp), intent(in)  photon_weight 
)

Determine whether and where photons hit a dielectric, and change their absorption location to the first cell inside the surface. If photons_no_absorption is true, assume that photons are not absorbed by the gas (so extrapolate their path).

Definition at line 243 of file m_dielectric.f90.

◆ dielectric_photon_emission()

subroutine, public m_dielectric::dielectric_photon_emission ( type(box_t), intent(inout)  box,
type(surface_t), intent(inout)  surface,
real(dp), intent(in)  dt,
integer, intent(in)  s_out 
)
Parameters
[in]dtTime step
[in]s_outOutput state

Definition at line 184 of file m_dielectric.f90.

◆ dielectric_reset_photons()

subroutine, public m_dielectric::dielectric_reset_photons

Definition at line 358 of file m_dielectric.f90.

◆ dielectric_update_surface_charge()

subroutine, public m_dielectric::dielectric_update_surface_charge ( type(box_t), intent(inout)  box,
type(surface_t), intent(inout)  surface,
real(dp), intent(in)  dt,
integer, intent(in)  n_prev,
integer, dimension(n_prev), intent(in)  s_prev,
real(dp), dimension(n_prev), intent(in)  w_prev,
integer, intent(in)  s_out 
)

Update charge on dielectric surface based on particle fluxes. In case of secondary emission, also update the electron density next to the surface.

Parameters
[in]dtTime step
[in]n_prevNumber of previous states
[in]s_prevPrevious states
[in]w_prevWeights of previous states
[in]s_outOutput state

Definition at line 94 of file m_dielectric.f90.

Variable Documentation

◆ diel

type(surfaces_t), public m_dielectric::diel

To store dielectric surface.

Definition at line 19 of file m_dielectric.f90.

◆ i_photon_flux

integer, parameter, public m_dielectric::i_photon_flux = 1

Definition at line 15 of file m_dielectric.f90.

◆ i_surf_dens

integer, parameter, public m_dielectric::i_surf_dens = 2

Definition at line 16 of file m_dielectric.f90.

◆ surface_output

logical, public, protected m_dielectric::surface_output = .false.

Definition at line 22 of file m_dielectric.f90.