- Manual Scilab
- CACSD
- black
- bode
- chart
- evans
- gainplot
- m_circle
- nyquist
- routh_t
- sgrid
- zgrid
- abcd
- abinv
- arhnk
- arl2
- arma
- arma2p
- armac
- armax
- armax1
- arsimul
- augment
- balreal
- bilin
- bstap
- cainv
- calfrq
- canon
- ccontrg
- cls2dls
- colinout
- colregul
- cont_frm
- cont_mat
- contr
- contrss
- copfac
- csim
- ctr_gram
- dbphi
- dcf
- ddp
- des2ss
- des2tf
- dhinf
- dhnorm
- dscr
- dsimul
- dt_ility
- dtsi
- equil
- equil1
- feedback
- findABCD
- findAC
- findBD
- findBDK
- findR
- findx0BD
- flts
- fourplan
- frep2tf
- freq
- freson
- fspecg
- fstabst
- g_margin
- gamitg
- gcare
- gfare
- gfrancis
- gtild
- h2norm
- h_cl
- h_inf
- h_inf_st
- h_norm
- hallchart
- hankelsv
- hinf
- imrep2ss
- inistate
- invsyslin
- kpure
- krac2
- lcf
- leqr
- lft
- lin
- linf
- linfn
- linmeq
- lqe
- lqg
- lqg2stan
- lqg_ltr
- lqr
- ltitr
- macglov
- markp2ss
- minreal
- minss
- mucomp
- narsimul
- nehari
- nicholschart
- noisegen
- obs_gram
- obscont
- observer
- obsv_mat
- obsvss
- p_margin
- parrot
- pfss
- phasemag
- ppol
- prbs_a
- projsl
- reglin
- repfreq
- ric_desc
- ricc
- riccati
- rowinout
- rowregul
- rtitr
- sensi
- show_margins
- sident
- sm2des
- sm2ss
- sorder
- specfact
- ss2des
- ss2ss
- ss2tf
- st_ility
- stabil
- svplot
- sysfact
- syssize
- tf2des
- tf2ss
- time_id
- trzeros
- ui_observer
- unobs
- zeropen
Please note that the recommended version of Scilab is 2025.0.0. This page might be outdated.
See the recommended documentation of this function
csim
simulation (time response) of linear system
Calling Sequence
[y [,x]]=csim(u,t,sl,[x0 [,tol]])
Arguments
- u
function, list or string (control)
- t
real vector specifying times with,
t(1)
is the initial time (x0=x(t(1))
).- sl
list (
syslin
)- y
a matrix such that
y=[y(t(i)]
, i=1,..,n- x
a matrix such that
x=[x(t(i)]
, i=1,..,n- tol
a 2 vector [atol rtol] defining absolute and relative tolerances for ode solver (see ode)
Description
simulation of the controlled linear system sl
.
sl
is assumed to be a continuous-time system
represented by a syslin
list.
u
is the control and x0
the initial state.
y
is the output and x
the state.
The control can be:
1. a function : [inputs]=u(t)
2. a list : list(ut,parameter1,....,parametern)
such that:
inputs=ut(t,parameter1,....,parametern)
(ut
is a function)
3. the string "impuls"
for impulse response calculation
(here sl
is assumed SISO without direct feed through and x0=0
)
4. the string "step"
for step response calculation
(here sl
is assumed SISO without direct feed-through and
x0=0
)
5. a vector giving the values of u correponding to each t value.
Examples
s=poly(0,'s');rand('seed',0);w=ssrand(1,1,3);w('A')=w('A')-2*eye(); t=0:0.05:5; //impulse(w) = step (s * w) clf(0);xset("window",0);show_window(); plot2d([t',t'],[(csim('step',t,tf2ss(s)*w))',0*t']) clf(1);xset("window",1);show_window(); plot2d([t',t'],[(csim('impulse',t,w))',0*t']) //step(w) = impulse (s^-1 * w) clf(3);xset("window",3);show_window(); plot2d([t',t'],[(csim('step',t,w))',0*t']) clf(4);xset("window",4);show_window(); plot2d([t',t'],[(csim('impulse',t,tf2ss(1/s)*w))',0*t']) //input defined by a time function deff('u=input(t)','u=abs(sin(t))') clf();plot2d([t',t'],[(csim(input,t,w))',0*t'])
<< copfac | CACSD | ctr_gram >> |