I have a signal given as an expression $x(t)$. In frequency domain most of the information is around 0 and higher frequencies progressively get smaller and smaller compared to DC component.

I was wondering how to determine the sampling rate I should use if I wanted to compute discrete samples and pass them through some filter?

I was considering that if I pick some $F_s$ sampling rate, aliasing will cause frequencies above $|F_s/2|$ to be folded back into the region $F_s/2$. Using Parseval's theorem the sum of square errors because of this appears to be $\int_{|\Omega > F_s/2|}|X(j\Omega)|^2d\Omega$ . So I could try to figure out the acceptable error and pick $F_s$ based on that. But that integral goes to infinity and what if the integral doesn't converge, or it's not something I can compute?

I've also seen discussions on anti-aliasing filters that mention the stop band attenuation should be higher than the SNR (eg anti-aliasing filter). In my case I don't really have an anti-aliasing filter because I'm just computing x(t). But it seems if I want 16 bits resolution, SNR=98dB so if I compute the frequency at which $20log(\frac{|X(j\Omega)|}{|X(0)|})<-98$ it will be as if I used anti-aliasing filter. However, I don't understand why the stop-band attenuation is chosen to be equal to SNR, and what that means in terms of signal error. Because while -98dB is really small compared to the rest of the signal, there are infinitely many aliased frequencies being folded and added up.

Thanks for any clarification.


I have frequency vs relative magnitude (relative to magnitude at 0 frequency) plot calculated by sampling at 100kHz and 1MHz and taking DFT of the samples. enter image description here

What reasonable conclusion about required sampling rate can I make based on something like this? How can I justify it?

For example at sampling rate 100kHz, the smallest frequency component appears to be 158 dB smaller than the largest (or 10^(7.9) times smaller). Is that small enough to be unimportant to overall signal? How should I go about determining what's small enough?


It depends on the spectral distribution of the signal under concern. If, for example, as you said the signal has most of its energy around zero frequency and gets progressively smaller as frequency increases then it may be possible to sample it with an acceptable error, provided that the progress is rapid enough. So it depends on the progress: Provided that it decays fast enough, you may find an acceptable sample rate which would provide a bounded error. After all many practical signals will have nonzero (but very small) energy above their half the sampling rate even after aa filtering, but nevertheless they are sampled with sufficient accuracy.

And your bit resolution vs stop band attenuation concern. That is the noise floor of the N-bit representation. Any error less than noise floor, and being uncorrelated with the signal, may be considered ok.

Finaly please note that, when the aliased frequencies fold up (say at 0 hz) for every next shifted spectra to be added, the folded tail will be progressiveley smaller, as it comes from progressiveley farther away from its center. Hence the sum of such infinitely many decaying terms may converge. Provided the folded terms are getting smaller and smaller.


A few notes to add to Bulent's answer:

  • The convential way to proceed is to low-pass filter your signal before sampling, to prevent or minimize aliasing. Choose your sampling frequency and low-pass filter at the Nyquist frequency (equal to half the sampling frequency).

  • In theory, with ideal sampling, aliases don't become attenuated after each fold. In practice, they do. There are two main reasons. One is that actual sampling is not ideal, so the replicas of the spectrum in the sampled signal are attenuated following a sinc-type envelope. The other is that all actual circuits are band-limited, so the spectrum reflections get attenuated as their frequency goes out the circuit's bandwidth.

  • I believe that the SNR you refer to is the quantization SNR. It is not directly related to the sampling rate, but to the quantization of the samples. The application note you linked to simply indicates that the anti-aliasing filter's rejection at the Nyquist frequency (and beyond) should be such that any remaining out-of-band signal energy is undetectable by the sampler (i.e., of amplitude similar to the noise that the sampler itself introduces to the signal). Consider this a rule of thumb, since a sampler's SNR is calculated under ideal conditions, where the sampled signal is a pure sine wave.

  • 1
    $\begingroup$ For your second point even though the overall spectra is only shifted (and weighted by 1/Ts) to become X(j(ω−k2πFs)), the folded (aliased) tail of that spactra around ω=0 becomes smaller, provided that X(w) is progressively attenuated for large w (the question is about such a signal) as its value X(−k2πFs) is getting smaller if the spectra is attenuated for large ω, as that value comes from the far away frequency tails for k=1,2,3... It is also true in theory. In such a case, nonideal sampling helps this further, in addition to some side effects. $\endgroup$ – Fat32 Feb 5 '15 at 16:26
  • $\begingroup$ @BulentS. If I understand correctly what you're saying, then I agree with you. Here's another way to put it: The spectrum of a signal sampled with impulses is periodic: the replicas of the original spectrum are all identical, except shifted in frequency. When sampling a non-bandlimited signal, the sum of all the overlapping replicas might not converge. But for most signals, as you say, the spectrum decreases quickly enough, and the sum converges. One example of when the sum doesn't converge is if you attempt to sample (theoretical) white noise. $\endgroup$ – MBaz Feb 5 '15 at 19:21
  • $\begingroup$ yes it is what I said, except however, It's not me who argues that most practical signals have a decaying spectra, rather, It is the question asker, who describes his signal that way. So I made my answer based on it. $\endgroup$ – Fat32 Feb 5 '15 at 19:51
  • $\begingroup$ @BulentS. Got it. By the way, I wasn't trying to correct you or anything; just trying to make sure the answer is clear. $\endgroup$ – MBaz Feb 5 '15 at 20:16
  • $\begingroup$ No problem, I understood that already. $\endgroup$ – Fat32 Feb 5 '15 at 20:39

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.