help-octave
[Top][All Lists]
Advanced

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

Re: Equation Display or Problem


From: Thomas D. Dean
Subject: Re: Equation Display or Problem
Date: Mon, 15 Jun 2015 10:35:56 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.6.0

On 06/15/15 02:59, Tatsuro MATSUOKA wrote:
----- Original Message -----

From: Thomas D. Dean
To: help-octave
Cc:
Date: 2015/6/15, Mon 15:18
Subject: Equation Display or Problem

Back to my previous problem.  I expected to bet the same system from either the
zpk or equation representation.  But, they are different

octave:1869> clear all
octave:1870> a0 = 1e5;
octave:1871> w1 = 1e4;
octave:1872> w2 = 1e6;
octave:1873> s = tf('s');
octave:1874> a_eqn = a0/(1+s/w1)/(1+s/w2)

Transfer function 'a_eqn' from input 'u1' to output ...
                 1e+05
y1:  --------------------------
       1e-10 s^2 + 0.000101 s + 1
Continuous-time model.

octave:1875> a_zpk = zpk([],[w1,w2],a0)

Transfer function 'a_zpk' from input 'u1' to output ...
                1e+05
y1:  ------------------------
       s^2 - 1.01e+06 s + 1e+10
Continuous-time model.

octave:1876> a_eqn(w1)
ans =  4.9495e+04 - 5.0495e+04i
octave:1877> a_zpk(w1)
ans =  4.9495e-06 + 5.0495e-06i

Is this correct?  What am I doing wrong?


I am not familiar with control theory but I did experiments.

Why did you define "a_eqn" as "a0/(1+s/w1)/(1+s/w2)"?
instead of help
a_eqn = a0/(s+w1)/(s+w2)

According to Mathworks and others, the open loop gain of an op amp with poles w1 and w2 is

s = tf('s');
a_eqn = a0/( (1+s/w1) * (1+s/w2) )

a_eqn = a0/(s+w1)/(s+w2)

Transfer function 'a_eqn' from input 'u1' to output ...

                 1e+005
  y1:  --------------------------
       s^2 + 1.01e+006 s + 1e+010

  a_eqn(w1)
ans = 4.9495e-006 - 5.0495e-006i

a_zpk = zpk([],[w1,w2],a0)

Transfer function 'a_zpk' from input 'u1' to output ...

                 1e+005
  y1:  --------------------------
       s^2 - 1.01e+006 s + 1e+010

  a_zpk(w1)
ans = 4.9495e-006 + 5.0495e-006i

The sign of coefficient of first order in s is different.
Thus a_eqn(w1) and a_zpk(w1) are complex conjugate

help zpk
  Function File: SYS = zpk (SYS)

  <snip>
  Create transfer function model from zero-pole-gain data.

  "zero-pole-gain"
Are not this correct?
a_zpk = zpk([],[-w1,-w2],a0)



Tatsuro






reply via email to

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