51     Loki::SingleThreaded> Type;
 
   52     return Type::Instance();
 
   77     const int                                          nConvectiveFields,
 
   84     v_Advect(nConvectiveFields, pFields, pAdvVel, pInarray, pOutarray, pTime);
 
  103     if (pSession->DefinesSolverInfo(
"HOMOGENEOUS"))
 
  105         std::string HomoStr = pSession->GetSolverInfo(
"HOMOGENEOUS");
 
  106         if (HomoStr == 
"HOMOGENEOUS1D" || HomoStr == 
"Homogeneous1D" ||
 
  107             HomoStr == 
"1D"            || HomoStr == 
"Homo1D" ||
 
  108             HomoStr == 
"HOMOGENEOUS2D" || HomoStr == 
"Homogeneous2D" ||
 
  109             HomoStr == 
"2D"            || HomoStr == 
"Homo2D")
 
  115             ASSERTL0(
false, 
"Only 1D homogeneous dimension supported.");
 
  128             "A baseflow is not appropriate for this advection type.");
 
#define ASSERTL0(condition, msg)
 
LibUtilities::NekFactory< std::string, Advection, std::string > AdvectionFactory
Datatype of the NekFactory used to instantiate classes derived from the Advection class...
 
virtual SOLVER_UTILS_EXPORT void v_Advect(const int nConvectiveFields, const Array< OneD, MultiRegions::ExpListSharedPtr > &fields, const Array< OneD, Array< OneD, NekDouble > > &advVel, const Array< OneD, Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, NekDouble > > &outarray, const NekDouble &time)=0
Advects a vector field. 
 
SOLVER_UTILS_EXPORT void InitObject(LibUtilities::SessionReaderSharedPtr pSession, Array< OneD, MultiRegions::ExpListSharedPtr > pFields)
Interface function to initialise the advection object. 
 
SOLVER_UTILS_EXPORT void Advect(const int nConvectiveFields, const Array< OneD, MultiRegions::ExpListSharedPtr > &fields, const Array< OneD, Array< OneD, NekDouble > > &advVel, const Array< OneD, Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, NekDouble > > &outarray, const NekDouble &time)
Interface function to advect the vector field. 
 
boost::shared_ptr< SessionReader > SessionReaderSharedPtr
 
AdvectionFactory & GetAdvectionFactory()
Gets the factory for initialising advection objects. 
 
virtual SOLVER_UTILS_EXPORT void v_SetBaseFlow(const Array< OneD, Array< OneD, NekDouble > > &inarray)
Overrides the base flow used during linearised advection. 
 
int m_spaceDim
Storage for space dimension. Used for homogeneous extension. 
 
virtual SOLVER_UTILS_EXPORT void v_InitObject(LibUtilities::SessionReaderSharedPtr pSession, Array< OneD, MultiRegions::ExpListSharedPtr > pFields)
Initialises the advection object. 
 
Provides a generic Factory class.