ArrayTools - Maple Programming Help

Online Help

All Products    Maple    MapleSim


Home : Support : Online Help : Programming : Low-level Manipulation : Matrices, Vectors, and Arrays : ArrayTools : ArrayTools/Diagonal

ArrayTools

  

Diagonal

  

extract the diagonals from a Matrix or create a diagonal Matrix

 

Calling Sequence

Parameters

Description

Examples

Calling Sequence

Diagonal(A)

Diagonal(A, k)

Parameters

A

-

Matrix, Vector, Array, or scalar

k

-

(optional) integer

Description

• 

The Diagonal command either creates a matrix with entries on the diagonal, or extracts the entries from the diagonal of a matrix.

• 

The Diagonal(A) command returns a matrix with the entries of A along the main diagonal, and 0 everywhere else when A is a vector, or a matrix with one row or column.

• 

The Diagonal(A, k) command returns a matrix with the entries of A along the kth diagonal specified by the selection parameter k, and 0 everywhere else, when A is a vector, or a matrix with one row or column.

• 

For a matrix A with more than one row and more than one column, the Diagonal(A) command returns the main diagonal of A as a (column) vector.

• 

For a matrix A with more than one row and more than one column, the Diagonal(A, k) command returns the (column) vector corresponding to the diagonal of A, specified by the selection parameter k.

• 

The diagonals of a matrix are indexed using signed integers, where the main diagonal has index 0. Superdiagonals are indexed with positive integers and subdiagonals are indexed with negative integers.

• 

This function is part of the ArrayTools package, so it can be used in the short form Diagonal(..) only after executing the command with(ArrayTools). However, it can always be accessed through the long form of the command by using ArrayTools[Diagonal](..).

Examples

withArrayTools:

AMatrix1,2,1,4,5,6,2,8,1

A121456281

(1)

DiagonalA

151

(2)

DiagonalA,1

26

(3)

DiagonalA,1

48

(4)

BVector4,5,6

B456

(5)

DiagonalB

400050006

(6)

DiagonalB,1

0400005000060000

(7)

DiagonalB,1

0000400005000060

(8)

See Also

ArrayTools[LowerTriangle]

ArrayTools[UpperTriangle]