<waypoint> beschreibt einen Wegpunkt in einem Tauchgangsprofil. Ein Wegpunkt markiert immer eine Änderung im Ablauf des Tauchgangsprofils bei dessen Modellierung mittels eines Tauchsimulationsprogrammes oder einen neuen Datensatz bei der Erfassung eines realen Tauchgangsprofiles mittels eines Tauchcomputers. Änderungen (Ereignisse) sind
die Ausgabe einer Alarmmeldung des Tauchcomputers,
die Ausgabe eines Dekompressionstopps durch den Tauchcomputer,
ein aktualisierter CNS-Wert,
ein aktualisierter OTU-Wert,
das Setzen eines (neuen) Wertes für den maximalen Sauerstoff-Partialdruck (wenn mit einem Kreislaufgerät getaucht wird),
ein neuer von einem Tauchsimulationsprogramm berechneter Sauerstoff-Partialdruck,
die Verwendung eines anderen Atemgases bei einer bestimmten Tiefe,
ein neuer Flaschendruckwert,
ein neuer Wassertemperaturwert,
ein neuer gemessener Pulsfrequenzwert des Tauchers,
ein neuer gemessener Körpertemperaturwert des Tauchers,
ein neuer Batterieladezustandswert eines Gerätes,
ein neuer Kompaßkurs,
eine Änderung beim ,,Führungs-`` oder ,,Leitgewebe``,
ein neuer Wert für die berechnete Nullzeit.
Alle diese Änderungen passieren bei einer bestimmten Tiefe zu einem genau definierten Zeitpunkt. Deshalb müssen die Tiefe (<depth>) und die Zeit (<divetime>) in jeder <waypoint>-Anweisung angegeben werden (Ausnahmen siehe weiter unten).
Auch wenn ein Tauchcomputer — z.B. um Speicherplatz zu sparen — nicht mit jedem Intervall alle prinzipiell erfaßten Parameter speichert, sondern nur bei Änderung eines Parameters den aktualisierten Wert (z.B. die sich meistens nur langsam ändernde Wassertemperatur), sollten bei der Konvertierung des Tauchgangsprofiles nach UDDF in jedem Wegpunkt alle vom Tauchcomputer erfaßten Parameter aufgeführt werden, um Irritationen vorzubeugen. Dies sollte unabhängig davon geschehen, ob sich nun ein Parameter vom einen zum anderen Wegpunkt ändert oder nicht.
Von einer <waypoint>-Anweisung zur nächsten ändern sich die Parameter linear.
Weder vom physikalischen (Dekompressionsrechnung) noch vom mathematischen (Kurvenverlauf des Tauchprofils) Standpunkt her macht es Sinn, eine nicht-lineare Änderung der Tiefenwerte anzusetzen, da das Verhalten des Tauchers nicht-deterministisch — "chaotisch" — ist (aus den vorangegangenen Wegpunkten läßt sich nicht auf den nächsten schließen), so daß die Annäherung des Tauchgangsprofils mittels eines Splines oder einer anderen, nicht-linearen Funktion keine höhere Genauigkeit ergeben oder ein besseres Verständnis liefern kann.
Gleiches gilt auch für die anderen Parameter. Auch hierbei macht es keinen Sinn, nicht-lineare Änderungen anzunehmen.
Selbstverständlich liegt es im Ermessen eines jeden Programmierers, andere Interpolationsmethoden anzubieten/auszuprobieren. :-)
Wird z.B. mit gleichmäßiger Geschwindigkeit von 5 Metern pro Minute an der Oberfläche abgetaucht auf eine Tiefe von 20 Metern, so reichen zur vollständigen Beschreibung des Abstiegsprofiles zwei <waypoint>-Anweisungen:
<!-- die erste <waypoint>-Anweisung eines Profiles MUSS IMMER --> <!-- die Tiefe 0 Meter und die Zeit 0 Sekunden sowie eine --> <!-- <switchmix>-Anweisung zur Angabe des verwendeten Atemgases enthalten --> <waypoint> <depth>0.0</depth> <divetime>0.0</divetime> <switchmix ref="luft"/> </waypoint> <waypoint> <depth>20.0</depth> <divetime>240.0</divetime> </waypoint>
Selbstverständlich könnte der obige Abstieg auch so beschrieben werden:
<!-- die erste <waypoint>-Anweisung eines Profiles MUSS IMMER --> <!-- die Tiefe 0 Meter und die Zeit 0 Sekunden sowie eine --> <!-- <switchmix>-Anweisung zur Angabe des verwendeten Atemgases enthalten --> <waypoint> <depth>0.0</depth> <divetime>0.0</divetime> <switchmix ref="luft"/> </waypoint> <waypoint> <depth>5.0</depth> <divetime>60.0</divetime> </waypoint> <waypoint> <depth>10.0</depth> <divetime>120.0</divetime> </waypoint> <waypoint> <depth>15.0</depth> <divetime>180.0</divetime> </waypoint> <waypoint> <depth>20.0</depth> <divetime>240.0</divetime> </waypoint>
Da der Abstieg aber während des gesamten Zeitraums mit 5 m/s stattfindet, können die drei mittleren <waypoint>-Anweisungen auch entfallen — sie geben keine zusätzliche Information; in einer grafischen Auftragung des obigen Profils wären diese Wegpunkte nicht sichtbar (sofern sie nicht gesondert markiert wären :-) ). Tauchsimulationsprogramme sollten modellierte Profile immer möglichst einfach — mit so wenigen Wegpunkten wie nötig — darstellen. Bei Tauchcomputern hingegen, die gewöhnlich Tiefen-/Zeitangaben mit einem festen Intervall abspeichern (z.B. 20 Sekunden), werden aufgezeichnete Tauchgangsprofile in der Regel sehr viele <waypoint>-Anweisungen enthalten.
Wenn sich zwischendurch eine Änderung ergibt, z.B. eine andere Wassertemperatur, so muß dieses Ereignis in einem neuen Wegpunkt erscheinen (ohne die Temperaturänderung würden nach wie vor die obigen zwei Wegpunkt-Anweisungen ausreichen, da mit konstanter Geschwindigkeit abgetaucht wird!):
<!-- die erste <waypoint>-Anweisung eines Profiles MUSS IMMER die --> <!-- Tiefe 0 Meter und die Zeit 0 Sekunden sowie die eine --> <!-- <switchmix>-Anweisung zur Angabe des verwendeten Atemgases enthalten --> <waypoint> <depth>0.0</depth> <divetime>0.0</divetime> <switchmix ref="luft"/> <!-- wenn nachfolgend Temperaturangaben erfolgen, sollte gleich in --> <!-- der ersten <waypoint>-Anweisung damit begonnen werden... :-) --> <temperature>283.15</temperature> </waypoint> <waypoint> <depth>10.0</depth> <divetime>120.0</divetime> <!-- Sprungschicht bei 10 m Tiefe --> <temperature>278.15</temperature> </waypoint> <waypoint> <depth>20.0</depth> <divetime>240.0</divetime> </waypoint>
Ereignisse, die zum selben Zeitpunkt auf derselben Tiefe passieren, müssen in einer einzigen <waypoint>-Anweisung zusammengefaßt werden. Es ist nicht erlaubt, mehrere <waypoint>-Anweisungen hintereinander mit denselben Zeit-/Tiefendaten anzugeben.
Innerhalb der Eltern-Elemente (<ascent>, <descent>, <inputprofile> und <samples>) muß <waypoint> angegeben werden. Da das einfachst anzunehmende Tauchgangsprofil aus zumindest drei Wegpunkten besteht (Beginn des Tauchgangs an der Oberfläche, Abtauchen mit gleichmäßiger Geschwindigkeit zur Maximaltiefe, Auftauchen zur Oberfläche mit gleichmäßiger Geschwindigkeit), müssen also auch mindestens drei <waypoint>-Anweisungen in einer <samples>-Sektion stehen. Wenn ein Abstiegsprofil modelliert wird, müssen zumindest zwei Wegpunkte (Beginn des Tauchgangs an der Oberfläche, Abtauchen mit gleichmäßiger Geschwindigkeit zur Zieltiefe) angegeben werden.
Es ist nicht erlaubt, die beiden Wegpunkte an der Oberfläche (Beginn und Ende des Tauchgangs) wegzulassen.
Den Autoren ist bewußt, daß viele Tauchcomputer-Hersteller in ihren Geräten darauf verzichten, diese beiden Wegpunkte ([Zeit = 0, Tiefe = 0] sowie [Zeit = Ende des Tauchgangs, Tiefe = 0]) mit den Profildaten zu speichern. Dies liegt darin begründet, daß ein Tauchcomputer prinzipiell nur den Beginn des Tauchgangs durch eine Tiefe größer Null Meter detektieren kann und ebenso das Ende eines Tauchgangs als letzter Wegpunkt mit einer Tiefe größer Null Meter erkannt wird. Hier müßte der Tauchcomputer also den Tauchgang ein Interval vor dem Erkennen des Abtauchens beginnen lassen und ebenso ein Interval nach dem letzten aufgezeichneten Wegpunkt das Ende des Tauchgangs an der Oberfläche speichern. Der "Einfachheit" wegen verzichten die Hersteller leider oftmals hierauf (obwohl im Visualisierungsprogramm des Herstellers dann der Tauchgang doch bei [Zeit = 0, Tiefe = 0] beginnt und auch an der Oberfläche beendet wird... — das Visualisierungsprogramm fügt also stillschweigend diese beiden nicht mit aufgezeichneten Wegpunkte dem Profil hinzu). Da die Daten eines mit UDDF beschriebenen Tauchgangs aber konsistent sein sollen, sind die beiden Wegpunkte an der Oberfläche zu Beginn und Ende eines Tauchgangs in UDDF vorgeschrieben. Gegebenenfalls muß ein Anwenderprogramm also diese beiden Wegpunkte dem Tauchgangsprofil hinzufügen, wenn die ausgelesenen Daten anschließend im UDDF-Format abgespeichert werden. Das eigentliche Tauchgangsprofil wird hierbei nicht verfälscht — denn jeder weiß, daß ein Tauchgang immer an der Oberfläche beginnt und dort auch endet! :-)
Sollte das aufzeichnende Gerät die Wegpunkte nicht in festen Intervallen speichern, so sollte nach dem letzten detektierten Wegpunkt eine "angemessene" Auftauchzeit angesetzt werden, nach der der Tauchgang schließlich beendet wird.
Berechnung von Aufstiegsprofilen,
Berechnen der Gewebesättigung aufgrund eines Profiles mit verschiedenen Atemgasen bzw. Atemgaswechseln
:
Für die Berechnung von Aufstiegsprofilen (siehe <calculateprofile>)
können die ggfs. auf verschiedenen Tiefen vorgesehenen Atemgaswechsel ebenfalls mittels
<waypoint>-Elementen (<mixchange> ->
<ascent> -> <waypoint>)
vorgegeben werden. Naturgemäß kann hierbei keine Zeit angegeben werden. Eine weitere Besonderheit ist das Berechnen der
Gewebesättigung bei einem Tauchgangsprofil mit jeweils verschiedenen Atemgasen bzw. Atemgaswechseln. Auch hierbei muß gesondert
vom eigentlichen Tauchgangsprofil mittels <waypoint>-Elementen der Atemgaswechsel vorgegeben werden. Bei diesen beiden
Aufgabenstellungen brauchen also keine <divetime>-Elemente angeführt zu werden.
<ascent>, <descent>, <inputprofile>, <samples>
<alarm>, <batterychargecondition>, <bodytemperature>, <calculatedpo2>, <cns>, <decostop/>, <depth>, <divemode/>, <divetime>, <gradientfactor>, <heading>, <measuredpo2>, <nodecotime>, <otu>, <pulserate>, <remainingbottomtime>, <remainingo2time>, <setmarker>, <setpo2>, <switchmix/>, <tankpressure>, <temperature>
<ascent>, <descent>, <inputprofile>, <samples>