Scilab Home Page | Wiki | Bug Tracker | Forge | Mailing List Archives | Scilab Online Help | File Exchange
ATOMS : iodelay toolbox details
Please login or create an account

iodelay toolbox

manipulation and frequency analysis of linear dynamical systems with input or output delays
(14919 downloads for this version - 105291 downloads for all versions)
Serge Steer
Owner Organization
Steer Serge
Administrator Atoms
Antoine Elias
Creation Date
October 22, 2018
Source created on
Scilab 6.0.x
Binaries available on
Scilab 6.0.x:
Windows 64-bit Windows 32-bit Linux 64-bit Linux 32-bit MacOSX
Install command
--> atomsInstall("iodelay")
            Tools for manipulation and frequency analysis of linear dynamical systems with
input or output delays            
Files (2)
[13.03 kB]
Source code archive

[273.96 kB]
OS-independent binary for Scilab 6.0.x
This version fixes a bug with bode, black and nyquist iodelay functions.
News (1)
Comments (1)     Leave a comment 
Comment from Lucien Povy -- October 6, 2021, 06:06:50 PM    
Problem with this toolbox for Scilab 6.1.? The macro "%rd_string" is not good for
new Scilab.
I propose a new version of this macro (%rd_string).

// ====================================================================
// Copyright (C) - Carantec 2020.
// This file must be used under the terms of the GNU GPL v2.0 licence.
// This source file is licensed as described in the file COPYING, which
// you should have received as part of this distribution.  The terms
// are also available at    
// ====================================================================
// String output of iodelay systems matrices for scilab > 6.1.?
// ====================================================================
function txt = %rd_string(H)
  r = H.H; d = H.iodelay;
  [m,n] = size(r);
  Sr = string(r)(:);//for systems without delay.
  Sd = string(-d)(:);//now the delays.
  w = "*exp("+Sd+"*"+varn(r)+")";
  w(find(d==0)) = "";
  for j = 2:3:3*m*n-1
    Sr(j) = part("-",ones(1,length(Sr(j))));
  Srl = []; Stxt = [];
  for i = 1:m*n
    Srl = [Srl;[Sr(3*(i-1)+1:3*i);blanks(length(Sr(3*i)))]];
    pw(i) = part("",1:length(w(i)));
    Stxt = [Stxt;[pw(i);w(i);pw(i);blanks(length(w(i)))]];
  tx = Srl+Stxt;
  txt = matrix(tx,size(tx,"*")/n,n);
  txt = blanks(4)+txt;
Leave a comment
You must register and log in before leaving a comment.
Email notifications
Send me email when this toolbox has changes, new files or a new release.
You must register and log in before setting up notifications.