help-octave
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: c2d is a Stub that only Produces Error Messages


From: Lukas Reichlin
Subject: Re: c2d is a Stub that only Produces Error Messages
Date: Tue, 22 Feb 2011 19:52:02 +0100

On 22.02.2011, at 14:26, Doug Stewart wrote:

> 
> 
> 
> On Tue, Feb 22, 2011 at 7:33 AM, Lukas Reichlin <address@hidden> wrote:
> On 22.02.2011, at 13:16, Doug Stewart wrote:
> 
> >
> >
> >
> > On Tue, Feb 22, 2011 at 7:04 AM, Lukas Reichlin <address@hidden> wrote:
> > On 22.02.2011, at 05:59, Thomas D. Dean wrote:
> >
> > > Octave 3.4.0, control 2.0.0
> > >> From the Converting from S to Z domain thread,
> > >
> > > octave:1> num = [1 0];den = [1 0 4];
> > > octave:2> sys = tf(num, den,1);sysz=c2d(sys,1);sysout(sysz,'tf')
> > > error: tf: c2d: not implemented yet
> > > error: called from:
> > > error:   /home/tomdean/octave/control-2.0.0/@tf/__c2d__.m at line 31,
> > >         column 7
> > > error:   /home/tomdean/octave/control-2.0.0/@lti/c2d.m at line 46,
> > >         column 7
> > >
> > > Looks like __c2d__ is a stub that only displays error messages, either
> > > "not implemented" or "invalid method".
> > >
> > > # cat /home/tomdean/octave/control-2.0.0/@tf/__c2d__.m
> > > ...<snip>
> > > function sys = __c2d__ (sys, tsam, method = "zoh")
> > >
> > >  [p, m] = size (sys);
> > >
> > >  switch (method)
> > >    case {"zoh", "std"}
> > >      error ("tf: c2d: not implemented yet");
> > >
> > >    otherwise
> > >      error ("tf: c2d: %s is an invalid method", method);
> > >
> > >  endswitch
> > >
> > > endfunction
> > >
> > > tomdean
> >
> > Yes, @tf/__c2d__.m is only a stub right now.  @ss/__c2d__.m offers 
> > zero-order hold only.  There is a list of missing features in the PROJECTS 
> > file:
> >
> > http://octave.svn.sf.net/viewvc/octave/trunk/octave-forge/main/control/devel/PROJECTS
> >
> > Lukas
> >
> > _______________________________________________
> > Help-octave mailing list
> > address@hidden
> > https://mailman.cae.wisc.edu/listinfo/help-octave
> >
> >
> > Lukas , are you saying that c2d does not work any more???????
> > Doug Stewart
> 
> Actually it never did for transfer functions. Internally, control-1.0.11 
> computed everything in state-space. As for now, you need to convert to 
> state-space by  sys = ss (sys)  and discretize afterwards. Note that there is 
> no d2c at all and that helping hands are always welcome ;-)
> 
> Regards,
> Lukas
> 
> 
> How does one revert to the old control tool box?
> Doug

This was my post on 2011-02-08 from the octave-dev <address@hidden> mailing 
list, please read the third paragraph:

FYI: control-2.0.0 released in package forum - please upload

> Hi all,
> 
> I've just published control-2.0.0 in the package release forum [1]. It 
> requires Octave 3.4.0 and it offers better compatibility (than control-1.0.x) 
> with the "control system toolbox" and parts of the "robust control toolbox" 
> of the "dark side". Since it uses the OOP features introduced with Octave 
> 3.2.0, you can write things like sys3 = sys2 * sys1 for a series connection 
> of two LTI systems.
> 
> Furthermore, the new control package is based on Fortran routines from the 
> Slicot [2] project. Reliable solvers for AREs (linear-quadratic regulators 
> and filters), Lyapunov and Sylvester equations are included. Controller 
> synthesis includes pole placement techniques as well as H-2 and H-infinity 
> methods.
> 
> I hope you like my package. For those who don't and/or have m-files written 
> for the old version of control: there's still the old control-1.0.x package 
> available under extra/control-legacy. Please note that it is not possible to 
> use both control packages at the same time. Compiling the Fortran code to 
> oct-files can take up to several minutes, so please be patient when using 
> "pkg install".
> 
> Enjoy
> Lukas
> 
> [1]
> http://sourceforge.net/apps/phpbb/octave/viewforum.php?f=1
> 
> [2]
> http://www.slicot.org


There's a link (older versions) on OctaveForge [1]. Additionally, you can grab 
any revision from the SVN repository at any time. SF even creates a tar.gz file 
automatically, you just need to remove the leading "octave-" in order to 
install it by "pkg install".

Regards,
Lukas

PS: I tinkered with control-1.0.x until I realized that I was riding a dead 
horse and therefore the best strategy would be to dismount. Don't whip 
control-1.0.11 too much ...

[1]
http://octave.sourceforge.net/control/index.html




reply via email to

[Prev in Thread] Current Thread [Next in Thread]