Skip to content
Documentation sections

Nyquist Sampling Theorem Calculator

POSThttps://rftools.io/api/py/v1/calculate

Slug sampling-nyquist. Calculate Nyquist sampling rate, oversampling ratio, and aliasing frequency. Verify your ADC sampling meets the Nyquist criterion and determine data rate. Free, instant results.

Inputs

Send every one of these in inputs, in the units shown. Most are required: a call without one is refused (400) and costs nothing; one the calculator can do without takes the default shown. An input outside its range is still computed and flagged in the provenance.

Inputs of sampling-nyquist
NameUnitRangeDefaultDescription
signalFreqnumberHz1 … 100000000010000Maximum frequency component in the signal (or signal bandwidth for baseband signals)
samplingRatenumberSa/s1 … 100000000000044100Number of samples taken per second
adcBitsnumberbits4 … 2416Number of bits in the ADC. Each additional bit adds ~6 dB of dynamic range.
channelsnumbernone1 … 321Number of parallel ADC channels (e.g., 2 for stereo, 1 for mono)
harmonicOrdernumbernone1 … 505The highest harmonic of a tone at the top of the band, as the converter's distortion makes it, that the frequency plan follows; 1 follows the tone alone

Outputs

Returned in values, by key. A value that is unbounded or undefined is null.

Outputs of sampling-nyquist
FieldUnitDescription
nyquistRate_HzheadlineHzMinimum sampling rate required to avoid aliasing (= 2 × signal bandwidth)
oversamplingRationoneRatio of actual sampling rate to Nyquist rate. Values < 1 indicate aliasing.
aliasFreq_HzHzWhere the signal appears once sampled below the Nyquist rate: |f − k·f_s| for the integer k nearest f/f_s. Zero if no aliasing.
dynamicRangeDBdBTheoretical dynamic range of the ADC: DR = 20·log₁₀(2)·N + 10·log₁₀(1.5) dB
snr_dBdBSignal-to-quantization-noise ratio for an ideal ADC at full scale
dataRateMbpsMbpsUncompressed raw data rate = sampling rate × ADC bits × channels
antiAliasingFC_HzHzMaximum anti-aliasing filter cutoff frequency (= fs / 2, the Nyquist frequency)
aliasesInBandnoneA tone at the top of the band that the sampling rate aliases back into the signal band: no filter after the converter can remove it
harmonicAliasesInBandnoneThe harmonics of a tone at the top of the band, up to the highest harmonic, that fold back into the signal band after sampling: they matter as far as the converter's SFDR, which this page does not know
lowestAliasingInputHzThe lowest input frequency that folds into the signal band, f_s − f_sig (f_s/2 once the band reaches past it): the anti-alias filter must reject from here

Calling it

  • Calculate: one call, the request and response in full, and its errors.
  • Batch: this calculator with others, or a sweep, in one request.
  • Solve for a target: the value of one input that brings an output to a target.