0 Daumen
1,3k Aufrufe

Ich habe einen Timer der von 0-100 Sekunden läuft und in Intervallen von einer Konstante k soll eine Aktion ausgelöst werden.

Nehmen wir an k=0,7, dann soll eine Aktion bei 0,7 ;1,4, 2,1 usw. ausgelöst werden.

(Die Funktion wird jede Sekunde aufgerufen, aber in der Funktionen gibt es Aktionen die eben andere Zeitintervalle haben zB.: soll alle 0,7 Sekunden etwas passieren)

Wie sieht dafür eine Formel aus?

Avatar von

2 Antworten

+2 Daumen

Ich denke, dass die Funktion \(f(a,x)=\arccos(\cos(ax))\) ganz gut wäre, wobei \(a\) eine Variable ist.

Mit \(a=8.976\) sieht die Funktion z. B. so aus:

Du siehst, dass die \(x\)-Achse immer bei 0.7, 1.4 etc. berührt wird. Du musst für andere Abstände einfach nur das \(a\) beliebig bestimmen. Klicke dazu auf das "Demos" unten rechts im Bild, dort habe ich dir einen Regler eingebaut!

Tipp:

Klicke auf den interaktiven Graph und klicke auf die kleinen Punkte, damit du siehst, dass ich auch keinen Müll erzähle:
d70b888f98c0002f1eebafaccb6bd572.png

Avatar von 28 k

danke für die Antwort. Wie bist du auf deine Funktion gekommen?

Ich weiß, dass \(f(x)=\arccos(cos(x))\) so zickzackig aussieht. Die Variable \(a\) habe ich numerisch hergeleitet.

+1 Daumen

Was willst du wissen ?

Timer 0.7, 1,4, 2,1, 2,8, 3.5, 4.2, 4.9
1 sec Aufruf  bei
1     2           3     4             5

0.7, 1,4, 2,1, 2,8, 3.5, 4.2, 4.9

Die Ereignisse 2.1 und 4.2 werden also
nicht durchgeführt. Ist deine Frage so zunächst
zu verstehen ?

Sind 2 Ereignisse im Sekundenintervall vorhanden
wird eines nicht ausgeführt.

Avatar von 123 k 🚀

"Sind 2 Ereignisse im Sekundenintervall vorhanden
wird eines nicht ausgeführt."

Ja genau, im Fall von k=0,7 sin gelegentlich 2 Ereignisse im Sekundenintervall. Die Lösung sollte eigentlich nicht so kompliziert sein. -> f(a,x)=arccos(cos(ax))

Ich hatte sowas wie:

a= ⌊(sekunde+1)//k⌋

b= ⌊(sekunde)//k⌋

c=a-b

c gibt an wie oft das Ereignis in Intervall eintritt.

1,2,3,4,5,6,7,8,9 ... Sekunden

1,1,2,1,2,1,2...

Lässt sich das so machen?

Die Frage ist doch was du willst und wer rechnen
soll. Ein Computergramm das bei dem Eingabewert
0.7 dir die Reihe von Zahlen
1,1,2,1,2,1,2...
ausgibt

oder eine Funktion
f ( x ,y ) = ...
x : das Sekundenintervall
y : 0.7
f ( 2, 0.7) = 2
Im Sekundenintervall 2 kommt ein
Vielfaches von 0.7  zwei mal vor.

Mit Zahlenfolgen bin ich etwas vertrauter, ich brauche es für ein Computerprogramm. Wie kommt man auf die Funktion und wie nennt sich diese Methode nochmal? Sekundarintervall habe ich auch noch nicht gehört.

Wie nennen sich die verschiedenen Darstellungsformen? Ich kann die Folge doch als Funktion oder eben als Folge definieren? Ich kann mich leider nicht besser ausdrücken. Sorry

Was soll das Computerprogramm können ?

x =  3 
y = 0.7
Anzahl von Vielfachem von 0.7 im Intervall
Sekunde 2..3

Die Reihe ist
0.7, 1,4,  2,1,  2,8,  3.5,  4.2, 4.9, 5.6 ...

0.7,   1 mal
1,4,  1 mal
2,1,  2,8,  2 mal
3.5,  1 mal
4.2, 4.9, 2 mal
5.6 1 mal

f ( 1, 0.7 ) = 1   ( zwischen 0 und 1 sec )
f ( 2, 0.7 ) = 1   ( zwischen 1 und 2 sec )
f ( 3, 0.7 ) = 2   ( zwischen 2 und 3 sec )
f ( 4, 0.7 ) = 1   ( zwischen 3 und 4 sec )
f ( 5, 0.7 ) = 2   ( zwischen 4 und 5 sec )
f ( 6, 0.7 ) = 1   ( zwischen 5 und 6 sec )

Sonst sag einmal welche Input-Werte
das Programm bekommen soll und
was der Output sein soll.

Die Gleichung funktioniert für mich :

a= ⌊(sekunde+1)//k⌋

b= ⌊(sekunde)//k⌋

c=a-b

k ist entweder 0,7 oder 1,3

Die Aufgabe falls es dich interessiert ist eine Ampelschaltung zu realisieren mit einer simulierten Warteschlage von Fahrzeugen. Aller einer Sekunde wird aktualisiert und es gibt 3 Konstanten: Schaltfrequenz(zwischen grün und rot) 3 Sekunden, ankommendeFahrzeuge 0,7 Sekunden, verlassendesFahrzeug 1,3 Sekunden.

Die Warteschlage ist eine Liste und es gibt zwei Funktionen um Fahrzeuge der Liste hinzuzufügen oder zu entfernen.

Wenn in einem Intervall von einer Sekunden zum Beispiel zwei neue Autos hinzukommen, muss ich die Funktion die Autos hinzufügt zweimal ausführen...

Also passt eigentlich mit dieser Rechnung die ich oben mache. Oder geht es noch anderes?

Ich blicke leider bei deiner Rechnung voll
nicht durch.
Aber wenns passt dann ist ja alles in
Ordnung.

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Mathelounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community