8 #ifndef WARPX_MACROSCOPICPROPERTIES_H_
9 #define WARPX_MACROSCOPICPROPERTIES_H_
134 static amrex::Real
alpha (amrex::Real
const sigma,
135 amrex::Real
const epsilon,
137 using namespace amrex;
138 const amrex::Real fac1 = 0.5_rt * sigma *
dt / epsilon;
139 const amrex::Real
alpha = (1._rt - fac1)/(1._rt + fac1);
144 static amrex::Real
beta (amrex::Real
const sigma,
145 amrex::Real
const epsilon,
147 using namespace amrex;
148 const amrex::Real fac1 = 0.5_rt * sigma *
dt / epsilon;
149 const amrex::Real
beta =
dt / ( epsilon * (1._rt + fac1) );
166 static amrex::Real
alpha (amrex::Real
const sigma,
167 amrex::Real
const epsilon,
169 using namespace amrex;
170 const amrex::Real fac1 = sigma *
dt / epsilon;
171 const amrex::Real
alpha = (1._rt)/(1._rt + fac1);
176 static amrex::Real
beta (amrex::Real
const sigma,
177 amrex::Real
const epsilon,
179 using namespace amrex;
180 const amrex::Real fac1 = sigma *
dt / epsilon;
181 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:34
amrex::Real m_epsilon
Definition: MacroscopicProperties.H:95
amrex::GpuArray< int, 3 > epsilon_IndexType
Definition: MacroscopicProperties.H:78
amrex::GpuArray< int, 3 > mu_IndexType
Definition: MacroscopicProperties.H:80
std::string m_sigma_s
Definition: MacroscopicProperties.H:106
amrex::Real m_mu
Definition: MacroscopicProperties.H:97
amrex::GpuArray< int, 3 > sigma_IndexType
Definition: MacroscopicProperties.H:76
std::string m_str_epsilon_function
Definition: MacroscopicProperties.H:114
std::string m_str_mu_function
Definition: MacroscopicProperties.H:115
amrex::Real m_sigma
Definition: MacroscopicProperties.H:93
amrex::MultiFab & getepsilon_mf()
Definition: MacroscopicProperties.H:63
std::unique_ptr< amrex::Parser > m_mu_parser
Definition: MacroscopicProperties.H:119
amrex::MultiFab & getsigma_mf()
Definition: MacroscopicProperties.H:61
MacroscopicProperties()
Definition: MacroscopicProperties.cpp:28
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:205
std::unique_ptr< amrex::MultiFab > m_mu_mf
Definition: MacroscopicProperties.H:103
std::string m_str_sigma_function
Definition: MacroscopicProperties.H:113
void ReadParameters()
Definition: MacroscopicProperties.cpp:34
std::unique_ptr< amrex::Parser > m_epsilon_parser
Definition: MacroscopicProperties.H:118
void InitData(const amrex::BoxArray &ba, const amrex::DistributionMapping &dmap, const amrex::IntVect &ng_EB_alloc, const amrex::Geometry &geom, const amrex::IntVect &Ex_stag, const amrex::IntVect &Ey_stag, const amrex::IntVect &Ez_stag)
Initialize multifabs storing macroscopic multifabs.
Definition: MacroscopicProperties.cpp:122
amrex::GpuArray< int, 3 > Ex_IndexType
Definition: MacroscopicProperties.H:82
amrex::GpuArray< int, 3 > Ey_IndexType
Definition: MacroscopicProperties.H:84
std::string m_mu_s
Definition: MacroscopicProperties.H:110
amrex::MultiFab & getmu_mf()
Definition: MacroscopicProperties.H:65
std::string m_epsilon_s
Definition: MacroscopicProperties.H:108
amrex::GpuArray< int, 3 > Ez_IndexType
Definition: MacroscopicProperties.H:86
amrex::GpuArray< int, 3 > macro_cr_ratio
Definition: MacroscopicProperties.H:88
std::unique_ptr< amrex::Parser > m_sigma_parser
Definition: MacroscopicProperties.H:117
std::unique_ptr< amrex::MultiFab > m_sigma_mf
Definition: MacroscopicProperties.H:99
std::unique_ptr< amrex::MultiFab > m_eps_mf
Definition: MacroscopicProperties.H:101
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:163
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:176
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:166
This struct contains only static functions to compute the coefficients for the Lax-Wendroff scheme of...
Definition: MacroscopicProperties.H:131
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:144
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:134