44 "Far field boundary condition of moving reference frame");
51 [[maybe_unused]]
int nbnd, [[maybe_unused]]
int spacedim,
52 [[maybe_unused]]
int bnddim)
59 if (cond[i]->GetUserDefined() ==
classname)
74 std::static_pointer_cast<
76 ->m_dirichletCondition);
83 std::map<std::string, NekDouble> ¶ms)
92 if (params.find(
"Time") != params.end())
94 time = params[
"Time"];
101 if (params.find(
"Theta_z") != params.end())
104 NekDouble c = cos(params[
"Theta_z"]), s = sin(params[
"Theta_z"]);
105 vels[0] = v0 * c + v1 * s;
106 vels[1] = -v0 * s + v1 * c;
114 it.second->GetPlane(0)->UpdatePhys();
116 it.second->GetPlane(0)->FwdTransBndConstrained(
117 tmpvel, it.second->GetPlane(0)->UpdateCoeffs());
123 it.second->FwdTransBndConstrained(tmpvel,
124 it.second->UpdateCoeffs());
std::map< int, MultiRegions::ExpListSharedPtr > m_BndExp
virtual void v_Initialise(const LibUtilities::SessionReaderSharedPtr &pSession)
void SetNumPointsOnPlane0(int &npointsPlane0)
std::map< int, SpatialDomains::BoundaryConditionShPtr > m_BndConds
tKey RegisterCreatorFunction(tKey idKey, CreatorFunction classCreator, std::string pDesc="")
Register a class with the factory.
std::vector< LibUtilities::Equation > m_definedVels
void v_Update(const Array< OneD, const Array< OneD, NekDouble > > &fields, const Array< OneD, const Array< OneD, NekDouble > > &Adv, std::map< std::string, NekDouble > ¶ms) override
static IncBaseConditionSharedPtr create(const LibUtilities::SessionReaderSharedPtr pSession, Array< OneD, MultiRegions::ExpListSharedPtr > pFields, Array< OneD, SpatialDomains::BoundaryConditionShPtr > cond, Array< OneD, MultiRegions::ExpListSharedPtr > exp, int nbnd, int spacedim, int bnddim)
static std::string className
MovingFrameFar(const LibUtilities::SessionReaderSharedPtr pSession, Array< OneD, MultiRegions::ExpListSharedPtr > pFields, Array< OneD, SpatialDomains::BoundaryConditionShPtr > cond, Array< OneD, MultiRegions::ExpListSharedPtr > exp, int nbnd, int spacedim, int bnddim)
void v_Initialise(const LibUtilities::SessionReaderSharedPtr &pSession) override
std::shared_ptr< SessionReader > SessionReaderSharedPtr
IncBCFactory & GetIncBCFactory()
void Fill(int n, const T alpha, T *x, const int incx)
Fill a vector with a constant value.