|
SparseTensor< thrust::host_vector< real_type > > | jacobian () const |
| The Jacobian of the coordinate transformation from physical to computational space. More...
|
|
SparseTensor< thrust::host_vector< real_type > > | metric () const |
| The (inverse) metric tensor of the coordinate system. More...
|
|
std::vector< thrust::host_vector< real_type > > | map () const |
| The coordinate map from computational to physical space. More...
|
|
virtual aRealGeometry3d * | clone () const =0 |
| Geometries are cloneable. More...
|
|
virtual | ~aRealGeometry3d ()=default |
| allow deletion through base class pointer More...
|
|
real_type | x0 () const |
| left boundary in x More...
|
|
real_type | x1 () const |
| right boundary in x More...
|
|
real_type | y0 () const |
| left boundary in y More...
|
|
real_type | y1 () const |
| right boundary in y More...
|
|
real_type | z0 () const |
| left boundary in z More...
|
|
real_type | z1 () const |
| right boundary in z More...
|
|
real_type | lx () const |
| length in x More...
|
|
real_type | ly () const |
| length in y More...
|
|
real_type | lz () const |
| length in z More...
|
|
real_type | hx () const |
| cell size in x More...
|
|
real_type | hy () const |
| cell size in y More...
|
|
real_type | hz () const |
| cell size in z More...
|
|
unsigned | n () const |
| number of polynomial coefficients in x More...
|
|
unsigned | nx () const |
| number of polynomial coefficients in x More...
|
|
unsigned | ny () const |
| number of polynomial coefficients in y More...
|
|
unsigned | nz () const |
| number of polynomial coefficients in z More...
|
|
unsigned | Nx () const |
| number of points in x More...
|
|
unsigned | Ny () const |
| number of points in y More...
|
|
unsigned | Nz () const |
| number of points in z More...
|
|
bc | bcx () const |
| boundary conditions in x More...
|
|
bc | bcy () const |
| boundary conditions in y More...
|
|
bc | bcz () const |
| boundary conditions in z More...
|
|
const DLT< real_type > & | dltx () const |
| discrete legendre transformation in x More...
|
|
const DLT< real_type > & | dlty () const |
| discrete legendre transformation in y More...
|
|
const DLT< real_type > & | dltz () const |
| discrete legendre transformation in z More...
|
|
const RealGrid1d< real_type > & | gx () const |
| The x-axis grid. More...
|
|
const RealGrid1d< real_type > & | gy () const |
| The y-axis grid. More...
|
|
const RealGrid1d< real_type > & | gz () const |
| The z-axis grid. More...
|
|
unsigned | size () const |
| The total number of points. More...
|
|
void | display (std::ostream &os=std::cout) const |
| Display. More...
|
|
void | shift (bool &negative, real_type &x, real_type &y, real_type &z) const |
| Shift any point coordinate to a corresponding grid coordinate according to the boundary condition. More...
|
|
void | shift (bool &negative, real_type &x, real_type &y, real_type &z, bc bcx, bc bcy, bc bcz) const |
| Shift any point coordinate to a corresponding grid coordinate according to the boundary condition. More...
|
|
bool | contains (real_type x, real_type y, real_type z) const |
| Check if the grid contains a point. More...
|
|
template<class Vector > |
bool | contains (const Vector &x) const |
| Shortcut for contains( x[0], x[1], x[2]) More...
|
|
void | multiplyCellNumbers (real_type fx, real_type fy) |
| Multiply the number of cells with a given factor. More...
|
|
void | set (unsigned new_n, unsigned new_Nx, unsigned new_Ny, unsigned new_Nz) |
| Set the number of polynomials and cells. More...
|
|
void | set (unsigned new_nx, unsigned new_Nx, unsigned new_ny, unsigned new_Ny, unsigned new_nz, unsigned new_Nz) |
| Set the number of polynomials and cells. More...
|
|
template<class real_type>
struct dg::aRealGeometry3d< real_type >
This is the abstract interface class for a three-dimensional Geometry.
template<class real_type >
The Jacobian of the coordinate transformation from physical to computational space.
The elements of the Tensor are (if x,y,z are the coordinates in computational space and R,Z,P are the physical space coordinates)
\[ J = \begin{pmatrix} x_R(x,y,z) & x_Z(x,y,z) & x_\varphi(x,y,z) \\ y_R(x,y,z) & y_Z(x,y,z) & y_\varphi(x,y,z) \\ z_R(x,y,z) & z_Z(x,y,z) & z_\varphi(x,y,z) \end{pmatrix} \]
- Returns
- Jacobian
- Note
- per default this will be the identity tensor
template<class real_type >
std::vector< thrust::host_vector< real_type > > dg::aRealGeometry3d< real_type >::map |
( |
| ) |
const |
|
inline |
The coordinate map from computational to physical space.
The elements of the map are (if x,y,z are the coordinates in computational space and R,Z,P are the physical space coordinates)
\[ R(x,y,z) \\ Z(x,y,z) \\ \varphi(x,y,z) \]
- Returns
- a vector of size 3
- Note
- per default this will be the identity map
template<class real_type >
The (inverse) metric tensor of the coordinate system.
The elements of the inverse metric tensor are the contravariant elements of the metric \(g\). If x,y,z are the coordinates, then
\[ g^{-1} = \begin{pmatrix} g^{xx}(x,y,z) & g^{xy}(x,y,z) & g^{zz}(x,y,z)\\ & g^{yy}(x,y,z) & g^{yz}(x,y,z) \\ & & g^{zz}(x,y,z)\end{pmatrix} \]
- Returns
- symmetric tensor
- Note
- use the
dg::tensor::volume
function to compute the volume element from here
-
per default this will be the identity tensor