plot the fundamental harmonic wave

11 visualizzazioni (ultimi 30 giorni)
hamid k
hamid k il 19 Nov 2023
Commentato: Abdullah il 24 Apr 2024
Hello everyone. I have exported data to an Excel spreadsheet where the x-axis is represented by theta (in radians). How can I plot the fundamental harmonic wave from this wave data?
  6 Commenti
hamid k
hamid k il 23 Nov 2023
You can find the attached data and code files here.
Mathieu NOE
Mathieu NOE il 23 Nov 2023
see my answer below

Accedi per commentare.

Risposta accettata

Mathieu NOE
Mathieu NOE il 23 Nov 2023
hello again
so this is it, we do a single frequency DFT (aka order extraction) at the second harmonic (as we have two period of signal for theta ranging from 0 to 2*pi
result :
code :
%Load Excel file
data = readmatrix('Book1.xlsx'); % theta(Rad) Br(T)
%Extract theta and y columns
theta = data(:,1); % theta (0 - 2pi)
y = data(:,2); % y data
%%%%%%%%%%%%% main code %%%%%%%%%%%%%%%%%
% 2nd order extraction (DFT)
order = 2;
% model fit : X = A*cos(order*theta) + B*sin(order*theta) + C
C = mean(y);
y = y-C;
n = numel(theta);
A = 2/n*trapz(y.*cos(order*theta));
B = 2/n*trapz(y.*sin(order*theta));
yfit = A*cos(order*theta) + B*sin(order*theta) + C;
% plot
figure(1),
plot(theta, y, 'b',theta, yfit, 'r')
legend('data','model fit');
  1 Commento
Abdullah
Abdullah il 24 Apr 2024
Hello Mathieu,
i tried to use your code with my data, but it does not work, do you have an idea?
https://de.mathworks.com/matlabcentral/answers/2110271-how-to-plot-the-fundamental-harmonic-wave-from-given-data?s_tid=srchtitle

Accedi per commentare.

Più risposte (1)

Sulaymon Eshkabilov
Sulaymon Eshkabilov il 20 Nov 2023
Here are two MATLAB fcns (bandpass() and fft()) which can be applied to solve your exercise.

Categorie

Scopri di più su Fourier Analysis and Filtering in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by