This commit is contained in:
2026-01-23 21:19:23 +01:00
parent 7c1b335b1c
commit 1561eb242e
8 changed files with 36417 additions and 35865 deletions

View File

@@ -47,6 +47,7 @@ def ausgleichung_global(A, dl, Q_ext):
return dict_ausgleichung, dx
def ausgleichung_lokal(A, dl, Q_ll):
A = np.asarray(A, dtype=float)
dl = np.asarray(dl, dtype=float).reshape(-1, 1)
@@ -60,14 +61,14 @@ def ausgleichung_lokal(A, dl, Q_ll):
n = A.T @ P @ dl
# 3) Datumsfestlegung
G = Datumsfestlegung.raenderungsmatrix_G(x0_sp, liste_punktnummern, mit_massstab=mit_massstab)
aktive = Datumsfestlegung.datumskomponenten(auswahl, liste_punktnummern)
E = Datumsfestlegung.auswahlmatrix_E(u=A.shape[1], aktive_unbekannte_indices=aktive)
Gi_sp = E * G
Gi = np.asarray(Gi_sp, dtype=float)
G = Datumsfestlegung.build_G_from_names(x0, Jacobimatrix_symbolisch_liste_unbekannte, liste_punktnummern, mit_massstab=True)
u = A.shape[1]
aktive = Datumsfestlegung.aktive_indices_from_selection(auswahl, Jacobimatrix_symbolisch_liste_unbekannte)
E = Datumsfestlegung.auswahlmatrix_E(u, aktive)
Gi = E @ G
# 3) Zuschlagsvektor dx
dx = np.linalg.solve(N, n)
dx, k = Datumsfestlegung.berechne_dx_geraendert(N, n, Gi)
# 5) Residuen
v = dl - A @ dx