Nektar++
|
Filter for one-dimensional energy spectrum. More...
#include <FilterEnergy1D.h>
Public Member Functions | |
SOLVER_UTILS_EXPORT | FilterEnergy1D (const LibUtilities::SessionReaderSharedPtr &pSession, const ParamMap &pParams) |
Set up filter with output file and frequency parameters. More... | |
SOLVER_UTILS_EXPORT | ~FilterEnergy1D () |
Destructor. More... | |
Public Member Functions inherited from Nektar::SolverUtils::Filter | |
SOLVER_UTILS_EXPORT | Filter (const LibUtilities::SessionReaderSharedPtr &pSession) |
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 () |
Static Public Member Functions | |
static FilterSharedPtr | create (const LibUtilities::SessionReaderSharedPtr &pSession, 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 | |
virtual void | v_Initialise (const Array< OneD, const MultiRegions::ExpListSharedPtr > &pField, const NekDouble &time) |
Initialize filter. More... | |
virtual void | v_Update (const Array< OneD, const MultiRegions::ExpListSharedPtr > &pField, const NekDouble &time) |
Update filter output with the current timestep's orthogonal coefficients. More... | |
virtual void | v_Finalise (const Array< OneD, const MultiRegions::ExpListSharedPtr > &pField, const NekDouble &time) |
virtual bool | v_IsTimeDependent () |
Private Attributes | |
ofstream | m_out |
Output file. More... | |
unsigned int | m_outputFrequency |
Output frequency. More... | |
unsigned int | m_index |
Current index counter. More... | |
Friends | |
class | MemoryManager< FilterEnergy1D > |
Additional Inherited Members | |
Public Types inherited from Nektar::SolverUtils::Filter | |
typedef std::map< std::string, std::string > | ParamMap |
Protected Attributes inherited from Nektar::SolverUtils::Filter | |
LibUtilities::SessionReaderSharedPtr | m_session |
Filter for one-dimensional energy spectrum.
This filter transforms the coefficients of each element into an orthogonal basis and outputs these coefficients at each timestep. It can be used to, for example, detect high-order oscillations in the solution field.
Definition at line 53 of file FilterEnergy1D.h.
Nektar::SolverUtils::FilterEnergy1D::FilterEnergy1D | ( | const LibUtilities::SessionReaderSharedPtr & | pSession, |
const ParamMap & | pParams | ||
) |
Set up filter with output file and frequency parameters.
pSession | Current session. |
pParams | Map of parameters defined in XML file. |
Definition at line 52 of file FilterEnergy1D.cpp.
References ASSERTL0, Nektar::LibUtilities::Equation::Evaluate(), m_out, m_outputFrequency, and Nektar::SolverUtils::Filter::m_session.
Nektar::SolverUtils::FilterEnergy1D::~FilterEnergy1D | ( | ) |
|
inlinestatic |
Creates an instance of this class.
Definition at line 59 of file FilterEnergy1D.h.
References Nektar::MemoryManager< DataType >::AllocateSharedPtr().
|
protectedvirtual |
Implements Nektar::SolverUtils::Filter.
Definition at line 169 of file FilterEnergy1D.cpp.
References m_out.
|
protectedvirtual |
Initialize filter.
Implements Nektar::SolverUtils::Filter.
Definition at line 102 of file FilterEnergy1D.cpp.
References ASSERTL0.
|
protectedvirtual |
Implements Nektar::SolverUtils::Filter.
Definition at line 176 of file FilterEnergy1D.cpp.
|
protectedvirtual |
Update filter output with the current timestep's orthogonal coefficients.
Implements Nektar::SolverUtils::Filter.
Definition at line 114 of file FilterEnergy1D.cpp.
References Nektar::LibUtilities::eOrtho_A, Nektar::LibUtilities::InterpCoeff1D(), m_index, m_out, and m_outputFrequency.
|
friend |
Definition at line 56 of file FilterEnergy1D.h.
|
static |
Name of the class.
Definition at line 68 of file FilterEnergy1D.h.
|
private |
|
private |
Output file.
Definition at line 89 of file FilterEnergy1D.h.
Referenced by FilterEnergy1D(), v_Finalise(), and v_Update().
|
private |
Output frequency.
Definition at line 91 of file FilterEnergy1D.h.
Referenced by FilterEnergy1D(), and v_Update().