8 #ifndef WARPX_MACROSCOPICPROPERTIES_H_
9 #define WARPX_MACROSCOPICPROPERTIES_H_
113 static amrex::Real
alpha (amrex::Real
const sigma,
114 amrex::Real
const epsilon,
116 using namespace amrex;
117 const amrex::Real fac1 = 0.5_rt * sigma *
dt / epsilon;
118 const amrex::Real
alpha = (1._rt - fac1)/(1._rt + fac1);
123 static amrex::Real
beta (amrex::Real
const sigma,
124 amrex::Real
const epsilon,
126 using namespace amrex;
127 const amrex::Real fac1 = 0.5_rt * sigma *
dt / epsilon;
128 const amrex::Real
beta =
dt / ( epsilon * (1._rt + fac1) );
145 static amrex::Real
alpha (amrex::Real
const sigma,
146 amrex::Real
const epsilon,
148 using namespace amrex;
149 const amrex::Real fac1 = sigma *
dt / epsilon;
150 const amrex::Real
alpha = (1._rt)/(1._rt + fac1);
155 static amrex::Real
beta (amrex::Real
const sigma,
156 amrex::Real
const epsilon,
158 using namespace amrex;
159 const amrex::Real fac1 = sigma *
dt / epsilon;
160 const amrex::Real
beta =
dt / ( epsilon * (1._rt + fac1) );
#define AMREX_FORCE_INLINE
#define AMREX_GPU_HOST_DEVICE
This class contains the macroscopic properties of the medium needed to evaluate macroscopic Maxwell e...
Definition: MacroscopicProperties.H:31
amrex::Real m_epsilon
Definition: MacroscopicProperties.H:74
amrex::GpuArray< int, 3 > epsilon_IndexType
Definition: MacroscopicProperties.H:57
amrex::GpuArray< int, 3 > mu_IndexType
Definition: MacroscopicProperties.H:59
std::string m_sigma_s
Definition: MacroscopicProperties.H:85
amrex::Real m_mu
Definition: MacroscopicProperties.H:76
amrex::GpuArray< int, 3 > sigma_IndexType
Definition: MacroscopicProperties.H:55
std::string m_str_epsilon_function
Definition: MacroscopicProperties.H:93
std::string m_str_mu_function
Definition: MacroscopicProperties.H:94
amrex::Real m_sigma
Definition: MacroscopicProperties.H:72
amrex::MultiFab & getepsilon_mf()
Definition: MacroscopicProperties.H:42
std::unique_ptr< amrex::Parser > m_mu_parser
Definition: MacroscopicProperties.H:98
amrex::MultiFab & getsigma_mf()
Definition: MacroscopicProperties.H:40
MacroscopicProperties()
Definition: MacroscopicProperties.cpp:30
void InitializeMacroMultiFabUsingParser(amrex::MultiFab *macro_mf, amrex::ParserExecutor< 3 > const ¯o_parser, const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > &dx_lev, const amrex::RealBox &prob_domain_lev)
Definition: MacroscopicProperties.cpp:208
std::unique_ptr< amrex::MultiFab > m_mu_mf
Definition: MacroscopicProperties.H:82
std::string m_str_sigma_function
Definition: MacroscopicProperties.H:92
void ReadParameters()
Definition: MacroscopicProperties.cpp:36
std::unique_ptr< amrex::Parser > m_epsilon_parser
Definition: MacroscopicProperties.H:97
amrex::GpuArray< int, 3 > Ex_IndexType
Definition: MacroscopicProperties.H:61
amrex::GpuArray< int, 3 > Ey_IndexType
Definition: MacroscopicProperties.H:63
std::string m_mu_s
Definition: MacroscopicProperties.H:89
amrex::MultiFab & getmu_mf()
Definition: MacroscopicProperties.H:44
std::string m_epsilon_s
Definition: MacroscopicProperties.H:87
amrex::GpuArray< int, 3 > Ez_IndexType
Definition: MacroscopicProperties.H:65
amrex::GpuArray< int, 3 > macro_cr_ratio
Definition: MacroscopicProperties.H:67
std::unique_ptr< amrex::Parser > m_sigma_parser
Definition: MacroscopicProperties.H:96
std::unique_ptr< amrex::MultiFab > m_sigma_mf
Definition: MacroscopicProperties.H:78
std::unique_ptr< amrex::MultiFab > m_eps_mf
Definition: MacroscopicProperties.H:80
void InitData()
Definition: MacroscopicProperties.cpp:124
static constexpr auto ep0
vacuum permittivity: dielectric permittivity of vacuum [F/m]
Definition: constant.H:46
static constexpr auto mu0
vacuum permeability: magnetic permeability of vacuum = 4.0e-7 * pi [H/m]
Definition: constant.H:48
float dt
Definition: stencil.py:442
This struct contains only static functions to compute the coefficients for the BackwardEuler scheme o...
Definition: MacroscopicProperties.H:142
AMREX_GPU_HOST_DEVICE static AMREX_FORCE_INLINE amrex::Real beta(amrex::Real const sigma, amrex::Real const epsilon, amrex::Real dt)
Definition: MacroscopicProperties.H:155
AMREX_GPU_HOST_DEVICE static AMREX_FORCE_INLINE amrex::Real alpha(amrex::Real const sigma, amrex::Real const epsilon, amrex::Real dt)
Definition: MacroscopicProperties.H:145
This struct contains only static functions to compute the coefficients for the Lax-Wendroff scheme of...
Definition: MacroscopicProperties.H:110
AMREX_GPU_HOST_DEVICE static AMREX_FORCE_INLINE amrex::Real beta(amrex::Real const sigma, amrex::Real const epsilon, amrex::Real dt)
Definition: MacroscopicProperties.H:123
AMREX_GPU_HOST_DEVICE static AMREX_FORCE_INLINE amrex::Real alpha(amrex::Real const sigma, amrex::Real const epsilon, amrex::Real dt)
Definition: MacroscopicProperties.H:113