plot the fundamental harmonic wave

9 ビュー (過去 30 日間)
hamid k
hamid k 2023 年 11 月 19 日
回答済み: Mathieu NOE 2023 年 11 月 23 日
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 件のコメント
hamid k
hamid k 2023 年 11 月 23 日
You can find the attached data and code files here.
Mathieu NOE
Mathieu NOE 2023 年 11 月 23 日
see my answer below

サインインしてコメントする。

採用された回答

Mathieu NOE
Mathieu NOE 2023 年 11 月 23 日
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 件)

Sulaymon Eshkabilov
Sulaymon Eshkabilov 2023 年 11 月 20 日
Here are two MATLAB fcns (bandpass() and fft()) which can be applied to solve your exercise.

カテゴリ

Help Center および File ExchangeTransforms についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by