|
Vlasiator ebf0dd394 on dev (v5.4.0 + 1054 commits)
|
DoNotCompute is a class handling cells not to be computed. More...
#include <donotcompute.h>


Public Member Functions | |
| DoNotCompute () | |
| virtual | ~DoNotCompute () |
| virtual void | getParameters () override |
| void | initSysBoundary (creal &t, Project &project) override |
| void | assignSysBoundary (dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > &mpiGrid, fsgrids::technicalspan technical, FieldSolverGrid &fsgrid) 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 | 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 |
| std::string | getName () const override |
| uint | getIndex () const 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 | fieldSolverBoundaryCondElectricField (fsgrids::efieldspan, const fsgrid::FsStencil &, cuint) override |
| void | fieldSolverBoundaryCondHallElectricField (fsgrids::ehallspan, const fsgrid::FsStencil &, cuint) override |
| void | fieldSolverBoundaryCondGradPeElectricField (fsgrids::egradpespan, const fsgrid::FsStencil &, cuint) override |
| void | fieldSolverBoundaryCondDerivatives (fsgrids::dperbspan, fsgrids::dmomentsspan, const fsgrid::FsStencil &, cuint, cuint) override |
| void | fieldSolverBoundaryCondBVOLDerivatives (fsgrids::volspan, const fsgrid::FsStencil &, cuint) override |
| void | vlasovBoundaryCondition (dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > &, const CellID &, const uint, const bool) override |
| Public Member Functions inherited from SBC::SysBoundaryCondition | |
| SysBoundaryCondition () | |
| virtual | ~SysBoundaryCondition () |
| virtual void | generateTemplateCell () |
| virtual void | mapCellPotentialAndGetEXBDrift (std::array< Real, CellParams::N_SPATIAL_CELL_PARAMS > &cellParams) |
| virtual void | setupL2OutflowAtRestart (dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > &mpiGrid) |
| uint | getPrecedence () const |
| bool | isDynamic () const |
| bool | updateSysBoundaryConditionsAfterLoadBalance (const dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > &mpiGrid, const std::vector< CellID > &local_cells_on_boundary) |
| bool | doApplyUponRestart () const |
| void | setPeriodicity (std::array< bool, 3 > isFacePeriodic) |
Static Public Member Functions | |
| static void | addParameters () |
| Static Public Member Functions inherited from SBC::SysBoundaryCondition | |
| static void | addParameters () |
| static void | setCellDerivativesToZero (fsgrids::dperbspan dperb, fsgrids::dmomentsspan dmoments, const fsgrid::FsStencil &stencil, cuint component) |
| static void | setCellBVOLDerivativesToZero (fsgrids::volspan vols, const fsgrid::FsStencil &stencil, cuint component) |
Additional Inherited Members | |
| Protected Member Functions inherited from SBC::SysBoundaryCondition | |
| void | determineFace (bool *isThisCellOnAFace, const creal x, const creal y, const creal z, const creal dx, const creal dy, const creal dz, const bool excludeSlicesAndPeriodicDimensions=false) const |
| Function used to determine on which face(s) if any the cell at given coordinates is. | |
| void | determineFace (std::array< bool, 6 > &isThisCellOnAFace, const dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > &mpiGrid, CellID id, const bool excludeSlicesAndPeriodicDimensions=false) |
| Function used to determine on which face(s) if any the cell with the given MPI id is on. | |
| void | copyCellData (const SpatialCell *from, SpatialCell *to, const bool copyMomentsOnly, const uint popID, const bool copy_V_moments) |
| std::array< SpatialCell *, 27 > & | getFlowtoCells (const CellID &cellID) |
| std::array< Realf *, 27 > | getFlowtoCellsBlock (const std::array< SpatialCell *, 27 > flowtoCells, const vmesh::GlobalID blockGID, const uint popID) |
| int | nbrID (const int i, const int j, const int k) |
| void | vlasovBoundaryCopyFromTheClosestNbr (dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > &mpiGrid, const CellID &cellID, const bool ©MomentsOnly, const uint popID, const bool calculate_V_moments) |
| void | vlasovBoundaryCopyFromTheClosestL1OutflowNbr (dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > &mpiGrid, const CellID &cellID, const bool ©MomentsOnly, const uint popID, const bool calculate_V_moments) |
| void | vlasovBoundaryCopyFromAllClosestNbrs (dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > &mpiGrid, const CellID &cellID, const uint popID, const bool calculate_V_moments) |
| void | vlasovBoundaryFluffyCopyFromAllCloseNbrs (dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > &mpiGrid, const CellID &cellID, const uint popID, const bool calculate_V_moments, creal fluffiness) |
| std::array< int, 3 > | getTheClosestNonsysboundaryCell (fsgrids::technicalspan technical, FieldSolverGrid &fsgrid, cint i, cint j, cint k) |
| std::vector< std::array< int, 3 > > | getAllClosestNonsysboundaryCells (fsgrids::technicalspan technical, FieldSolverGrid &fsgrid, cint i, cint j, cint k) |
| CellID & | getTheClosestNonsysboundaryCell (const CellID &cellID) |
| std::vector< CellID > & | getAllClosestNonsysboundaryCells (const CellID &cellID) |
| std::vector< CellID > & | getAllCloseNonsysboundaryCells (const CellID &cellID) |
| Real | fieldBoundaryCopyFromSolvingNbrMagneticField (fsgrids::perbspan b, fsgrids::consttechnicalspan technical, const fsgrid::FsStencil &stencil, cuint component, cuint mask) |
| CellID & | getTheClosestL1OutflowCell (const CellID &cellID) |
| std::vector< CellID > & | getAllClosestL1OutflowCells (const CellID &cellID) |
| Protected Attributes inherited from SBC::SysBoundaryCondition | |
| uint | precedence |
| bool | dynamic |
| std::array< bool, 3 > | periodic |
| std::unordered_map< CellID, std::vector< CellID > > | allClosestNonsysboundaryCells |
| std::unordered_map< CellID, std::vector< CellID > > | allCloseNonsysboundaryCells |
| std::unordered_map< CellID, std::vector< CellID > > | allClosestL1OutflowCells |
| std::unordered_map< CellID, std::vector< CellID > > | allCloseL1OutflowCells |
| bool | applyUponRestart |
DoNotCompute is a class handling cells not to be computed.
DoNotCompute is a class handling cells tagged as sysboundarytype::DO_NOT_COMPUTE by a system boundary condition (e.g. SysBoundaryCondition::Ionosphere).
Definition at line 39 of file donotcompute.h.
| SBC::DoNotCompute::DoNotCompute | ( | ) |
|
virtual |
Definition at line 37 of file donotcompute.cpp.
|
static |
|
overridevirtual |
Implements SBC::SysBoundaryCondition.
Definition at line 55 of file donotcompute.cpp.

|
overridevirtual |
Implements SBC::SysBoundaryCondition.
Definition at line 50 of file donotcompute.cpp.
|
inlineoverridevirtual |
Implements SBC::SysBoundaryCondition.
Definition at line 88 of file donotcompute.h.
|
inlineoverridevirtual |
Implements SBC::SysBoundaryCondition.
Definition at line 83 of file donotcompute.h.
|
inlineoverridevirtual |
Implements SBC::SysBoundaryCondition.
Definition at line 71 of file donotcompute.h.
|
inlineoverridevirtual |
Implements SBC::SysBoundaryCondition.
Definition at line 79 of file donotcompute.h.
|
inlineoverridevirtual |
Implements SBC::SysBoundaryCondition.
Definition at line 75 of file donotcompute.h.
|
inlineoverridevirtual |
Implements SBC::SysBoundaryCondition.
Definition at line 63 of file donotcompute.h.
|
overridevirtual |
Function used to know which faces the boundary condition is applied to.
| faces | Pointer to array of 6 bool in which the values are returned whether the corresponding face is of that type. Order: 0 x+; 1 x-; 2 y+; 3 y-; 4 z+; 5 z- |
Function used in some cases to know which faces the system boundary condition is being applied to.
| faces | Pointer to array of 6 bool in which the values are returned whether the corresponding face is of that type. Order: 0 x+; 1 x-; 2 y+; 3 y-; 4 z+; 5 z- |
Implements SBC::SysBoundaryCondition.
Definition at line 84 of file donotcompute.cpp.
|
overridevirtual |
Implements SBC::SysBoundaryCondition.
Definition at line 88 of file donotcompute.cpp.
|
overridevirtual |
Reimplemented from SBC::SysBoundaryCondition.
Definition at line 86 of file donotcompute.cpp.
|
overridevirtual |
Reimplemented from SBC::SysBoundaryCondition.
Definition at line 40 of file donotcompute.cpp.
Implements SBC::SysBoundaryCondition.
Definition at line 42 of file donotcompute.cpp.
|
overridevirtual |
Implements SBC::SysBoundaryCondition.
Definition at line 79 of file donotcompute.cpp.
|
inlineoverridevirtual |
This function computes the Vlasov (distribution function) boundary condition for the given particle species only. It is not! allowed to change block structure in cell.
| mpiGrid | Parallel grid. |
| cellID | Spatial cell ID. |
| popID | Particle species ID. |
Implements SBC::SysBoundaryCondition.
Definition at line 92 of file donotcompute.h.