marian::HSineGridBuilder Class Reference
Non-uniform grid builder that uses hyperbolic sine function. More...
#include <hsineGridBuilder.hpp>
Inheritance diagram for marian::HSineGridBuilder:

Public Member Functions | |
HSineGridBuilder (double c) | |
Constructor. | |
std::vector< double > | buildGrid (double low, double upp, int N, double concentration) const override |
builds non-uniform grid More... | |
~HSineGridBuilder () | |
Destructor. | |
![]() | |
virtual GridBuilder * | clone () const |
Virtual copy constructor. | |
![]() | |
virtual | ~GridBuilder () |
destructor | |
Private Attributes | |
double | c_ |
Control parameter. Must be greater then 0.0. If the value of parameter is smaller, grid become more concentrated around concentration point. | |
Detailed Description
Class is used to generate non-uniform grid. The algorithm is basing on method proposed by Tavella & Randall [3] and Kluge [15] and briefly described and discussed by Hout & Foulon in [8].
The grid build on interval with a concentration point
and c control parameter is constructed in following steps:
1) We define uniform grid
where and
:
Below plot presents the construction of non-uniform grid for different control parameters

Plots below visualize the uniform grid for different values of control parameter and different concentration points.

- Examples:
- convergenceExample.cpp.
Member Function Documentation
|
overridevirtual |
- Parameters
-
low Lower bound upp Upper bound concentration Concentration point N Number of grid points (N-1 intervals between lower and upper bound)
Implements marian::GridBuilder.
The documentation for this class was generated from the following files:
- C:/Unix/home/OEM/fdm/src/FDM/gridBuilders/hsineGridBuilder.hpp
- C:/Unix/home/OEM/fdm/src/FDM/gridBuilders/hsineGridBuilder.cpp