Global mesh. More...
#include <Cabana_Grid_Types.hpp>
#include <array>
#include <cmath>
#include <limits>
#include <memory>
#include <stdexcept>
#include <type_traits>
#include <vector>
Go to the source code of this file.
Classes | |
class | Cabana::Grid::GlobalMesh< MeshType > |
Global mesh partial specialization for uniform mesh. More... | |
class | Cabana::Grid::GlobalMesh< NonUniformMesh< Scalar, 3 > > |
Global mesh partial specialization for 3D non-uniform mesh. More... | |
class | Cabana::Grid::GlobalMesh< NonUniformMesh< Scalar, 2 > > |
Global mesh partial specialization for 2D non-uniform mesh. More... | |
Namespaces | |
namespace | Cabana |
Core: particle data structures and algorithms. | |
Functions | |
template<class Scalar, std::size_t NumSpaceDim> | |
std::shared_ptr< GlobalMesh< UniformMesh< Scalar, NumSpaceDim > > > | Cabana::Grid::createUniformGlobalMesh (const std::array< Scalar, NumSpaceDim > &global_low_corner, const std::array< Scalar, NumSpaceDim > &global_high_corner, const Scalar cell_size) |
Create uniform mesh with uniform cell size. | |
template<class Scalar, std::size_t NumSpaceDim> | |
std::shared_ptr< GlobalMesh< UniformMesh< Scalar, NumSpaceDim > > > | Cabana::Grid::createUniformGlobalMesh (const std::array< Scalar, NumSpaceDim > &global_low_corner, const std::array< Scalar, NumSpaceDim > &global_high_corner, const std::array< Scalar, NumSpaceDim > &cell_size) |
Create uniform mesh with uniform cell size. | |
template<class Scalar, std::size_t NumSpaceDim> | |
std::shared_ptr< GlobalMesh< UniformMesh< Scalar, NumSpaceDim > > > | Cabana::Grid::createUniformGlobalMesh (const std::array< Scalar, NumSpaceDim > &global_low_corner, const std::array< Scalar, NumSpaceDim > &global_high_corner, const std::array< int, NumSpaceDim > &global_num_cell) |
Create uniform mesh with total number of cells. | |
template<class Scalar, std::size_t NumSpaceDim> | |
std::shared_ptr< GlobalMesh< SparseMesh< Scalar, NumSpaceDim > > > | Cabana::Grid::createSparseGlobalMesh (const std::array< Scalar, NumSpaceDim > &global_low_corner, const std::array< Scalar, NumSpaceDim > &global_high_corner, const Scalar cell_size) |
Create sparse mesh with uniform cell size. | |
template<class Scalar, std::size_t NumSpaceDim> | |
std::shared_ptr< GlobalMesh< SparseMesh< Scalar, NumSpaceDim > > > | Cabana::Grid::createSparseGlobalMesh (const std::array< Scalar, NumSpaceDim > &global_low_corner, const std::array< Scalar, NumSpaceDim > &global_high_corner, const std::array< Scalar, NumSpaceDim > &cell_size) |
Create sparse mesh with uniform cell size. | |
template<class Scalar, std::size_t NumSpaceDim> | |
std::shared_ptr< GlobalMesh< SparseMesh< Scalar, NumSpaceDim > > > | Cabana::Grid::createSparseGlobalMesh (const std::array< Scalar, NumSpaceDim > &global_low_corner, const std::array< Scalar, NumSpaceDim > &global_high_corner, const std::array< int, NumSpaceDim > &global_num_cell) |
Create sparse mesh with total number of cells. | |
template<class Scalar> | |
std::shared_ptr< GlobalMesh< NonUniformMesh< Scalar, 3 > > > | Cabana::Grid::createNonUniformGlobalMesh (const std::vector< Scalar > &i_edges, const std::vector< Scalar > &j_edges, const std::vector< Scalar > &k_edges) |
Create a non-uniform 3D mesh. | |
template<class Scalar> | |
std::shared_ptr< GlobalMesh< NonUniformMesh< Scalar, 2 > > > | Cabana::Grid::createNonUniformGlobalMesh (const std::vector< Scalar > &i_edges, const std::vector< Scalar > &j_edges) |
Create a non-uniform 2D mesh. | |
Global mesh.
std::shared_ptr< GlobalMesh< NonUniformMesh< Scalar, 2 > > > Cabana::Grid::createNonUniformGlobalMesh | ( | const std::vector< Scalar > & | i_edges, |
const std::vector< Scalar > & | j_edges ) |
Create a non-uniform 2D mesh.
Scalar | Mesh scalar type. |
i_edges,j_edges | List of edges defining the mesh in each dimension. |
std::shared_ptr< GlobalMesh< NonUniformMesh< Scalar, 3 > > > Cabana::Grid::createNonUniformGlobalMesh | ( | const std::vector< Scalar > & | i_edges, |
const std::vector< Scalar > & | j_edges, | ||
const std::vector< Scalar > & | k_edges ) |
Create a non-uniform 3D mesh.
i_edges,j_edges,k_edges | List of edges defining the mesh in each dimension. |
std::shared_ptr< GlobalMesh< SparseMesh< Scalar, NumSpaceDim > > > Cabana::Grid::createSparseGlobalMesh | ( | const std::array< Scalar, NumSpaceDim > & | global_low_corner, |
const std::array< Scalar, NumSpaceDim > & | global_high_corner, | ||
const Scalar | cell_size ) |
Create sparse mesh with uniform cell size.
Scalar | Mesh floating point type. |
NumSpaceDim | Spatial dimension. |
global_low_corner,global_high_corner | Location of the mesh corner. |
cell_size | Uniform cell size for every dimension. |
std::shared_ptr< GlobalMesh< SparseMesh< Scalar, NumSpaceDim > > > Cabana::Grid::createSparseGlobalMesh | ( | const std::array< Scalar, NumSpaceDim > & | global_low_corner, |
const std::array< Scalar, NumSpaceDim > & | global_high_corner, | ||
const std::array< int, NumSpaceDim > & | global_num_cell ) |
Create sparse mesh with total number of cells.
Scalar | Mesh floating point type. |
NumSpaceDim | Spatial dimension. |
global_low_corner,global_high_corner | Location of the mesh corner. |
global_num_cell | Array ofnumber of cells per dimension. |
std::shared_ptr< GlobalMesh< SparseMesh< Scalar, NumSpaceDim > > > Cabana::Grid::createSparseGlobalMesh | ( | const std::array< Scalar, NumSpaceDim > & | global_low_corner, |
const std::array< Scalar, NumSpaceDim > & | global_high_corner, | ||
const std::array< Scalar, NumSpaceDim > & | cell_size ) |
Create sparse mesh with uniform cell size.
Scalar | Mesh floating point type. |
NumSpaceDim | Spatial dimension. |
global_low_corner,global_high_corner | Location of the mesh corner. |
cell_size | Array ofuniform cell size per dimension. |
std::shared_ptr< GlobalMesh< UniformMesh< Scalar, NumSpaceDim > > > Cabana::Grid::createUniformGlobalMesh | ( | const std::array< Scalar, NumSpaceDim > & | global_low_corner, |
const std::array< Scalar, NumSpaceDim > & | global_high_corner, | ||
const Scalar | cell_size ) |
Create uniform mesh with uniform cell size.
Scalar | Mesh floating point type. |
NumSpaceDim | Spatial dimension. |
global_low_corner,global_high_corner | Location of the mesh corner. |
cell_size | Uniform cell size for every dimension. |
std::shared_ptr< GlobalMesh< UniformMesh< Scalar, NumSpaceDim > > > Cabana::Grid::createUniformGlobalMesh | ( | const std::array< Scalar, NumSpaceDim > & | global_low_corner, |
const std::array< Scalar, NumSpaceDim > & | global_high_corner, | ||
const std::array< int, NumSpaceDim > & | global_num_cell ) |
Create uniform mesh with total number of cells.
Scalar | Mesh floating point type. |
NumSpaceDim | Spatial dimension. |
global_low_corner,global_high_corner | Location of the mesh corner. |
global_num_cell | Array ofnumber of cells per dimension. |
std::shared_ptr< GlobalMesh< UniformMesh< Scalar, NumSpaceDim > > > Cabana::Grid::createUniformGlobalMesh | ( | const std::array< Scalar, NumSpaceDim > & | global_low_corner, |
const std::array< Scalar, NumSpaceDim > & | global_high_corner, | ||
const std::array< Scalar, NumSpaceDim > & | cell_size ) |
Create uniform mesh with uniform cell size.
Scalar | Mesh floating point type. |
NumSpaceDim | Spatial dimension. |
global_low_corner,global_high_corner | Location of the mesh corner. |
cell_size | Array ofuniform cell size per dimension. |