mathjs/docs/reference/classes/matrixindex.md
2018-06-16 15:39:07 +02:00

6.4 KiB

layout
default

Index #

* [new Index(...ranges)](#new_Index_new) * _instance_ * [.valueOf](#Index+valueOf) ⇒ Array * [.clone()](#Index+clone) ⇒ [Index](#Index) * [.size()](#Index+size) ⇒ Array.<number> * [.max()](#Index+max) ⇒ Array.<number> * [.min()](#Index+min) ⇒ Array.<number> * [.forEach(callback)](#Index+forEach) * [.dimension(dim)](#Index+dimension) ⇒ Range | null * [.isScalar()](#Index+isScalar) ⇒ boolean * [.toArray()](#Index+toArray) ⇒ Array * [.toString()](#Index+toString) ⇒ String * [.toJSON()](#Index+toJSON) ⇒ Object * _static_ * [.fromJSON(json)](#Index.fromJSON) ⇒ [Index](#Index)

new Index(...ranges) #

Create an index. An Index can store ranges and sets for multiple dimensions. Matrix.get, Matrix.set, and math.subset accept an Index as input.

Usage:

const index = new Index(range1, range2, matrix1, array1, ...)

Where each parameter can be any of:

  • A number
  • An instance of Range
  • An Array with the Set values
  • A Matrix with the Set values

The parameters start, end, and step must be integer numbers.

Param Type
...ranges *

index.valueOf ⇒ Array #

Get the primitive value of the Index, a two dimensional array. Equivalent to Index.toArray().

Kind: instance property of Index
Returns: Array - array

index.clone() ⇒ [Index](#Index) #

Create a clone of the index

Kind: instance method of Index
Returns: Index - clone

index.size() ⇒ Array.<number> #

Retrieve the size of the index, the number of elements for each dimension.

Kind: instance method of Index
Returns: Array.<number> - size

index.max() ⇒ Array.<number> #

Get the maximum value for each of the indexes ranges.

Kind: instance method of Index
Returns: Array.<number> - max

index.min() ⇒ Array.<number> #

Get the minimum value for each of the indexes ranges.

Kind: instance method of Index
Returns: Array.<number> - min

index.forEach(callback) #

Loop over each of the ranges of the index

Kind: instance method of Index

Param Type Description
callback function Called for each range with a Range as first argument, the dimension as second, and the index object as third.

index.dimension(dim) ⇒ Range | null #

Retrieve the dimension for the given index

Kind: instance method of Index
Returns: Range | null - range

Param Type Description
dim Number Number of the dimension

index.isScalar() ⇒ boolean #

Test whether this index contains only a single value.

This is the case when the index is created with only scalar values as ranges, not for ranges resolving into a single value.

Kind: instance method of Index
Returns: boolean - isScalar

index.toArray() ⇒ Array #

Expand the Index into an array. For example new Index([0,3], [2,7]) returns 0,1,2], [2,3,4,5,6

Kind: instance method of Index
Returns: Array - array

index.toString() ⇒ String #

Get the string representation of the index, for example '[2:6]' or '[0:2:10, 4:7, [1,2,3]]'

Kind: instance method of Index
Returns: String - str

index.toJSON() ⇒ Object #

Get a JSON representation of the Index

Kind: instance method of Index
Returns: Object - Returns a JSON object structured as: {"mathjs": "Index", "ranges": [{"mathjs": "Range", start: 0, end: 10, step:1}, ...]}

Index.fromJSON(json) ⇒ [Index](#Index) #

Instantiate an Index from a JSON object

Kind: static method of Index

Param Type Description
json Object A JSON object structured as: {"mathjs": "Index", "dimensions": [{"mathjs": "Range", start: 0, end: 10, step:1}, ...]}