Forum: Digitale Signalverarbeitung / DSP / Machine Learning Diskreter Vektor. Welche Länge ist denn richtig.


von Don Diego (Gast)


Lesenswert?

Schönen guten Morgen!

Ich habe heute Nacht einige Fingerübungen mit Matlab versucht und bin 
auch einen Knoten im Hirn gestoßen, der mich im Grunde schon immer 
verfolgt.

Von daher ist das Problem konkret aus Matlab entstanden, aber es grinst 
mich bei allen Arten von Diskretisierungen an. Zeitlich, bildlich oder 
gar Messbereiche....
1
T = 1/f_sample;
2
3
%t_scale = 0:T:duration; %Version a
4
t_scale = T:T:duration;  %Version b
5
6
N=length(t_scale);
7
8
f_scale = f1:(f2-f1)/(N-1):f2;
9
%f_scale = f1:(f2-f1)/N:f2-(f2-f1)/N;
10
11
s = sin(2*pi*f_scale.*t_scale);

Es soll ein Sinussweep erzeugt werden von f1 bis f2. Der hat eine 
bestimmte Zeitdauer "Duration" in Sekunden bei einer Abtastfrequenz 
"f_sample" in Hz.

Wenn ich mal Duration auf 10 s und f_sample auf 1 Hz stelle (das kann 
man leichter fassen) hat t_scale einmal die Länge 10 und einmal halt die 
Länge 11.
Beide male ist der erste Eintrag in f_scale f1 und der letzte f2.
Ich habe bei meiner Recherche sogar ein Codebeispiel gefunden, da 
Version c gemacht. Das kommt mir aber falsch vor, denn f2 wird ja gar 
nicht direkt erreicht als Eintrag.

Welche Länge bzw welche Vorgehensweise ist denn nun richtig? Wie geht 
das korrekt?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.