pub fn ix_<T: Clone>(sequences: &[&Array<T>]) -> Result<Vec<Array<T>>>Expand description
Create an open mesh from input arrays (equivalent to np.ix_)
Construct an open mesh from multiple sequences. This function takes N 1-D sequences and returns N N-D arrays. These arrays can be used for vectorized evaluation of N-D scalar/vector fields over N-D grids.
§Parameters
sequences- 1-D arrays representing coordinates along each axis
§Returns
Vector of N-D arrays where each array has values only along its respective axis
§Examples
use numrs2::prelude::*;
use numrs2::array_ops::creation::ix_;
let a = Array::from_vec(vec![0, 1, 2]);
let b = Array::from_vec(vec![3, 4]);
let indices = ix_(&[&a, &b]).expect("operation should succeed");
assert_eq!(indices.len(), 2);
assert_eq!(indices[0].shape(), vec![3, 1]); // Values for first dimension
assert_eq!(indices[1].shape(), vec![1, 2]); // Values for second dimension
// Can be used for advanced indexing
let x = Array::from_vec(vec![10, 11, 12]);
let y = Array::from_vec(vec![20, 30]);
let grid_indices = ix_(&[&x, &y]).expect("operation should succeed");