Nektar++
|
#include <FilterAeroForcesSPM.h>
Public Member Functions | |
void | CalculateForces (const Array< OneD, Array< OneD, NekDouble > > &pIntVel, const Array< OneD, Array< OneD, NekDouble > > &pUpPrev, const MultiRegions::ExpListSharedPtr &pPhi, NekDouble time, NekDouble dt) |
Determine the total force on the body defined by \(\Phi\) (note that if the shape function represents more than one body, this function calculates the value of the final force after adding up the values for each body). This value must be scaled with the density to get the real force vector. More... | |
![]() | |
SOLVER_UTILS_EXPORT | Filter (const LibUtilities::SessionReaderSharedPtr &pSession, const std::shared_ptr< EquationSystem > &pEquation) |
virtual SOLVER_UTILS_EXPORT | ~Filter () |
SOLVER_UTILS_EXPORT void | Initialise (const Array< OneD, const MultiRegions::ExpListSharedPtr > &pFields, const NekDouble &time) |
SOLVER_UTILS_EXPORT void | Update (const Array< OneD, const MultiRegions::ExpListSharedPtr > &pFields, const NekDouble &time) |
SOLVER_UTILS_EXPORT void | Finalise (const Array< OneD, const MultiRegions::ExpListSharedPtr > &pFields, const NekDouble &time) |
SOLVER_UTILS_EXPORT bool | IsTimeDependent () |
SOLVER_UTILS_EXPORT std::string | SetupOutput (const std::string ext, const ParamMap &pParams) |
SOLVER_UTILS_EXPORT std::string | SetupOutput (const std::string ext, const std::string inname) |
SOLVER_UTILS_EXPORT void | SetUpdateOnInitialise (bool flag) |
Static Public Member Functions | |
static SolverUtils::FilterSharedPtr | create (const LibUtilities::SessionReaderSharedPtr &pSession, const std::shared_ptr< SolverUtils::EquationSystem > &pEquation, const std::map< std::string, std::string > &pParams) |
Creates an instance of this class. More... | |
Static Public Attributes | |
static std::string | className |
Name of the class. More... | |
Protected Member Functions | |
FilterAeroForcesSPM (const LibUtilities::SessionReaderSharedPtr &pSession, const std::shared_ptr< SolverUtils::EquationSystem > &pEquation, const std::map< std::string, std::string > &pParams) | |
~FilterAeroForcesSPM () override=default | |
void | v_Initialise (const Array< OneD, const MultiRegions::ExpListSharedPtr > &pFields, const NekDouble &time) override |
void | v_Update (const Array< OneD, const MultiRegions::ExpListSharedPtr > &pFields, const NekDouble &time) override |
void | v_Finalise (const Array< OneD, const MultiRegions::ExpListSharedPtr > &pFields, const NekDouble &time) override |
bool | v_IsTimeDependent () override |
![]() | |
virtual void | v_Initialise (const Array< OneD, const MultiRegions::ExpListSharedPtr > &pFields, const NekDouble &time)=0 |
virtual void | v_Update (const Array< OneD, const MultiRegions::ExpListSharedPtr > &pFields, const NekDouble &time)=0 |
virtual void | v_Finalise (const Array< OneD, const MultiRegions::ExpListSharedPtr > &pFields, const NekDouble &time)=0 |
virtual bool | v_IsTimeDependent ()=0 |
virtual SOLVER_UTILS_EXPORT std::string | v_SetupOutput (const std::string ext, const ParamMap &pParams) |
virtual SOLVER_UTILS_EXPORT std::string | v_SetupOutput (const std::string ext, const std::string inname) |
Protected Attributes | |
unsigned int | m_index |
unsigned int | m_outputFrequency |
std::string | m_outputFile |
std::ofstream | m_outputStream |
NekDouble | m_startTime |
std::vector< std::string > | m_dirNames |
STL vector containing the names of the different directions. More... | |
NekDouble | m_spaceDim |
Dimension of the fluid domain. More... | |
Array< OneD, NekDouble > | m_Forces |
Array storing the last value of the aerodynamic forces. More... | |
![]() | |
LibUtilities::SessionReaderSharedPtr | m_session |
const std::weak_ptr< EquationSystem > | m_equ |
bool | m_updateOnInitialise = true |
Friends | |
class | MemoryManager< FilterAeroForcesSPM > |
Additional Inherited Members | |
![]() | |
typedef std::map< std::string, std::string > | ParamMap |
Definition at line 44 of file FilterAeroForcesSPM.h.
|
protected |
Definition at line 48 of file FilterAeroForcesSPM.cpp.
References Nektar::LibUtilities::Equation::Evaluate(), m_outputFile, m_outputFrequency, Nektar::SolverUtils::Filter::m_session, m_startTime, and Nektar::SolverUtils::Filter::SetupOutput().
|
overrideprotecteddefault |
void Nektar::FilterAeroForcesSPM::CalculateForces | ( | const Array< OneD, Array< OneD, NekDouble > > & | pIntVel, |
const Array< OneD, Array< OneD, NekDouble > > & | pUpPrev, | ||
const MultiRegions::ExpListSharedPtr & | pPhi, | ||
NekDouble | time, | ||
NekDouble | dt | ||
) |
Determine the total force on the body defined by \(\Phi\) (note that if the shape function represents more than one body, this function calculates the value of the final force after adding up the values for each body). This value must be scaled with the density to get the real force vector.
pIntVel | |
pUpPrev | |
pPhi | |
time | |
dt |
Definition at line 205 of file FilterAeroForcesSPM.cpp.
References m_Forces, m_index, m_outputFrequency, m_spaceDim, m_startTime, Vmath::Vmul(), and Vmath::Vsub().
|
inlinestatic |
Creates an instance of this class.
Definition at line 50 of file FilterAeroForcesSPM.h.
References Nektar::MemoryManager< DataType >::AllocateSharedPtr(), and CellMLToNektar.cellml_metadata::p.
|
overrideprotectedvirtual |
Implements Nektar::SolverUtils::Filter.
Definition at line 174 of file FilterAeroForcesSPM.cpp.
References m_outputStream.
|
overrideprotectedvirtual |
Implements Nektar::SolverUtils::Filter.
Definition at line 86 of file FilterAeroForcesSPM.cpp.
References m_dirNames, m_Forces, m_index, m_outputFile, m_outputStream, Nektar::SolverUtils::Filter::m_session, and m_spaceDim.
|
overrideprotectedvirtual |
Implements Nektar::SolverUtils::Filter.
Definition at line 187 of file FilterAeroForcesSPM.cpp.
|
overrideprotectedvirtual |
Implements Nektar::SolverUtils::Filter.
Definition at line 141 of file FilterAeroForcesSPM.cpp.
References m_Forces, m_index, m_outputFrequency, m_outputStream, m_spaceDim, and m_startTime.
|
friend |
Definition at line 108 of file FilterAeroForcesSPM.h.
|
static |
Name of the class.
Definition at line 62 of file FilterAeroForcesSPM.h.
|
protected |
STL vector containing the names of the different directions.
Definition at line 78 of file FilterAeroForcesSPM.h.
Referenced by v_Initialise().
Array storing the last value of the aerodynamic forces.
Definition at line 82 of file FilterAeroForcesSPM.h.
Referenced by CalculateForces(), v_Initialise(), and v_Update().
|
protected |
Definition at line 71 of file FilterAeroForcesSPM.h.
Referenced by CalculateForces(), v_Initialise(), and v_Update().
|
protected |
Definition at line 73 of file FilterAeroForcesSPM.h.
Referenced by FilterAeroForcesSPM(), and v_Initialise().
|
protected |
Definition at line 72 of file FilterAeroForcesSPM.h.
Referenced by CalculateForces(), FilterAeroForcesSPM(), and v_Update().
|
protected |
Definition at line 74 of file FilterAeroForcesSPM.h.
Referenced by v_Finalise(), v_Initialise(), and v_Update().
|
protected |
Dimension of the fluid domain.
Definition at line 80 of file FilterAeroForcesSPM.h.
Referenced by CalculateForces(), v_Initialise(), and v_Update().
|
protected |
Definition at line 76 of file FilterAeroForcesSPM.h.
Referenced by CalculateForces(), FilterAeroForcesSPM(), and v_Update().