The problem is the output of cal_fs is not coming as a vector but rather a symbolic matrix 1x1. What am I doing wrong friends?
Calculating Fourier Series Coefficients Using Custom Matlab Function
조회 수: 36 (최근 30일)
이전 댓글 표시
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)
답변 (2개)
Alexander
2012년 10월 22일
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
Parul Saini
2019년 7월 26일
Can we take piecewise continuous function with the same format of calculating fourier coefficients?
Azzi Abdelmalek
2012년 10월 22일
댓글 수: 1
Kyon
2016년 4월 8일
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 ?
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!