Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: Français - Português - 日本語 - Русский
Scilab Help >> Xcos > palettes > Discrete time systems palette > DLR


Discrete transfer function

Block Screenshot


This block realizes a SISO linear system represented by its rational transfer function (in the symbolic variable z). The rational function must be proper.


  • Numerator (z)

    This parameter sets the numerator of the transfer function.

    This must be a polynomial inz .

    Properties : Type 'pol' of size 1.

    In the provided expression, any subexpression being an exponent given either by a variable (of the context) whose name is more than 1-character long, or by an expression (not a literal integer) must end with a space to be correctly displayed on the block's icon.

    This constrain has no consequence on the computational validity of the expression.

    Examples: "z^12+1", "z^ +12+1", "z^+ 12+1" are all displayed as "z^{12}+1", while "1+z^ab+z^2" will be displayed as "1+z^{ab+z^2}" (but will be well computed as 1 + z^ab + z^2). To make it well displayed, "1+z^ab +z^2" will have to be entered (for instance). As well, "z^(ab+1) + 2" will have to be entered, instead of "z^(ab+1)+2".
  • Denominator (z)

    This parameter sets the denominator of the transfer function.

    This must be a polynomial inz .

    Properties : Type 'pol' of size 1.

    Take care about multichar exponents (see Numerator).

Default properties

  • always active: no

  • direct-feedthrough: no

  • 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: 1

  • number/sizes of activation outputs: 0

  • continuous-time state: no

  • discrete-time state: yes

  • object discrete-time state: no

  • name of computational function: dsslti4

Interfacing function

  • SCI/modules/scicos_blocks/macros/Linear/DLR.sci

Computational function

  • SCI/modules/scicos_blocks/src/c/dsslti4.c (Type 4)


Author : Nicholas Parker posted the 02/04/2014 04:40

As a new user of XCOS and SciLab I sometimes struggle with the brief descriptions of things in the HELP.

For the DLR in XCOS (or discrete transfer function), for example, it might be useful to provide an example of a transfer functions with a higher power of 'z' than 1 in order to explain the format of 'z powers' to the user and make it easier to use.


numerator = 0.5*(1+%z^2)
denominator = 1 - %z^2

Also, it there a way to 'initialise a transfer functions state/history values

I want to set the initial conditions for a simulation run e.g. y(z)(z^-1) etc. Is this possible? If you dont know what I mean - its kind of like initialising an integrator in the algorithmic form of a PID controller, where the integral sum is a serparate variable.

Reply to this comment
Please login to comment this page

Add a comment:
Please login to comment this page.

Report an issue
<< DELAY_f Discrete time systems palette DLRADAPT_f >>

Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Mon Jan 03 14:23:33 CET 2022