Geschwindigkeitsberechnung mit Variablen/nl: Unterschied zwischen den Versionen

Aus RailRoad&Co.-Wiki
Zur Navigation springenZur Suche springen
Albert Hartveld (Diskussion | Beiträge)
Die Seite wurde neu angelegt: „Vervolgens wordt de werkelijke snelheid berekend:“
Albert Hartveld (Diskussion | Beiträge)
Die Seite wurde neu angelegt: „Als je het bovenstaande idee toepast, kun je gemakkelijk de reistijd tussen 2 meetpunten bepalen, maar niet de juiste snelheid van de trein.“
Zeile 20: Zeile 20:
Vervolgens wordt de werkelijke snelheid berekend:
Vervolgens wordt de werkelijke snelheid berekend:


<div lang="de" dir="ltr" class="mw-content-ltr">
*'''v=s/t-delta*10000*3,6*schaal'''
*'''v=s/t-delta*10000*3,6*Massstab'''
</div>


<div lang="de" dir="ltr" class="mw-content-ltr">
Als je het bovenstaande idee toepast, kun je gemakkelijk de reistijd tussen 2 meetpunten bepalen, maar niet de juiste snelheid van de trein.
Bei der Umsetzung der obigen Idee kann man problemlos die Fahrzeit zwischen 2 Messpunkten ermitteln, nicht aber die korrekte Geschwindigkeit des Zuges.
</div>


<div lang="de" dir="ltr" class="mw-content-ltr">
<div lang="de" dir="ltr" class="mw-content-ltr">

Version vom 3. Februar 2025, 16:12 Uhr

Verwendung
thumbs


Snelheidsberekening in TrainController

Meettraject

Op twee plaatsen wordt aan een variabele de tijd toegewezen

  • t1=Huidige tijd(tijd) op meetpunt 1
  • t2=Huidige tijd(tijd) op meetpunt 2
  • t-delta=t2-t1 verstreken tijd tussen 2 meetpunten
Fig: Meetpunt 1

Vervolgens wordt de werkelijke snelheid berekend:

  • v=s/t-delta*10000*3,6*schaal

Als je het bovenstaande idee toepast, kun je gemakkelijk de reistijd tussen 2 meetpunten bepalen, maar niet de juiste snelheid van de trein.

Ganzzahlarithmetik in TrainController 9 und 10

Herr Freiwald beschreibt im Forum die Verwendung der Variablen so:

Die Berechnung funktioniert nur dann exakt, wenn man stillschweigend unterstellt, dass mit Gleitkommaarithmetik gearbeitet wird. Das aber ist nirgendwo so dokumentiert oder zugesichert.

In Zahlvariablen können nur ganze Zahlen gespeichert werden und auch die zugehörige Arithmetik beruht auf Ganzzahlarithmetik.

Wenn immer bei einem Softwareprogramm (nicht nur in TrainController) mit ganzzahligen Werten gerechnet wird, so ist es empfehlenswert, "vorsichtig zu programmieren" und die Formel so aufzubauen, dass Divisionen am Schluss der Berechnung ausgeführt werden, damit Runden oder Abschneiden auf ganzzahlige Werte erst ganz am Ende und nicht schon vorher als Zwischenergebnisse in die Berechnung einfließen.

Gleitkommaarithmetik in künftigen Versionen

Vielleicht werden wir dies in einer zukünftigen Version (Upgrade, nicht Update) auf Gleitkommaarithmetik umstellen. In einem Update der Version 10 geht das nicht mehr, weil es eine inkompatible Änderung wäre. Es ist nämlich nicht auszuschließen, dass andere Anwender die bestehende Ganzzahlarithmetik derzeit ganz bewusst für bestimmte Zwecke ausnutzen.


-- Uslex (Diskussion) 15:48, 13. Jan. 2024 (UTC)
bearbeitet: