Expand description
Complete ndarray re-export for SciRS2 ecosystem
This module provides a single, unified access point for ALL ndarray functionality, ensuring SciRS2 POLICY compliance across the entire ecosystem.
§Design Philosophy
- Complete Feature Parity: All ndarray functionality available through scirs2-core
- Zero Breaking Changes: Existing ndarray_ext continues to work
- Policy Compliance: No need for direct ndarray imports anywhere
- Single Source of Truth: One place for all array operations
§Usage
// Instead of:
use ndarray::{Array, array, s, Axis}; // ❌ POLICY violation
// Use:
use scirs2_core::ndarray::*; // ✅ POLICY compliant
let arr = array![[1, 2], [3, 4]];
let slice = arr.slice(s![.., 0]);
Modules§
- compat
- Compatibility module for smooth migration from fragmented imports
- iter
- Re-export everything from ndarray crate Producers, iterables and iterators.
- linalg
- Re-export everything from ndarray crate Linear algebra.
- migration_
guide - Migration Guide: From Fragmented to Unified ndarray Access
- parallel
- Re-export everything from ndarray crate Parallelization features for ndarray.
- prelude
- Prelude module with most commonly used items
- utils
- Additional utilities for SciRS2 ecosystem
Macros§
- array
- Re-export essential macros that were missing in some modules
Create an
Array
with one, two, three, four, five, or six dimensions. - azip
- Re-export essential macros that were missing in some modules Array zip macro: lock step function application across several arrays and producers.
- concatenate
- Re-export everything from ndarray crate Concatenate arrays along the given axis.
- par_
azip - Re-export everything from ndarray crate Parallelized array zip macro: lock step function application across several arrays and producers.
- s
- Re-export essential macros that were missing in some modules Slice argument constructor.
- stack
- Re-export essential macros that were missing in some modules Stack arrays along the new axis.
Structs§
- Array
Base - An n-dimensional array.
- Axis
- An axis index.
- Axis
Description - Description of the axis, its length and its stride.
- Dim
- Dimension description.
- IxDyn
Impl - Dynamic dimension or index type.
- Linspace
- Re-export everything from ndarray crate An iterator of a sequence of evenly spaced floats.
- Logspace
- Re-export everything from ndarray crate An iterator of a sequence of logarithmically spaced number.
- Math
Cell - Re-export everything from ndarray crate
A transparent wrapper of
Cell<T>
which is identical in every way, except it will implement arithmetic operators as well. - NdArray
- An n-dimensional array.
- NewAxis
- Token to represent a new axis in a slice description.
- Owned
ArcRepr - ArcArray’s representation.
- Owned
Repr - Array’s representation.
- RawView
Repr - Array pointer’s representation.
- Shape
- A contiguous array shape of n dimensions.
- Shape
Error - An error related to array shape or layout.
- Slice
- A slice (range with step size).
- Slice
Info - Represents all of the necessary information to perform a slice.
- Stride
Shape - An array shape of n dimensions in c-order, f-order or custom strides.
- View
Repr - Array view’s representation.
- Zip
- Lock step function application across several arrays or other producers.
Enums§
- CowRepr
- Re-export everything from ndarray crate CowArray’s representation.
- Error
Kind - Error code for an error related to array shape or layout.
- Fold
While - Value controlling the execution of
.fold_while
onZip
. - Order
- Array order
- Slice
Info Elem - A slice (range with step), an index, or a new axis token.
Traits§
- AsArray
- Argument conversion into an array view
- Assign
Elem - Re-export everything from ndarray crate A producer element that can be assigned to once
- Data
- Array representation trait.
- DataMut
- Array representation trait.
- Data
Owned - Array representation trait.
- Data
Shared - Array representation trait.
- DimAdd
- Re-export everything from ndarray crate Adds the two dimensions at compile time.
- DimMax
- Re-export everything from ndarray crate
- Dimension
- Array shape and index trait.
- Index
Longer - Re-export everything from ndarray crate Extra indexing methods for array views
- Into
Dimension - Re-export everything from ndarray crate Argument conversion a dimension.
- Into
NdProducer - Re-export everything from ndarray crate Argument conversion into a producer.
- Linalg
Scalar - Elements that support linear algebra operations.
- Multi
Slice Arg - Re-export everything from ndarray crate Slicing information describing multiple mutable, disjoint slices.
- NdFloat
- Floating-point element types
f32
andf64
. - NdIndex
- Re-export everything from ndarray crate Tuple or fixed size arrays that can be used to index an array.
- NdProducer
- A producer of an n-dimensional set of elements; for example an array view, mutable array view or an iterator that yields chunks.
- RawData
- Array representation trait.
- RawData
Clone - Array representation trait.
- RawData
Mut - Array representation trait.
- RawData
Subst - Re-export everything from ndarray crate Array representation trait.
- Remove
Axis - Array shape with a next smaller dimension.
- Scalar
Operand - Elements that can be used as direct operands in arithmetic with arrays.
- Shape
Arg - Re-export everything from ndarray crate Array shape argument with optional order parameter
- Shape
Builder - A trait for
Shape
andD where D: Dimension
that allows customizing the memory layout (strides) of an array shape. - Slice
Arg - A type that can slice an array of dimension
D
.
Functions§
- Dim
- Create a new dimension value.
- Ix0
- Create a zero-dimensional index
- Ix1
- Create a one-dimensional index
- Ix2
- Create a two-dimensional index
- Ix3
- Create a three-dimensional index
- Ix4
- Create a four-dimensional index
- Ix5
- Create a five-dimensional index
- Ix6
- Create a six-dimensional index
- IxDyn
- Create a dynamic-dimensional index
- arr0
- Re-export essential macros that were missing in some modules
Create a zero-dimensional array with the element
x
. - arr1
- Re-export essential macros that were missing in some modules
Create a one-dimensional array with elements from
xs
. - arr2
- Re-export essential macros that were missing in some modules
Create a two-dimensional array with elements from
xs
. - arr3
- Re-export essential macros that were missing in some modules
Create a three-dimensional array with elements from
xs
. - aview0
- Re-export everything from ndarray crate
Create a zero-dimensional array view borrowing
x
. - aview1
- Re-export everything from ndarray crate
Create a one-dimensional array view with elements borrowing
xs
. - aview2
- Re-export everything from ndarray crate
Create a two-dimensional array view with elements borrowing
xs
. - aview_
mut1 - Re-export everything from ndarray crate
Create a one-dimensional read-write array view with elements borrowing
xs
. - aview_
mut2 - Re-export everything from ndarray crate
Create a two-dimensional read-write array view with elements borrowing
xs
. - concatenate
- Re-export everything from ndarray crate Concatenate arrays along the given axis.
- indices
- Re-export everything from ndarray crate
Create an iterable of the array shape
shape
. - indices_
of - Re-export everything from ndarray crate Return an iterable of the indices of the passed-in array.
- linspace
- Re-export everything from ndarray crate Return an iterator of evenly spaced floats.
- logspace
- Re-export everything from ndarray crate An iterator of a sequence of logarithmically spaced numbers.
- range
- Re-export everything from ndarray crate
Return an iterator of floats from
a
tob
(exclusive), incrementing bystep
. - rcarr1
- Re-export everything from ndarray crate
Create a one-dimensional array with elements from
xs
. - rcarr2
- Re-export everything from ndarray crate
Create a two-dimensional array with elements from
xs
. - rcarr3
- Re-export everything from ndarray crate
Create a three-dimensional array with elements from
xs
. - stack
- Re-export essential macros that were missing in some modules Stack arrays along the new axis.
Type Aliases§
- ArcArray
- An array where the data has shared ownership and is copy on write.
- ArcArray1
- one-dimensional shared ownership array
- ArcArray2
- two-dimensional shared ownership array
- Array
- An array that owns its data uniquely.
- Array0
- zero-dimensional array
- Array1
- one-dimensional array
- Array2
- two-dimensional array
- Array3
- three-dimensional array
- Array4
- four-dimensional array
- Array5
- five-dimensional array
- Array6
- six-dimensional array
- ArrayD
- dynamic-dimensional array
- Array
View - A read-only array view.
- Array
View0 - zero-dimensional array view
- Array
View1 - one-dimensional array view
- Array
View2 - two-dimensional array view
- Array
View3 - three-dimensional array view
- Array
View4 - four-dimensional array view
- Array
View5 - five-dimensional array view
- Array
View6 - six-dimensional array view
- Array
ViewD - dynamic-dimensional array view
- Array
View Mut - A read-write array view.
- Array
View Mut0 - zero-dimensional read-write array view
- Array
View Mut1 - one-dimensional read-write array view
- Array
View Mut2 - two-dimensional read-write array view
- Array
View Mut3 - three-dimensional read-write array view
- Array
View Mut4 - four-dimensional read-write array view
- Array
View Mut5 - five-dimensional read-write array view
- Array
View Mut6 - six-dimensional read-write array view
- Array
View MutD - dynamic-dimensional read-write array view
- CowArray
- An array with copy-on-write behavior.
- Ix
- Re-export everything from ndarray crate Array index type
- Ix0
- zero-dimensionial
- Ix1
- one-dimensional
- Ix2
- two-dimensional
- Ix3
- three-dimensional
- Ix4
- four-dimensional
- Ix5
- five-dimensional
- Ix6
- six-dimensional
- IxDyn
- dynamic-dimensional
- Ixs
- Re-export everything from ndarray crate Array index type (signed)
- RawArray
View - A read-only array view without a lifetime.
- RawArray
View Mut - A mutable array view without a lifetime.