uniform_grid_fromintv¶
- odl.discr.grid.uniform_grid_fromintv(intv_prod, shape, nodes_on_bdry=True)[source]¶
Return a grid from sampling an interval product uniformly.
The resulting grid will by default include
intv_prod.min_ptandintv_prod.max_ptas grid points. If you want a subdivision into equally sized cells with grid points in the middle, useuniform_partitioninstead.- Parameters:
- intv_prod
IntervalProd Set to be sampled.
- shapeint or sequence of ints
Number of nodes per axis. Entries corresponding to degenerate axes must be equal to 1.
- nodes_on_bdrybool or sequence, optional
If a sequence is provided, it determines per axis whether to place the last grid point on the boundary (
True) or shift it by half a cell size into the interior (False). In each axis, an entry may consist in a single bool or a 2-tuple of bool. In the latter case, the first tuple entry decides for the left, the second for the right boundary. The length of the sequence must bearray.ndim.A single boolean is interpreted as a global choice for all boundaries.
- intv_prod
- Returns:
- sampling
RectGrid Uniform sampling grid for the interval product.
- sampling
See also
uniform_gridCreate a uniform grid directly.
odl.discr.partition.uniform_partition_fromintvdivide interval product into equally sized subsets
Examples
>>> rbox = odl.IntervalProd([-1.5, 2], [-0.5, 3]) >>> grid = uniform_grid_fromintv(rbox, (3, 3)) >>> grid.coord_vectors (array([-1.5, -1. , -0.5]), array([ 2. , 2.5, 3. ]))
To have the nodes in the "middle", use
nodes_on_bdry=False:>>> grid = uniform_grid_fromintv(rbox, (2, 2), nodes_on_bdry=False) >>> grid.coord_vectors (array([-1.25, -0.75]), array([ 2.25, 2.75]))