vector¶
- odl.space.space_utils.vector(array, dtype=None, order=None, impl='numpy')[source]¶
Create a vector from an array-like object.
- Parameters:
- array
array-like
Array from which to create the vector. Scalars become one-dimensional vectors.
- dtypeoptional
Set the data type of the vector manually with this option. By default, the space type is inferred from the input data.
- order{None, 'C', 'F'}, optional
Axis ordering of the data storage. For the default
None
, no contiguousness is enforced, avoiding a copy if possible.- implstr, optional
Impmlementation back-end for the space. See tensor_space_impl_names for available options.
- array
- Returns:
- vector
Tensor
Vector created from the input array. Its concrete type depends on the provided arguments.
- vector
Notes
This is a convenience function and not intended for use in speed-critical algorithms.
Examples
Create one-dimensional vectors:
>>> odl.vector([1, 2, 3]) # No automatic cast to float tensor_space(3, dtype=int).element([1, 2, 3]) >>> odl.vector([1, 2, 3], dtype=float) rn(3).element([ 1., 2., 3.]) >>> odl.vector([1, 2 - 1j, 3]) cn(3).element([ 1.+0.j, 2.-1.j, 3.+0.j])
Non-scalar types are also supported:
>>> odl.vector([True, True, False]) tensor_space(3, dtype=bool).element([ True, True, False])
The function also supports multi-dimensional input:
>>> odl.vector([[1, 2, 3], ... [4, 5, 6]]) tensor_space((2, 3), dtype=int).element( [[1, 2, 3], [4, 5, 6]] )