Nom

MATDIAG — Create Diagonal Matrix

Block Screenshot

Contents

Palette

Description

The MATDIAG block create a diagonal matrix from a 1D vector. If the input is a M-by-1 vector than the output is an M-by-M matrix.

Dialog box

  • Datatype (1=real double 2=Complex)

    It indicates the type of the output. It support only the two types double (1) and complex (2). If we input another entry in this label xcos will print the message "Datatype is not supported".

    Properties : Type 'vec' of size 1.

Example

 
if the input of the block is U=ones(5,1) then the output is:
y=[1 0 0 0 0;0 1 0 0 0;0 0 1 0 0;0 0 0 1 0;0 0 0 0 1]
 

Default properties

  • always active: no

  • direct-feedthrough: yes

  • zero-crossing: no

  • mode: no

  • regular inputs:

    - port 1 : size [-1,1] / type 1

  • regular outputs:

    - port 1 : size [-1,-1] / type 1

  • number/sizes of activation inputs: 0

  • number/sizes of activation outputs: 0

  • continuous-time state: no

  • discrete-time state: no

  • object discrete-time state: no

  • name of computational function: mat_diag

Interfacing function

  • SCI/modules/scicos_blocks/macros/MatrixOp/MATDIAG.sci

Computational function

  • SCI/modules/scicos_blocks/src/c/mat_diag.c

  • SCI/modules/scicos_blocks/src/c/matz_diag.c

See also

Authors

Fady NASSIF - INRIA