Sinusschwingungen

alphacast

Ensign
Registriert
Apr. 2004
Beiträge
250
Hallo,

ich hab da mal eine Frage zu einer normalen Sinusschwingung. Folgende Daten liegen zugrunde:

- Frequenz f = 5 Hz
- Amplitude a = 10 V
- Zeit t = 499

for(i=0; i == t; i++) {
f = a * sin(2 * PI * f * i)
}

Dies ergibt bei graphischer Darstellung das erste Bild.

Teile ich den Sinusoperand durch die maximale Zeit t, wird doch quasi auf eine Sekunde skaliert, richtig?

for(i=0; i == t; i++) {
f = a * sin(2 * PI * f * i / t)
}

Dies sieht dann so aus (korrekt), wie auf dem zweiten Bild.

Warum hat die Schwingung im ersten Bild in Intervallen eine stärkere Amplitude und läuft insgesamt abwärts ... müsste sie nicht homogen aussehen?


Danke, schonmal! :)

EDIT: Kann das an der Schrittweite von 1 bei der Zeit liegen? Müsste doch auch korrekt werden, wenn man in 1000steln iteriert?
EDIT2: HA! Der Sinus von 2*PI*f*t, wobei t ganzzahlig ist, ist beim Programm nicht Null. Weiß nicht was der da rechnet, aber das dürfte der Fehler sein oder?
 

Anhänge

  • bild1.jpg
    bild1.jpg
    60,3 KB · Aufrufe: 274
  • bild2.jpg
    bild2.jpg
    32,7 KB · Aufrufe: 257
Zuletzt bearbeitet:
Die erste Schleife berechnet immer vielfache von 10*PI, wegen f=5 und i ganzzahlig. Die leicht seltsame Grafik entsteht durch Rechenungenauigkeit (schau auf den Exponenten!), weil die Sinusfunktion über ein Polynom angenähert wird. Eigentlich sollte eine Gerade bei y=0 herauskommen (übrigens: bei scilab sieht es fast exakt so aus).

Indem Du durch t teilst, erhälst Du jede Menge Zwischenwerte, die dann eine ordentliche Sinuskurve formen. Um Deine Frage noch zu beantworten: Du normierst damit auf die Zeit t, das kann man als skaliert auf eine Sekunde auffassen, muss man aber nicht.

Gruß
Morgoth
 
Danke dir! :D Hatte ich auch gerade ausgerechnet.

Ich mache das mit IDL, hier ist PI konstant 3,14159. Mit einem ganzzahligen t stimmen natürlich die Nulldurchgänge gar nicht mehr und es kommt nicht die Gerade bei y=0 heraus. Skaliert auf 1s sind die Abweichungen so klein, dass es anständig aussieht.

Man, bin ich beruhigt!

Aber noch eins:

Wenn tmax = 500 ist, ich f = 5 Hz habe und ich wir durch tmax teilen, dann ist doch bei i = 500 eine Sekunde um. Wie könnte man das denn anders auffassen?

EDIT: Ah, könnte auch eine Frequenz von 0,01 Hz sein oder? Also dann nicht eine, sondern 500 Sek. aber bei einer entsprechend niedrigeren Frequenz.
 
Zuletzt bearbeitet:
Also Normierung in Abhängigkeit davon was t ist, Sekunde, Millisekunde, ... ?

Aber im Umkehrschluss von der Skalierung auf 1 s könnte man doch hier auch von einer Skalierung auf 0.01 Hz sprechen, was nach 500s wieder 5 Schwingungen sind?!
 
Zuletzt bearbeitet:
Zurück
Oben