numerics
Loading...
Searching...
No Matches
grid3d.cpp
Go to the documentation of this file.
1
#include "
spatial/grid3d.hpp
"
2
#include <algorithm>
3
4
namespace
num
{
5
6
Grid3D::Grid3D
(
int
nx,
int
ny,
int
nz,
double
dx)
7
: nx_(nx), ny_(ny), nz_(nz), dx_(dx), data_(nx * ny * nz, 0.0) {}
8
9
void
Grid3D::fill
(
real
v) {
10
std::fill(data_.begin(), data_.end(), v);
11
}
12
13
Vector
Grid3D::to_vector
()
const
{
14
Vector
v(
size
());
15
for
(
int
i
= 0;
i
<
size
(); ++
i
) v[
i
] = data_[
i
];
16
return
v;
17
}
18
19
void
Grid3D::from_vector
(
const
Vector
& v) {
20
for
(
int
i
= 0;
i
<
size
(); ++
i
) data_[
i
] = v[
i
];
21
}
22
23
}
// namespace num
num::BasicVector< real >
num::Grid3D::size
int size() const
Definition
grid3d.hpp:24
num::Grid3D::from_vector
void from_vector(const Vector &v)
Copy solver result back into grid.
Definition
grid3d.cpp:19
num::Grid3D::Grid3D
Grid3D(int nx, int ny, int nz, double dx=1.0)
Definition
grid3d.cpp:6
num::Grid3D::to_vector
Vector to_vector() const
Copy contents into a new Vector (for solver interop).
Definition
grid3d.cpp:13
num::Grid3D::fill
void fill(real v)
Definition
grid3d.cpp:9
grid3d.hpp
3D Cartesian scalar grid backed by num::Vector storage.
num
Definition
quadrature.hpp:8
num::real
double real
Definition
types.hpp:10
num::ipow
constexpr T ipow(T x) noexcept
Compute x^N at compile time via repeated squaring.
Definition
integer_pow.hpp:34
src
spatial
grid3d.cpp
Generated by
1.9.8