Matrix diagonalisieren
Für die Matrix mit den Zeilen (2, 1) und (1, 2) erhalten Sie die Eigenwerte 3 und 1, die Diagonalmatrix D und die Eigenvektormatrix P, sodass A = P·D·P⁻¹ gilt. Ist eine Matrix nicht diagonalisierbar, erfahren Sie das klar und deutlich. Kostenlos in Ihrem Browser.
- Kostenlos
- Läuft in Ihrem Browser
- Ohne Anmeldung
- Ihre Daten bleiben auf Ihrem Gerät
Im Browser ausführen – kostenlos
Läuft direkt in Ihrem Browser – kostenlos. Ihre Datei verlässt Ihren Browser nicht und wird an keinen Server übertragen.
Der Matrix-Diagonalisierungsrechner nimmt eine quadratische Matrix entgegen und liefert ihre vollständige Eigenzerlegung: die Eigenwerte, die daraus aufgebaute Diagonalmatrix D und die Basiswechselmatrix P, deren Spalten die zugehörigen Eigenvektoren sind, sodass A = P·D·P⁻¹ gilt. Die Diagonalisierung verwandelt schwierige Probleme in einfache — Matrixpotenzen, Exponentialfunktionen, Differenzialgleichungen und Markow-Ketten werden zu eintragsweisen Operationen, sobald eine Matrix in ihrer Eigenbasis geschrieben ist. Statt das charakteristische Polynom von Hand auszurechnen oder eine numerische Bibliothek zu installieren, senden Sie die Einträge und erhalten die Zerlegung in einem einzigen deterministischen Aufruf zurück, wobei jeder Wert auf die von Ihnen gewählte Genauigkeit gerundet wird. Derselbe Code läuft auf dieser Seite kostenlos in Ihrem Browser, sodass Sie eine Matrix durch Einfügen prüfen können und erst dann bezahlen, wenn Sie den Arbeitsablauf automatisieren.
Was das Diagonalisieren einer Matrix bedeutet
Eine quadratische Matrix A ist diagonalisierbar, wenn sie genügend unabhängige Eigenvektoren besitzt, um eine Basis zu bilden — n Stück bei einer n×n-Matrix. In diesem Fall können Sie A = P·D·P⁻¹ schreiben, wobei D eine Diagonalmatrix ist, die die Eigenwerte enthält, und P die Basiswechselmatrix, deren Spalten die Eigenvektoren in derselben Reihenfolge sind. Diese Zerlegung gehört zu den zentralen Ergebnissen der linearen Algebra, weil Diagonalmatrizen trivial zu handhaben sind: D in die fünfzigste Potenz zu erheben bedeutet lediglich, jeden Diagonaleintrag in die fünfzigste Potenz zu erheben.
Der Matrix-Diagonalisierungsrechner berechnet diese Faktorisierung direkt aus den von Ihnen eingegebenen Einträgen. Er liefert die Eigenwerte von groß nach klein sortiert, die Diagonalmatrix D und die vollständige Matrix P, sodass Sie die Identität A·P = P·D selbst nachprüfen oder die Teile in den nächsten Schritt Ihrer Berechnung übernehmen können. Ist die Matrix nicht quadratisch, wird die Anfrage abgelehnt, und besitzt sie komplexe Eigenwerte oder keinen vollständigen Satz reeller Eigenvektoren, sagt das Werkzeug dies klar und deutlich, statt Zahlen zurückzugeben, die plausibel aussehen, aber falsch sind.
Wie die Berechnung funktioniert
Der Algorithmus ist vollständig deterministisch — keine zufälligen Startpunkte, keine Iterationszahlen, die sich von Lauf zu Lauf ändern — sodass dieselbe Matrix stets dieselbe Zerlegung liefert. Symmetrische Matrizen, die in Statistik, Physik und Optimierung ständig auftauchen, werden mit zyklischen Jacobi-Durchläufen behandelt: einer Folge von Ebenendrehungen, die die Einträge außerhalb der Diagonale zu null machen und die Drehungen gleichzeitig in der Eigenvektormatrix akkumulieren.
Jacobi ist theoretisch langsam für sehr große Matrizen, aber äußerst genau für die kleinen und mittleren Größen, die dieses Werkzeug akzeptiert, und kommt mit mehrfachen Eigenwerten problemlos zurecht, bei denen andere Verfahren schwächeln. Allgemeine nicht-symmetrische Matrizen werden mit einer QR-Iteration mit Wilkinson-Shift bearbeitet, um die Eigenwerte zu gewinnen, gefolgt von inverser Iteration, um zu jedem einen Eigenvektor zu finden.
Vor der Rückgabe prüft das Werkzeug, ob die Eigenvektormatrix P invertierbar ist; sind die Spalten nahezu parallel, ist die Matrix defekt — wie das klassische [[1,1],[0,1]] — und kann nicht diagonalisiert werden, sodass die Anfrage mit einem klaren Fehler scheitert statt mit einer stillschweigend kaputten Antwort. Jeder Ausgabeeintrag wird auf die von Ihnen gewünschte Dezimalgenauigkeit gerundet, von 0 bis 15 Stellen, mit zehn als Voreinstellung.
Wo Teams sie einsetzen
Die Diagonalisierung taucht überall dort auf, wo sich ein lineares System im Laufe der Zeit entwickelt. Ingenieurinnen und Ingenieure, die das Langzeitverhalten einer Markow-Kette berechnen, brauchen die Eigenwerte, um zu wissen, ob die Kette konvergiert und wie schnell; der dominante Eigenwert und sein Eigenvektor liefern den stationären Zustand direkt. Entwicklerinnen und Entwickler, die mit Rekurrenzrelationen oder gekoppelten Differenzengleichungen arbeiten, diagonalisieren die Übergangsmatrix, um eine geschlossene Lösung zu erhalten, statt zu iterieren.
In Grafik und Geometrie offenbart die Zerlegung einer Transformation die Achsen, entlang derer sie den Raum streckt. Datenteams nutzen sie als Baustein: Die Hauptkomponentenanalyse ist die Eigenzerlegung einer Kovarianzmatrix, und spektrale Graphenverfahren beginnen bei den Eigenvektoren eines Laplace-Operators.
Anwendungsfälle
Matrixpotenzen schnell berechnen
Ermitteln Sie P und D einmal und berechnen Sie A^k anschließend als P·D^k·P⁻¹ — jeder Eigenwert wird einfach in die k-te Potenz erhoben.
Eine Markow-Kette analysieren
Extrahieren Sie den dominanten Eigenwert und seinen Eigenvektor, um die stationäre Verteilung und die Konvergenzgeschwindigkeit zu bestimmen.
Hausaufgaben und Kursarbeiten prüfen
Vergleichen Sie eine von Hand durchgeführte Diagonalisierung mit einer deterministischen Referenz, bevor Sie sie einreichen.
Häufige Fragen
Was kostet das?
Außerdem ist die Ausführung in Ihrem Browser auf dieser Seite kostenlos — mit identischen Ergebnissen.
Welche Matrizen werden akzeptiert?
Jede quadratische Matrix aus reellen, endlichen Zahlen bis zu einer Größe von 50×50.
Was passiert, wenn meine Matrix nicht diagonalisierbar ist?
Matrizen mit komplexen Eigenwerten oder defekte Matrizen ohne n unabhängige reelle Eigenvektoren werden mit einem klaren Fehler abgelehnt, statt eine Näherungsantwort zu liefern.
Wie sind die Ergebnisse geordnet?
Die Eigenwerte werden von groß nach klein zurückgegeben, und die Spalten der Basiswechselmatrix P folgen derselben Reihenfolge.
Wie kann ich die Antwort überprüfen?
Multiplizieren Sie A·P und P·D — beide müssen gleich sein. Bei symmetrischen Matrizen sind die Spalten von P außerdem orthonormal, sodass P⁻¹ der Transponierten von P entspricht.
Wird meine Matrix irgendwo gespeichert?
Nein. Sie wird im Arbeitsspeicher verarbeitet und verworfen; nur die Zerlegung wird zurückgegeben.
Verwandte Tools
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/math/diagonalize-matrix \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"matrix":[[2,1],[1,2]]}'const res = await fetch("https://api.kit.forhosting.com/math/diagonalize-matrix", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"matrix": [
[
2,
1
],
[
1,
2
]
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/math/diagonalize-matrix",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"matrix": [
[
2,
1
],
[
1,
2
]
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/math/diagonalize-matrix", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"matrix":[[2,1],[1,2]]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"matrix":[[2,1],[1,2]]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/math/diagonalize-matrix", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"matrix": [
[
2,
1
],
[
1,
2
]
]
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.diagonalize_matrix",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Limits
max_n | 50 |
max_abs_entry | 1000000000000000 |
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |
Technische Hinweise
Wo Teams sie einsetzen
Da die Fähigkeit auf unserem globalen Edge-Netz läuft und nach der Antwort nichts gespeichert wird, passt sie auch nahtlos in automatisierte Pipelines — ein Skript kann Matrizen im Rahmen eines nächtlichen Jobs für $0.002 pro Aufruf einreichen, während ein Mensch dieselben Matrizen kostenlos im Browser prüft, mit byteweise identischen Ergebnissen. Diese Übereinstimmung zwischen dem kostenlosen Web-Werkzeug und der kostenpflichtigen API ist Absicht: Beide werden vom selben Modul angetrieben.