Vector¶
-
class
sknano.core.math.vector.
Vector
[source] [edit on github][source]¶ Bases:
numpy.ndarray
Abstract object representation of a vector in \(R^n\)
Parameters: - v (array_like, optional) – components of vector
- nd ({None, int}, optional) –
- p0 (array_like, optional) – Origin
Point
of vector in \(R^n\) space. - p (array_like, optional) – Terminating
Point
of vector. \(x, y\) coordinates of point in \(R^2\) space. \(x, y, z\) coordinates of point in \(R^3\) space. - dtype (data-type, optional) –
- copy (bool, optional) –
Notes
Todo
add new methods for coordinate transformations
Examples
I began writing my own
Point
andVector
classes while trying to teach myself about subclassingndarray
. I still don’t completely understand the machinery of it, but I ended up with some code that’s been useful for handling math operations involving points and vectors. More testing is in order...Here are some examples of their use.
Attributes
T
Same as self.transpose(), except that self is returned if self.ndim < 2. base
Base object if memory is from some other object. column_matrix
Return column matrix representation of Vector
coordinates.ctypes
An object to simplify the interaction of the array with the ctypes module. data
Python buffer object pointing to the start of the array’s data. dtype
Data-type of the array’s elements. flags
Information about the memory layout of the array. flat
A 1-D iterator over the array. imag
The imaginary part of the array. itemsize
Length of one array element in bytes. length
Alias for Vector.norm
.mag
Alias for Vector.norm
.magnitude
Alias for Vector.norm
.nbytes
Total bytes consumed by the elements of the array. ndim
Number of array dimensions. norm
Return the vector norm. p
Point
ofVector
head.p0
Point
ofVector
tail.real
The real part of the array. row_matrix
Return row matrix representation of Vector
coordinates.shape
Tuple of array dimensions. size
Number of elements in the array. strides
Tuple of bytes to step in each dimension when traversing an array. unit_vector
Return unit vector. Methods
all
([axis, out, keepdims])Returns True if all elements evaluate to True. angle
(other)Angle between two Vector
s.any
([axis, out, keepdims])Returns True if any of the elements of a
evaluate to True.argmax
([axis, out])Return indices of the maximum values along the given axis. argmin
([axis, out])Return indices of the minimum values along the given axis of a
.argpartition
(kth[, axis, kind, order])Returns the indices that would partition this array. argsort
([axis, kind, order])Returns the indices that would sort this array. astype
(dtype[, order, casting, subok, copy])Copy of the array, cast to a specified type. byteswap
(inplace)Swap the bytes of the array elements choose
(choices[, out, mode])Use an index array to construct a new array from a set of choices. clip
([min, max, out])Return an array whose values are limited to [min, max]
.compress
(condition[, axis, out])Return selected slices of this array along given axis. conj
()Complex-conjugate all elements. conjugate
()Return the complex conjugate, element-wise. copy
()Return a copy of the Vector
.cross
(other)Cross product of two Vector
s.cumprod
([axis, dtype, out])Return the cumulative product of the elements along the given axis. cumsum
([axis, dtype, out])Return the cumulative sum of the elements along the given axis. diagonal
([offset, axis1, axis2])Return specified diagonals. dot
(other[, out])Dot product of two Vector
s.dump
(file)Dump a pickle of the array to the specified file. dumps
()Returns the pickle of the array as a string. fill
(value)Fill the array with a scalar value. flatten
([order])Return a copy of the array collapsed into one dimension. getfield
(dtype[, offset])Returns a field of the given array as a certain type. item
(*args)Copy an element of an array to a standard Python scalar and return it. itemset
(*args)Insert scalar into an array (scalar is cast to array’s dtype, if possible) max
([axis, out])Return the maximum along a given axis. mean
([axis, dtype, out, keepdims])Returns the average of the array elements along given axis. min
([axis, out, keepdims])Return the minimum along a given axis. newbyteorder
([new_order])Return the array with the same data viewed with a different byte order. nonzero
()Return the indices of the elements that are non-zero. normalize
()Normalize the Vector
to aunit_vector
.partition
(kth[, axis, kind, order])Rearranges the elements in the array in such a way that value of the element in kth position is in the position it would be in a sorted array. prod
([axis, dtype, out, keepdims])Return the product of the array elements over the given axis projection
(other)Vector projection onto Vector
other
.ptp
([axis, out])Peak to peak (maximum - minimum) value along a given axis. put
(indices, values[, mode])Set a.flat[n] = values[n]
for alln
in indices.ravel
([order])Return a flattened array. rejection
(other)Vector rejection onto Vector
other
.repeat
(repeats[, axis])Repeat elements of an array. reshape
(shape[, order])Returns an array containing the same data with a new shape. resize
(new_shape[, refcheck])Change shape and size of array in-place. rezero
([epsilon])Re-zero Vector
coordinates near zero.rezero_components
([epsilon])Alias for Vector.rezero
rotate
([angle, axis, anchor_point, ...])Rotate Vector
coordinates.round
([decimals, out])Return a
with each element rounded to the given number of decimals.scale
()searchsorted
(v[, side, sorter])Find indices where elements of v should be inserted in a to maintain order. setfield
(val, dtype[, offset])Put a value into a specified place in a field defined by a data-type. setflags
([write, align, uic])Set array flags WRITEABLE, ALIGNED, and UPDATEIFCOPY, respectively. sort
([axis, kind, order])Sort an array, in-place. squeeze
([axis])Remove single-dimensional entries from the shape of a
.std
([axis, dtype, out, ddof, keepdims])Returns the standard deviation of the array elements along given axis. sum
([axis, dtype, out, keepdims])Return the sum of the array elements over the given axis. swapaxes
(axis1, axis2)Return a view of the array with axis1
andaxis2
interchanged.take
(indices[, axis, out, mode])Return an array formed from the elements of a
at the given indices.tobytes
([order])Construct Python bytes containing the raw data bytes in the array. tofile
(fid[, sep, format])Write array to a file as text or binary (default). tolist
()List of Vector
coordinates with values formatted for pretty output.tostring
([order])Construct Python bytes containing the raw data bytes in the array. trace
([offset, axis1, axis2, dtype, out])Return the sum along diagonals of the array. translate
(t[, fix_anchor_point])Translate Vector
coordinates byVector
t
.transpose
(*axes)Returns a view of the array with axes transposed. var
([axis, dtype, out, ddof, keepdims])Returns the variance of the array elements, along given axis. view
([dtype, type])New view of array with the same data. Attributes Summary
column_matrix
Return column matrix representation of Vector
coordinates.length
Alias for Vector.norm
.mag
Alias for Vector.norm
.magnitude
Alias for Vector.norm
.norm
Return the vector norm. p
Point
ofVector
head.p0
Point
ofVector
tail.row_matrix
Return row matrix representation of Vector
coordinates.unit_vector
Return unit vector. Methods Summary
angle
(other)Angle between two Vector
s.copy
()Return a copy of the Vector
.cross
(other)Cross product of two Vector
s.dot
(other[, out])Dot product of two Vector
s.normalize
()Normalize the Vector
to aunit_vector
.projection
(other)Vector projection onto Vector
other
.rejection
(other)Vector rejection onto Vector
other
.rezero
([epsilon])Re-zero Vector
coordinates near zero.rezero_components
([epsilon])Alias for Vector.rezero
rotate
([angle, axis, anchor_point, ...])Rotate Vector
coordinates.scale
()tolist
()List of Vector
coordinates with values formatted for pretty output.translate
(t[, fix_anchor_point])Translate Vector
coordinates byVector
t
.Attributes Documentation
-
length
¶ Alias for
Vector.norm
.
-
mag
¶ Alias for
Vector.norm
.
-
magnitude
¶ Alias for
Vector.norm
.
-
norm
¶ Return the vector norm.
-
unit_vector
¶ Return unit vector.
Methods Documentation
-
angle
(other)[source] [edit on github][source]¶ Angle between two
Vector
s.
-
copy
()[source] [edit on github][source]¶ Return a copy of the
Vector
.
-
cross
(other)[source] [edit on github][source]¶ Cross product of two
Vector
s.
-
dot
(other, out=None)[source] [edit on github][source]¶ Dot product of two
Vector
s.
-
normalize
()[source] [edit on github][source]¶ Normalize the
Vector
to aunit_vector
.
-
projection
(other)[source] [edit on github][source]¶ Vector projection onto
Vector
other
.
-
rejection
(other)[source] [edit on github][source]¶ Vector rejection onto
Vector
other
.
-
rezero
(epsilon=1e-10)[source] [edit on github][source]¶ Re-zero
Vector
coordinates near zero.Set
Vector
coordinates with absolute value less thanepsilon
to zero.Parameters: epsilon (float, optional) – Smallest allowed absolute value of any \(x,y,z\) coordinate.
-
rezero_components
(epsilon=1e-10)[source] [edit on github][source]¶ Alias for
Vector.rezero
-
rotate
(angle=None, axis=None, anchor_point=None, rot_point=None, from_vector=None, to_vector=None, degrees=False, transform_matrix=None, fix_anchor_point=False, verbose=False, **kwargs)[source] [edit on github][source]¶ Rotate
Vector
coordinates.Parameters: - angle (float) – Rotation angle in radians, unless
degrees
isTrue
. - axis (
Vector
, optional) – - anchor_point (
Point
, optional) – - rot_point (
Point
, optional) – - to_vector (from_vector,) –
- degrees (
bool
, optional) – IfTrue
, you are saying that theangle
is in degrees. - transform_matrix (
ndarray
) – - fix_anchor_point (
bool
, optional) – IfTrue
, leave the tail of the vector (Vector.p0
) fixed (default:False
).
See also
core.math.rotate
- angle (float) – Rotation angle in radians, unless
-
tolist
()[source] [edit on github][source]¶ List of
Vector
coordinates with values formatted for pretty output.