Nektar++
Public Member Functions | Private Attributes | List of all members
Nektar::SolverUtils::ALETranslate Struct Referencefinal

#include <ALEHelper.h>

Inheritance diagram for Nektar::SolverUtils::ALETranslate:
[legend]

Public Member Functions

 ALETranslate (SpatialDomains::ZoneBaseShPtr zone)
 
void v_UpdateGridVel (const NekDouble time, Array< OneD, MultiRegions::ExpListSharedPtr > &fields, Array< OneD, Array< OneD, NekDouble > > &gridVelocity) final
 
- Public Member Functions inherited from Nektar::SolverUtils::ALEBase
virtual ~ALEBase ()=default
 
void UpdateGridVel (const NekDouble time, Array< OneD, MultiRegions::ExpListSharedPtr > &fields, Array< OneD, Array< OneD, NekDouble > > &gridVelocity)
 

Private Attributes

SpatialDomains::ZoneTranslateShPtr m_zone
 

Detailed Description

Definition at line 130 of file ALEHelper.h.

Constructor & Destructor Documentation

◆ ALETranslate()

Nektar::SolverUtils::ALETranslate::ALETranslate ( SpatialDomains::ZoneBaseShPtr  zone)

Definition at line 306 of file ALEHelper.cpp.

307 : m_zone(std::static_pointer_cast<SpatialDomains::ZoneTranslate>(zone))
308{
309}
SpatialDomains::ZoneTranslateShPtr m_zone
Definition: ALEHelper.h:140

Member Function Documentation

◆ v_UpdateGridVel()

void Nektar::SolverUtils::ALETranslate::v_UpdateGridVel ( const NekDouble  time,
Array< OneD, MultiRegions::ExpListSharedPtr > &  fields,
Array< OneD, Array< OneD, NekDouble > > &  gridVelocity 
)
finalvirtual

Implements Nektar::SolverUtils::ALEBase.

Definition at line 311 of file ALEHelper.cpp.

315{
316 auto vel = m_zone->GetVel(time);
317 auto exp = fields[0]->GetExp();
318
319 auto elements = m_zone->GetElements();
320 for (auto &el : elements)
321 {
322 int indx = fields[0]->GetElmtToExpId(el->GetGlobalID());
323 int offset = fields[0]->GetPhys_Offset(indx);
324 auto expansion = (*exp)[indx];
325
326 int nq = expansion->GetTotPoints();
327 for (int i = 0; i < nq; ++i)
328 {
329 for (int j = 0; j < gridVelocity.size(); ++j)
330 {
331 gridVelocity[j][offset + i] += vel[j];
332 }
333 }
334 }
335}

References m_zone.

Member Data Documentation

◆ m_zone

SpatialDomains::ZoneTranslateShPtr Nektar::SolverUtils::ALETranslate::m_zone
private

Definition at line 140 of file ALEHelper.h.

Referenced by v_UpdateGridVel().