Calculating Fourier Series Coefficients Using Custom Matlab Function
Mostra commenti meno recenti
My attempt at creating such a function where it must have the three inputs x, w0, and N:
function[ak] = cal_fs(x, w0, N)
ak = zeros(1,2*N+1); %intialize a row vector of 2N+1 zeros
T = 2*pi/w0; %calculate the period and store in T
syms t;
for k = -N:N
ak = 1/T * int(x * exp(-1i*k*w0*t), t); % ak is fourier coefficient
end
Above is my attempt. I am trying to make a vector ak that contains all the fourier series coefficents as calculated by the equation above. I am new to Matlab and highly confused as to why i do not get an output of a matrix when I do the following:
syms x;
syms t;
x = 2*t;
w0 = 62;
N = 20;
cal_fs(x,w0,N)
1 Commento
ha9981
il 19 Ott 2012
Risposte (2)
Alexander
il 22 Ott 2012
You forgot the index for assigning to ak. Also do you want the indefinite integral or an integral from 0 to 2*pi/w0? I added the index and changed the integral:
function[ak] = cal_fs(x, w0, N)
ak = zeros(1,2*N+1); %intialize a row vector of 2N+1 zeros
T = 2*pi/w0; %calculate the period and store in T
syms t;
for k = -N:N
ak(1,1+k+N) = 1/T * int(x * exp(-1i*k*w0*t), t, 0, T); % ak is fourier coefficient
end
1 Commento
Parul Saini
il 26 Lug 2019
Can we take piecewise continuous function with the same format of calculating fourier coefficients?
Azzi Abdelmalek
il 22 Ott 2012
0 voti
1 Commento
Kyon
il 8 Apr 2016
i have the RMS value and the angle values using the fourier block in simulink
what code to use to use rms and theta to plot fourier series ?
Categorie
Scopri di più su Calculus in Centro assistenza e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!