|
Nektar++
|
#include <StandardExtrapolate.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 Attributes | |
| static std::string | className |
| Name of class. More... | |
Static Protected Attributes | |
| static NekDouble | DuDt_Coeffs [3][4] |
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] |
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 |
| std::vector< SolverUtils::ForcingSharedPtr > | m_forcing |
| 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 |
Definition at line 57 of file StandardExtrapolate.h.
| Nektar::StandardExtrapolate::StandardExtrapolate | ( | const LibUtilities::SessionReaderSharedPtr | pSession, |
| Array< OneD, MultiRegions::ExpListSharedPtr > | pFields, | ||
| MultiRegions::ExpListSharedPtr | pPressure, | ||
| const Array< OneD, int > | pVel, | ||
| const SolverUtils::AdvectionSharedPtr | advObject | ||
| ) |
Definition at line 53 of file StandardExtrapolate.cpp.
|
virtual |
Definition at line 63 of file StandardExtrapolate.cpp.
|
inlinestatic |
Creates an instance of this class.
Definition at line 62 of file StandardExtrapolate.h.
References Nektar::MemoryManager< DataType >::AllocateSharedPtr(), and CellMLToNektar.cellml_metadata::p.
|
protectedvirtual |
At the start, the newest value is stored in array[nlevels-1] and the previous values in the first positions At the end, the acceleration from BDF is stored in array[nlevels-1] and the storage has been updated to included the new value
Reimplemented from Nektar::Extrapolate.
Definition at line 167 of file StandardExtrapolate.cpp.
References DuDt_Coeffs, Nektar::Extrapolate::m_intSteps, Nektar::Extrapolate::m_pressureCalls, Nektar::Extrapolate::RollOver(), Vmath::Smul(), 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.
Implements Nektar::Extrapolate.
Reimplemented in Nektar::WeakPressureExtrapolate.
Definition at line 76 of file StandardExtrapolate.cpp.
References Nektar::Extrapolate::AddDuDt(), 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 |
Implements Nektar::Extrapolate.
Reimplemented in Nektar::WeakPressureExtrapolate.
Definition at line 152 of file StandardExtrapolate.cpp.
References Vmath::Svtvp().
|
protectedvirtual |
Implements Nektar::Extrapolate.
Definition at line 105 of file StandardExtrapolate.cpp.
References Nektar::ErrorUtil::efatal, Nektar::Extrapolate::m_intSteps, and NEKERROR.
|
protectedvirtual |
|
static |
Name of class.
Registers the class with the Factory.
Definition at line 75 of file StandardExtrapolate.h.
|
staticprotected |
Definition at line 115 of file StandardExtrapolate.h.
Referenced by v_AccelerationBDF().