MeshGrid
#include <poplin/MeshGrid.hpp>
Functions to populate arrays with linear sequences of values.
-
namespace poplin
Linear algebra functions.
Functions
-
poplar::Tensor linspace(poplar::Graph &graph, const poplar::Type &type, float left, float right, size_t count, const poplar::DebugContext &debugContext = {})
Create a constant variable that contains values equally spaced in the specified closed range [
left
,right
].- Parameters
graph – Graph to which the variable is added.
left – The first value in the range.
right – The last value in the range.
type – Data type of variable to create. Must be
FLOAT
orHALF
.debugContext – Optional debug information.
- Returns
Constant Tensor of rank 1 (vector) containing the linspace values.
-
std::vector<poplar::Tensor> meshgrid2d(poplar::Graph &graph, poplar::Tensor x, poplar::Tensor y)
Create a coordinate grid for each axis by broadcasting the input tensors.
This 2D specialisation only supports two inputs that must be of rank 1 (vectors) and hence the output coordinate grids are always two matrices (so two outputs of rank 2).
- Parameters
graph – Graph to which the variables are added.
x – Co-ordinates for the x-axis.
y – Co-ordinates for the y-axis.
- Returns
A list of (two) tensors that form co-ordinate grids for each input axis. These output tensors will be views of the inputs (reshaped and broadcast).
-
poplar::Tensor linspace(poplar::Graph &graph, const poplar::Type &type, float left, float right, size_t count, const poplar::DebugContext &debugContext = {})