fertig
This commit is contained in:
@@ -53,7 +53,8 @@ class Iterationen:
|
||||
self.fm = Funktionales_Modell.FunktionalesModell(self.pfad_datenbank, self.a, self.b, self.pfad_tif_quasigeoidundulation)
|
||||
|
||||
|
||||
def ausgleichung_global(self, A, dl, Q_ext, P):
|
||||
|
||||
def ausgleichung_global(self, A: np.ndarray, dl: np.ndarray, Q_ext: np.ndarray, P: np.ndarray) -> tuple[dict[str, np.ndarray], np.ndarray]:
|
||||
"""
|
||||
Führt eine Ausgleichung nach kleinsten Quadraten durch.
|
||||
|
||||
@@ -62,24 +63,23 @@ class Iterationen:
|
||||
|
||||
Es werden folgende Berechnungsschitte durchgeführt:
|
||||
|
||||
1) Normalgleichungsmatrix N = Aᵀ · P · A und Absolutglied n = Aᵀ · P · dl
|
||||
2) Lösung dx = N⁻¹ · n
|
||||
3) Residuen v = A · dx − dl
|
||||
4) Kofaktormatrix der Unbekannten Q_xx
|
||||
5) Kofaktormatrix der ausgeglichenen Beobachtungen Q_ll_dach
|
||||
6) Kofaktormatrix der Verbesserungen Q_vv
|
||||
- Normalgleichungsmatrix N und Absolutgliedvektor n
|
||||
- Zuschlagsvektor dx
|
||||
- Residuenvektor v
|
||||
- Kofaktormatrix der Unbekannten Q_xx
|
||||
- Kofaktormatrix der ausgeglichenen Beobachtungen Q_ll_dach
|
||||
- Kofaktormatrix der Verbesserungen Q_vv
|
||||
|
||||
:param A: Jacobi-Matrix (A-Matrix).
|
||||
:type A: array_like
|
||||
:type A: np.ndarray
|
||||
:param dl: Verbesserungsvektor bzw. Beobachtungsabweichungen.
|
||||
:type dl: array_like
|
||||
:type dl: np.ndarray
|
||||
:param Q_ext: a-priori Kofaktormatrix der Beobachtungen.
|
||||
:type Q_ext: array_like
|
||||
:type Q_ext: np.ndarray
|
||||
:param P: Gewichtsmatrix der Beobachtungen.
|
||||
:type P: array_like
|
||||
:type P: np.ndarray
|
||||
:return: Dictionary mit Ausgleichungsergebnissen, Zuschlagsvektor dx.
|
||||
:rtype: tuple[dict[str, Any], numpy.ndarray]
|
||||
:raises numpy.linalg.LinAlgError: Wenn das Normalgleichungssystem singulär ist und nicht gelöst werden kann.
|
||||
:rtype: tuple[dict[str, numpy.ndarray], np.ndarray]
|
||||
"""
|
||||
A = np.asarray(A, float)
|
||||
dl = np.asarray(dl, float).reshape(-1, 1)
|
||||
|
||||
Reference in New Issue
Block a user