Nektar++
|
#include <WeakPressureExtrapolate.h>
Static Public Member Functions | |
static ExtrapolateSharedPtr | create (const LibUtilities::SessionReaderSharedPtr &pSession, Array< OneD, MultiRegions::ExpListSharedPtr > &pFields, MultiRegions::ExpListSharedPtr &pPressure, const Array< OneD, int > &pVel, const SolverUtils::AdvectionSharedPtr &advObject) |
Creates an instance of this class. More... | |
Static Public Member Functions inherited from Nektar::StandardExtrapolate | |
static ExtrapolateSharedPtr | create (const LibUtilities::SessionReaderSharedPtr &pSession, Array< OneD, MultiRegions::ExpListSharedPtr > &pFields, MultiRegions::ExpListSharedPtr &pPressure, const Array< OneD, int > &pVel, const SolverUtils::AdvectionSharedPtr &advObject) |
Creates an instance of this class. More... | |
Static Public Attributes | |
static std::string | className |
Name of class. More... | |
Static Public Attributes inherited from Nektar::StandardExtrapolate | |
static std::string | className |
Name of class. More... | |
Additional Inherited Members | |
Protected Attributes inherited from Nektar::Extrapolate | |
LibUtilities::SessionReaderSharedPtr | m_session |
LibUtilities::CommSharedPtr | m_comm |
Array< OneD, HBCType > | m_hbcType |
Array of type of high order BCs for splitting shemes. More... | |
Array< OneD, MultiRegions::ExpListSharedPtr > | m_fields |
Velocity fields. More... | |
MultiRegions::ExpListSharedPtr | m_pressure |
Pointer to field holding pressure field. More... | |
Array< OneD, int > | m_velocity |
int which identifies which components of m_fields contains the velocity (u,v,w); More... | |
SolverUtils::AdvectionSharedPtr | m_advObject |
Array< OneD, Array< OneD, NekDouble > > | m_previousVelFields |
int | m_curl_dim |
Curl-curl dimensionality. More... | |
int | m_bnd_dim |
bounday dimensionality More... | |
Array< OneD, const SpatialDomains::BoundaryConditionShPtr > | m_PBndConds |
pressure boundary conditions container More... | |
Array< OneD, MultiRegions::ExpListSharedPtr > | m_PBndExp |
pressure boundary conditions expansion container More... | |
int | m_pressureCalls |
number of times the high-order pressure BCs have been called More... | |
int | m_numHBCDof |
int | m_HBCnumber |
int | m_intSteps |
Maximum points used in pressure BC evaluation. More... | |
NekDouble | m_timestep |
Array< OneD, Array< OneD, NekDouble > > | m_pressureHBCs |
Storage for current and previous levels of high order pressure boundary conditions. More... | |
Array< OneD, Array< OneD, NekDouble > > | m_iprodnormvel |
Storage for current and previous levels of the inner product of normal velocity. More... | |
Array< OneD, Array< OneD, NekDouble > > | m_traceNormals |
HighOrderOutflowSharedPtr | m_houtflow |
Static Protected Attributes inherited from Nektar::Extrapolate | |
static NekDouble | StifflyStable_Betaq_Coeffs [3][3] |
static NekDouble | StifflyStable_Alpha_Coeffs [3][3] |
static NekDouble | StifflyStable_Gamma0_Coeffs [3] |
Definition at line 58 of file WeakPressureExtrapolate.h.
Nektar::WeakPressureExtrapolate::WeakPressureExtrapolate | ( | const LibUtilities::SessionReaderSharedPtr | pSession, |
Array< OneD, MultiRegions::ExpListSharedPtr > | pFields, | ||
MultiRegions::ExpListSharedPtr | pPressure, | ||
const Array< OneD, int > | pVel, | ||
const SolverUtils::AdvectionSharedPtr | advObject | ||
) |
Definition at line 49 of file WeakPressureExtrapolate.cpp.
|
virtual |
Definition at line 59 of file WeakPressureExtrapolate.cpp.
|
inlinestatic |
Creates an instance of this class.
Definition at line 63 of file WeakPressureExtrapolate.h.
References Nektar::MemoryManager< DataType >::AllocateSharedPtr(), and CellMLToNektar.cellml_metadata::p.
|
protectedvirtual |
Reimplemented from Nektar::Extrapolate.
Definition at line 101 of file WeakPressureExtrapolate.cpp.
References Nektar::Extrapolate::EvaluateBDFArray(), Nektar::Extrapolate::m_curl_dim, Nektar::Extrapolate::m_houtflow, Nektar::Extrapolate::m_intSteps, Nektar::Extrapolate::m_PBndExp, Nektar::Extrapolate::m_timestep, and Vmath::Svtvp().
|
protectedvirtual |
Function to extrapolate the new pressure boundary condition. Based on the velocity field and on the advection term. Acceleration term is also computed. This routine is a general one for 2d and 3D application and it can be called directly from velocity correction scheme. Specialisation on dimensionality is redirected to the CalcNeumannPressureBCs method.
Reimplemented from Nektar::StandardExtrapolate.
Definition at line 72 of file WeakPressureExtrapolate.cpp.
References Nektar::Extrapolate::AddVelBC(), Nektar::Extrapolate::CalcNeumannPressureBCs(), Nektar::Extrapolate::CalcOutflowBCs(), Nektar::Extrapolate::CopyPressureHBCsToPbndExp(), Nektar::Extrapolate::ExtrapolateArray(), Nektar::Extrapolate::m_HBCnumber, Nektar::Extrapolate::m_pressureCalls, and Nektar::Extrapolate::m_pressureHBCs.
|
protectedvirtual |
vritual function which only puts in the curl operator into the bcs
Reimplemented from Nektar::StandardExtrapolate.
Definition at line 143 of file WeakPressureExtrapolate.cpp.
References Vmath::Smul().
|
static |
Name of class.
Registers the class with the Factory.
Definition at line 76 of file WeakPressureExtrapolate.h.