35 #ifndef SOLVERUTILS_DRIVER_H
36 #define SOLVERUTILS_DRIVER_H
#define SOLVER_UTILS_EXPORT
Provides a generic Factory class.
Base class for the development of solvers.
LibUtilities::SessionReaderSharedPtr session_LinNS
I the Coupling between SFD and arnoldi.
virtual ~Driver()
Destructor.
SOLVER_UTILS_EXPORT Array< OneD, EquationSystemSharedPtr > GetEqu()
LibUtilities::SessionReaderSharedPtr m_session
Session reader object.
virtual SOLVER_UTILS_EXPORT void v_InitObject(std::ostream &out=std::cout)
SOLVER_UTILS_EXPORT Array< OneD, NekDouble > GetImagEvl(void)
virtual SOLVER_UTILS_EXPORT void v_Execute(std::ostream &out=std::cout)=0
Virtual function for solve implementation.
static std::string evolutionOperatorLookupIds[]
Driver(const LibUtilities::SessionReaderSharedPtr pSession, const SpatialDomains::MeshGraphSharedPtr pGraph)
Initialises EquationSystem class members.
LibUtilities::CommSharedPtr m_comm
Communication object.
SOLVER_UTILS_EXPORT Array< OneD, NekDouble > GetRealEvl(void)
SpatialDomains::MeshGraphSharedPtr m_graph
MeshGraph object.
SOLVER_UTILS_EXPORT void InitObject(std::ostream &out=std::cout)
Initialise Object.
enum EvolutionOperatorType m_EvolutionOperator
Evolution Operator.
Array< OneD, EquationSystemSharedPtr > m_equ
Equation system to solve.
static std::string driverDefault
int m_nequ
number of equations
virtual SOLVER_UTILS_EXPORT Array< OneD, NekDouble > v_GetRealEvl(void)
SOLVER_UTILS_EXPORT void Execute(std::ostream &out=std::cout)
Execute driver.
virtual SOLVER_UTILS_EXPORT Array< OneD, NekDouble > v_GetImagEvl(void)
static std::string evolutionOperatorDef
std::shared_ptr< SessionReader > SessionReaderSharedPtr
std::shared_ptr< Comm > CommSharedPtr
Pointer to a Communicator object.
LibUtilities::NekFactory< std::string, Driver, const LibUtilities::SessionReaderSharedPtr &, const SpatialDomains::MeshGraphSharedPtr & > DriverFactory
Datatype of the NekFactory used to instantiate classes derived from the Driver class.
std::shared_ptr< Driver > DriverSharedPtr
A shared pointer to a Driver object.
DriverFactory & GetDriverFactory()
std::shared_ptr< MeshGraph > MeshGraphSharedPtr
The above copyright notice and this permission notice shall be included.