---
title: NDArray
framework: coreai
role: symbol
role_heading: Structure
path: coreai/ndarray
---

# NDArray

A multidimensional array of scalar values used for model inference.

## Declaration

```swift
struct NDArray
```

## Mentioned in

Integrating on-device AI models in your app with Core AI

## Overview

Overview An NDArray stores data in a layout defined by its shape, scalarType, and strides.

## Topics

### Creating an array

- [init(shape:scalarType:)](coreai/ndarray/init(shape:scalartype:).md)
- [init(shape:scalarType:strides:)](coreai/ndarray/init(shape:scalartype:strides:).md)
- [init(descriptor:)](coreai/ndarray/init(descriptor:).md)

### Inspecting an array

- [shape](coreai/ndarray/shape.md)
- [scalarType](coreai/ndarray/scalartype-swift.property.md)
- [strides](coreai/ndarray/strides.md)

### Accessing elements

- [view(as:)](coreai/ndarray/view(as:).md)
- [mutableView(as:)](coreai/ndarray/mutableview(as:).md)
- [rawView()](coreai/ndarray/rawview().md)
- [mutableRawView()](coreai/ndarray/mutablerawview().md)

### Accessing views

- [NDArray.View](coreai/ndarray/view.md)
- [NDArray.MutableView](coreai/ndarray/mutableview.md)
- [NDArray.RawView](coreai/ndarray/rawview.md)
- [NDArray.MutableRawView](coreai/ndarray/mutablerawview.md)

### Defining scalar types

- [NDArray.ScalarType](coreai/ndarray/scalartype-swift.enum.md)

### Supporting subscripts

- [NDArray.RangeExpression](coreai/ndarray/rangeexpression.md)

### Structures

- [NDArray.InterleaveLayout](coreai/ndarray/interleavelayout-swift.struct.md)

### Initializers

- [init(scalars:shape:)](coreai/ndarray/init(scalars:shape:).md)
- [init(shape:scalarType:strides:interleaveLayout:)](coreai/ndarray/init(shape:scalartype:strides:interleavelayout:).md)

### Instance Properties

- [interleaveLayout](coreai/ndarray/interleavelayout-swift.property.md)

## Relationships

### Conforms To

- [Escapable](swift/escapable.md)
- [InferenceValue.MutableViewRepresentable](coreai/inferencevalue/mutableviewrepresentable.md)
- [InferenceValue.ViewRepresentable](coreai/inferencevalue/viewrepresentable.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Multidimensional arrays

- [NDArrayDescriptor](coreai/ndarraydescriptor.md)
