Netzmessung/-Ausgleichung - Simluation (Geodäsie/Vermessung)
kuli1013, Wednesday, 10.08.2022, 16:01 (vor 835 Tagen)
Hallo zusammen,
ich bin neu hier im Forum. Ich schreibe gerade an meiner BA und brauche Hilfe, da ich zu dieser Aufgabe keine Literatur finden kann.
Ich habe bereitgestellte Daten, welche vor Jahren gemessen wurden. Es handelt sich um Messungen im vertikalen Schacht. Dies sind 29 Standpunkte (auf verschiedenen Ebenen im Schacht) zwischen denen keine Verbindung besteht außer die gemessenen NP (an Wand auf verschiedenen Ebenen im Schacht). Anschluss an bestehende FP sind durch je 2 Standpunkte oben und unten vom Schacht. Gemessen wurden Hz, v und s (schräg). Die Visuren sind sehr steil mit langen Schrägstrecken aber kurzen horz. Distanzen.
Da es sich normalerweise bei Lage-/Höhennetzen um flächig ausgedehnte Netze handelt gibt es leider keine öffentliche Literatur/Paper zu Fällen mit steilen Visuren, langen Schrägstrecken aber kurzen horz. Distanzen.
Ich muss nun in Matlab folgendes simulieren:
1. Fehlerfortplanzung einer einzelnen TPS-Station 1 mit 3 polar anhängten Punkten 2,3,4 (Die Ausdehnung in Lage ist begrenzt durch den Schacht und die Höhe der Standpunkte und NP variiert also quasi "übereinander liegende" Punkte)
2. Dann die Kovarianzmatrix für Lage und Höhe verschiedenen Konstellationen dieser 4 Punkte berechnen.
3. Ausgehend von der 1D und 2D Kovarianzmatrix die relative Genauigkeit zwischen den 2D-Punkten und den 1D-Punkten berechen
Ich stehe aber ziemlich auf dem Schlauch, wie genau ich das machen soll Habe leider mit Matlab kaum Erfahrung und im Betrieb niemanden der helfen kann.
Vielleicht kann mir hier jmd erfahrenes helfen, wäre auf jedenfall sehr dankbar!
Viele Grüße
L.
Netzmessung/-Ausgleichung - Simluation
MichaeL , Bad Vilbel, Wednesday, 10.08.2022, 17:53 (vor 835 Tagen) @ kuli1013
Hallo kuli1013,
Ich stehe aber ziemlich auf dem Schlauch, wie genau ich das machen soll Habe leider mit Matlab kaum Erfahrung und im Betrieb niemanden der helfen kann.
Vielleicht zeigst Du erst einmal, was Du bisher so gemacht hast, um das Problem zu lösen inkl. dem Matlab-Code.
Viele Grüße
Micha
--
applied-geodesy.org - OpenSource Least-Squares Adjustment Software for Geodetic Sciences
Netzmessung/-Ausgleichung - Simluation
kuli1013, Thursday, 11.08.2022, 12:26 (vor 835 Tagen) @ MichaeL
Hallo Michael,
leider weiß ich nicht, wie ich hier Dateien einbinden kann.
Ich habe bisher die gemessenen Werte des ersten Standpunkts 4001 jeweils in txt dateien gespeichert. (richtungen, strecken und vertikal) Bin mir bei der Wahl des Standpunktes auch nicht sicher, da dieser Standpunkt Anschluss an die FP hat und nicht wie die restlichen Standpunkte nur NP bestimmt
Mein Matlab code bis hierher ist noch recht rudimentär und leider funktioniert mein polares Anhängen auch nicht richtig. Aber hier mal was ich bereits habe:
clc clear all close(gcf) %% Laden der Daten (Standpunkt 4001) % Pktnr 81xx = FP; Pktnr 2-4 = NP) ri = load("richtungen.txt"); str = load("strecken.txt"); ver = load("vertikal.txt"); stdpkt = [ri(:,1)]; alle=[ri(:,3), str(:,3), ver(:,3)]; n = length(alle); j = 1; %% Beobachtungsvektor L aufstellen L_r=ri(:,3); L=[L_r;str(:,3)]; %% Koordinaten des Instrumentenstandpunktes (vorab gerechnet) p1_x = 2309.969; p1_y = 5144.681; p1_z = -86,027; %% Arrays initialisieren Y(1) = 0; X(1) = 0; Z(1) = 0; %% polares Anhaengen for i = 1:n Y(j) = p1_y + str(i) * sin(ri(i)) * sin(ver(i)); X(j) = p1_x + str(i) * cos(ri(i)) * sin(ver(i)); Z(j) = p1_z + str(i) * cos(ver(i)); j = j + 1; end
Ich komme einfach nicht auf einen vernünftigen Ansatz, bzw bin mir absolut nicht sicher ob ich es richtig angehe.
Viele Grüße
L.
Netzmessung/-Ausgleichung - Simluation
MichaeL , Bad Vilbel, Thursday, 11.08.2022, 13:16 (vor 835 Tagen) @ kuli1013
Hallo kuli1013,
leider weiß ich nicht, wie ich hier Dateien einbinden kann.
Genauso, wie Du Deinen Matalb-Code auch eingebunden hast. Beschränke Dich aber bitte auf die wesentlichen Daten, wenn es sich um mehrere 100 Messungen handelt. Alternativ kannst Du Dienste wie Dropbox & co. nutzen. Idealerweise kannst Du ein minimal ausführbares Beispiel erzeugen, dass wir uns anschauen und Du dann nur auf den Rest übertragen musst.
Mein Matlab code bis hierher ist noch recht rudimentär und leider funktioniert mein polares Anhängen auch nicht richtig.
Funktioniert nicht, funktioniert hier nicht. Du solltest schon beschreiben, was nicht geht und wie eine mögliche Fehlermeldung aussieht.
j = 1; p1_z = -86,027; %% Arrays initialisieren Y(1) = 0; X(1) = 0; Z(1) = 0; %% polares Anhaengen for i = 1:n Y(j) = p1_y + str(i) * sin(ri(i)) * sin(ver(i)); X(j) = p1_x + str(i) * cos(ri(i)) * sin(ver(i)); Z(j) = p1_z + str(i) * cos(ver(i)); j = j + 1; end
Bei p1_z
muss sicher ein Punkt statt einem Komma hin. Das sollte Dir aber Matlab beim Ausführen des Skriptes schon aufzeigen.
Wenn j=1
ist und konstant bleibt, dann bedeutet dies, dass in jedem Schleifendurchlauf etwas Berechnet wird aber dieses Ergebnis in jedem weiteren Durchlauf wieder überschrieben wird. X, Y, Z
sind demnach keine Arrays, sondern einfach nur Skalare - sie enthalten die Koordinatenkomponenten der letzte Koordinate (wenn i = n
ist). Alle anderen hast Du verworfen. Wenn Du am Ende alle Koordinaten haben willst, muss die Adressierung von i
abhängen und nicht von j
.
Ein weiterer gern gemachter Fehler ist, die Winkeleinheiten nicht zu berücksichtigen beim Verwenden der trigonometrischen Funktionen. Da Du die Daten nicht gezeigt hast, kann ich das nur mutmaßen.
Ich komme einfach nicht auf einen vernünftigen Ansatz, bzw bin mir absolut nicht sicher ob ich es richtig angehe.
Ich kenne Deine Aufgabenstellung nicht im Detail. Ich habe es so verstanden, dass Du von einem Standpunkt über polares Anhängen Punkte bestimmen sollst. Für diese polaren Anhänger sind dann per Varianz-Kovarianz-Fortpflanzung die zugehörigen Unsicherheiten zu bestimmen. Ein echtes Netz liegt nicht vor, sodass keine Ausgleichung nötig ist.
Viele Grüße
Micha
--
applied-geodesy.org - OpenSource Least-Squares Adjustment Software for Geodetic Sciences
Netzmessung/-Ausgleichung - Simluation
kuli1013, Thursday, 11.08.2022, 15:05 (vor 834 Tagen) @ MichaeL
Hallo Michael,
bitte entschuldige, natürlich funktioniert ein schlichtes funktioniert nicht, wenn man Hilfe erwartet. Meine Ergebnisse des polaren Anhängens in Matlab stimmen nicht mit meinen Punktkoordinaten (mit Programm gerechnet) zusammen. vermute hier einen Fehler in meinen Daten, werde das überprüfen
Ein weiterer gern gemachter Fehler ist, die Winkeleinheiten nicht zu berücksichtigen beim Verwenden der trigonometrischen Funktionen. Da Du die Daten nicht gezeigt hast, kann ich das nur mutmaßen.
habe dies berücksichtigt. Aber danke für den Hinweis
Ich kenne Deine Aufgabenstellung nicht im Detail. Ich habe es so verstanden, dass Du von einem Standpunkt über polares Anhängen Punkte bestimmen sollst. Für diese polaren Anhänger sind dann per Varianz-Kovarianz-Fortpflanzung die zugehörigen Unsicherheiten zu bestimmen. Ein echtes Netz liegt nicht vor, sodass keine Ausgleichung nötig ist.
Die Aufgabenstellung im Allgemeinen ist ein Vergleich der 2D/1D und 3D Ausgleichung Ansätze anhand der gegebenen Netzmessung.
Da die Netzkonfiguration nicht wie ein "normales" Netz flächige Ausdehnung hat, sondern in der Höhe (steile Visuren, kurze horizontal strecke, lange schrägstrecke), soll die Simulation dazu dienen die Unsicherheiten in der Punktbestimmung im 2D/1D Ansatz darzustellen je nach Konstellation der Punkte. Dann die relative Genauigkeit zwischen den 2D-Punkten ( (Koordinatendifferenzen, rel. Fehlerellipsen) und den 1D-Punkten (Höhendifferenzen) berechnen.
Dieser Fall wird in der Literatur nicht erwähnt bzw. habe ich dazu nichts gefunden was mir weiterhelfen könnte bzw. wo dieses Problem bereits behandelt wurde sodass ich darauf verweisen könnte.
Viele Grüße
L.
Netzmessung/-Ausgleichung - Simluation
MichaeL , Bad Vilbel, Thursday, 11.08.2022, 15:17 (vor 834 Tagen) @ kuli1013
Hallo,
Die Aufgabenstellung im Allgemeinen ist ein Vergleich der 2D/1D und 3D Ausgleichung Ansätze anhand der gegebenen Netzmessung.
Wenn Du aber eine Netzausgleichung benötigst, wirst Du mit den polaren Anhängern nicht weit kommen. Hier wirst Du eine klassische Netzausgleichung in Matlab programmieren müssen. Bist Du sicher, dass Du hierfür nicht einfach ein vorhandenes Programm nutzen kannst, welches 3D-Ausgleichungen unterstützt? Für die weitere Analyse - in Deinem Fall vermutlich die Kovarianzmatrix der ausgeglichenen Punkte - kannst Du dann natürlich auf Matlab zurückgreifen.
Da die Netzkonfiguration nicht wie ein "normales" Netz flächige Ausdehnung hat, sondern in der Höhe (steile Visuren, kurze horizontal strecke, lange schrägstrecke), soll die Simulation dazu dienen die Unsicherheiten in der Punktbestimmung im 2D/1D Ansatz darzustellen je nach Konstellation der Punkte. Dann die relative Genauigkeit zwischen den 2D-Punkten ( (Koordinatendifferenzen, rel. Fehlerellipsen) und den 1D-Punkten (Höhendifferenzen) berechnen.
Ich sehe an Deiner Konfiguration zunächst nichts ungewöhnliches. Es liegen Messelemente vor, die man mittels Ausgleichung prozessieren soll. Wie die Netzausdehnung ist, spielt hierbei keine Rolle.
Dieser Fall wird in der Literatur nicht erwähnt bzw. habe ich dazu nichts gefunden was mir weiterhelfen könnte bzw. wo dieses Problem bereits behandelt wurde sodass ich darauf verweisen könnte.
Da es kein Sonderfall ist, wirst Du hier auch nichts spezielles finden, denke ich. Diese Aufgabe ist identisch zu lösen, wie ein Netz mit eher horizontaler Ausdehnung.
Viele Grüße
Micha
--
applied-geodesy.org - OpenSource Least-Squares Adjustment Software for Geodetic Sciences
Netzmessung/-Ausgleichung - Simluation
kuli1013, Thursday, 11.08.2022, 20:05 (vor 834 Tagen) @ MichaeL
Hallo Michael,
vielen Dank erstmal für die zügigen Antworten.
Ich werde nochmal über die Aufgabenstellung schauen, vielleicht habe ich auch den Ansatz einfach falsch verstanden.
Da es kein Sonderfall ist, wirst Du hier auch nichts spezielles finden, denke ich. Diese Aufgabe ist identisch zu lösen, wie ein Netz mit eher horizontaler Ausdehnung.
Aber ist es nicht so, dass bei steilen Visuren größere Korrelationen zwischen Lage und Höhe gibt als es bei normalen Netzen in der Regel der Fall ist?
Da ich sehr steile Visuren mit V zwischen 2-10° habe (hier wurde die Einheit Grad verwendet) ist doch von einer nicht zuvernachlössigbaren Korrelation auszugehen.
Dies sollte mit der Matlab Simulation über das polare Anhängen gezeigt werden. Zumindest war das die Idee...
Oder ist das mit der Korrelation eine falsche Annahme von mir?
Viele Grüße
L.
Netzmessung/-Ausgleichung - Simluation
MichaeL , Bad Vilbel, Thursday, 11.08.2022, 21:15 (vor 834 Tagen) @ kuli1013
Hallo kuli1013,
Da es kein Sonderfall ist, wirst Du hier auch nichts spezielles finden, denke ich. Diese Aufgabe ist identisch zu lösen, wie ein Netz mit eher horizontaler Ausdehnung.
Aber ist es nicht so, dass bei steilen Visuren größere Korrelationen zwischen Lage und Höhe gibt als es bei normalen Netzen in der Regel der Fall ist?
Ja, das könnte passiert, ist aber von der Visur abhängig - siehe unten. Dies ist doch kein Sonderfall sondern passiert durch die Konfiguration doch automatisch. Wenn etwas speziell ist, sollte es sich doch grundsätzlich unterscheiden. Alle Gleichungen, die Du einsetzen musst, sind identisch mit den Gleichungen, die auch für ein eher horizontales Netz gelten - aber eben auch für jede andere Netzform anzuwenden sind. Das ist in meinen Augen nichts spezielles.
Da ich sehr steile Visuren mit V zwischen 2-10° habe (hier wurde die Einheit Grad verwendet) ist doch von einer nicht zuvernachlössigbaren Korrelation auszugehen.
Ja, das könnte man annehmen. Aber: Wenn Dein Netz eher in Nord-Ost Richtung verläuft, werden die Korrelationen zwischen den XY-Koordinaten auch größer sein als würde das Netz eher nach Norden gestreckt sein. Dies ist derselbe Effekt, den Du nun zwischen der Lage und der Höhe vermutest. Das Korrelationen sich mit der Konfiguration ändern, stellt mMn. keinen Spezialfall dar. Etwas spezielles bzw. ein Sonderfall erfordert für mich auch ein spezielles Handeln. Um nicht missverstanden zu werden: Deine Arbeit als solche macht schon Sinn. Es geht einzig um die Tatsache, dass Du zu diesem "speziellen" Thema nichts oder nur wenig in der Literatur findest. Der Hauptgrund ist eben, dass es nur eine von vielen möglichen Anwendung ist.
Dies sollte mit der Matlab Simulation über das polare Anhängen gezeigt werden. Zumindest war das die Idee...
Das kannst Du natürlich zeigen und sollte auch bereits für einen polaren Anhänger funktionieren. Nehmen wir an, dass Deine Werte wie folgt aussehen:
r = 0 gon +/- 1 mgon
s = 100 m +/- 5 mm
v = 100 gon +/- 1 mgon
Dann hast Du einen Punkt, dessen X-Komponente 100 m ist und die Y und Z Komponente ist jeweils Null. Die zugehörige Kovarianzmatrix (sigma0 = 0.0001) lautet:
0.2500 0 0 0 0.0247 0 0 0 0.0247
Wir können erkennen, dass alle Nebendiagonalen Null sind. Es existieren keine Korrelationen zwischen X und Y, keine zwischen X und Z, keine zwischen Y und Z. Alle drei sind unabhängig. Nun ändern wir den Richtungswinkel auf r = 50 gon. Die X und Y Komponente ist nun sqrt(0.5)*100 m = 70.71... m. Wir erhalten (sigma0 = 0.0001)
0.1373 0.1127 0 0.1127 0.1373 0 0 0 0.0247
Wie man sieht, ist die Lage von der Höhe nach wie vor linear unabhängig. Die Lagekomponenten weisen aber nun Korrelationen auf. Die Korrelationsmatrix lautet:
1.0000 0.8203 0.0000 0.8203 1.0000 0.0000 0.0000 0.0000 1.0000
Nun ändern wir den Vertikalwinkel auf v = 1 gon. Wir haben nun eine extreme Visur, die fast in den Zenit schaut. Die Kovarianzmatrix lautet (sigma0 = 0.0001)
0.0124 0.0124 0.0025 0.0124 0.0124 0.0025 0.0025 0.0025 0.2499
Wir sehen bereits, dass die Kovarianzen klein sind zwischen der Z-Komponente und den anderen beiden Werten. Die Korrelationen werden also nicht riesig sein. Konkret sind es nur 4,5 %:
1.0000 0.9995 0.0450 0.9995 1.0000 0.0450 0.0450 0.0450 1.0000
Extrem hohe Abhängigkeiten haben die beiden Lagekomponenten von fast 100 %. Diese werden wieder Null, wenn wir r = 0 gon setzen.
Als letztes setzen wir v = 50 gon und erhalten als Korrelationsmatrix
1.0000 0.8351 0.7858 0.8351 1.0000 0.7858 0.7858 0.7858 1.0000
Wir sehen unmittelbar, dass die Korrelationen zwischen der Lage und der Höhe auf über 78 % angestiegen sind obwohl wir keine extreme Visur haben.
Oder ist das mit der Korrelation eine falsche Annahme von mir?
Du musst nichts annehmen, sondern kannst es - wie gezeigt - einfach berechnen und dann überlegen, wie Du mit den Ergebnissen weiterarbeitest bzw. was Du daraus als neuen Impuls ziehst.
Deine gezeigten Gleichungen für die Polarpunktbestimmung sind korrekt. Leite diese nach Strecke, Richtungs- und Zenitwinkel partiell ab und wende das Varianz-Kovarianz-Fortpflanzungsgesetz $\mathbf{FCF}^T$ an. Bestimme die Korrelationskoeffizienten und plotte diese mal gegen den jeweiligen Zenitwinkel. Dann siehst Du, wann die Korrelation maximal wird.
Viele Grüße
Micha
P.S. Deine Koordinate aus Deinem Script sehen ggf. auch "komisch" aus, weil Du Richtungen und keine Richtungswinkel hast - nur so eine Idee von mir.
--
applied-geodesy.org - OpenSource Least-Squares Adjustment Software for Geodetic Sciences
Netzmessung/-Ausgleichung - Simluation
kuli1013, Friday, 12.08.2022, 09:52 (vor 834 Tagen) @ MichaeL
Hallo Michael,
es macht natürlich Sinn, dass dies keine spezieller Fall ist sondern eben nur eine Aufgabenstellung von vielen die in der Literatur selten als Beispiel gebracht wird. Es ist wahrscheinlich nur für mich, die relativ neu ist in der Ingenieurvermessung einfach etwas "spezielles", auch verbunden mit der Arbeit im Schacht. Da lässt man sich dazu verleiten es als speziell zu bezeichnen
Ich bin froh das meine Arbeit dennoch Sinn macht...
Du musst nichts annehmen, sondern kannst es - wie gezeigt - einfach berechnen und dann überlegen, wie Du mit den Ergebnissen weiterarbeitest bzw. was Du daraus als neuen Impuls ziehst.
Das war meine Idee, ich kam nur leider nicht weiter und habe den Weg vor lauter Gleichungen nicht gefunden. Vielen Dank für die Ausführungen!
Deine gezeigten Gleichungen für die Polarpunktbestimmung sind korrekt. Leite diese nach Strecke, Richtungs- und Zenitwinkel partiell ab und wende das Varianz-Kovarianz-Fortpflanzungsgesetz $\mathbf{FCF}^T$ an. Bestimme die Korrelationskoeffizienten und plotte diese mal gegen den jeweiligen Zenitwinkel. Dann siehst Du, wann die Korrelation maximal wird.
Ganz lieben Dank für die wahrlich schnelle und ausführliche Hilfe. Es bringt mich in vielen Hinsichten um einiges weiter. Werde so vorgehen und dann meine Schlüsse daraus ziehen.
Viele Grüße,
L.
P.S. Deine Koordinate aus Deinem Script sehen ggf. auch "komisch" aus, weil Du Richtungen und keine Richtungswinkel hast - nur so eine Idee von mir.
Danke für den Tipp - ist mir gestern Nachmittag dann auch noch aufgegangen bei meiner Fehlersuche.