Transformationen
This commit is contained in:
18
Einheitenumrechnung.py
Normal file
18
Einheitenumrechnung.py
Normal file
@@ -0,0 +1,18 @@
|
||||
import sympy as sp
|
||||
|
||||
class Einheitenumrechnung:
|
||||
def __init__(self):
|
||||
pass
|
||||
|
||||
def mas_to_rad(mas):
|
||||
umrechnungsfaktor = 1 / 1000 * 1 / 3600 * sp.pi / 180
|
||||
grad = mas * umrechnungsfaktor
|
||||
return grad
|
||||
|
||||
def mm_to_m(mm):
|
||||
m = mm / 1000
|
||||
return m
|
||||
|
||||
def ppb(ppb):
|
||||
ppb *= 10 ** (-9)
|
||||
return ppb
|
||||
21
Vorbereitungen_Fabian/Transformation_Helmert.py
Normal file
21
Vorbereitungen_Fabian/Transformation_Helmert.py
Normal file
@@ -0,0 +1,21 @@
|
||||
import sympy as sp
|
||||
|
||||
#Beipsiel aus Luhmann S. 76
|
||||
# Ausgangssystem
|
||||
p1 = sp.Matrix([110, 100, 110])
|
||||
p2 = sp.Matrix([150, 280, 100])
|
||||
p3 = sp.Matrix([300, 300, 120])
|
||||
p4 = sp.Matrix([170, 100, 100])
|
||||
p5 = sp.Matrix([200, 200, 140])
|
||||
|
||||
# Zielsystem
|
||||
P1 = sp.Matrix([153.559, 170.747, 150.768])
|
||||
P2 = sp.Matrix([99.026, 350.313, 354.912])
|
||||
P3 = sp.Matrix([215.054, 544.420, 319.003])
|
||||
P4 = sp.Matrix([179.413, 251.030, 115.601])
|
||||
P5 = sp.Matrix([213.431, 340.349, 253.036])
|
||||
|
||||
#1) Näherungswertberechnung
|
||||
m0 = (P2 - P1).norm() / (p2 - p1).norm()
|
||||
|
||||
print(m0.evalf())
|
||||
@@ -1,36 +1,24 @@
|
||||
# Transformation ITRF2020 --> ETRF89/DREF91 Realisierung 2025
|
||||
|
||||
import sympy as sp
|
||||
|
||||
def mas_to_rad(mas):
|
||||
umrechnungsfaktor = 1 / 1000 * 1 / 3600 * sp.pi / 180
|
||||
grad = mas * umrechnungsfaktor
|
||||
return grad
|
||||
|
||||
def mm_to_m(mm):
|
||||
m = mm / 1000
|
||||
return m
|
||||
|
||||
def ppb(ppb):
|
||||
ppb *= 10 ** (-9)
|
||||
return ppb
|
||||
from Einheitenumrechnung import Einheitenumrechnung
|
||||
|
||||
# Helmetert Paramteter zur Referenzepoche t0
|
||||
t0 = 2015.0
|
||||
T1 = mm_to_m(41.1393)
|
||||
T2 = mm_to_m(51.9830)
|
||||
T3 = mm_to_m(-101.1455)
|
||||
D = ppb(7.8918)
|
||||
R1 = mas_to_rad(0.8878)
|
||||
R2 = mas_to_rad(12.7748)
|
||||
R3 = mas_to_rad(-22.2616)
|
||||
dotT1 = mm_to_m(0)
|
||||
dotT2 = mm_to_m(0)
|
||||
dotT3 = mm_to_m(0)
|
||||
T1 = Einheitenumrechnung.mm_to_m(41.1393)
|
||||
T2 = Einheitenumrechnung.mm_to_m(51.9830)
|
||||
T3 = Einheitenumrechnung.mm_to_m(-101.1455)
|
||||
D = Einheitenumrechnung.ppb(7.8918)
|
||||
R1 = Einheitenumrechnung.mas_to_rad(0.8878)
|
||||
R2 = Einheitenumrechnung.mas_to_rad(12.7748)
|
||||
R3 = Einheitenumrechnung.mas_to_rad(-22.2616)
|
||||
dotT1 = Einheitenumrechnung.mm_to_m(0)
|
||||
dotT2 = Einheitenumrechnung.mm_to_m(0)
|
||||
dotT3 = Einheitenumrechnung.mm_to_m(0)
|
||||
dotD = 0
|
||||
dotR1 = mas_to_rad(0.086)
|
||||
dotR2 = mas_to_rad(0.519)
|
||||
dotR3 = mas_to_rad(-0.753)
|
||||
dotR1 = Einheitenumrechnung.mas_to_rad(0.086)
|
||||
dotR2 = Einheitenumrechnung.mas_to_rad(0.519)
|
||||
dotR3 = Einheitenumrechnung.mas_to_rad(-0.753)
|
||||
|
||||
# Testdatensatz der AdV
|
||||
tc = 2021.48
|
||||
@@ -57,7 +45,7 @@ D_c = D + dotD * dt
|
||||
R_Matrix = sp.Matrix([[D_c, -R3_c, R2_c], [R3_c, D_c, -R1_c], [-R2_c, R1_c, D_c]])
|
||||
T_Vektor = sp.Matrix([T1_c, T2_c, T3_c])
|
||||
|
||||
# 4 Helmerttransformation
|
||||
# 4) Helmerttransformation
|
||||
print(f"BRMG = {(BRMG + T_Vektor + R_Matrix * BRMG).evalf()}")
|
||||
print(f"RANT = {(RANT + T_Vektor + R_Matrix * RANT).evalf()}")
|
||||
print(f"TIT2 = {(TIT2 + T_Vektor + R_Matrix * TIT2).evalf()}")
|
||||
@@ -11,9 +11,7 @@
|
||||
"source": [
|
||||
"import csv\n",
|
||||
"\n",
|
||||
"from prompt_toolkit.utils import to_float\n",
|
||||
"\n",
|
||||
"import Datenbank_alt"
|
||||
"from prompt_toolkit.utils import to_float\n"
|
||||
],
|
||||
"id": "9317c939b4662e39",
|
||||
"outputs": [],
|
||||
Reference in New Issue
Block a user