简体   繁体   中英

Fourier coefficients using matlab numerical integration

I have been trying to display the an and bn fourier coefficients in matlab but no success, I was able to display the a0 because that is not part of the iteration.

I will highly appreciate your help, below is my code

syms an;
syms n;
syms t;
y = sym(0);
L = 0.0005; 
inc = 0.00001; % equally sample space of 100 points

an = int(3*t^2*cos(n*pi*t/L),t,-L,L)*(1/L); 
bn = int(3*t^2*sin(n*pi*t/L),t,-L,L)*(1/L); 
a0 = int(3*t^2,t,-L,L)*(1/L); 
a0 = .5 *a0;

a0=a0

for i=1:5 
    y = subs(an, n, i)*cos(i*pi*t/0.0005)
    z = subs(bn, n, i)*sin(i*pi*t/0.0005)  
end

If everything you stated within your question is correct, I would tend to solve it this way:

clc, clear all,close all

L = 0.0005;
n = 5;
an = zeros(1,n);
bn = zeros(1,n);

for i = 1:5    
    f1 = @(t) 3.*(t.^2).*cos(i.*pi.*t./L);
    f2 = @(t) 3.*(t.^2).*sin(i.*pi.*t./L);
    an(i) = quad(f1,-L,L).*(1./L);
    bn(i) = quad(f2,-L,L).*(1./L);
    a0 = .5.*quad(@(t) 3.*t.^2,-L,L).*(1./L);
end

I hope this helps.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM