Vectors Module¶
Vectors, handles, and inner products.
We recommend using these functions and classes when possible. Otherwise, you can write your own vector class and/or vector handle, see documentation Interfacing with your data.
-
class
modred.vectors.
InnerProductTrapz
(*grids)[source]¶ Callable that computes inner product of n-dimensional arrays defined on a spatial grid, using the trapezoidal rule.
- Args:
*grids
: 1D arrays of grid points, in the order of the spatial dimensions.
Usage:
nx = 10 ny = 11 x_grid = 1 - np.cos(np.linspace(0, np.pi, nx)) y_grid = np.linspace(0, 1.0, ny)**2 my_trapz = InnerProductTrapz(x_grid, y_grid) v1 = np.random.random((nx,ny)) v2 = np.random.random((nx,ny)) IP_v1_v2 = my_trapz(v1, v2)
-
class
modred.vectors.
VecHandle
(base_vec_handle=None, scale=None)[source]¶ Recommended base class for vector handles (not required).
-
class
modred.vectors.
VecHandleArrayText
(vec_path, base_vec_handle=None, scale=None, is_complex=False)[source]¶ Gets and puts array vector objects from/in text files.
-
class
modred.vectors.
VecHandleInMemory
(vec=None, base_vec_handle=None, scale=None)[source]¶ Gets and puts vectors from/in memory.