Re: [Scilab-users] Question syslin
Le 20/12/2014 21:54, t...@wescottdesign.com a écrit : I'm not one of the maintainers -- just a happy user for over a decade. If someone wants to put the above description into the syslin help, they're welcome to it. After logging, every valuable comment may be posted by users for each online help page : http://help.scilab.org/docs/5.5.1/en_US/syslin.html This is an added value compared to the embedded help page. Best regards ___ users mailing list users@lists.scilab.org http://lists.scilab.org/mailman/listinfo/users
Re: [Scilab-users] Question syslin
Am 16.12.2014 um 18:54 schrieb Tim Wescott: Hey Andreas: Domain = 'c' is for a continuous-time system, where the system is defined as dx/dt = A * x + B * u, y = C * x + D * u This is a normal continuous-time linear state-space system description. Domain = 'd' is for a discrete-time system where the sampling interval is left undefined for whatever reason (in my case, it's usually because I'm being lazy, but sometimes it's because the sampling interval isn't constant, or because there's no meaningful sampling interval in the problem). It defines the sampled-time system: x{k} = A * x{k-1} + B * u{k} y{k} = C * x{k-1} + D * u{k} (Note the mixed time indexes on the input and state variables on the right-hand side of these equations. You'll sometimes see this expressed differently, so if you're trying to implement something from an article or book, pay attention!) Domain = n is for a discrete-time system where the sampling interval is defined. It works exactly like domain = 'd', except that things that depend on the real-world frequency, like Bode plots, will come out right. At this point i am a little bit confused. How does syslin works when the sampling interval is not defined (dom=d) ? And why the bode plots come out wrong ? What syslin is doing wrong if dom=d ? When I am doing control system design this is usually the form that I use, because by the time I'm down to this level of detail I've usually established the sampling rate, and I'm working at tuning the system to, or verifying it against, some real-world criteria that must be expressed in the frequency domain. cheers, Andy ___ users mailing list users@lists.scilab.org http://lists.scilab.org/mailman/listinfo/users
Re: [Scilab-users] Question syslin
On 2014-12-21 16:23, Andreas Ladanyi wrote: Am 16.12.2014 um 18:54 schrieb Tim Wescott: Hey Andreas: snip Domain = n is for a discrete-time system where the sampling interval is defined. It works exactly like domain = 'd', except that things that depend on the real-world frequency, like Bode plots, will come out right. At this point i am a little bit confused. How does syslin works when the sampling interval is not defined (dom=d) ? And why the bode plots come out wrong ? What syslin is doing wrong if dom=d ? Syslin, by itself, is just a structure consisting of three or four matrices (the 'D' matrix is optional) that describe a system, and a domain tag. The domain tag just tells the various things that use the syslin structure how to interpret the description. When you set dom = 'd', the various bits of code that use syslin either interpret the structure to describe some sampled system of unknown sampling interval (i.e., ss2tf, which returns a ratio of polynomials in z with dom = 'd'), or they implicitly take the sampling interval to be 1 (i.e., Bode plots). Syslin isn't doing _wrong_ if dom = 'd', unless the system described actually does have a well-defined sampling interval. There are systems that do not have a well-defined sampling interval, or at least not in time -- I have worked on phase-locked loops that sample on every cycle of the oscillator (or motor), and use the duration of a cycle as the feedback. In this case the sampling rate is itself being servoed, and as such is not constant. Sometimes you're always locking to the same reference, and you can take that reference as your sampling interval -- sometimes not. It's also not uncommon to want to define some signal processing to be done on data that's sampled at positions on a line or a grid, in which case the frequency is in cycles per meter (or pixels, or whatever) -- in that case, having a domain that implies a sampling frequency in Hz is misleading. Note that I'm not the original author of this data structure, so I may be missing some finer points of intent. I just do what works for me: I set the domain to the actual sampling rate if I know and care what it is, or to 'd' if I just want to play around in the abstract, without being bound to any particular sampling rate. ___ users mailing list users@lists.scilab.org http://lists.scilab.org/mailman/listinfo/users
Re: [Scilab-users] Question syslin
On Tue, 2014-12-16 at 11:01 +0100, Andreas Ladanyi wrote: Hi, i am reading the help of scilab to understand the syslin function. In the help i can see 3 options for the dom parameter. There is an option for a sampled system 'n'. In this help there is no example for a sampled system. So what is the difference between a discrete system and a sampled system ? What is the difference between an discrete system d and an sampled system n for syslin ? In the most examples i read in the web syslin is called with dom='c'. Hey Andreas: Hi Tim, thank you for your excellent description. Could this be inserted to the online help of the syslin function ? cheers, Andreas Domain = 'c' is for a continuous-time system, where the system is defined as dx/dt = A * x + B * u, y = C * x + D * u This is a normal continuous-time linear state-space system description. Domain = 'd' is for a discrete-time system where the sampling interval is left undefined for whatever reason (in my case, it's usually because I'm being lazy, but sometimes it's because the sampling interval isn't constant, or because there's no meaningful sampling interval in the problem). It defines the sampled-time system: x{k} = A * x{k-1} + B * u{k} y{k} = C * x{k-1} + D * u{k} (Note the mixed time indexes on the input and state variables on the right-hand side of these equations. You'll sometimes see this expressed differently, so if you're trying to implement something from an article or book, pay attention!) Domain = n is for a discrete-time system where the sampling interval is defined. It works exactly like domain = 'd', except that things that depend on the real-world frequency, like Bode plots, will come out right. When I am doing control system design this is usually the form that I use, because by the time I'm down to this level of detail I've usually established the sampling rate, and I'm working at tuning the system to, or verifying it against, some real-world criteria that must be expressed in the frequency domain. ___ users mailing list users@lists.scilab.org http://lists.scilab.org/mailman/listinfo/users
Re: [Scilab-users] Question syslin
- Mail original - De: Andreas Ladanyi andreas.lada...@gmx.net À: users@lists.scilab.org Envoyé: Mardi 16 Décembre 2014 11:01:25 Objet: [Scilab-users] Question syslin Hi, i am reading the help of scilab to understand the syslin function. In the help i can see 3 options for the dom parameter. There is an option for a sampled system 'n'. example syslin(0.01,...) defines a discrete linear dynamical system with sample period equal to 0.01. In this help there is no example for a sampled system. So what is the difference between a discrete system and a sampled system ? What is the difference between an discrete system d and an sampled system n for syslin ? In the most examples i read in the web syslin is called with dom='c'. cheers, Andreas ___ users mailing list users@lists.scilab.org http://lists.scilab.org/mailman/listinfo/users ___ users mailing list users@lists.scilab.org http://lists.scilab.org/mailman/listinfo/users