Go to the documentation of this file.
7 #ifndef INCLUDE_JET_VERTEX_CENTERED_VECTOR_GRID2_H_
8 #define INCLUDE_JET_VERTEX_CENTERED_VECTOR_GRID2_H_
37 double gridSpacingX = 1.0,
38 double gridSpacingY = 1.0,
41 double initialValueU = 0.0,
42 double initialValueV = 0.0);
87 std::shared_ptr<VectorGrid2>
clone()
const override;
139 const Vector2D& initialVal)
const override;
142 Size2 _resolution{1, 1};
150 #endif // INCLUDE_JET_VERTEX_CENTERED_VECTOR_GRID2_H_
static Builder builder()
Returns builder fox VertexCenteredVectorGrid2.
ExecutionPolicy
Execution policy tag.
Definition: parallel.h:13
VertexCenteredVectorGrid2 & operator=(const VertexCenteredVectorGrid2 &other)
Sets the contents with the given other grid.
const Vector2D & origin() const
Returns the grid origin.
Vector2< double > Vector2D
Double-type 2D vector.
Definition: vector2.h:340
Builder & withInitialValue(const Vector2D &initialVal)
Returns builder with initial value.
Builder & withGridSpacing(const Vector2D &gridSpacing)
Returns builder with grid spacing.
Builder & withOrigin(const Vector2D &gridOrigin)
Returns builder with grid origin.
Vector2D dataOrigin() const override
VertexCenteredVectorGrid2()
Constructs zero-sized grid.
Abstract base class for 2-D cartesian grid structure.
Definition: grid2.h:30
void fill(const std::function< Vector2D(const Vector2D &)> &func, ExecutionPolicy policy=ExecutionPolicy::kParallel) override
Fills the grid with given function.
VertexCenteredVectorGrid2(const VertexCenteredVectorGrid2 &other)
Copy constructor.
VertexCenteredVectorGrid2(size_t resolutionX, size_t resolutionY, double gridSpacingX=1.0, double gridSpacingY=1.0, double originX=0.0, double originY=0.0, double initialValueU=0.0, double initialValueV=0.0)
Definition: advection_solver2.h:18
std::shared_ptr< VectorGrid2 > clone() const override
Returns the copy of the grid instance.
std::shared_ptr< VertexCenteredVectorGrid2 > VertexCenteredVectorGrid2Ptr
Shared pointer for the VertexCenteredVectorGrid2 type.
Definition: vertex_centered_vector_grid2.h:94
Builder & withGridSpacing(double gridSpacingX, double gridSpacingY)
Returns builder with grid spacing.
VertexCenteredVectorGrid2 build() const
Builds VertexCenteredVectorGrid2 instance.
Abstract base class for 2-D vector grid builder.
Definition: vector_grid2.h:91
2-D vector class.
Definition: vector2.h:24
void swap(Grid2 *other) override
Swaps the contents with the given other grid.
Abstract base class for 2-D collocated vector grid structure.
Definition: collocated_vector_grid2.h:18
void set(const VertexCenteredVectorGrid2 &other)
Sets the contents with the given other grid.
Builder & withOrigin(double gridOriginX, double gridOriginY)
Returns builder with grid origin.
2-D Vertex-centered vector grid structure.
Definition: vertex_centered_vector_grid2.h:23
Builder & withInitialValue(double initialValX, double initialValY)
Returns builder with initial value.
2-D size class.
Definition: size2.h:19
VectorGrid2Ptr build(const Size2 &resolution, const Vector2D &gridSpacing, const Vector2D &gridOrigin, const Vector2D &initialVal) const override
Builds shared pointer of VertexCenteredVectorGrid2 instance.
VertexCenteredVectorGrid2(const Size2 &resolution, const Vector2D &gridSpacing=Vector2D(1.0, 1.0), const Vector2D &origin=Vector2D(), const Vector2D &initialValue=Vector2D())
#define JET_GRID2_TYPE_NAME(DerivedClassName)
Definition: grid2.h:113
const Size2 & resolution() const
Returns the grid resolution.
Size2 dataSize() const override
Returns the actual data point size.
const Vector2D & gridSpacing() const
Returns the grid spacing.
Builder & withResolution(const Size2 &resolution)
Returns builder with resolution.
void fill(const Vector2D &value, ExecutionPolicy policy=ExecutionPolicy::kParallel) override
Fills the grid with given value.
std::shared_ptr< VectorGrid2 > VectorGrid2Ptr
Shared pointer for the VectorGrid2 type.
Definition: vector_grid2.h:88
VertexCenteredVectorGrid2Ptr makeShared() const
Builds shared pointer of VertexCenteredVectorGrid2 instance.
A grid builder class that returns 2-D vertex-centered vector grid.
Definition: vertex_centered_vector_grid2.h:98
Builder & withResolution(size_t resolutionX, size_t resolutionY)
Returns builder with resolution.