Message Boards Message Boards

0
|
12671 Views
|
9 Replies
|
1 Total Likes
View groups...
Share
Share this post:

quantizer and plots in system modeler

Posted 11 years ago
  1. How to simulate or draw quantizer block like 14 bit quantizer in system modeler?

  2. After FFT analysis how to plot in dB?

POSTED BY: manu gaurav
9 Replies

I can't really answer about quantizers, as that is not my field of expertise, but thanks for suggesting dB magnitudes in the FFT analysis!

Note, however, that the FFT analysis applies to a signal and not to a transfer function (system). As far as I know, it is not common to use dB magnitudes for signals, so it seems like there would be some risk of confusion if the magnitude axis were measured in dB; someone reading the plot may think that it is an estimate of the Bode plot of a system rather than the FFT of a signal.

POSTED BY: Henrik Tidefelt

hi henrik,

normally like antenna plots, the fft which represents frequency plots are plotted generally in dB. for example spectrum analyzer. you can just give it as an option.

if you can suggest anyway to do it here will meet my requirements

POSTED BY: manu gaurav

I'm not very familiar with antennas either, but they appear to me as systems rather than signals. I could understand how you could feed a spectrum analyzer with an input/output pair to estimate damping and phase shift as a function of frequency, and then plotting in dB makes sense to me. What I still don't see is how dB makes sense when applied to one signal at a time, as in the SystemModeler FFT analysis.

It would be very useful to us to see examples where dB is used on the FFT magnitude of a single signal. Do you have any references where such use is explained?

Thanks in advance.

POSTED BY: Henrik Tidefelt

Like DDS as shown in figure below i am trying to simulate such system, but how to plot the outputs as shown. these are dynamic models. the idea is not to argue with you but to try to make you understand why a FFT should be plotted in dB to see harmonics and spurious clearly. hope you will not feel bad. i am just trying since you are interested. sorry again

taken from DDS application note of analog devices

i have this thing designed in system modeler which i will not like to share publicly. if you will give me your mail id i can send it for your reference.

POSTED BY: manu gaurav

Thanks, and no need to be sorry. Neither is my idea to argue with you. This is a fruitful discussion which I believe will be of interest to other users as well.

I think that the key here is the word normalized on the magnitude axis. Looking at the plots, it seems like normalized magnitude applies the scaling necessary to make the maximum magnitude 1. With such normalization, dB makes perfect sense! Also, with normalized magnitude in the axis label, the risk of confusion is more or less eliminated.

At the moment, this type of FFT plot cannot be made with SystemModeler, but if you have access to Mathematica, you can always run your simulations with WSMSimulate and then use Fourier, Normalize (with the infinity norm expressed using Norm) and the rich plotting capabilities of Mathematica to obtain a normalized FFT plot.

Thanks again for clarifying your suggestion. Your feedback is valuable.

POSTED BY: Henrik Tidefelt

you missed the point. idea was not normalization. it is just a multiplication.

the harmonics and spurious came pronouncingly only in dB plot but not otherwise. however, i think when you develop next version you can debate of incorporating as part of y axis scaling in plot.

POSTED BY: manu gaurav

I just wanted to express the Normalized part of the magnitude axis label using the Normalized function. True,Normalized will just find a factor that is applied to all numbers, and one just has to pick the right norm. Here is an example of how to scale a list of non-negative random numbers such that the maximum is 1 after normalization:

In[1]:= mag = RandomReal[{0, 100}, {10}];

In[2]:= Max[mag]
Out[2]= 99.6271

In[3]:= magNormalized = Normalize[mag, Norm[#, \[Infinity]] &];

In[4]:= Max[magNormalized]
Out[4]= 1.

The reason for using Normalized is to make the intention clear, but there are also situations where it is convenient to use Normalized since the data (in this case mag) does not have to be repeated. In the end, the result is the same as:

magNormalized = (1 / Norm[mag, \[Infinity]]) mag;
POSTED BY: Henrik Tidefelt
Posted 11 years ago

I have to agree with manu on this issue. I disagree with this statement:

Note, however, that the FFT analysis applies to a signal and not to a transfer function (system). As far as I know, it is not common to use dB magnitudes for signals, so it seems like there would be some risk of confusion if the magnitude axis were measured in dB; someone reading the plot may think that it is an estimate of the Bode plot of a system rather than the FFT of a signal.

In my experience, it is very common to look at the FFT of a signal using dB magnitude scaling. Many signals are representing a voltage or current. It may or may not be normalized. For voltages, many times the reference signal is simply taken to be 1 volt. Then, the implied scaling is dBW (dB Watts). Whether normalized or not, it is quite easy to look for spectral components that are "in the noise" (ie, less or much less than -3dB down from the peak) or are competing the the peak desired signal (ie, greater than -3dB down from the peak). Someone explicitly deciding to use FFT analysis is not very likely to confuse it with a Bode plot. Maybe others will chime in with their own opinions.

POSTED BY: David G

Thanks, David. You gave an excellent argument for plotting signals in dB.

Others are still encouraged to chime in!

POSTED BY: Henrik Tidefelt
Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
Attachments
Remove
or Discard

Group Abstract Group Abstract