Import Nivellement

This commit is contained in:
2025-12-29 18:32:46 +01:00
parent 30f1104b6d
commit 098a02527f
3 changed files with 1213 additions and 107 deletions

View File

@@ -3,8 +3,8 @@
{
"metadata": {
"ExecuteTime": {
"end_time": "2025-12-29T17:23:08.323819Z",
"start_time": "2025-12-29T17:23:08.301369Z"
"end_time": "2025-12-29T17:28:49.461376Z",
"start_time": "2025-12-29T17:28:48.679433Z"
}
},
"cell_type": "code",
@@ -26,13 +26,13 @@
],
"id": "2bc687b1b4adb7bd",
"outputs": [],
"execution_count": 21
"execution_count": 1
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2025-12-29T17:23:09.598055Z",
"start_time": "2025-12-29T17:23:09.569636Z"
"end_time": "2025-12-29T17:28:49.510175Z",
"start_time": "2025-12-29T17:28:49.504956Z"
}
},
"cell_type": "code",
@@ -49,13 +49,13 @@
],
"id": "57fcd841405b7866",
"outputs": [],
"execution_count": 22
"execution_count": 2
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2025-12-29T17:23:11.981126Z",
"start_time": "2025-12-29T17:23:11.948522Z"
"end_time": "2025-12-29T17:28:49.519660Z",
"start_time": "2025-12-29T17:28:49.514976Z"
}
},
"cell_type": "code",
@@ -74,13 +74,13 @@
]
}
],
"execution_count": 23
"execution_count": 3
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2025-12-29T17:23:12.502821Z",
"start_time": "2025-12-29T17:23:12.479346Z"
"end_time": "2025-12-29T17:28:49.536891Z",
"start_time": "2025-12-29T17:28:49.524431Z"
}
},
"cell_type": "code",
@@ -277,13 +277,13 @@
]
}
],
"execution_count": 24
"execution_count": 4
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2025-12-29T17:23:12.963787Z",
"start_time": "2025-12-29T17:23:12.946675Z"
"end_time": "2025-12-29T17:28:49.556529Z",
"start_time": "2025-12-29T17:28:49.542177Z"
}
},
"cell_type": "code",
@@ -501,13 +501,13 @@
]
}
],
"execution_count": 25
"execution_count": 5
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2025-12-29T17:23:13.421388Z",
"start_time": "2025-12-29T17:23:13.407138Z"
"end_time": "2025-12-29T17:28:49.570872Z",
"start_time": "2025-12-29T17:28:49.562519Z"
}
},
"cell_type": "code",
@@ -529,18 +529,18 @@
"'Import der Koordinaten aus stationärem GNSS abgeschlossen.'"
]
},
"execution_count": 26,
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"execution_count": 26
"execution_count": 6
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2025-12-29T17:23:13.951805Z",
"start_time": "2025-12-29T17:23:13.882301Z"
"end_time": "2025-12-29T17:28:49.602748Z",
"start_time": "2025-12-29T17:28:49.576618Z"
}
},
"cell_type": "code",
@@ -566,13 +566,13 @@
],
"id": "ed9be38e35cfc619",
"outputs": [],
"execution_count": 27
"execution_count": 7
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2025-12-29T17:23:14.551239Z",
"start_time": "2025-12-29T17:23:14.547868Z"
"end_time": "2025-12-29T17:28:49.610830Z",
"start_time": "2025-12-29T17:28:49.607819Z"
}
},
"cell_type": "code",
@@ -601,13 +601,13 @@
],
"id": "efa952a603ad1909",
"outputs": [],
"execution_count": 28
"execution_count": 8
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2025-12-29T17:23:35.060270Z",
"start_time": "2025-12-29T17:23:15.051902Z"
"end_time": "2025-12-29T17:29:08.256623Z",
"start_time": "2025-12-29T17:28:49.615348Z"
}
},
"cell_type": "code",
@@ -874,13 +874,13 @@
]
}
],
"execution_count": 29
"execution_count": 9
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2025-12-29T17:23:35.237718Z",
"start_time": "2025-12-29T17:23:35.217523Z"
"end_time": "2025-12-29T17:29:08.432824Z",
"start_time": "2025-12-29T17:29:08.414129Z"
}
},
"cell_type": "code",
@@ -901,13 +901,13 @@
]
}
],
"execution_count": 30
"execution_count": 10
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2025-12-29T17:23:35.268789Z",
"start_time": "2025-12-29T17:23:35.260619Z"
"end_time": "2025-12-29T17:29:08.442532Z",
"start_time": "2025-12-29T17:29:08.437891Z"
}
},
"cell_type": "code",
@@ -919,13 +919,13 @@
],
"id": "5a9e8f24709980d2",
"outputs": [],
"execution_count": 31
"execution_count": 11
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2025-12-29T17:23:35.286359Z",
"start_time": "2025-12-29T17:23:35.273992Z"
"end_time": "2025-12-29T17:29:08.459163Z",
"start_time": "2025-12-29T17:29:08.450531Z"
}
},
"cell_type": "code",
@@ -936,6 +936,7 @@
"\n",
"db_zugriff.get_instrument_liste(\"Tachymeter\")\n",
"db_zugriff.set_instrument(\"Tachymeter\", \"Trimble S9\")\n",
"db_zugriff.set_instrument(\"Nivellier\", \"Trimble DiNi 0.3\")\n",
"db_zugriff.get_instrument_liste(\"Tachymeter\")"
],
"id": "bb4c738edcf9ac6f",
@@ -945,7 +946,9 @@
"output_type": "stream",
"text": [
"Das Instrument Trimble S9 ist bereits in der Datenbank vorhanden.\n",
"Es hat die ID 1\n"
"Es hat die ID 1\n",
"Das Instrument Trimble DiNi 0.3 ist bereits in der Datenbank vorhanden.\n",
"Es hat die ID 2\n"
]
},
{
@@ -954,18 +957,18 @@
"[(1, 'Tachymeter', 'Trimble S9')]"
]
},
"execution_count": 32,
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"execution_count": 32
"execution_count": 12
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2025-12-29T17:23:35.306943Z",
"start_time": "2025-12-29T17:23:35.293026Z"
"end_time": "2025-12-29T17:29:08.471099Z",
"start_time": "2025-12-29T17:29:08.464146Z"
}
},
"cell_type": "code",
@@ -995,13 +998,13 @@
]
}
],
"execution_count": 33
"execution_count": 13
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2025-12-29T17:23:35.330007Z",
"start_time": "2025-12-29T17:23:35.319025Z"
"end_time": "2025-12-29T17:29:08.482507Z",
"start_time": "2025-12-29T17:29:08.477411Z"
}
},
"cell_type": "code",
@@ -1024,13 +1027,13 @@
]
}
],
"execution_count": 34
"execution_count": 14
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2025-12-29T17:23:36.093802Z",
"start_time": "2025-12-29T17:23:35.343075Z"
"end_time": "2025-12-29T17:29:08.507643Z",
"start_time": "2025-12-29T17:29:08.490170Z"
}
},
"cell_type": "code",
@@ -1046,37 +1049,123 @@
"id": "da3bd8e134a3fe5c",
"outputs": [
{
"ename": "AttributeError",
"evalue": "'Datenbankzugriff' object has no attribute 'set_normalhoehe_hfp'",
"output_type": "error",
"traceback": [
"\u001B[31m---------------------------------------------------------------------------\u001B[39m",
"\u001B[31mAttributeError\u001B[39m Traceback (most recent call last)",
"\u001B[36mCell\u001B[39m\u001B[36m \u001B[39m\u001B[32mIn[35]\u001B[39m\u001B[32m, line 7\u001B[39m\n\u001B[32m 3\u001B[39m db_zugriff = Datenbank.Datenbankzugriff(pfad_datenbank)\n\u001B[32m 5\u001B[39m liste_HFP = [(\u001B[32m666\u001B[39m, \u001B[32m3.891\u001B[39m), (\u001B[32m812\u001B[39m, \u001B[32m3.999\u001B[39m), (\u001B[32m816\u001B[39m, \u001B[32m3.995\u001B[39m)]\n\u001B[32m----> \u001B[39m\u001B[32m7\u001B[39m \u001B[43mdb_zugriff\u001B[49m\u001B[43m.\u001B[49m\u001B[43mset_normalhoehe_hfp\u001B[49m(liste_HFP)\n",
"\u001B[31mAttributeError\u001B[39m: 'Datenbankzugriff' object has no attribute 'set_normalhoehe_hfp'"
]
"data": {
"text/plain": [
"'Der HFP 666 wurde aktualisiert.\\nDer HFP 812 wurde aktualisiert.\\nDer HFP 816 wurde aktualisiert.'"
]
},
"execution_count": 15,
"metadata": {},
"output_type": "execute_result"
}
],
"execution_count": 35
"execution_count": 15
},
{
"metadata": {},
"metadata": {
"ExecuteTime": {
"end_time": "2025-12-29T17:29:08.519187Z",
"start_time": "2025-12-29T17:29:08.512286Z"
}
},
"cell_type": "code",
"outputs": [],
"execution_count": null,
"source": [
"importlib.reload(Datenbank)\n",
"db_zugriff = Datenbank.Datenbankzugriff(pfad_datenbank)\n",
"\n",
"db_zugriff.get_normalhoehe_hfp()"
],
"id": "ded7bfe9e696a09d"
"id": "ded7bfe9e696a09d",
"outputs": [
{
"data": {
"text/plain": [
"[('10009', 4.1228),\n",
" ('10006', 3.700452),\n",
" ('10010', 4.042865),\n",
" ('10018', 4.37204),\n",
" ('10008', 3.84784),\n",
" ('10005', 3.837325),\n",
" ('10003', 3.86254),\n",
" ('10004', 3.61063),\n",
" ('10007', 4.032877),\n",
" ('10001', 4.011375),\n",
" ('10002', 3.70914),\n",
" ('10016', 4.17165),\n",
" ('10011', 3.9289),\n",
" ('10026', 4.417013),\n",
" ('10027', 4.44308),\n",
" ('10043', 4.42904),\n",
" ('10044', 4.656675),\n",
" ('10021', 4.465185),\n",
" ('10020', 4.451425),\n",
" ('10024', 4.416225),\n",
" ('10025', 4.52817),\n",
" ('10022', 4.332345),\n",
" ('10023', 4.455445),\n",
" ('10019', 4.08987),\n",
" ('10033', 3.968025),\n",
" ('10017', 4.08287),\n",
" ('10052', 4.39907),\n",
" ('10042', 4.46707),\n",
" ('10053', 4.386353),\n",
" ('10037', 4.10459),\n",
" ('10040', 4.277468),\n",
" ('10041', 4.59913),\n",
" ('10038', 4.19912),\n",
" ('10051', 4.395635),\n",
" ('10036', 4.11213),\n",
" ('10035', 4.18675),\n",
" ('10039', 4.207075),\n",
" ('10059', 4.143315),\n",
" ('10050', 4.27416),\n",
" ('10013', 3.912175),\n",
" ('10028', 3.9),\n",
" ('10012', 4.007365),\n",
" ('10014', 4.01094),\n",
" ('10031', 3.974038),\n",
" ('10015', 4.09836),\n",
" ('10032', 3.839305),\n",
" ('10030', 3.686305),\n",
" ('10029', 3.65702),\n",
" ('10034', 3.846134),\n",
" ('10045', 3.829975),\n",
" ('10049', 4.104995),\n",
" ('10048', 3.897465),\n",
" ('10047', 3.707345),\n",
" ('10046', 3.64526),\n",
" ('10057', 3.87817),\n",
" ('10055', 3.56299),\n",
" ('10054', 3.8132),\n",
" ('10058', 3.980515),\n",
" ('10056', 3.537135),\n",
" ('666', 3.891),\n",
" ('812', 3.999),\n",
" ('816', 3.995),\n",
" ('FH14', 4.119355),\n",
" ('FH11', 4.06521),\n",
" ('FH13', 4.54882),\n",
" ('FH3', 4.71028),\n",
" ('FH4', 4.72869),\n",
" ('FH15', 4.73323),\n",
" ('FH5', 4.71542)]"
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
}
],
"execution_count": 16
},
{
"metadata": {},
"metadata": {
"ExecuteTime": {
"end_time": "2025-12-29T17:29:09.171902Z",
"start_time": "2025-12-29T17:29:08.525309Z"
}
},
"cell_type": "code",
"outputs": [],
"execution_count": null,
"source": [
"# Nivellement-Beobachtungen Importieren Teil 1\n",
"\n",
@@ -1084,13 +1173,32 @@
"imp = Import.Import(pfad_datenbank)\n",
"dict_punkthoehen_naeherung_niv, liste_punkte_in_db = imp.vorbereitung_import_beobachtungen_nivellement_naeherung_punkthoehen(r\"Daten\\Niv_bereinigt.DAT.csv\", 2)"
],
"id": "1f61a51b2a7366e7"
"id": "1f61a51b2a7366e7",
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Der Import wurde abgebrochen, weil die Beobachtungen aus der Datei Daten\\Niv_bereinigt.DAT.csv bereits in der Datenbank vorhanden sind.\n"
]
},
{
"ename": "TypeError",
"evalue": "cannot unpack non-iterable NoneType object",
"output_type": "error",
"traceback": [
"\u001B[31m---------------------------------------------------------------------------\u001B[39m",
"\u001B[31mTypeError\u001B[39m Traceback (most recent call last)",
"\u001B[36mCell\u001B[39m\u001B[36m \u001B[39m\u001B[32mIn[17]\u001B[39m\u001B[32m, line 5\u001B[39m\n\u001B[32m 3\u001B[39m importlib.reload(Import)\n\u001B[32m 4\u001B[39m imp = Import.Import(pfad_datenbank)\n\u001B[32m----> \u001B[39m\u001B[32m5\u001B[39m dict_punkthoehen_naeherung_niv, liste_punkte_in_db = imp.vorbereitung_import_beobachtungen_nivellement_naeherung_punkthoehen(\u001B[33mr\u001B[39m\u001B[33m\"\u001B[39m\u001B[33mDaten\u001B[39m\u001B[33m\\\u001B[39m\u001B[33mNiv_bereinigt.DAT.csv\u001B[39m\u001B[33m\"\u001B[39m, \u001B[32m2\u001B[39m)\n",
"\u001B[31mTypeError\u001B[39m: cannot unpack non-iterable NoneType object"
]
}
],
"execution_count": 17
},
{
"metadata": {},
"cell_type": "code",
"outputs": [],
"execution_count": null,
"source": [
"# Nivellement-Beobachtungen Importieren Teil 2\n",
"\n",
@@ -1099,26 +1207,26 @@
"liste_hoehenpunkte_hinzufuegen = ['FH14', 'FH11', 'FH13', 'FH3', 'FH4', 'FH15', 'FH5']\n",
"imp.import_beobachtungen_nivellement_naeherung_punkthoehen(dict_punkthoehen_naeherung_niv, liste_punkte_in_db, liste_hoehenpunkte_hinzufuegen)"
],
"id": "6c909b9792861b30"
"id": "6c909b9792861b30",
"outputs": [],
"execution_count": null
},
{
"metadata": {},
"cell_type": "code",
"outputs": [],
"execution_count": null,
"source": [
"# Nivellement-Beobachtungen Importieren Teil 3\n",
"importlib.reload(Import)\n",
"imp = Import.Import(pfad_datenbank)\n",
"imp.import_beobachtungen_nivellement_RVVR(r\"Daten\\Niv_bereinigt.DAT.csv\", 2)"
],
"id": "4c06b9c4cd78e7b7"
"id": "4c06b9c4cd78e7b7",
"outputs": [],
"execution_count": null
},
{
"metadata": {},
"cell_type": "code",
"outputs": [],
"execution_count": null,
"source": [
"# Jacobimatrix aufstellen\n",
"importlib.reload(Datenbank)\n",
@@ -1137,13 +1245,13 @@
"Jacobimatrix_symbolisch_liste_unbekannte = fm.jacobi_matrix_symbolisch()[1]\n",
"Jacobimatrix_symbolisch_liste_beobachtungsvektor = fm.jacobi_matrix_symbolisch()[2]"
],
"id": "c9367690f5b73953"
"id": "c9367690f5b73953",
"outputs": [],
"execution_count": null
},
{
"metadata": {},
"cell_type": "code",
"outputs": [],
"execution_count": null,
"source": [
"importlib.reload(Datenbank)\n",
"db_zugriff = Datenbank.Datenbankzugriff(pfad_datenbank)\n",
@@ -1152,52 +1260,52 @@
"\n",
"A_matrix_numerisch_iteration0 = fm.jacobi_matrix_zahlen_iteration_0(Jacobimatrix_symbolisch, \"naeherung_us\", Jacobimatrix_symbolisch_liste_unbekannte, Jacobimatrix_symbolisch_liste_beobachtungsvektor)"
],
"id": "163fa2e24923b40"
"id": "163fa2e24923b40",
"outputs": [],
"execution_count": null
},
{
"metadata": {},
"cell_type": "code",
"outputs": [],
"execution_count": null,
"source": [
"importlib.reload(Funktionales_Modell)\n",
"fm = Funktionales_Modell.FunktionalesModell(pfad_datenbank, a, b)\n",
"\n",
"beobachtungsvektor_numerisch = fm.beobachtungsvektor_numerisch(Jacobimatrix_symbolisch_liste_beobachtungsvektor)"
],
"id": "80e8325721c950f8"
"id": "80e8325721c950f8",
"outputs": [],
"execution_count": null
},
{
"metadata": {},
"cell_type": "code",
"outputs": [],
"execution_count": null,
"source": [
"importlib.reload(Funktionales_Modell)\n",
"fm = Funktionales_Modell.FunktionalesModell(pfad_datenbank, a, b)\n",
"\n",
"beobachtungsvektor_naeherung_symbolisch = fm.beobachtungsvektor_naeherung_symbolisch(Jacobimatrix_symbolisch_liste_beobachtungsvektor)"
],
"id": "33e9fbd465c577e4"
"id": "33e9fbd465c577e4",
"outputs": [],
"execution_count": null
},
{
"metadata": {},
"cell_type": "code",
"outputs": [],
"execution_count": null,
"source": [
"importlib.reload(Funktionales_Modell)\n",
"fm = Funktionales_Modell.FunktionalesModell(pfad_datenbank, a, b)\n",
"\n",
"beobachtungsvektor_naeherung_numerisch_iteration0 = fm.beobachtungsvektor_naeherung_numerisch_iteration0(Jacobimatrix_symbolisch_liste_beobachtungsvektor, beobachtungsvektor_naeherung_symbolisch)"
],
"id": "bcf3dd5fc820d077"
"id": "bcf3dd5fc820d077",
"outputs": [],
"execution_count": null
},
{
"metadata": {},
"cell_type": "code",
"outputs": [],
"execution_count": null,
"source": [
"# Auftstellen der Qll-Matrix\n",
"importlib.reload(Stochastisches_Modell)\n",
@@ -1206,37 +1314,37 @@
"Qll_matrix_symbolisch = stoch_modell.Qll_symbolisch(pfad_datenbank, Jacobimatrix_symbolisch_liste_beobachtungsvektor)\n",
"Qll_matrix_numerisch = stoch_modell.Qll_numerisch(pfad_datenbank, Qll_matrix_symbolisch,Jacobimatrix_symbolisch_liste_beobachtungsvektor)"
],
"id": "63c4db5423f4fbaf"
"id": "63c4db5423f4fbaf",
"outputs": [],
"execution_count": null
},
{
"metadata": {},
"cell_type": "code",
"outputs": [],
"execution_count": null,
"source": "",
"id": "56d21ad3a21bcb23"
"id": "56d21ad3a21bcb23",
"outputs": [],
"execution_count": null
},
{
"metadata": {},
"cell_type": "code",
"outputs": [],
"execution_count": null,
"source": "",
"id": "62ce1bc475e81e81"
"id": "62ce1bc475e81e81",
"outputs": [],
"execution_count": null
},
{
"metadata": {},
"cell_type": "code",
"outputs": [],
"execution_count": null,
"source": "",
"id": "275c60800b458eae"
"id": "275c60800b458eae",
"outputs": [],
"execution_count": null
},
{
"metadata": {},
"cell_type": "code",
"outputs": [],
"execution_count": null,
"source": [
"importlib.reload(Funktionales_Modell)\n",
"fm = Funktionales_Modell.FunktionalesModell(pfad_datenbank, a, b)\n",
@@ -1252,13 +1360,13 @@
"\n",
"dx = Parameterschaetzung.ausgleichung_global(A_matrix_numerisch_iteration0, fm.berechnung_dl(beobachtungsvektor_numerisch, beobachtungsvektor_naeherung_numerisch_iteration0), stoch_modell)[1]"
],
"id": "d114b64c8acc8c50"
"id": "d114b64c8acc8c50",
"outputs": [],
"execution_count": null
},
{
"metadata": {},
"cell_type": "code",
"outputs": [],
"execution_count": null,
"source": [
"# Von Fabian\n",
"\n",
@@ -1274,13 +1382,13 @@
"unbekanntenvektor_numerisch = fm.unbekanntenvektor_numerisch(Jacobimatrix_symbolisch_liste_unbekannte, unbekanntenvektor_symbolisch, dx, unbekanntenvektor_numerisch_iteration0)\n",
"print(unbekanntenvektor_numerisch)"
],
"id": "80c2cf1889ea56c8"
"id": "80c2cf1889ea56c8",
"outputs": [],
"execution_count": null
},
{
"metadata": {},
"cell_type": "code",
"outputs": [],
"execution_count": null,
"source": [
"# Datumsfestlegung: Bitte geben Sie nachfolgend die Koordinatenkomponenten an, die das Datum definieren sollen\n",
"\n",
@@ -1292,7 +1400,9 @@
"\n",
"aktive_unbekannte_indices = Datumsfestlegung.datumskomponenten(auswahl, liste_punktnummern)"
],
"id": "cd09dd5a716736b1"
"id": "cd09dd5a716736b1",
"outputs": [],
"execution_count": null
}
],
"metadata": {