I'm using Octave 3.2.3 (latest available on Ubuntu LTS) and control
1.0.11 (latest).
I think I found a bug: when I define my system using zp(), d2c cannot
convert the system to continuous:

octave:7> G = zp([], 0.5, 1, 1)
G =
{
  zer = [](0x0)
  pol =  0.50000
  k =  1
  sys =

     1   0   1   0

  tsam =  1
  n = 0
  nz =  1
  yd =  1
  inname =

  {
    [1,1] = u_1
  }

  outname =

  {
    [1,1] = y_1
  }

  stname =

  {
    [1,1] = xd_1
  }

}
octave:8> Gw = d2c(G);
error: structure has no member `a'
error: evaluating argument list element number 1
error: evaluating argument list element number 1
error: called from:
error:   /usr/share/octave/packages/3.2/control-1.0.11/d2c.m at line
91, column 3

The problem is at line 91: d2c.m tries to access elements a, b, c, d
(state space matrices), but they are not defined by the zp function.

  if (isa (sys.a, "single") || isa (sys.b, "single") || isa (sys.c, "single") ||
      isa (sys.d, "single"))
    myeps = eps ("single");
  else
    myeps = eps;
  endif

It can be resolved by scripting:


octave:10> [G.a G.b G.c G.d] = sys2ss(G);
octave:11> G
G =
{
  zer = [](0x0)
  pol =  0.50000
  k =  1
  sys =

     1   0   1   0

  tsam =  1
  n = 0
  nz =  1
  yd =  1
  inname =

  {
    [1,1] = u_1
  }

  outname =

  {
    [1,1] = y_1
  }

  stname =

  {
    [1,1] = xd_1
  }

  a =  0.50000
  b =  1
  c =  1
  d = 0
}

or, more simply, just defining a, b, c, d to be zero, because line 91
just makes a class check.

octave:12> Gw = d2c(G);
octave:13> Gw
Gw =
{
  a = -0.69315
  b =  1.3863
  c =  1
  d = 0
  n =  1
  nz = 0
  tsam = 0
  yd = 0
  sys =

     2   0   0   1

  stname =

  {
    [1,1] = xd_1_c
  }

  inname =

  {
    [1,1] = u_1
  }

  outname =

  {
    [1,1] = y_1
  }

}

I also think line 91 is not critical.
I hope to have been helpful,
Alessandro

------------------------------------------------------------------------------
Learn how Oracle Real Application Clusters (RAC) One Node allows customers
to consolidate database storage, standardize their database environment, and, 
should the need arise, upgrade to a full multi-node Oracle RAC database 
without downtime or disruption
http://p.sf.net/sfu/oracle-sfdevnl
_______________________________________________
Octave-dev mailing list
Octave-dev@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/octave-dev

Reply via email to