1
$\begingroup$

enter image description hereWhat is the meaning of sampling logarithmically? How do you space the samples logarithmically? Or to rephrase the second question, How to sample an audio signal logarithmically? It would be appreciated if someone could explain that mathematically.

$\endgroup$
  • $\begingroup$ "In a few articles" <-- please cite these. I think you might be taking things out of context. $\endgroup$ – Marcus Müller May 2 '17 at 17:29
  • $\begingroup$ I edited the question $\endgroup$ – Viswanath Hariharan May 2 '17 at 17:50
3
$\begingroup$

Let's note $x_k$ and $x_{k+1}$ two successive samples. In the usual case of uniform sampling, the spacing between two successive samples is independent of $k$ and is given by $T$, the sampling period. This is illustrated in the figure below.

enter image description here

In the case of logarithmic sampling, the spacing increases exponentially with $k$. This is again illustrated in the figure below.

enter image description here

Logarithmic sampling makes sense in the case mentioned in the article you cite:

In many scientific problems it is necessary to compute the Fourier transform (FT) of a function or measured response that rises quickly then decays slowly with increasing abscissa (independent parameter) value (an 'inverse ramp'). In such cases, it is desirable to derive the function, or sample the response, with a small abscissa interval during the rise, but then increase the interval with increasing abscissa value.

In case you want to experiment with this, this is exactly the purpose of the Matlab function logspace or the equivalent numpy.logspace in Python.

$\endgroup$
  • 1
    $\begingroup$ Furthermore, this is a sepcial case of non-uniform signal sampling and to be an exact representation of the continuous signal $x(t)$, the local sampling density should be in accordance with the local bandwidth of the signal variations. The term slowly varying is used to indicate this aspect of the signal under concern. $\endgroup$ – Fat32 May 2 '17 at 19:10
  • $\begingroup$ The matlab function 'logspace' generates points that are logarithmically spaced. How does one sample a given signal logarithmically? $\endgroup$ – Viswanath Hariharan May 2 '17 at 20:15
  • 1
    $\begingroup$ In Matlab/Python, to sample a function f : f(logspace(a, b, n)). In real life, to sample a physical signal you measure, I suppose using a classical ADC with a clock that has logarithmically spaced rising edge could work. Another way could be to sample uniformly the signal first and then "logaritmically downsample" it. (that's only hypotheses, I don't know how it is done in practice) $\endgroup$ – anpar May 2 '17 at 20:25

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.