code: def karplus_strong(freq, tau=2e4, memory=white_noise):
    
    return comb.tau(2 * pi / freq, tau).linearize()(zeros(), memory=memory)
docs: Karplus-Strong "digitar" synthesis algorithm.
  
    Parameters
    ----------
    freq :
      Frequency, in rad/sample.
    tau :
      Time decay (up to ``1/e``, or -8.686 dB), in number of samples. Defaults
      to 2e4. Be careful: using the default value will make duration different
      on each sample rate value. Use ``sHz`` if you need that independent from
      the sample rate and in seconds unit.
    memory :
      Memory data for the comb filter (delayed "output" data in memory).
      Defaults to the ``white_noise`` function.
  
    Returns
    -------
    Stream instance with the synthesized data.
  
    Note
    ----
    The fractional delays are solved by exponent linearization.
  
    See Also
    --------
    sHz :
      Second and hertz constants from samples/second rate.
    white_noise :
      White noise stream generator.