Code ported from the DELSIG toolbox by R. Schreier (pydsm.delsig)

Key functions

synthesizeNTF([order, osr, opt, H_inf, f0]) Synthesizes an NTF for a DS modulator by Schreier’s approach.
clans([order, osr, nq, rmax, opt]) Synthesize the NTF for a ΔΣM w/ multibit quantizer by the CLANS method.
synthesizeChebyshevNTF([order, osr, opt, ...]) Synthesize the NTF for a DS modulator by a Chebyshev function.
simulateDSM(u, arg2[, nlev, x0, store_xn, ...]) Computes the output of a general delta-sigma modulator.

Other selected functions

Delta sigma utilities

partitionABCD(ABCD[, m]) Partition ABCD ss description in A, B, C, D for an m-input sytem
rmsGain(H, f1, f2[, N]) Compute the root-mean-square gain of a DT transfer function.

General utilities

dbv(x) Converts a voltage (or current) ratio to dB.
dbp(x) Converts a power ratio to dB.
undbv(x) Converts argument from db to a voltage ratio.
undbp(x) Converts argument from db to a power ratio.
dbm(v[, R]) Converts argument from rms voltage to dBm.
undbm(x[, R]) Converts argument from dBm power to rms voltage.
rms(x[, no_dc]) Compute root means square value (RMS) of a vector.

Graphing

plotPZ(H[, color, markersize, showlist]) Plots the poles and zeros of a transfer function.
axisLabels(points, incr) Generate alphanumeric axis labels.

Plumbing

ds_synNTFobj1(x, p, osr, f0) Objective function for synthesizeNTF.
ds_f1f2([osr, f0, complex_flag]) Lower and higher extremes of the signal band as normalized frequencies
ds_optzeros(n[, opt]) Zeros which minimize the in-band noise of a delta-sigma modulator
dsclansNTF(x, order, rmax, Hz) Convert CLANS parameters into an NTF in ZPK form
padl(x, n[, val]) Pad a matrix or a vector on the left.
padr(x, n[, val]) Pad a matrix or a vector x on the right.
padt(x, n[, val]) Pad a matrix or a vector on the top.
padb(x, n[, val]) Pad a matrix or a vector on the bottom.
evalTF(tf, x) Evaluates a transfer function.
evalRPoly(roots, x[, k]) Compute the value of a polynomial that is given in terms of its roots.