Galerie überarbeitet
Das PHP-Script zu meiner kleinen Bildersammlung habe ich überarbeitet. Das vergrößerte Bild, welches sich in einem CSS-Popup öffnet, wird nun nicht mehr als Hintergrundgrafik eingebunden. Dieser Schritt war damals nötig, da es Probleme mit dem Drag&Drop-JavaScript gab. Diese habe ich nun mit der Lösung von Struppi* ausgetauscht. Ein Ladeicon (im Hintergrund) überbrückt die Wartezeiten zwischen dem Ladevorgang zweier Bilder. Bei Gelegenheit werde ich sicher noch ein paar weitere Ideen im Script verbauen.
Weiterhin habe ich versucht, die einzelnen Galerien zeitlich einzuordnen und mit einer Jahreszahl versehen. Bis auf eine ist mir das auch geglückt. Neu hinzugekommen sind Bilder vom Ausflug zur Miniwelt* im sächsischen Lichtenstein, zu der mich Daniel* eingeladen hatte. Dort sind Modelle von bekannten Gebäuden im Maßstab von 1:25 ausgestellt - Preisfrage: Wie groß bin ich?. Darüberhinaus ist auf dem Gelände ein Planetarium und 360°-Kino. Ein Abstecher lohnt also in jedem Fall!
Eine kleine Änderung gabs noch beim Sudoku-Widget* für den skandinavischen Browser Opera*, der kürzlich in Version 9.50 erschienden ist. Dies nur der Vollständigkeit halber.
Software-, Bilder- und Serverupdate
Die Hauptdomain derletztekick.com ist nun im selben Paket, wie auch die DE-Adresse. Damit fällt aus meiner Sicht die Zweigleisigkeit endlich weg und das Speicherproblem hat sich fürs erste erledigt.
Von Mitte April bis Mitte Mai 2008 war in an der Fundamentalstation in Wettzell. Bereits letztes Jahr waren Daniel und ich dort zum Tag der offenen Tür. Diesmal war ich beruflich* vor Ort, um den VLBI-Referenzpunkt am dortigen Radioteleskop zu bestimmen. Hierzu habe ich ein paar Bilder in der Galerie VLBI-Referenzpunktbestimmung am RT Wettzell 2008 mal ins Netz gestellt. Hauptanliegen dieser Arbeit wird es sein, einen neuen Auswertealgorithmus* zu testen.
Als letztes kann ich noch zwei Softwareupdates vermelden. Im räumlichen Netzausgleichungsprogramm JAG3D v0.23b besteht nun die Möglichkeit, den Refraktionskoeffizient* einzugeben und zu berücksichtigen.
Anfragen und Probleme bei der Umformung von Soldner-Koordinaten* im Geodäten-Forum haben mich dazu bewogen, diese Koordinatenumformung auch im CoordsCalculator zu integrieren. Sowohl dieses Tool also auch die RINEX-Auswertesoftware SNOOPJ sind ab sofort bei sf.net* zu finden.
Fehlermeldung, wenn Speicher voll ist...
Wie vorgestern bereits geschrieben, habe ich in der Java-Insel nachgelesen, dass auch harte Fehler abgefangen werden können. Ein kleiner Test meinerseits verlief hierzu erfolgreich, sodass ich auf den zusätzlichen Trigger-Thread wieder verzichten konnte in der neu-angpassten Version von JAG3D.
In der Hilfe habe ich die Formeln für die Beobachtungsgleichungen im Übrigen einmal angepasst, sodass das Modell wieder transparent(er) ist.
Berücksichtigung von geometrische Korrektionen in JAG3D
Ich habe in den letzten Tagen wieder verstärkt am Netzausgleichungsprogramm JAG3D gearbeitet, da ich es derzeit für ein Projekt mitbenutze. Aus diesem Grund fallen mir Fehler und Probleme mit dem Tool zwangsläufig schnell auf.
In der letzten Version, bei der festgelegt werden kann, ob die beweglichen Anschlußpunkte iterativ verbessert werden sollen, ist mir ein kleiner Fehler unterlaufen. Wurde diese Option abgewählt und die Option freies Netz ausgleichen selektiert, so schlug die Berechnung aufgrund widersprüchlicher Einstellungen fehl. Grund ist, dass die Datumspunkte, die für die freie Netzausgleichung notwendig sind, in diesem Modus die beweglichen Anschlußpunkte sind. Diese werden natürlich iterativ verbessert während der Netzberechnung. Dieser Fehler ist nun behoben.
Bei großen Netzen - groß im Sinne von vielen Beobachtungen und einer damit verbundenen großen Normalgleichungsmatrix - hat die derzeitge Version von JAG3D noch ein Speicherproblem, welches ich vorerst nicht ohne weiteres in den Griff bekomme. Wenn der virtuelle Arebitsspeicher voll läuft, bricht das Programm die Berechnung einfach ab. Eine Fehlermedlung erhält man nicht, es sei denn, man hat Java Graticule 3D über die Konsole gestartet. Dort sollte in dem Fall ein java.lang.OutOfMemoryError: Java heap space Fehler zu sehen sein. Das Programm läuft hingegen weiter - zumindest entsteht optisch dieser Eindruck. Ich habe im Moment einen zweiten Thread hinzugefügt, der im 10 Sekundentakt triggert und den Speicher prüft. Sollte die Grenze erreicht werden, wird nun eine Warnung ausgegeben. Wie ich nun in der Insel nachgelesen habe, können auch Fehler direkt abgefangen werden, da die entsprechende Klasse von Throwable abgeleitet ist. Ich werde dies einmal austesten und dann ggf. auf den unnützen Thread verzichten, der nur Zeit kostet.
Dies löst das Speicherproblem natürlich nicht, liefert aber zumindest die Ursache des Versagens. Ich habe mir auch schon Gedanken gemacht, wie dieses Problem letztlich eingedämmt werden könnte. Den meisten unnötigen Speicher belegt wohl die Gewichtsmatrix in der Berechnung. Zumindest dann, wenn diese nur eine Diagonalmatrix ist und keine Korrelationen zwischen den Beobachtungen existieren. Der Speicherverbrauch der Diagonalelemente gegenüber der ganzen Matrix ist quadratisch! Da die Software im Moment keine Option bietet, eine vollbesetzte Kovarianzmatrix einzuführen, liesse sich hier sicher einiges rausholen. In der alten (derzeitigen) Version werde ich dahingegen wohl nicht mehr viel machen. In der zukünfigen Version, für die der Rechenkern bereits vorliegt, ist es jedoch überlegenswert.
Das wirklich neue in der aktuellen Version v0.21 von Java Graticule 3D ist, dass geometrische Korrektionen an den Schrägstrecken- und den Vertikalwinkelbeobachtungen angebracht werden können. Bereits bei Netzen mit geringer Ausdehnung macht sich die Erdkrümmung gerade in der Höhe bemerkbar. Die Krümmung kann nun wahlweise korrigiert werden bei der Netzausgleichung. Sie wird sowohl bei der Schrägstrecke als auch beim Zenitwinkel berücksichtigt, wobei der Korrekturwert bei der Streckenmessung i.A. vernachlässigbar klein ist in lokalen 3D-Netzen. Formeln für die geometrische Reduktion entstammen Joeckel und Stober. Zum Download gehts hier entlang*.
Wahlweise iterative Verbesserung der Anschlußpunkte in JAG3D
Es gibt eine neue Version von Java Graticule 3D. Nein, es ist noch nicht das bereits angekündigte Resultat, welches der Zusammenarbeit zwischen Sebastian und mir entspringen soll, sondern lediglich ein Update der alten Version. In dieser Version besteht nun die Möglichkeit, die beweglichen Anschlußpunkte iterativ zu verbessern oder diese fest zu lassen - die geschätzten Verbesserungen also nicht anzubrigen und letztlich als neue Näherung in die Ausgleichungsrechnung einführen. Der stochastische Anteil der Punkte fließt in jedem Fall in das Ergebnis mit ein. Die aktuelle Version liegt wieder bei sourceForge.net*.
Wer meint, an der neuen Version mithelfen zu können bzw. zu wollen, der findet die aktuellen Dateien von JAG3D hier*.
Domainumzug
Ich bin gerade dabei, die Hauptdomain derletztekick.com zu einem neuen Anbieter zu transferieren, sodass dann alles bei einem Provider ist. Es kann demnach sein, dass die Seite in den nächsten Tagen kurz nicht erreichbar ist. Ich bitte das zu entschuldigen!
Workshop Ausgleichungsrechnung - ein Resümee
Mit zwanzig interessierten Teilnehmern, die sowohl aus den öffentlichen Vermessungsstellen als auch aus freien Ingenieurbüros stammten, wurde das diesjährige Ausgleichungsseminar durch Prof. Günter Schmitt eröffnet. Gut zwei Jahre liegt das letzte Fortbildungsseminar, welches die Ausgleichsrechnung thematisierte, zurück. Seinerzeit wurden jedoch vorrangig die theoretischen Grundlagen vermittelt, sodaß die damaligen Interessenten angeregt hatten, ein solches Seminar mit mehr praktischen Beispielen zu durchsetzen. Das Geodätische Institut* der Universität Karlsruhe ist dieser Forderung mit dem Ausgleichungsseminar 2008 nachgekommen.
Nach einer knappen Eröffnungsrede durch Prof. Günter Schmitt, der noch einmal die weit zurückreichende fachliche Kompetenz, welche das Institut bei der geodätischen Netzplanung, -analyse und -ausgleichung besitzt, vor Augen führte, folgten zwei kurze Vorträge von Martin Vetter (Geodätisches Institut Karlsruhe*) und Armin Canzler (COS Systemhaus OHG*). In diesen beiden Präsentationen wurde versucht, bestehende Vorbehalte zu entkräften und Vorurteile abzubauen. Die Teilnehmer sollten erkennen, daß die Ausgleichsrechnung kein Zahlenzauber ist, der Fachspezialisten vorbehalten bleibt, sondern Dank modernster Softwareentwicklungen für jedermann zugänglich ist. Es wurde an einem einfachen Beispiel vorgeführt, wie durch interaktives Arbeiten direkt in der Graphik der Ausgleichungsprozess benutzerfreundlich und auf dem Stand der Technik durchgeführt wird. Es wurde klar herausgestellt, dass das Aufwendige wälzen von Ergebnislisten längst keine zeitgemäße Vorgehensweise mehr darstellt, um sicher zu plausiblen Ergebnissen zu gelangen.
In den sich anschließenden Workshops wurde in Dreiergruppen auf individuelle Wünsche der Seminarbesucher eingegangen und an verschiedensten Beispielen die Vorgehensweise Schritt für Schritt demonstriert. Von der Ausgleichung von Lagenetzen, Überwachungsmessung mit dreidimensionalen Daten, Integration von GPS-Messungen in ein terrestrisches Netz, bis hin zur interaktiven Netzplanung direkt am Bildschirm reichte das Repertoire an Beispielen, die alle samt aus realen Daten abgeleitet waren. Die Teilnehmer waren dazu angehalten, Vorgehensweisen zu Hinterfragen und letztlich die Ergebnisse mitzudiskutieren, was gerade bei der Planung von Messaufgaben mitunter in lebhaften Diskussionen endete. Als Demonstrationswerkzeug stand das aus der Kooperation zwischen dem Geodätischen Institut und COS Systemhaus OHG entstandene Ausgleichungsprogramm NetzCG* zur Verfügung.
Das knapp 8 Stunden dauernde Fortbildungsseminar endete nach einer gemeinsamen Abschlußdiskussion gegen 17:00 Uhr, wobei von den Teilnehmern durchweg eine positive Resonanz zu vernehmen war.
Schätzung der Varianzanteile und neue Signifikantstests
Die Prüfung mit einem a priori und einem a posteriori Signifikantstest wurde auf die beweglichen Anschlußpunkte in Java Graticule 3D ausgeweitet. Hierzu wurden der einfache Test der normierten Verbesserung und der T-Test durch ein jeweils mehrdimensionales Testverfahren ersetzt.
Ferner wird nun unter jeder Beobachtungsgruppe der Varianz- und Redundanzanteil ausgegeben.
Das nächste Update von JAG3D wird sich vermutlich etwas hinziehen, da ich nun von Sebastian unterstützt werde. Damit wir nun nicht großartig in meinem unkommentierten Quellcode werkeln müssen, haben wir uns entschlossen, einen Neuanfang zu starten. Dies soll letztlich auch die Erweiterbarkeit von Funktionalitäten erleichtern. Aus den ersten Versionen von JAG3D bin ich schließlich gewarnt, was alles nicht so clever ist. Ich bin gespannt, wie wir zusammen am Projekt arbeiten und was letztlich dabei rauskommt.
Zu guter Letzt darf ich noch auf eine neue Buchbesprechung von Höpckes Fehlerlehre und Ausgleichsrechnung Lehrbuch in meiner virtuellen Bibliothek hinweisen.
Modellerweiterung in der Netzausgleichungssoftware JAG3D
Die Anzahl der möglichen Unbekannten, die mit der Software zur Netzausgleichung geschätzt werden können, hat sich erhöht. Neu hinzugekommen sind die Möglichkeiten: den Maßstab sowie die Additionskonstante jeder Streckengruppe zu schätzen, und den Refraktionskoeffizient über die Zenitwinkel mitzubestimmen. Bei den Richtungsbeobachtungen kann nun ausgewählt werden, ob die Orientierung unbekannt ist und berechnet werden soll. Dadurch konnte die unglücklich betitelte Beobachtungsgruppe Azimutwinkel wieder entfernt werden. Alle Nicht-Koordinatenparameter werden mit ihrer jeweiligen Standardabweichung ausgegeben.
Etwas komfortabler ist nun das Einlesen von Richtungssätzen. Hier können nun auch mehrere Sätze in einer Datei stehen. JAG3D fragt beim Einlesen, wie die Daten zu verstehen sind. Bitte beachte, daß die Software keine Vollsätze akzeptiert! Das Aufsplitten der Daten innerhalb eines Richtungsfiles läuft lediglich über die Standpunktnummer.
Hinzugekommen ist ferner ein a-posteriori Zuverlässigkeitstest (t-Test) der einzelnen Beobachtungen, den [Jäger et al., 2005] in seinem Fachbuch beschriebt. Für die hierfür notwendigen Quantile greife ich nun auf eine externe Bibliothek zurück und habe teile der freien Apache Commons Mathematics Library* eingebunden. Diese unterliegt den Bestimmungen der Apache License 2.0* die ja nun Gott sei Dank mit der 3. Version der GPL* vereinbar ist.
Der Download der aktuellen Version v0.17b ist über die Projektseite bei SourceForge* eingerichtet - ihr müßt also trotz Osterzeit nicht erst lange suchen. Viel Spaß und ein frohes Osterfest wünsche ich Euch!
Fehler in partiellen Ableitungen von JAG3D
Da ich gerade dabei bin, an der internen Organisation der Beobachtungen sowie am Rechenkern von JAG3D ein paar Änderungen vorzunehmen, ist mir aufgefallen, dass ich bei den partiellen Ableitungen die Instrumenten- und Reflektorhöhe z.T. vergessen habe. Mir persönlich ist dies nie aufgefallen, da ich immer in bzw. mit lokalen Netzen arbeite und beiden Höhen den Wert Null zuweise. In der Praxis fällt dies ggf. auch nicht unmittelbar auf, da idR. beide Höhen fast gleich sind. Wie dem auch sei, da es sich hierbei um ein groben Auswertefehler handelt, gibt es eine Zwischenversion, in der die Ableitungen überarbeitet wurden.
Ferner hat Philipp einen kleinen Fehler im geodätischen Datenwandler FileConverter Java gefunden. Die Additionskonstanten der Koordinatenkomponenten durften nur ganzzahlig sein; nun sind auch reelle Zahlen zulässig.
Weiterführende Links
- Neuigkeitenarchiv
- Forenbeiträge
- CurveFitting von Robert am 05.06.2008 - 19:58 Uhr
- Quellcode von Clothoid Java von Micha am 19.05.2008 - 13:49 Uhr
- League Editor mit LMO kompatibel? von Micha am 01.05.2008 - 08:28 Uhr
- Affintransformation von Micha am 29.04.2008 - 19:13 Uhr
- JavaScript Calendar anpassen von Micha am 27.04.2008 - 08:22 Uhr