Nektar++
|
#include <FilterMovingBody.h>
Static Public Member Functions | |
static SolverUtils::FilterSharedPtr | create (const LibUtilities::SessionReaderSharedPtr &pSession, const std::weak_ptr< SolverUtils::EquationSystem > &pEquation, const ParamMap &pParams) |
Creates an instance of this class. More... | |
Static Public Attributes | |
static std::string | className |
Private Attributes | |
std::vector< unsigned int > | m_boundaryRegionsIdList |
ID's of boundary regions where we want the forces. More... | |
std::vector< bool > | m_boundaryRegionIsInList |
Determines if a given Boundary Region is in m_boundaryRegionsIdList. More... | |
size_t | m_index_f |
size_t | m_index_m |
size_t | m_outputFrequency |
size_t | m_outputPlane |
plane to take history point from if using a homogeneous1D expansion More... | |
bool | m_isHomogeneous1D |
LibUtilities::BasisSharedPtr | m_homogeneousBasis |
std::string | m_BoundaryString |
size_t | m_planes |
number of planes for homogeneous1D expansion More... | |
Array< OneD, std::ofstream > | m_outputStream |
std::string | m_outputFile_fce |
std::string | m_outputFile_mot |
Friends | |
class | MemoryManager< FilterMovingBody > |
Additional Inherited Members | |
Public Types inherited from Nektar::SolverUtils::Filter | |
typedef std::map< std::string, std::string > | ParamMap |
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 |
Protected Attributes inherited from Nektar::SolverUtils::Filter | |
LibUtilities::SessionReaderSharedPtr | m_session |
const std::weak_ptr< EquationSystem > | m_equ |
Definition at line 50 of file FilterMovingBody.h.
Nektar::FilterMovingBody::FilterMovingBody | ( | const LibUtilities::SessionReaderSharedPtr & | pSession, |
const std::weak_ptr< SolverUtils::EquationSystem > & | pEquation, | ||
const ParamMap & | pParams | ||
) |
Definition at line 54 of file FilterMovingBody.cpp.
References ASSERTL0, Nektar::LibUtilities::Equation::Evaluate(), m_BoundaryString, m_isHomogeneous1D, m_outputFile_fce, m_outputFile_mot, m_outputFrequency, and Nektar::SolverUtils::Filter::m_session.
|
override |
Definition at line 111 of file FilterMovingBody.cpp.
|
inlinestatic |
Creates an instance of this class.
Definition at line 56 of file FilterMovingBody.h.
References Nektar::MemoryManager< DataType >::AllocateSharedPtr(), and CellMLToNektar.cellml_metadata::p.
void Nektar::FilterMovingBody::UpdateForce | ( | const LibUtilities::SessionReaderSharedPtr & | pSession, |
const Array< OneD, const MultiRegions::ExpListSharedPtr > & | pFields, | ||
Array< OneD, NekDouble > & | Aeroforces, | ||
const NekDouble & | time | ||
) |
Definition at line 220 of file FilterMovingBody.cpp.
References Nektar::StdRegions::StdExpansion::GetTotPoints(), m_boundaryRegionIsInList, m_index_f, m_outputFrequency, m_outputStream, Nektar::LibUtilities::P, Nektar::LibUtilities::ReduceSum, Vmath::Sadd(), Vmath::Smul(), Vmath::Vadd(), Vmath::Vmul(), Vmath::Vvtvp(), Nektar::UnitTests::z(), and Vmath::Zero().
void Nektar::FilterMovingBody::UpdateMotion | ( | const LibUtilities::SessionReaderSharedPtr & | pSession, |
const Array< OneD, const MultiRegions::ExpListSharedPtr > & | pFields, | ||
Array< OneD, NekDouble > & | MotionVars, | ||
const NekDouble & | time | ||
) |
Definition at line 686 of file FilterMovingBody.cpp.
References m_index_m, m_outputFrequency, m_outputStream, and Nektar::SolverUtils::Filter::m_session.
|
overridevirtual |
Implements Nektar::SolverUtils::Filter.
Definition at line 740 of file FilterMovingBody.cpp.
References m_outputStream.
|
overridevirtual |
Implements Nektar::SolverUtils::Filter.
Definition at line 118 of file FilterMovingBody.cpp.
References ASSERTL0, Nektar::StdRegions::find(), Nektar::ParseUtils::GenerateSeqVector(), Nektar::SpatialDomains::BoundaryConditions::GetBoundaryRegions(), m_boundaryRegionIsInList, m_boundaryRegionsIdList, m_BoundaryString, m_index_f, m_index_m, m_outputFile_fce, m_outputFile_mot, m_outputStream, and Nektar::SolverUtils::Filter::m_session.
|
overridevirtual |
Implements Nektar::SolverUtils::Filter.
Definition at line 754 of file FilterMovingBody.cpp.
|
inlineoverridevirtual |
|
friend |
Definition at line 48 of file FilterMovingBody.h.
|
static |
Definition at line 67 of file FilterMovingBody.h.
|
private |
Determines if a given Boundary Region is in m_boundaryRegionsIdList.
Definition at line 107 of file FilterMovingBody.h.
Referenced by UpdateForce(), and v_Initialise().
|
private |
ID's of boundary regions where we want the forces.
Definition at line 104 of file FilterMovingBody.h.
Referenced by v_Initialise().
|
private |
Definition at line 116 of file FilterMovingBody.h.
Referenced by FilterMovingBody(), and v_Initialise().
|
private |
Definition at line 115 of file FilterMovingBody.h.
|
private |
Definition at line 108 of file FilterMovingBody.h.
Referenced by UpdateForce(), and v_Initialise().
|
private |
Definition at line 109 of file FilterMovingBody.h.
Referenced by UpdateMotion(), and v_Initialise().
|
private |
Definition at line 114 of file FilterMovingBody.h.
Referenced by FilterMovingBody().
|
private |
Definition at line 120 of file FilterMovingBody.h.
Referenced by FilterMovingBody(), and v_Initialise().
|
private |
Definition at line 121 of file FilterMovingBody.h.
Referenced by FilterMovingBody(), and v_Initialise().
|
private |
Definition at line 110 of file FilterMovingBody.h.
Referenced by FilterMovingBody(), UpdateForce(), and UpdateMotion().
|
private |
plane to take history point from if using a homogeneous1D expansion
Definition at line 113 of file FilterMovingBody.h.
Definition at line 119 of file FilterMovingBody.h.
Referenced by UpdateForce(), UpdateMotion(), v_Finalise(), and v_Initialise().
|
private |
number of planes for homogeneous1D expansion
Definition at line 118 of file FilterMovingBody.h.