help-octave
[Top][All Lists]
Advanced

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

Re: Syncope: new object-oriented control package


From: Lukas Reichlin
Subject: Re: Syncope: new object-oriented control package
Date: Sun, 18 Oct 2009 10:11:17 +0200


On 18.10.2009, at 00:04, Søren Hauberg wrote:

Hi,

Sorry 'bout the late reply...

fre, 16 10 2009 kl. 14:39 +0200, skrev Lukas Reichlin:
In order to overcome these drawbacks, I started development of a new
control package. It's completely object-oriented and as Matlab-
compatible as possible. What makes it unique is its "model abstraction
layer", i. e. commands like append, connect, feedback, series,
parallel, horzcat, vertcat, subsref,+, -, * and so on are written
model-independently. They all rely on just three (!) basic commands
for model manipulation which need to be implemented in ss, tf or zpk.

This sounds great! I don't work in control, so I can't comment on your
work, though. I hope somebody else can help you test this.

At the moment, my package contains the basics for the handling of
state-space and transfer function objects. Before I continue with zero/
pole/gain models and start porting higher-level user functions like
"bode" or "step", I'd like to get some feedback in order to hammer out the basics. Therefore, I wish to publish my work as an "extra package"
on the octave-forge server (under GPL 3, what else? :-). Luca
Favatella (slackydeb), maintainer of the "old" control package, agreed
to be the "new" package's maintainer.

I don't have any objections to you creating a new package, but is there
a reason why your work doesn't go directly into the current 'control'
package?

The reason is that they're not compatible, e.g. the "low-level" command ss for creating a state-space model exists in both packages, but the "old" ss creates a struct for storing the model data, while the "new" ss creates an instance (usage: sys = ss (A, B, C, D). Now there are "high-level" commands like bode that are expecting model data (usage: bode (sys)). Obviously, these functions need to be ported to the new format first, which means a lot of work. Therefore, gradually merging the packages won't work.

IMHO the old control package should remain the "official" one until the new one is 100% ready.

Could someone please create an
empty package with the name "control-oo", "control-rewrite" or similar
on the server?

I've given you access to the Octave-Forge SVN, so you can do this
yourself :-)

Søren

Thanks, I hope I don't mess things up!

Regards,
Lukas




reply via email to

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