You are here: Symbol Reference > LinearSystems Namespace > Functions > LinearSystems.ZeroPoleToSOS Function
DSP Master VCL
ContentsIndex
PreviousUpNext
LinearSystems.ZeroPoleToSOS Function

Convert transfer function from zero-pole to second order sections form.

Pascal
procedure ZeroPoleToSOS(const sos: TVec; const z: TVec; const p: TVec; k: Double);

Convert a rational polynomial defined with zeros Z and poles P and gain K in to a product of second order sections. The numerator in the last section will be scaled by K and all polynomials are assumed to have only real coefficents. (Poles and zeros can still be complex, if they have complex conjugated pairs.) 

Second order sectios are stored in destination vector in the order: Num1, Den1, Num2, Den2... DenN. Each section consists of 3 items (a,b,c) from the formula : a*x^2 + b*x + c

          num_sos1(s)              num_sosN(s)       (s-sz1)*...*(s-szn)
  H(s) = ------------- *  ...  * ------------- =   K*-------------------
          den_sos1(s)              den_sosN(s)       (s-sp1)*...*(s-spn)

  szn - n'th zero
  spn - n'th pole
  K - system gain
Copyright (c) 1999-2025 by Dew Research. All rights reserved.
What do you think about this topic? Send feedback!