You are here: Symbol Reference > Dew.Signal Namespace > LinearSystems Class > LinearSystems Methods > TransferFunToZeroPole Method
Dew DSP for .NET
Contents
PreviousUpNext
LinearSystems.TransferFunToZeroPole Method

Convert transfer function from numerator-denominator to zero-pole form.

C#
public TransferFunToZeroPole(TVec z, TVec p, ref double k, TVec num, TVec den);

Convert a transfer function defined with numerator Num and denominator Den in to its zero-pole form with zeros Z, poles P and gain K. The routine calls PolyRoots routine from the Polynoms unit. Numerator and denominator can be real or complex. 

A rational polynomial can be converted to zero pole form by finding the roots of the numerator and denominator:

  x^2 - 7*x + 12
  --------------
  x^2 - 3*x + 2

Zero pole form:

 (x - 3)*(x - 4)
 ---------------
 (y - 2)*(y - 1)
  using Dew.Math;
  using Dew.Math.Editors;
  using Dew.Math.Units;
  using Dew.Signal;
  using Dew.Signal.Units;
  using Dew.Math.Tee;
  using Dew.Signal.Tee;

  private void button1_Click(object sender, EventArgs e)
  {
     Vector z = new Vector(0);
     Vector p = new Vector(0);
     Vector num = new Vector(3);
     Vector den = new Vector(3);
     double k;

     num.Values[0] = 1;
     num.Values[1] = -7;
     num.Values[2] = 12;
     den.Values[0] = 1;
     den.Values[1] = -3;
     den.Values[2] = 2;
     k = 1;
     LinearSystems.TransferFunToZeroPole(z, p, out k, num, den);
     MtxVecEdit.ViewValues(z,"Zeros",true);
     MtxVecEdit.ViewValues(p,"Poles",true);
     //        z = [4 , 3]
     //        p = [2 , 1]
     //        k = num[0]/den[0] =  1;
  }
What do you think about this topic? Send feedback!
Copyright (c) 1999-2010 by Dew Research. All rights reserved.