1
$\begingroup$

I measured a parameter over time and obtained the values below:

0,627896 0,205004 0,259237 1,059125 0,832184 0,587992 0,565537 0,527323 0,460228 0,471958 0,26696 0,75367 0,892273 0,789401 1,089945 0,579791 0,421917 0,677286 -0,34936 -0,16841 -0,24775 0,813205 0,421242 -0,15486 0,612315 0,953073 0,561099

The values were obtained every 0.5 seconds.

How can I get the power spectrum in mathematica? And how can I calculate the amplitude of microfluctuations?

Thanks I have no ideia how to start.

$\endgroup$

1 Answer 1

3
$\begingroup$

You don't have enough points to work out a power spectrum. A power spectrum is an average of many spectra. You do have enough points to work out a Fourier spectrum.

First I convert your data to Mathematic format. We prefer you post in Mathematica format since it saves us extra work and you are more likely to get an answer.

data = {0.627896`, 0.205004`, 0.259237`, 1.059125`, 0.832184`, 
   0.587992`, 0.565537`, 0.527323`, 0.460228`, 0.471958`, 0.26696`, 
   0.75367`, 0.892273`, 0.789401`, 1.089945`, 0.579791`, 0.421917`, 
   0.677286`, -0.34936`, -0.16841`, -0.24775`, 0.813205`, 
   0.421242`, -0.15486`, 0.612315`, 0.953073`, 0.561099`};

Now lets plot your time history

   ListLinePlot[data]

enter image description here

This has a mean value which it is best to remove since it can dominate a spectrum. I remove the mean and do a Fourier analysis to get the spectrum and plot.

  data1 = data - Mean[data];
    ft = Fourier[data1];
    ListLinePlot[Abs[ft]]

enter image description here

This is your spectrum. I have taken the absolute value because the spectrum has complex values. The horizontal axis is the frequency but I have not put on a frequency axis the numbers are point numbers. You will see it is symmetric. This is correct. For more details on Fourier analysis see here. Hope that helps.

$\endgroup$
3
  • $\begingroup$ Thank you very much for your help. $\endgroup$
    – Zarabu
    Commented Jul 22, 2021 at 10:02
  • $\begingroup$ I measured again this parameter over time and obtain another data like this. I want to analyse which one has more microfluctuations. How can I do this in mathematica? And there is some rate, like mean frequency or something, to compare between these two measurements? Thank you very much in advance. $\endgroup$
    – Zarabu
    Commented Jul 22, 2021 at 10:09
  • $\begingroup$ There are many statistics you can calculate for a time history and Mathematica can work them out for you. Basic statistics are mean, standard deviation, skewness, kurtosis and various spectra. You need to decide what you mean by more fluctuations. Is it standard deviation or spectral content? $\endgroup$
    – Hugh
    Commented Jul 22, 2021 at 12:47

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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