Calculateur du cercle de Mohr
Des contraintes normales de 80 et 20 avec un cisaillement de 40 donnent des contraintes principales de 100 et 0 et un cisaillement maximal de 50, dans l'unité de votre choix. Saisissez les trois valeurs pour obtenir le cercle de Mohr sans le tracer. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Sigma x
- 80
- Sigma y
- 20
- Tau xy
- 40
- Sigma 1
- 100
- Sigma 2
- 0
- τ max.
- 50
- Centre
- 50
Le cercle de Mohr est le portrait géométrique d'un état de contraintes planes : avec les contraintes normales des faces x et y et le cisaillement qui les accompagne, le centre et le rayon du cercle fixent les deux contraintes principales et le cisaillement maximal dans le plan. Ingénieurs, étudiants et post-processeurs d'éléments finis ont besoin de ces trois nombres sans redessiner le cercle à la main ni redériver le problème aux valeurs propres du tenseur 2×2.
Ce que montre le cercle de Mohr
Un état de contraintes planes est entièrement décrit par trois nombres : la contrainte normale sur la face x, la contrainte normale sur la face y et le cisaillement dans le plan qui les accompagne. Le cercle de Mohr transforme ces nombres en image. La contrainte normale se place sur l'axe horizontal et le cisaillement sur l'axe vertical ; on reporte le point connu, et le cercle est centré sur la moyenne des deux contraintes normales. Là où le cercle coupe l'axe horizontal se lisent les deux contraintes principales, le centre plus et moins le rayon, et le rayon lui-même est le cisaillement maximal dans le plan. Le calculateur vous donne ces valeurs directement, sans tracer le cercle ni résoudre à la main le problème de contraintes à deux dimensions.
Lire le résultat et éviter les erreurs
Avec 80 sur la face x, 20 sur la face y et un cisaillement de 40, le centre et le rayon valent 50 : les contraintes principales sont donc 100 et 0, et le cisaillement maximal 50. Gardez la traction positive et la compression négative, et utilisez une seule unité pour les trois valeurs. Quand les deux contraintes normales sont égales et que le cisaillement est nul, le cercle se réduit à un point : les deux contraintes principales coïncident et il n'y a pas de cisaillement dans le plan, ce qui est un résultat hydrostatique valide. Les étudiants s'en servent pour vérifier leurs exercices, les ingénieurs pour exploiter des résultats d'éléments finis.
Questions fréquentes
Que se passe-t-il si une composante de contrainte n'est pas un nombre fini ?
Valeurs absentes, chaînes vides, NaN et Infinity sont rejetés et ne sont pas facturés.
Comment trouve-t-on le centre et le rayon du cercle de Mohr ?
Le centre est la moyenne des deux contraintes normales. Le rayon est la racine carrée de la moitié de leur différence au carré plus le cisaillement au carré. Avec 80, 20 et 40, les deux valent 50.
Que signifie un rayon nul ?
Que les deux contraintes normales sont égales et qu'il n'y a pas de cisaillement. Les deux contraintes principales prennent alors cette même valeur hydrostatique et il ne reste aucun cisaillement dans le plan. C'est un état valide, pas une erreur.
Faut-il saisir la compression avec un signe négatif ?
Oui. La traction est positive et la compression négative pour les deux contraintes normales, si bien qu'une face comprimée déplace le centre du cercle vers le côté négatif de l'axe.
Quelle unité de contrainte utiliser ?
N'importe quelle unité cohérente, comme le MPa ou le psi, à condition que les trois valeurs utilisent la même. Les contraintes principales, le cisaillement maximal, le centre et le rayon sont rendus dans cette même unité.
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/phys/mohr-circle \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"sigma_x":80,"sigma_y":20,"tau_xy":40}'const res = await fetch("https://api.kit.forhosting.com/phys/mohr-circle", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"sigma_x": 80,
"sigma_y": 20,
"tau_xy": 40
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/phys/mohr-circle",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"sigma_x": 80,
"sigma_y": 20,
"tau_xy": 40
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/phys/mohr-circle", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"sigma_x":80,"sigma_y":20,"tau_xy":40}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"sigma_x":80,"sigma_y":20,"tau_xy":40}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/phys/mohr-circle", 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
{
"sigma_x": 80,
"sigma_y": 20,
"tau_xy": 40
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "phys.mohr_circle",
"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.
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
Ce calculateur du cercle de Mohr accepte des sigma_x, sigma_y et tau_xy finis, applique les identités sous forme close selon lesquelles sigma_1 et sigma_2 égalent la contrainte normale moyenne plus ou moins le rayon de Mohr et tau_max égale ce rayon, et renvoie un JSON structuré que vous pouvez ancrer dans des devoirs, un cahier de laboratoire ou une suite de régression. Lorsqu'une composante est absente, vide, infinie ou n'est pas un nombre, la tâche échoue avec invalid_input au lieu d'émettre un NaN silencieux qui empoisonnerait un contrôle de sûreté en aval.
Ce que le cercle de Mohr indique pour un état de contraintes 2D
Lorsque les deux normales coïncident et que le cisaillement s'annule, le rayon s'effondre à zéro, les deux principales égalent la valeur hydrostatique et il n'y a pas de cisaillement dans le plan à faire tourner — ce cas hydrostatique est une entrée valide, non une erreur. Les requêtes du type calculateur cercle de Mohr, calculateur de contraintes principales et cisaillement maximal en contraintes planes veulent ces trois résultats comme nombres, non un rappel qu'une construction existe. L'état de contraintes planes d'un élément de matière est entièrement déterminé par trois nombres : la contrainte normale sur la face x (sigma_x), celle de la face y (sigma_y) et le cisaillement dans le plan (tau_xy). Le cercle de Mohr est le portrait de ce tenseur : portez la contrainte normale en abscisse et le cisaillement en ordonnée, marquez le point connu (sigma_x, tau_xy), et le cercle centré sur la moyenne des deux normales, de rayon égal à la distance à ce point, contient toutes les orientations possibles de l'élément. Les intercepts horizontaux extrêmes sont les contraintes principales sigma_1 (la plus grande au sens algébrique) et sigma_2 (la plus petite) ; l'étendue verticale extrême est le cisaillement maximal dans le plan tau_max, égal au rayon. Cette même géométrie est le problème aux valeurs propres de la matrice des contraintes 2×2, si bien que ce calculateur ne trace pas de figure : il évalue les identités sous forme close sigma_1,2 égal à (sigma_x plus sigma_y) divisé par deux, plus ou moins la racine de ((sigma_x moins sigma_y) sur deux) au carré plus tau_xy au carré, et tau_max égal à cette même racine. Livrer sigma_x, sigma_y, tau_xy, sigma_1, sigma_2, tau_max, center, radius et formula en JSON facilite le collage du résultat dans des notes, la comparaison dans des tests automatisés ou la réutilisation entre langues sans réimplémenter la racine carrée.
Contrat d'entrée, forme de la réponse et conduite en cas d'erreur
Il n'y a pas de restriction de domaine supplémentaire : compression (normales négatives), traction, cisaillement nul et cisaillement négatif sont des états de contraintes finis licites. Les résultats sont arrondis à douze décimales afin que les exemples de référence coïncident octet par octet entre moteurs JavaScript ; le moins-zéro est normalisé à zéro. Associez la réponse à votre propre code de tracé si vous avez besoin d'une esquisse du cercle ; ce point d'accès ne résout que les invariants et n'émet ni images ni prose de dessin pas à pas au-delà du champ formula. Envoyez un corps JSON avec trois nombres finis obligatoires : sigma_x, la contrainte normale de la face x ; sigma_y, celle de la face y ; et tau_xy, le cisaillement dans le plan qui les accompagne. Chaque champ peut arriver comme nombre JSON ou comme chaîne numérique afin que formulaires et pipelines de style CSV fassent passer des valeurs sans cast supplémentaire. Champs absents, chaînes vides, texte non numérique, NaN et Infinity échouent immédiatement avec invalid_input qui nomme le champ en cause, et une validation en échec n'est pas facturée. Après validation, le moteur calcule le centre de Mohr comme moyenne de sigma_x et sigma_y, le rayon comme combinaison euclidienne de la moitié de l'écart des normales et de tau_xy, puis sigma_1 comme centre plus rayon, sigma_2 comme centre moins rayon et tau_max comme le rayon. Le corps de succès reprend les trois entrées et renvoie sigma_1, sigma_2, tau_max, center, radius et une chaîne formula qui reformule les identités. Exemple : sigma_x égal à 80, sigma_y égal à 20, tau_xy égal à 40 donne un centre 50, un rayon 50, des principales 100 et 0, et un cisaillement maximal 50 — le triangle classique 3-4-5 du cercle de Mohr. La même fonction pure alimente l'outil gratuit dans le navigateur et le chemin API, de sorte que devoirs et pipelines de production ne divergent jamais sur un cas limite en virgule flottante.
Où une API du cercle de Mohr justifie son coût, limites et tarif
Les générateurs d'épreuves ont besoin d'un oracle déterministe qui rejette une composante non finie au lieu de renvoyer silencieusement un NaN qu'un correcteur défectueux pourrait traiter comme un succès. La convention de signes suit le tenseur bidimensionnel habituel de la mécanique des milieux continus : les valeurs principales et le module du cisaillement maximal dans le plan ne dépendent pas du manuel qui dessine le cisaillement vers le haut ou vers le bas sur le cercle de Mohr, car ces valeurs viennent des invariants. Les unités sont les vôtres — mégapascals, livres par pouce carré ou toute unité de contrainte cohérente — pourvu que les trois composantes partagent cette unité ; la sortie utilise la même. Une validation en échec ne consomme pas le solde. Les salles de classe et les plateformes de tutorat utilisent un calculateur du cercle de Mohr afin que les apprenants vérifient contraintes principales et cisaillement maximal pour des sigma_x, sigma_y et tau_xy arbitraires sans mélanger à la main les identités de demi-angle. Les réductions de jauges de déformation, les contrôles de soudures et d'arbres et les instantanés d'éléments finis replient souvent un tenseur 2D sur ces trois mêmes composantes ; appeler une petite API d'analyse évite de tirer un système d'algèbre formelle ou de mécanique des milieux continus entier pour un problème aux valeurs propres qui admet une forme close. Ce calculateur rapporte le tau_max dans le plan égal au rayon de Mohr ; il n'introduit pas une troisième principale hors plan nulle, ne calcule pas de contrainte équivalente de von Mises ni de Tresca et ne fait pas tourner un tenseur tridimensionnel. Comme l'implémentation est de l'analyse pure de palier A, chaque appel réussi coûte le prix de base publié $0.002 sans jetons de modèle ni réseau sortant.
Cas d'intégration
Contrôles en classe et devoirs
Laissez les étudiants envoyer sigma_x, sigma_y et tau_xy et vérifier les deux contraintes principales plus le cisaillement maximal dans le plan face au tracé du cercle de Mohr d'un manuel de résistance des matériaux.
Notation automatique d'épreuves et plateformes d'enseignement
Notez des items de contraintes principales 2D avec un oracle déterministe qui rejette les composantes non finies comme invalid_input et n'invente jamais une charge de succès contenant un NaN.
Réduction de jauges et instantanés d'éléments finis
Repliez un tenseur de contraintes planes vers sigma_1, sigma_2 et tau_max dans des carnets et aides à la conception sans importer une bibliothèque complète de mécanique des milieux continus.
Questions techniques
Comment obtenir les contraintes principales et le cisaillement max. d'un état 2D ?
Envoyez les nombres finis sigma_x, sigma_y et tau_xy. L'API renvoie sigma_1 = center + radius, sigma_2 = center − radius, et tau_max égal au rayon de Mohr R = sqrt(((sigma_x−sigma_y)/2)^2 + tau_xy^2).
Le tau_max est-il le cisaillement maximal de Tresca en 3D (y compris σ3 = 0) ?
Non. tau_max est le rayon du cercle de Mohr dans le plan. Le calculateur ne suppose pas une troisième principale nulle de surface libre et ne calcule pas de contrainte équivalente de von Mises ni de Tresca.
Le signe de tau_xy change-t-il les valeurs principales ?
Non. Les contraintes principales et le module du cisaillement maximal dans le plan dépendent de tau_xy au carré, donc inverser le cisaillement laisse sigma_1, sigma_2 et tau_max inchangés. Des normales hydrostatiques égales avec cisaillement nul constituent une entrée valide : les deux principales égalent cette valeur et tau_max vaut zéro.
Combien coûte le calculateur du cercle de Mohr ?
L'outil du navigateur est gratuit. Les requêtes API utilisent le solde KIT prépayé à $0.002 par appel réussi ; une entrée invalide n'est pas facturée.