File: sci_ss.sci

package info (click to toggle)
scilab 2.6-4
  • links: PTS
  • area: non-free
  • in suites: woody
  • size: 54,632 kB
  • ctags: 40,267
  • sloc: ansic: 267,851; fortran: 166,549; sh: 10,005; makefile: 4,119; tcl: 1,070; cpp: 233; csh: 143; asm: 135; perl: 130; java: 39
file content (35 lines) | stat: -rw-r--r-- 844 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
function [stk,txt,top]=sci_ss()
// Copyright INRIA
txt=[]
// sys=ss(A,B,C,D,Ts)
if stk(top-rhs+1)(5)=='1' then //SS(A,B,C,D,Ts) assumed
  dom='''c'''
  if rhs>=5 then 
    if stk(top-rhs+5)(5)=='1' then
      dom=stk(top-rhs+5)(1),
    else
      set_infos('fifth argument of ss ignored',2)
    end
  end
  if rhs>=4 then
    A=stk(top-rhs+1)(1)
    B=stk(top-rhs+2)(1)
    C=stk(top-rhs+3)(1)
    D=stk(top-rhs+4)(1)
    stk=list('syslin'+rhsargs([dom,A,B,C,D]),'0','?','?','15')
  elseif rhs==1 then
    D=stk(top-rhs+1)(1)
    stk=list('syslin'+rhsargs([dom,'[]','[]','[]',D]),'0','?','?','15')
  end
else //SYS = SS(SYS)
  RHS=[]
  for k=1:rhs
    RHS=[stk(top)(1),RHS]
    top=top-1
  end
  top=top+1
  set_infos(['ss(sys) syntax not yet handled';
      'matlab syntax used'],2)
  stk=list('ss'+rhsargs(RHS),'0',w(1,1),w(1,2),w(1,3))
end