|
Tsunami Project Lab
|
#include <WavePropagation1d.h>


Public Member Functions | |
| WavePropagation1d (t_idx i_nCells) | |
| ~WavePropagation1d () | |
| void | timeStep (t_real i_scaling) |
| void | setGhostBoundary (BoundaryCondition i_left, BoundaryCondition i_right, BoundaryCondition, BoundaryCondition) |
| void | setGhostOutflow () |
| void | setGhostReflection () |
| t_idx | getStride () |
| t_real const * | getHeight () |
| t_real const * | getMomentumX () |
| t_real const * | getMomentumY () |
| t_real const * | getBathymetry () |
| void | setHeight (t_idx i_ix, t_idx, t_real i_h) |
| void | setMomentumX (t_idx i_ix, t_idx, t_real i_hu) |
| void | setMomentumY (t_idx, t_idx, t_real) |
| void | setBathymetry (t_idx i_ix, t_idx, t_real i_b) |
Public Member Functions inherited from tsunami_lab::patches::WavePropagation< T > | |
| WavePropagation () | |
| virtual | ~WavePropagation () |
Additional Inherited Members | |
Protected Attributes inherited from tsunami_lab::patches::WavePropagation< T > | |
| T | solver |
This file now also contains the full definition of the class, otherwise the template functions aren't possible. The alternative would declaring each needed version explcitly in a file e.g. template class tsunami_lab::patches::WavePropagation1d<tsunami_lab::solvers::Roe>;
|
inline |
Constructs the 1d wave propagation solver.
| i_nCells | number of cells. |
|
inline |
Destructor which frees all allocated memory.
|
inlinevirtual |
Gets the cells' bathymetry.
Implements tsunami_lab::patches::WavePropagation< T >.
|
inlinevirtual |
Gets cells' water heights.
Implements tsunami_lab::patches::WavePropagation< T >.
|
inlinevirtual |
Gets the cells' momenta in x-direction.
Implements tsunami_lab::patches::WavePropagation< T >.
|
inlinevirtual |
Dummy function which returns a nullptr.
Implements tsunami_lab::patches::WavePropagation< T >.
|
inlinevirtual |
Gets the stride in y-direction. x-direction is stride-1.
Implements tsunami_lab::patches::WavePropagation< T >.
|
inlinevirtual |
Sets the bathymetry to the given value.
| i_ix | id of the cell in x-direction. |
| i_iy | not supported for 1d wave propagation. |
| i_b | bathymetry. |
Implements tsunami_lab::patches::WavePropagation< T >.
|
inlinevirtual |
Sets the ghost cells per side. Bathymetry and water height are always copied from the inner cell; the momentum is negated when the side is REFLECTING (3.2.1). The bottom/top arguments are ignored in 1d.
Implements tsunami_lab::patches::WavePropagation< T >.
|
inlinevirtual |
Convenience: outflow on both sides.
Implements tsunami_lab::patches::WavePropagation< T >.
|
inlinevirtual |
Convenience: reflecting on both sides (Spec 3.2.1).
Implements tsunami_lab::patches::WavePropagation< T >.
|
inlinevirtual |
Sets the height of the cell to the given value.
| i_ix | id of the cell in x-direction. |
| i_h | water height. |
Implements tsunami_lab::patches::WavePropagation< T >.
|
inlinevirtual |
Sets the momentum in x-direction to the given value.
| i_ix | id of the cell in x-direction. |
| i_hu | momentum in x-direction. |
Implements tsunami_lab::patches::WavePropagation< T >.
|
inlinevirtual |
Dummy function since there is no y-momentum in the 1d solver.
Implements tsunami_lab::patches::WavePropagation< T >.
|
inlinevirtual |
Performs a time step.
| i_scaling | scaling of the time step (dt / dx). |
Implements tsunami_lab::patches::WavePropagation< T >.