38#include <boost/algorithm/string.hpp>
95 std::map<std::string, std::string> vParams;
97 vParams[
"OutputFile"] =
".dummyMRFForceFile";
MultiRegions::ExpListSharedPtr m_pressure
Pointer to field holding pressure field.
tKey RegisterCreatorFunction(tKey idKey, CreatorFunction classCreator, std::string pDesc="")
Register a class with the factory.
static std::string RegisterEnumValue(std::string pEnum, std::string pString, int pEnumValue)
Registers an enumeration value.
static std::shared_ptr< DataType > AllocateSharedPtr(const Args &...args)
Allocate a shared pointer from the memory pool.
void SetNewmarkBetaSolver(Array< OneD, NekDouble > &AddedMass)
void InitObject(const LibUtilities::SessionReaderSharedPtr session, const MultiRegions::ExpListSharedPtr &pField, Array< OneD, NekDouble > pivot)
void SetMovableDoFs(std::vector< bool > &moveDoFs)
void SetOldFvis(Array< OneD, NekDouble > force)
void SetInitialConditions(const LibUtilities::SessionReaderSharedPtr session, Array< OneD, NekDouble > MRFData)
void GetFilterInfo(const LibUtilities::SessionReaderSharedPtr session, std::map< std::string, std::string > &vParams)
void UpdateFrameVelocity(Array< OneD, NekDouble > &aeroforce, const NekDouble &time, Array< OneD, NekDouble > &MRFData)
Updates the forcing array with the current required forcing.
Array< OneD, MultiRegions::ExpListSharedPtr > m_fields
Array holding all dependent variables.
std::vector< bool > m_movableDoFs
LibUtilities::SessionReaderSharedPtr m_session
The session reader.
Array< OneD, NekDouble > m_movingFrameData
Moving reference frame status in the body frame X, Y, Z, Theta_x, Theta_y, Theta_z,...
SOLVER_UTILS_EXPORT void GetAeroForce(Array< OneD, NekDouble > forces)
Get aerodynamic force and moment.
Base class for unsteady solvers.
void InitialiseFilter(Array< OneD, NekDouble > aeroforce)
static std::string solverTypeLookupId
void v_DoInitialise(bool dumpInitialConditions=true) override
Sets up initial conditions.
VCSFSI(const LibUtilities::SessionReaderSharedPtr &pSession, const SpatialDomains::MeshGraphSharedPtr &pGraph)
Constructor.
SolverUtils::FilterAeroForcesSharedPtr m_aeroforceFilter
void v_InitObject(bool DeclareField=true) override
Initialisation object for EquationSystem.
RigidSolver m_rigidSolver
void v_SolveSolid(NekDouble time) override
static std::string className
Name of class.
static SolverUtils::EquationSystemSharedPtr create(const LibUtilities::SessionReaderSharedPtr &pSession, const SpatialDomains::MeshGraphSharedPtr &pGraph)
Creates an instance of this class.
void v_InitObject(bool DeclareField=true) override
Initialisation object for EquationSystem.
void v_DoInitialise(bool dumpInitialConditions=true) override
Sets up initial conditions.
void UpdateVelocityBCs(NekDouble time)
std::shared_ptr< SessionReader > SessionReaderSharedPtr
EquationSystemFactory & GetEquationSystemFactory()
std::shared_ptr< MeshGraph > MeshGraphSharedPtr
static Array< OneD, NekDouble > NullNekDouble1DArray