48 void assignSysBoundary(dccrg::Dccrg<SpatialCell, dccrg::Cartesian_Geometry>& mpiGrid,
50 void applyInitialState(dccrg::Dccrg<SpatialCell, dccrg::Cartesian_Geometry>& mpiGrid,
54 void updateState(dccrg::Dccrg<SpatialCell, dccrg::Cartesian_Geometry>& mpiGrid,
59 std::string
getName()
const override;
66 const std::array<fsgrid::FsSize_t, 3>&,
const fsgrid::FsStencil&,
68 std::cerr <<
"ERROR: DoNotCompute::fieldSolverBoundaryCondMagneticField called!" << std::endl;
72 const fsgrid::FsStencil&,
cuint)
override {
73 std::cerr <<
"ERROR: DoNotCompute::fieldSolverBoundaryCondElectricField called!" << std::endl;
76 const fsgrid::FsStencil&,
cuint)
override {
77 std::cerr <<
"ERROR: DoNotCompute::fieldSolverBoundaryCondHallElectricField called!" << std::endl;
80 const fsgrid::FsStencil&,
cuint)
override {
81 std::cerr <<
"ERROR: DoNotCompute::fieldSolverBoundaryCondGradPeElectricField called!" << std::endl;
85 const fsgrid::FsStencil&,
cuint,
cuint)
override {
86 std::cerr <<
"ERROR: DoNotCompute::fieldSolverBoundaryCondDerivatives called!" << std::endl;
89 const fsgrid::FsStencil&,
cuint)
override {
90 std::cerr <<
"ERROR: DoNotCompute::fieldSolverBoundaryCondBVOLDerivatives called!" << std::endl;
93 const bool)
override {
94 std::cerr <<
"ERROR: DoNotCompute::vlasovBoundaryCondition called!" << std::endl;
void initSysBoundary(creal &t, Project &project) override
Real fieldSolverBoundaryCondMagneticField(fsgrids::perbspan, fsgrids::constbgbspan, fsgrids::consttechnicalspan, const std::array< Real, 3 > &, const std::array< fsgrid::FsSize_t, 3 > &, const fsgrid::FsStencil &, cuint) override
void updateState(dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > &mpiGrid, fsgrids::technicalspan technical, FieldSolverGrid &fsgrid, fsgrids::perbspan perb, fsgrids::bgbspan bgb, creal t) override
void getFaces(bool *faces) override
void fieldSolverBoundaryCondHallElectricField(fsgrids::ehallspan, const fsgrid::FsStencil &, cuint) override
uint getIndex() const override
virtual void getParameters() override
void fieldSolverBoundaryCondElectricField(fsgrids::efieldspan, const fsgrid::FsStencil &, cuint) override
void applyInitialState(dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > &mpiGrid, fsgrids::technicalspan technical, FieldSolverGrid &fsgrid, fsgrids::perbspan perb, fsgrids::bgbspan bgb, Project &project) override
void fieldSolverBoundaryCondBVOLDerivatives(fsgrids::volspan, const fsgrid::FsStencil &, cuint) override
void fieldSolverBoundaryCondGradPeElectricField(fsgrids::egradpespan, const fsgrid::FsStencil &, cuint) override
static void addParameters()
void assignSysBoundary(dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > &mpiGrid, fsgrids::technicalspan technical, FieldSolverGrid &fsgrid) override
std::string getName() const override
void vlasovBoundaryCondition(dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > &, const CellID &, const uint, const bool) override
void fieldSolverBoundaryCondDerivatives(fsgrids::dperbspan, fsgrids::dmomentsspan, const fsgrid::FsStencil &, cuint, cuint) override
fsgrid::FsGrid< FS_STENCIL_WIDTH > FieldSolverGrid
std::span< std::array< Real, fsgrids::bfield::N_BFIELD > > perbspan
std::span< const std::array< Real, bgbfield::N_BGB > > constbgbspan
std::span< std::array< Real, fsgrids::egradpe::N_EGRADPE > > egradpespan
std::span< std::array< Real, fsgrids::dmoments::N_DMOMENTS > > dmomentsspan
std::span< technical > technicalspan
std::span< std::array< Real, bgbfield::N_BGB > > bgbspan
std::span< std::array< Real, fsgrids::dperb::N_DPERB > > dperbspan
std::span< const technical > consttechnicalspan
std::span< std::array< Real, fsgrids::efield::N_EFIELD > > efieldspan
std::span< std::array< Real, fsgrids::volfields::N_VOL > > volspan
std::span< std::array< Real, fsgrids::ehall::N_EHALL > > ehallspan