inciter namespace
Inciter declarations and definitions.
Namespaces
- namespace ctr
- Inciter control facilitating user input to internal data transfer.
Classes
- class ChoCG
- ChoCG Charm++ chare array used to advance PDEs in time with ChoCG.
- class Discretization
- Discretization Charm++ chare array holding common functinoality to all discretization schemes.
- class KozCG
- KozCG Charm++ chare array used to advance PDEs in time with KozCG.
- class LaxCG
- LaxCG Charm++ chare array used to advance PDEs in time with LaxCG.
- class LohCG
- LohCG Charm++ chare array used to advance PDEs in time with LohCG.
- struct MESH_DATA
- Zoltan mesh data structure.
- class NodeDiagnostics
- NodeDiagnostics class used to compute diagnostics while integrating PDEs.
- class Partitioner
- class Refiner
- Mesh refiner for interfacing the mesh refinement library.
- class RieCG
- RieCG Charm++ chare array used to advance PDEs in time with RieCG.
- class Sorter
- Mesh sorter for global distributed mesh node reordering.
- class Transporter
- Transporter drives the time integration of transport equations.
- class ZalCG
- ZalCG Charm++ chare array used to advance PDEs in time with ZalCG.
Enums
Typedefs
-
using HistData = tk::
TaggedTuple<brigand::list<tag::id, std::string, tag::elem, std::size_t, tag::fn, std::array<tk:: real, 4>>> - History point data.
Functions
-
static auto centroids(const std::vector<std::size_t>& inpoel,
const std::array<std::vector<tk::
real>, 3>& coord) -> std::array<std::vector<tk:: real>, 3> -
auto geomPartMesh(const char* alg,
const std::vector<std::string>& zoltan_params,
const std::vector<std::size_t>& inpoel,
const std::array<std::vector<tk::
real>, 3>& coord, int npart) -> std::vector<std::size_t> - Partition mesh using Zoltan with a geometric partitioner.
-
static void createHyperGraph(const std::vector<std::size_t>& gid,
const std::unordered_map<std::size_t, std::vector<std::size_t>>& graph,
MESH_
DATA& hg) - auto graphPartMesh(const std::vector<std::size_t>& ginpoel, const std::unordered_map<std::size_t, std::vector<std::size_t>>& graph, const std::vector<std::string>& zoltan_params, int npart) -> std::unordered_map<std::size_t, std::size_t>
- Partition mesh using Zoltan with a graph partitioner.
Variables
-
ctr::
Config g_cfg -
static const std::array<std::vector<tk::
real>, 4> rkcoef -
static const std::array<tk::
real, 3> rkcoef - Runge-Kutta coefficients.
-
static const std::array<std::vector<tk::
real>, 4> rkcoef - Runge-Kutta coefficients.
-
static const std::array<tk::
real, 3> rkcoef - Runge-Kutta coefficients.
- int g_nrestart
- Number of times restarted counter.
- static const std::array<std::string, 7> ProgMeshPrefix
- Prefixes for progress report on mesh preparation.
- static const std::array<std::string, 1> ProgWorkPrefix
- Prefixes for progress report on workers preparation.
Enum documentation
enum inciter:: ProgMesh
#include <src/Inciter/Transporter.hpp>
Indices for progress report on mesh preparation.
enum inciter:: ProgWork
#include <src/Inciter/Transporter.hpp>
Indices for progress report on workers preparation.
Typedef documentation
using inciter:: HistData = tk:: TaggedTuple<brigand::list<tag::id, std::string, tag::elem, std::size_t, tag::fn, std::array<tk:: real, 4>>>
#include <src/Inciter/History.hpp>
History point data.
Function documentation
static std::array<std::vector<tk:: real>, 3> inciter:: centroids(const std::vector<std::size_t>& inpoel,
const std::array<std::vector<tk:: real>, 3>& coord)
#include <src/Partition/ZoltanGeom.cpp>
Parameters | |
---|---|
inpoel in | Mesh connectivity with local ids |
coord in | Node coordinates |
Returns | Centroids for all cells on this compute node |
std::vector<std::size_t> inciter:: geomPartMesh(const char* alg,
const std::vector<std::string>& zoltan_params,
const std::vector<std::size_t>& inpoel,
const std::array<std::vector<tk:: real>, 3>& coord,
int npart)
#include <src/Partition/ZoltanGeom.hpp>
Partition mesh using Zoltan with a geometric partitioner.
Parameters | |
---|---|
alg in | Partitioning algorithm to use |
zoltan_params in | Extra parameters pass to zoltan |
inpoel in | Mesh connectivity with local ids |
coord in | Node coordinates |
npart in | Number of desired partitions |
Returns | Array of chare ownership IDs mapping elements to chares |
This function uses Zoltan to partition the mesh in parallel. It assumes that the mesh is distributed among all the MPI ranks.
static void inciter:: createHyperGraph(const std::vector<std::size_t>& gid,
const std::unordered_map<std::size_t, std::vector<std::size_t>>& graph,
MESH_ DATA& hg)
#include <src/Partition/ZoltanGraph.cpp>
Parameters | |
---|---|
gid in | Global node ids |
graph in | Aggregated mesh graph point connectivity |
hg in/out | Hypergraph data structure to fill |
Returns | Number of hyperedges in graph (number of nodes in our mesh chunk) |
std::unordered_map<std::size_t, std::size_t> inciter:: graphPartMesh(const std::vector<std::size_t>& ginpoel,
const std::unordered_map<std::size_t, std::vector<std::size_t>>& graph,
const std::vector<std::string>& zoltan_params,
int npart)
#include <src/Partition/ZoltanGraph.hpp>
Partition mesh using Zoltan with a graph partitioner.
Parameters | |
---|---|
ginpoel in | Mesh connectivity with global ids |
graph in | Mesh graph point connectivity |
zoltan_params in | Extra parameters pass to zoltan |
npart in | Number of desired partitions |
Returns | Array of chare ownership IDs mapping points owned to chares |
This function uses Zoltan to partition the mesh in parallel. It assumes that the mesh is distributed among all the MPI ranks.
Variable documentation
ctr:: Config inciter:: g_cfg
#include <src/Physics/Zalesak.cpp>
Global-scope data. Initialized by the main chare and distibuted to all PEs by the Charm++ runtime system. Though semantically not const, all these global data should be considered read-only. See also http:/
This object is in global scope, it contains all of user input, and thus it is made available to all PEs for convenience reasons. The runtime system distributes it to all PEs during initialization. Once distributed, the object does not change.
static const std::array<std::vector<tk:: real>, 4> inciter:: rkcoef
#include <src/Inciter/ChoCG.cpp>
Runge-Kutta coefficients Runge-Kutta coefficients
static const std::array<tk:: real, 3> inciter:: rkcoef
#include <src/Inciter/LaxCG.cpp>
Runge-Kutta coefficients.
static const std::array<std::vector<tk:: real>, 4> inciter:: rkcoef
#include <src/Inciter/LohCG.cpp>
Runge-Kutta coefficients.
static const std::array<tk:: real, 3> inciter:: rkcoef
#include <src/Inciter/RieCG.cpp>
Runge-Kutta coefficients.
int inciter:: g_nrestart
#include <src/Inciter/Transporter.cpp>
Number of times restarted counter.
static const std::array<std::string, 7> inciter:: ProgMeshPrefix
#include <src/Inciter/Transporter.hpp>
Prefixes for progress report on mesh preparation.
static const std::array<std::string, 1> inciter:: ProgWorkPrefix
#include <src/Inciter/Transporter.hpp>
Prefixes for progress report on workers preparation.