ah Fehler behoben hatte ein 1/n zuviel in der Funktion! Typischer
Anfängerfehler : /
Hier nochma die richtige Funktion, diesma hab ich die mit Vektoren
berechnet, um die For-Schleife zu umgehen. Jedoch habe ich noch keine
Idee, wie ich die einzelnen harmonischen Schwingungen ohne For-Schleife
darstellen kann? Hat jmd eine Idee, am besten auch mit Vektor und
Matrizenrechnung.
1 | function [y,t] = fourier(ua,N,f,ap)
|
2 |
|
3 | T=1/f;
|
4 | w=2*pi*f;
|
5 | n=1:N;
|
6 | t=0:1/(f*f):T*ap;
|
7 | y=0;
|
8 | y2=0;
|
9 | y3=0;
|
10 |
|
11 | y = (2*ua / (pi)) * (1./n) * sin(w*n'*t);
|
12 |
|
13 | for n = 1:N
|
14 | y3 = y3 + [(2*ua / (pi)) * (1/n) * sin(2*pi*f*n*t)];
|
15 | figure(3)
|
16 | plot(t,y3)
|
17 | grid on
|
18 | hold on
|
19 | xlabel('t in s')
|
20 | ylabel('A in V')
|
21 | title('\it{harmonische Sinusschwingungen}','FontSize',16)
|
22 |
|
23 | end
|
24 |
|
25 | y2=(-2*ua .*rem(t,T) ./T) + ua;
|
26 | figure(1)
|
27 | plot(t,y)
|
28 | grid on
|
29 | xlabel('t in s')
|
30 | ylabel('A in V')
|
31 | title('\it{Fouriertransformierte}','FontSize',16)
|
32 | figure(2)
|
33 | plot(t,y2)
|
34 | grid on
|
35 | xlabel('t in s')
|
36 | ylabel('A in V')
|
37 | title('\it{Sägezahnsignal}','FontSize',16)
|