Calculateur de valeurs et vecteurs propres
La matrice de lignes (2, 1) et (1, 2) a pour valeurs propres 3 et 1, chacune avec son vecteur propre unitaire. Saisissez une matrice carrée jusqu'à 50×50 et obtenez tous ses couples propres réels, du plus grand au plus petit. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Le calculateur de valeurs et vecteurs propres prend une matrice carrée — jusqu'à 50×50, saisie ligne par ligne — et renvoie l'ensemble complet de ses couples propres réels : chaque valeur propre accompagnée de son vecteur propre correspondant, normalisé à longueur unitaire et ordonné de la plus grande valeur propre à la plus petite. Les couples propres sont la signature d'une transformation linéaire : ils indiquent quelles directions elle laisse inchangées et de combien elle étire chacune, et ils sous-tendent tout, de l'analyse vibratoire et des vérifications de stabilité à PageRank, aux chaînes de Markov et à l'analyse en composantes principales. Au lieu de développer le polynôme caractéristique à la main ou d'installer une bibliothèque numérique, vous envoyez les coefficients et recevez les couples propres en un seul appel déterministe, arrondis à la précision de votre choix. Le même module s'exécute gratuitement dans votre navigateur sur cette page : vous ne payez que lorsque vous automatisez le flux de travail.
Ce que révèle un couple propre
Un vecteur propre d'une matrice carrée A est un vecteur non nul que A se contente de dilater : A·v = λ·v pour un certain scalaire λ, la valeur propre. Géométriquement, un vecteur propre pointe le long d'un axe que la transformation ne fait ni pivoter ni cisailer — elle l'étire ou le comprime seulement, d'un facteur λ.
Le couple (λ, v) est appelé couple propre, et le calculateur de valeurs et vecteurs propres renvoie exactement cela : un enregistrement par valeur propre contenant la valeur propre elle-même et son vecteur propre unitaire correspondant, de sorte que la correspondance ne puisse jamais être mal interprétée. Les couples sont triés de la plus grande valeur propre à la plus petite, ce qui place en premier la direction dominante du système — celle qui gouverne le comportement à long terme des processus itératifs.
Les valeurs propres négatives codent un renversement de direction, une valeur propre nulle révèle un noyau non trivial et une matrice non inversible, et les valeurs propres répétées signalent des symétries du problème. Si la matrice n'est pas carrée, la requête est rejetée d'emblée, car les couples propres ne sont définis que pour les matrices carrées ; et si la matrice possède des valeurs propres complexes, l'outil le dit au lieu d'inventer des nombres réels.
Comment fonctionne le calcul
L'algorithme est entièrement déterministe — aucun vecteur initial aléatoire, aucun nombre d'itérations qui varie d'une exécution à l'autre — donc la même matrice renvoie toujours les mêmes couples propres, octet pour octet. Les matrices symétriques, omniprésentes en analyse de covariance, en mécanique des structures et en optimisation, sont traitées par balayages cycliques de Jacobi : une séquence fixe de rotations planes qui annule les coefficients hors diagonale tout en accumulant les rotations dans la matrice des vecteurs propres.
Jacobi n'est pas la méthode la plus rapide en théorie, mais elle est remarquablement précise aux tailles petites et moyennes que cet outil accepte, et elle gère avec aisance les valeurs propres répétées, là où les méthodes de puissance simples échouent. Les matrices générales non symétriques sont traitées par une itération QR à décalage de Wilkinson pour extraire les valeurs propres, suivie d'une itération inverse sur la matrice d'origine pour retrouver un vecteur propre par valeur propre.
Avant de répondre, l'outil vérifie que les vecteurs propres retrouvés sont linéairement indépendants ; sinon — comme avec la classique matrice défectueuse [[1,1],[0,1]] — la requête échoue avec une erreur claire plutôt qu'une réponse fausse à l'apparence plausible. Chaque valeur propre et chaque coefficient de vecteur propre est arrondi à la précision décimale demandée, de 0 à 15 chiffres, dix par défaut.
Où les couples propres sont utilisés
Les couples propres apparaissent partout où un système linéaire évolue ou vibre. En ingénierie, les fréquences propres d'une structure sont les racines carrées des valeurs propres de son système rigidité-masse, et les vecteurs propres sont les modes propres — la façon dont la structure se déforme à chaque fréquence. En science des données, l'analyse en composantes principales n'est rien d'autre que la décomposition propre d'une matrice de covariance : les vecteurs propres sont les directions principales et les valeurs propres mesurent la variance capturée par chacune.
La recherche web doit son existence à un couple propre : PageRank est le vecteur propre dominant de la matrice des liens du web. L'analyse des chaînes de Markov fonctionne de la même façon — la valeur propre dominante indique si la chaîne converge et son vecteur propre est l'état stationnaire.
Cas d’usage
Trouver les composantes principales
Envoyez une matrice de covariance et lisez directement les couples propres : les vecteurs propres sont les directions principales, les valeurs propres la variance expliquée.
Analyser vibrations et stabilité
Extrayez les fréquences propres et les modes d'un système mécanique à partir de sa matrice de rigidité, ou vérifiez la stabilité d'un système linéaire par le signe de ses valeurs propres.
Vérifier devoirs et recherche
Validez une décomposition propre calculée à la main contre une référence déterministe avant de la rendre, avec la précision que vous contrôlez.
Questions fréquentes
Combien ça coûte ?
L'exécution est aussi gratuite dans votre navigateur sur cette page, avec des résultats identiques.
Quelles matrices sont acceptées ?
Toute matrice carrée de nombres réels finis jusqu'à 50×50.
Et si ma matrice a des valeurs propres complexes ?
Les matrices à valeurs propres complexes, et les matrices défectueuses sans ensemble complet de vecteurs propres réels indépendants, sont rejetées avec une erreur claire plutôt qu'une réponse approximative.
Comment les couples propres sont-ils ordonnés ?
De la plus grande valeur propre à la plus petite. Chaque couple propre porte son propre vecteur propre, normalisé à longueur unitaire, de sorte que l'appariement est sans ambiguïté.
Comment vérifier une réponse ?
Multipliez la matrice par chaque vecteur propre renvoyé : le résultat doit être égal à la valeur propre fois ce vecteur propre (A·v = λ·v), à la précision d'arrondi choisie près.
Outils associés
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/math/eigenvalue-eigenvector \
-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/eigenvalue-eigenvector", {
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/eigenvalue-eigenvector",
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/eigenvalue-eigenvector", 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/eigenvalue-eigenvector", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"matrix": [
[
2,
1
],
[
1,
2
]
]
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.eigenvalue_eigenvector",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Limites
max_n | 50 |
max_abs_entry | 1000000000000000 |
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |
Notes techniques
Où les couples propres sont utilisés
Comme la capacité s'exécute sur notre edge mondial sans rien stocker après la réponse, elle s'intègre aussi proprement dans les pipelines automatisés : un script peut soumettre des matrices dans le cadre d'une tâche de nuit pour $0.002 par appel, tandis qu'une personne vérifie les mêmes matrices gratuitement dans le navigateur avec des résultats identiques à l'octet près. Cette parité entre l'outil web gratuit et l'API payante est voulue — le même module alimente les deux canaux.