36#include "ImmersedBoundaryElement.hpp"
39template<
unsigned ELEMENT_DIM,
unsigned SPACE_DIM>
43 mpFluidSource(nullptr),
45 mIsBoundaryElement(false)
47 if constexpr (ELEMENT_DIM == SPACE_DIM)
50 assert(rNodes.size() > 2);
58template<
unsigned ELEMENT_DIM,
unsigned SPACE_DIM>
63template<
unsigned ELEMENT_DIM,
unsigned SPACE_DIM>
66 mpFluidSource = fluidSource;
69template<
unsigned ELEMENT_DIM,
unsigned SPACE_DIM>
75template<
unsigned ELEMENT_DIM,
unsigned SPACE_DIM>
81template<
unsigned ELEMENT_DIM,
unsigned SPACE_DIM>
84 return mAverageNodeSpacing;
87template<
unsigned ELEMENT_DIM,
unsigned SPACE_DIM>
90 mAverageNodeSpacing = averageNodeSpacing;
93template<
unsigned ELEMENT_DIM,
unsigned SPACE_DIM>
96 return mIsBoundaryElement;
99template<
unsigned ELEMENT_DIM,
unsigned SPACE_DIM>
102 mIsBoundaryElement = isBoundaryElement;
105template<
unsigned ELEMENT_DIM,
unsigned SPACE_DIM>
108 mCornerNodes.push_back(node);
121template<
unsigned SPACE_DIM>
124 mpFluidSource(nullptr),
126 mIsBoundaryElement(false)
130template<
unsigned SPACE_DIM>
133 EXCEPTION(
"SetFluidSource not implemented for 1D");
136template<
unsigned SPACE_DIM>
139 EXCEPTION(
"GetFluidSource not implemented for 1D");
143template<
unsigned SPACE_DIM>
149template<
unsigned SPACE_DIM>
152 return mAverageNodeSpacing;
155template<
unsigned SPACE_DIM>
158 mAverageNodeSpacing = averageNodeSpacing;
161template<
unsigned SPACE_DIM>
164 return mIsBoundaryElement;
167template<
unsigned SPACE_DIM>
170 mIsBoundaryElement = isBoundaryElement;
const double DOUBLE_UNSET
#define EXCEPTION(message)
void SetAverageNodeSpacing(double averageNodeSpacing)
std::shared_ptr< FluidSource< SPACE_DIM > > GetFluidSource()
std::vector< Node< SPACE_DIM > * > & rGetCornerNodes()
virtual ~ImmersedBoundaryElement()
void SetFluidSource(std::shared_ptr< FluidSource< SPACE_DIM > > fluidSource)
void AddCornerNode(Node< SPACE_DIM > *node)
ImmersedBoundaryElement(unsigned index, const std::vector< Node< SPACE_DIM > * > &rNodes)
double GetAverageNodeSpacing()
virtual bool IsElementOnBoundary() const
void SetIsBoundaryElement(bool isBoundaryElement)