66 virtual void applyInitialState(dccrg::Dccrg<SpatialCell, dccrg::Cartesian_Geometry>& mpiGrid,
70 virtual void updateState(dccrg::Dccrg<SpatialCell, dccrg::Cartesian_Geometry>& mpiGrid,
77 const std::array<Real, 3>& gridSpacing,
78 const std::array<fsgrid::FsSize_t, 3>& globalCoordinates,
79 const fsgrid::FsStencil& stencil,
cuint component)
override;
81 const fsgrid::FsStencil& stencil,
cuint component)
override;
83 const fsgrid::FsStencil& stencil,
cuint component)
override;
86 const fsgrid::FsStencil& stencil,
cuint component)
override;
90 const fsgrid::FsStencil& stencil,
cuint RKCase,
cuint component)
override;
92 const fsgrid::FsStencil& stencil,
cuint component)
override;
94 dccrg::Dccrg<SpatialCell,dccrg::Cartesian_Geometry>& mpiGrid,
97 const bool calculate_V_moments
101 virtual void getFaces(
bool* faces)
override;
102 virtual std::string
getName()
const override;
103 virtual uint
getIndex()
const override;
std::vector< std::string > faceList
virtual void initSysBoundary(creal &t, Project &project) override
virtual void fieldSolverBoundaryCondDerivatives(fsgrids::dperbspan dperb, fsgrids::dmomentsspan dmoments, const fsgrid::FsStencil &stencil, cuint RKCase, cuint component) override
virtual std::string getName() const override
virtual void getParameters() override
virtual void fieldSolverBoundaryCondGradPeElectricField(fsgrids::egradpespan EGradPe, const fsgrid::FsStencil &stencil, cuint component) override
virtual void vlasovBoundaryCondition(dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > &mpiGrid, const CellID &cellID, const uint popID, const bool calculate_V_moments) override
virtual void setupL2OutflowAtRestart(dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > &mpiGrid) override
virtual Real fieldSolverBoundaryCondMagneticField(fsgrids::perbspan b, fsgrids::constbgbspan bgb, fsgrids::consttechnicalspan technical, const std::array< Real, 3 > &gridSpacing, const std::array< fsgrid::FsSize_t, 3 > &globalCoordinates, const fsgrid::FsStencil &stencil, cuint component) override
virtual void fieldSolverBoundaryCondHallElectricField(fsgrids::ehallspan ehall, const fsgrid::FsStencil &stencil, cuint component) override
static void addParameters()
std::vector< OutflowSpeciesParameters > speciesParams
bool facesToSkipFields[6]
virtual void updateState(dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > &mpiGrid, fsgrids::technicalspan technical, FieldSolverGrid &fsgrid, fsgrids::perbspan perb, fsgrids::bgbspan bgb, creal t) override
virtual void fieldSolverBoundaryCondElectricField(fsgrids::efieldspan e, const fsgrid::FsStencil &stencil, cuint component) override
std::vector< std::string > faceNoFieldsList
virtual uint getIndex() const override
virtual void applyInitialState(dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > &mpiGrid, fsgrids::technicalspan technical, FieldSolverGrid &fsgrid, fsgrids::perbspan perb, fsgrids::bgbspan bgb, Project &project) override
virtual void fieldSolverBoundaryCondBVOLDerivatives(fsgrids::volspan vols, const fsgrid::FsStencil &stencil, cuint component) override
virtual void getFaces(bool *faces) 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
std::vector< std::string > faceToReapplyUponRestartList
std::array< uint, 6 > faceVlasovScheme
std::array< bool, 6 > facesToSkipVlasov