sycan.polynomials

Continuous-time analog filter prototype polynomials.

Each constructor returns (numerator, denominator) as sympy expressions in a Laplace variable s, with the standard normalised DC gain (|H(0)| = 1, except Chebyshev I of even order where the textbook value 1/sqrt(1+eps^2) is used).

Pass your own s symbol if you want the polynomials to share it with the rest of an expression; otherwise a fresh cas.Symbol("s") is created.

Functions

bessel(n[, s])

butterworth(n[, s])

chebyshev1(n, ripple_db[, s])

sycan.polynomials.butterworth(n, s=None)[source]
Parameters:
  • n (int)

  • s (Symbol | None)

Return type:

tuple[Expr, Expr]

sycan.polynomials.chebyshev1(n, ripple_db, s=None)[source]
Parameters:
  • n (int)

  • ripple_db (float)

  • s (Symbol | None)

Return type:

tuple[Expr, Expr]

sycan.polynomials.bessel(n, s=None)[source]
Parameters:
  • n (int)

  • s (Symbol | None)

Return type:

tuple[Expr, Expr]