ArrayFire: diag

Extract the diagonal from an array. More...

Functions

AFAPI array diag (const array &in, const int num=0, const bool extract=true)
 C++ Interface to extract the diagonal from an array. More...
 
AFAPI af_err af_diag_create (af_array *out, const af_array in, const int num)
 C Interface to create a diagonal matrix from an extracted diagonal array. More...
 
AFAPI af_err af_diag_extract (af_array *out, const af_array in, const int num)
 C Interface to extract the diagonal from an array. More...
 

Extract the diagonal from an array.

If extract is true, an array is extracted containing diagonal of the matrix, while a false condition returns a diagonal matrix.

array a = randu(dim4(4, 3));

array b = diag(a);

array c = diag(a, 1);

array a = randu(4);

array b = diag(a, 0, false);

array b = diag(a, -1, false);


◆ af_diag_create()

C Interface to create a diagonal matrix from an extracted diagonal array.

See also, af_diag_extract.

Parameters
[out]outdiagonal matrix
[in]indiagonal array
[in]numdiagonal index
Returns
AF_SUCCESS, if function returns successfully, else an af_err code is given

◆ af_diag_extract()

C Interface to extract the diagonal from an array.

See also, af_diag_create.

Parameters
[out]outnum-th diagonal array
[in]ininput array
[in]numdiagonal index
Returns
AF_SUCCESS, if function returns successfully, else an af_err code is given
AFAPI array diag ( const array in,
const int  num = 0,
const bool  extract = true 
)

C++ Interface to extract the diagonal from an array.

Parameters
[in]ininput array
[in]numdiagonal index
[in]extractif true, returns an array containing diagonal of the matrix; if false, returns a diagonal matrix
Returns
diagonal array (or matrix)