|
Nektar++
|
Defines a forcing term to be explicitly applied. More...
#include <Forcing.h>

Public Member Functions | |
| virtual SOLVER_UTILS_EXPORT | ~Forcing () |
| SOLVER_UTILS_EXPORT void | InitObject (const Array< OneD, MultiRegions::ExpListSharedPtr > &pFields, const unsigned int &pNumForcingFields, const TiXmlElement *pForce) |
| Initialise the forcing object. | |
| SOLVER_UTILS_EXPORT void | Apply (const Array< OneD, MultiRegions::ExpListSharedPtr > &fields, const Array< OneD, Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, NekDouble > > &outarray, const NekDouble &time) |
| Apply the forcing. | |
Static Public Member Functions | |
| static SOLVER_UTILS_EXPORT std::vector< ForcingSharedPtr > | Load (const LibUtilities::SessionReaderSharedPtr &pSession, const Array< OneD, MultiRegions::ExpListSharedPtr > &pFields, const unsigned int &pNumForcingFields=0) |
Protected Member Functions | |
| SOLVER_UTILS_EXPORT | Forcing (const LibUtilities::SessionReaderSharedPtr &) |
| Constructor. | |
| virtual SOLVER_UTILS_EXPORT void | v_InitObject (const Array< OneD, MultiRegions::ExpListSharedPtr > &pFields, const unsigned int &pNumForcingFields, const TiXmlElement *pForce)=0 |
| virtual SOLVER_UTILS_EXPORT void | v_Apply (const Array< OneD, MultiRegions::ExpListSharedPtr > &fields, const Array< OneD, Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, NekDouble > > &outarray, const NekDouble &time)=0 |
| void | EvaluateFunction (Array< OneD, MultiRegions::ExpListSharedPtr > pFields, LibUtilities::SessionReaderSharedPtr pSession, std::string pFieldName, Array< OneD, NekDouble > &pArray, const std::string &pFunctionName, NekDouble pTime=NekDouble(0)) |
| void | EvaluateTimeFunction (LibUtilities::SessionReaderSharedPtr pSession, std::string pFieldName, Array< OneD, NekDouble > &pArray, const std::string &pFunctionName, NekDouble pTime=NekDouble(0)) |
Protected Attributes | |
| LibUtilities::SessionReaderSharedPtr | m_session |
| Session reader. | |
| Array< OneD, Array< OneD, NekDouble > > | m_Forcing |
| Evaluated forcing function. | |
| int | m_NumVariable |
| Number of variables. | |
|
inlinevirtual |
|
protected |
| void Nektar::SolverUtils::Forcing::Apply | ( | const Array< OneD, MultiRegions::ExpListSharedPtr > & | fields, |
| const Array< OneD, Array< OneD, NekDouble > > & | inarray, | ||
| Array< OneD, Array< OneD, NekDouble > > & | outarray, | ||
| const NekDouble & | time | ||
| ) |
Apply the forcing.
| fields | Expansion lists corresponding to input arrays |
| inarray | u^n from previous timestep |
| outarray | output array to append forcing to |
Definition at line 70 of file Forcing.cpp.
References v_Apply().
|
protected |
Definition at line 139 of file Forcing.cpp.
References ASSERTL0, Nektar::LibUtilities::eFunctionTypeExpression, Nektar::LibUtilities::eFunctionTypeFile, m_session, and Vmath::Zero().
Referenced by Nektar::SolverUtils::ForcingBody::v_InitObject(), and Nektar::SolverUtils::ForcingAbsorption::v_InitObject().
|
protected |
Definition at line 118 of file Forcing.cpp.
References ASSERTL0.
Referenced by Nektar::SolverUtils::ForcingAbsorption::v_Apply().
| void Nektar::SolverUtils::Forcing::InitObject | ( | const Array< OneD, MultiRegions::ExpListSharedPtr > & | pFields, |
| const unsigned int & | pNumForcingFields, | ||
| const TiXmlElement * | pForce | ||
| ) |
Initialise the forcing object.
Definition at line 56 of file Forcing.cpp.
References v_InitObject().
|
static |
Definition at line 83 of file Forcing.cpp.
References Nektar::SolverUtils::GetForcingFactory().
Referenced by Nektar::IncNavierStokes::v_InitObject().
|
protectedpure virtual |
Implemented in Nektar::SolverUtils::ForcingProgrammatic, Nektar::SolverUtils::ForcingAbsorption, Nektar::SolverUtils::ForcingBody, and Nektar::SolverUtils::ForcingNoise.
Referenced by Apply().
|
protectedpure virtual |
Implemented in Nektar::SolverUtils::ForcingProgrammatic, Nektar::SolverUtils::ForcingAbsorption, Nektar::SolverUtils::ForcingBody, and Nektar::SolverUtils::ForcingNoise.
Referenced by InitObject().
Evaluated forcing function.
Definition at line 97 of file Forcing.h.
Referenced by Nektar::SolverUtils::ForcingProgrammatic::UpdateForces(), Nektar::SolverUtils::ForcingNoise::v_Apply(), Nektar::SolverUtils::ForcingBody::v_Apply(), Nektar::SolverUtils::ForcingAbsorption::v_Apply(), Nektar::SolverUtils::ForcingProgrammatic::v_Apply(), Nektar::SolverUtils::ForcingNoise::v_InitObject(), Nektar::SolverUtils::ForcingBody::v_InitObject(), Nektar::SolverUtils::ForcingAbsorption::v_InitObject(), and Nektar::SolverUtils::ForcingProgrammatic::v_InitObject().
|
protected |
Number of variables.
Definition at line 99 of file Forcing.h.
Referenced by Nektar::SolverUtils::ForcingNoise::v_Apply(), Nektar::SolverUtils::ForcingBody::v_Apply(), Nektar::SolverUtils::ForcingAbsorption::v_Apply(), Nektar::SolverUtils::ForcingProgrammatic::v_Apply(), Nektar::SolverUtils::ForcingNoise::v_InitObject(), Nektar::SolverUtils::ForcingBody::v_InitObject(), Nektar::SolverUtils::ForcingAbsorption::v_InitObject(), and Nektar::SolverUtils::ForcingProgrammatic::v_InitObject().
|
protected |
Session reader.
Definition at line 95 of file Forcing.h.
Referenced by EvaluateFunction(), Nektar::SolverUtils::ForcingAbsorption::v_Apply(), Nektar::SolverUtils::ForcingBody::v_InitObject(), and Nektar::SolverUtils::ForcingAbsorption::v_InitObject().
1.8.1.2