9#include "Sfx/Sfx_ScalarField1D.h"
11#include "../../Nov_VS2019/dbpp_PhysicalBoundaryCnd.h"
12#include "../../Nov_VS2019/dbpp_Gamma.h"
30 static constexpr int DIM = 100;
37 std::array<float64, DIM + 1>
r;
38 std::array<float64, DIM + 1>::iterator
begin() {
return r.begin(); }
39 std::array<float64, DIM + 1>::iterator
end() {
return r.end(); }
40 std::array<float64, DIM + 1>::const_iterator
cbegin() {
return r.cbegin(); }
41 std::array<float64, DIM + 1>::const_iterator
cend() {
return r.cend(); }
53 std::size_t
size()
const {
return r.size(); }
55 double front()
const {
return r.front(); }
56 double back()
const {
return r.back(); }
61 std::array<short, DIM + 1>
x;
77 :
m_name( std::move(aName)),
150 vector*
d1x( vector* aVec, stencil* aSten=
nullptr);
stencil * eno_stencil(vector *aStencil)
Computation of stencil for ENO (Essentially Non-Oscillatory) reconstruction. Determine the central in...
Definition Sfx_ENOD1X.cpp:164
FiniteDifferenceDerivative & operator=(const FiniteDifferenceDerivative &aOther)=delete
FiniteDifferenceDerivative(const FiniteDifferenceDerivative &aOther)=delete
double m_dx
Definition Sfx_ENOD1X.h:161
size_t getGlobalDimension() const
Definition Sfx_ENOD1X.h:126
eStenType
derivative stencil type
Definition Sfx_ENOD1X.h:68
@ None
Definition Sfx_ENOD1X.h:69
@ nonperiodic
Definition Sfx_ENOD1X.h:71
@ periodic
Definition Sfx_ENOD1X.h:70
void setStencilType(eStenType aStenType)
Definition Sfx_ENOD1X.h:111
int m_derivOrder
Definition Sfx_ENOD1X.h:158
vector * new_vector(void)
Definition Sfx_ENOD1X.cpp:102
eStenType getStencil() const
Definition Sfx_ENOD1X.h:116
std::valarray< float64 > d1x(const Sfx::scalarField1D *aScalrField, const dbpp::PhysicalBoundaryCnd &aBC)
Definition Sfx_ENOD1X.cpp:34
eStenType m_stenType
Definition Sfx_ENOD1X.h:159
FiniteDifferenceDerivative(std::string aName, const dbpp::Gamma &aBC, bool aUseENOSten)
Definition Sfx_ENOD1X.h:76
bool useENOStencil() const
Definition Sfx_ENOD1X.h:101
bool m_useSten
Definition Sfx_ENOD1X.h:160
void setDerivativeOrder(int aOrder)
Definition Sfx_ENOD1X.h:106
void setdx(double dx)
Definition Sfx_ENOD1X.h:155
void free_vector(vector *)
Definition Sfx_ENOD1X.cpp:117
std::string m_name
Definition Sfx_ENOD1X.h:157
static constexpr int DIM
Definition Sfx_ENOD1X.h:30
size_t getDerivativeOrder() const
Definition Sfx_ENOD1X.h:121
~FiniteDifferenceDerivative()=default
Boundary condition.
Definition dbpp_Gamma.h:16
Physical boundary condition (computational domain) based on characteristic equation ....
Definition dbpp_PhysicalBoundaryCnd.h:22
Definition Sfx_ENOD1X.h:60
std::array< short, DIM+1 > x
Definition Sfx_ENOD1X.h:61
vector & operator=(const vector &aOther)=default
std::array< float64, DIM+1 >::const_iterator cbegin()
Definition Sfx_ENOD1X.h:40
double back() const
Definition Sfx_ENOD1X.h:56
double front() const
Definition Sfx_ENOD1X.h:55
std::size_t size() const
Definition Sfx_ENOD1X.h:53
vector(const vector &aOther)=default
vector()
Definition Sfx_ENOD1X.h:44
std::array< float64, DIM+1 >::iterator end()
Definition Sfx_ENOD1X.h:39
bool isEmpty() const
Definition Sfx_ENOD1X.h:54
std::array< float64, DIM+1 > r
Definition Sfx_ENOD1X.h:37
std::array< float64, DIM+1 >::iterator begin()
Definition Sfx_ENOD1X.h:38
std::array< float64, DIM+1 >::const_iterator cend()
Definition Sfx_ENOD1X.h:41