|
Vlasiator ebf0dd394 on dev (v5.4.0 + 1054 commits)
|
#include "../definitions.h"#include <fsgrid.hpp>#include <vector>#include <array>#include <map>#include <set>

Go to the source code of this file.
Enumerations | |
| enum | FieldsToCommunicate { PERBXVOL , PERBYVOL , PERBZVOL , dPERBXVOLdx , dPERBXVOLdy , dPERBXVOLdz , dPERBYVOLdx , dPERBYVOLdy , dPERBYVOLdz , dPERBZVOLdx , dPERBZVOLdy , dPERBZVOLdz , BGBXVOL , BGBYVOL , BGBZVOL , EXGRADPE , EYGRADPE , EZGRADPE , EXVOL , EYVOL , EZVOL , CURVATUREX , CURVATUREY , CURVATUREZ , dVxdx , dVxdy , dVxdz , dVydx , dVydy , dVydz , dVzdx , dVzdy , dVzdz , N_FIELDSTOCOMMUNICATE } |
Functions | |
| std::vector< CellID > | mapDccrgIdToFsGridGlobalID (dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > &mpiGrid, CellID dccrgID) |
| void | feedMomentsIntoFsGrid (dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > &mpiGrid, const std::vector< CellID > &cells, fsgrid::FsData< std::array< Real, fsgrids::moments::N_MOMENTS > > &moments, fsgrids::technicalspan technical, FieldSolverGrid &fsgrid, bool dt2=false) |
| void | getFieldsFromFsGrid (fsgrids::constvolspan volumefields, fsgrids::constbgbspan bgb, fsgrids::constegradpespan egradpe, fsgrids::constdmomentsspan dmoments, fsgrids::consttechnicalspan technical, FieldSolverGrid &fsgrid, dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > &mpiGrid, const std::vector< CellID > &cells) |
| void | getBgFieldsAndDerivativesFromFsGrid (fsgrid::FsData< std::array< Real, fsgrids::bgbfield::N_BGB > > &bgb, fsgrids::technicalspan technical, FieldSolverGrid &fsgrid, dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > &mpiGrid, const std::vector< CellID > &cells) |
| int | getNumberOfCellsOnMaxRefLvl (dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > &mpiGrid, const std::vector< CellID > &cells) |
| void | feedBoundaryIntoFsGrid (dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > &mpiGrid, const std::vector< CellID > &cells, fsgrids::technicalspan technical, FieldSolverGrid &fsgrid) |
| template<int STENCIL> | |
| void | computeCoupling (dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > &mpiGrid, const std::vector< CellID > &cells, fsgrid::FsGrid< STENCIL > &fsgrid, fsgrids::technicalspan technical) |
Variables | |
| std::map< int, std::set< CellID > > | onDccrgMapRemoteProcessGlobal |
| std::map< int, std::set< CellID > > | onFsgridMapRemoteProcessGlobal |
| std::map< CellID, std::vector< int64_t > > | onFsgridMapCellsGlobal |
| enum FieldsToCommunicate |
Definition at line 14 of file gridGlue.hpp.
| void computeCoupling | ( | dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > & | mpiGrid, |
| const std::vector< CellID > & | cells, | ||
| fsgrid::FsGrid< STENCIL > & | fsgrid, | ||
| fsgrids::technicalspan | technical ) |
Definition at line 122 of file gridGlue.hpp.


| void feedBoundaryIntoFsGrid | ( | dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > & | mpiGrid, |
| const std::vector< CellID > & | cells, | ||
| fsgrids::technicalspan | technical, | ||
| FieldSolverGrid & | fsgrid ) |
| void feedMomentsIntoFsGrid | ( | dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > & | mpiGrid, |
| const std::vector< CellID > & | cells, | ||
| fsgrid::FsData< std::array< Real, fsgrids::moments::N_MOMENTS > > & | moments, | ||
| fsgrids::technicalspan | technical, | ||
| FieldSolverGrid & | fsgrid, | ||
| bool | dt2 = false ) |
Take input moments from DCCRG grid and put them into the Fieldsolver grid
| mpiGrid | The DCCRG grid carrying rho, rhoV and P |
| cells | List of local cells |
| moments | fsgrid for moments quantities |
| technical | fsgrid with technical parameters |
| fsgrid | fsgrid container |
| dt2 | Whether to copy base moments, or _DT2 moments |
This function assumes that proper grid coupling has been set up.
| void getBgFieldsAndDerivativesFromFsGrid | ( | fsgrid::FsData< std::array< Real, fsgrids::bgbfield::N_BGB > > & | bgb, |
| fsgrids::technicalspan | technical, | ||
| FieldSolverGrid & | fsgrid, | ||
| dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > & | mpiGrid, | ||
| const std::vector< CellID > & | cells ) |
Copy background B fields and store them into DCCRG
| bgb | fsgrid for background magnetic field |
| technical | fsgrid with technical parameters |
| fsgrid | fsgrids container |
| mpiGrid | The DCCRG grid |
| cells | List of local DCCRG cells |
This function assumes that proper grid coupling has been set up.
| void getFieldsFromFsGrid | ( | fsgrids::constvolspan | volumefields, |
| fsgrids::constbgbspan | bgb, | ||
| fsgrids::constegradpespan | egradpe, | ||
| fsgrids::constdmomentsspan | dmoments, | ||
| fsgrids::consttechnicalspan | technical, | ||
| FieldSolverGrid & | fsgrid, | ||
| dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > & | mpiGrid, | ||
| const std::vector< CellID > & | cells ) |
Copy field solver result (VOLB, VOLE, VOLPERB derivatives, gradpe) and store them back into DCCRG
| volumefields | fsgrid for volume-averaged fields |
| bgb | fsgrid for background magnetic field |
| egradpe | fsgrid for grad(Pe) component of electric field |
| dmoments | fsgrid for moments derivatives |
| technical | fsgrid with technical parameters |
| fsgrid | fsgrids container |
| mpiGrid | The DCCRG grid |
| cells | List of local DCCRG cells |
This function assumes that proper grid coupling has been set up.
| int getNumberOfCellsOnMaxRefLvl | ( | dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > & | mpiGrid, |
| const std::vector< CellID > & | cells ) |
| std::vector< CellID > mapDccrgIdToFsGridGlobalID | ( | dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > & | mpiGrid, |
| CellID | dccrgID ) |

Definition at line 11 of file gridGlue.cpp.
|
extern |
Definition at line 13 of file gridGlue.cpp.
Definition at line 12 of file gridGlue.cpp.