Microwave filters GUI 2.0.3

- Main Page
- Related Pages
- Packages
- Classes
- Files

- Class List
- Class Hierarchy
- Class Members

Public Member Functions | List of all members
libfreefilters.CharPolys Class Reference

Characteristic polynomials class. More...

## Public Member Functions
def | __init__
| Compute characteristic polynomials and characteristic constants.
def | symmetrizeTZ
| A list of transmission zeros in unnormalized frequency (Hz) is symmetrized in the normalized frequency axis.
def | checkUnormSymTZ
| Check if list of transmission zeros (in Hz) is symmetric with respect to center frequency f0.
def | checkNormSymTZ
| Check if list of normalized transmission zeros is symmetric with respect to zero.
def | polyStr
| Return string with polynomial coefficients separated by commas.
def | saveCharPolys
| Save Characteristic Polynomials and constants in output file.

## Detailed Description

Characteristic polynomials class.

    Characteristic polynomials and constants are defined as [TN 101 eq. (1)] :

where is the 'Paraconjugate' polynomial of [Cameron pp. 208 footnote] and is computed using polyConj function.

Definition at line 83 of file libfreefilters.py.

## Constructor & Destructor Documentation

def libfreefilters.CharPolys.__init__ | ( |  | self,
|  |  | P,
|  |  | FT,
|  |  | symmetrizeZeros = `None`
| ) |  |

Compute characteristic polynomials and characteristic constants.

            @param P = Parameter class instance containing filter, synthesis and sweep parameters.
            @param  FT = Frequency transformation class instance.
            @param symmetrizeZeros = Automatically symmetrize Generalized Chebyshev zeros in Hz in order to compute a folded matrix with uniform Q in resonators.
                                                         Equivalent to answering "Yes" in the GUI when it asks the user if he wants to symmetrize Generalized Chebyshev zeros in Hz.
            @return CharPolys class instance.

Characteristic polynomial Characteristic polynomial Characteristic polynomial Characteristic polynomial Characteristic constant in the denominator of and Characteristic constant in the denominator of Roundoff error estimation in the computation of lossless characteristic polynomials, given by the rootsErr return value in CharPolys.factorization method. Value 'a' of the (s-a)/(s+a) zero/pole added in lossy filters synthesis case 3.

Definition at line 93 of file libfreefilters.py.

References libcommonfunc.askQuestion(), libfreefilters.butterworthFilter(), libfreefilters.chebyshevFilter(), libfreefilters.CharPolys.checkNormSymTZ(), libfreefilters.CharPolys.checkUnormSymTZ(), libfreefilters.CharPolys.eps, libfreefilters.CharPolys.epsR, libfreefilters.CharPolys.Es, libfreefilters.CharPolys.F22s, libfreefilters.CharPolys.flagCase1, libfreefilters.CharPolys.flagCase2, libfreefilters.CharPolys.flagCase3, libfreefilters.CharPolys.flagComplexTZ, libfreefilters.CharPolys.flagExtraFilter, libfreefilters.CharPolys.flagSymTZ, libfreefilters.CharPolys.flagSymTZnorm, libfreefilters.CharPolys.flagSymTZunorm, libfreefilters.CharPolys.Fs, libfreefilters.CharPolys.nuqDelta, libfreefilters.polyConj(), libfreefilters.CharPolys.Ps, libfreefilters.quasiElipticFilter(), libfreefilters.CharPolys.rootsErr, and libfreefilters.CharPolys.symmetrizeTZ().

Here is the call graph for this function:

## Member Function Documentation

def libfreefilters.CharPolys.checkNormSymTZ | ( |  | self,
|  |  | TZ
| ) |  |

Check if list of normalized transmission zeros is symmetric with respect to zero.

Parameters

  TZ | = List of normalized transmission zeros.

Returns
  symmetricFlag = True is zeros are symmetric with relative error < 1e-3, False otherwise.

Definition at line 282 of file libfreefilters.py.

Referenced by libfreefilters.CharPolys.__init__().

Here is the caller graph for this function:

def libfreefilters.CharPolys.checkUnormSymTZ | ( |  | self,
|  |  | TZ,
|  |  | FT
| ) |  |

Check if list of transmission zeros (in Hz) is symmetric with respect to center frequency f0.

Parameters

  TZ | = List of transmission zeros in Hz.
  FT | = Frequency transform class instance. It will be used to get f0.

Returns
  symmetricFlag = True is zeros are symmetric with relative error < 1e-3, False otherwise.

Definition at line 264 of file libfreefilters.py.

Referenced by libfreefilters.CharPolys.__init__().

Here is the caller graph for this function:

def libfreefilters.CharPolys.polyStr | ( |  | self,
|  |  | pol,
|  |  | prec
| ) |  |

Return string with polynomial coefficients separated by commas.

Rounds polynomial coefficients to given precision using complexStr() function.

Parameters

  pol | = Polynomial (numpy.poly1d object).
  prec | = Number of significant digits (int).

Returns
  stcoef = String representation of pol.

Definition at line 302 of file libfreefilters.py.

References libcommonfunc.complexStr().

Referenced by libfreefilters.CharPolys.saveCharPolys().

Here is the call graph for this function:

Here is the caller graph for this function:

def libfreefilters.CharPolys.saveCharPolys | ( |  | self,
|  |  | P,
|  |  | prec
| ) |  |

Save Characteristic Polynomials and constants in output file.

Rounds polynomial coefficients to given precision using complexStr() function. Polynomials are of type numpy.poly1d.

Parameters

  P | = Parameter class instance.
  prec | = Number of correct significant digits to print.

Definition at line 321 of file libfreefilters.py.

References libcommonfunc.complexStr(), libfreefilters.CharPolys.eps, libfreefilters.CharPolys.epsR, libfreefilters.CharPolys.Es, libfreefilters.CharPolys.Fs, libcommonfunc.myPrint(), libcommonfunc.pkgNameVersion(), libfreefilters.CharPolys.polyStr(), and libfreefilters.CharPolys.Ps.

Here is the call graph for this function:

def libfreefilters.CharPolys.symmetrizeTZ | ( |  | self,
|  |  | TZ,
|  |  | FT
| ) |  |

A list of transmission zeros in unnormalized frequency (Hz) is symmetrized in the normalized frequency axis.

The positive zeros are averaged with the corresponding negative zeros in the normalized frequency axis.

Parameters

  TZ | = List of transmission zeros. Unnormalized frequency (Hz).
  FT | = Frequency transform class instance.

Returns
  TZsym = List of transmission zeros, symmetrized n the normalized frequency axis. Unnormalized frequency (Hz).

Definition at line 245 of file libfreefilters.py.

Referenced by libfreefilters.CharPolys.__init__().

Here is the caller graph for this function:

The documentation for this class was generated from the following file:

- libfreefilters.py