Focale de deux lentilles en contact : calculateur
Réunit deux lentilles minces en une seule : une de 20 cm et une de 30 cm accolées équivalent à une lentille convergente de 12 cm, car leurs vergences s'additionnent. Utilisez des valeurs négatives pour les divergentes et une seule unité. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Distance focale 1
- 20
- Distance focale 2
- 30
- Distance focale équivalente
- 12
- Puissance combinée par unité
- 0,0833333333
- Type de lentille
- converging
- Précision
- 10
Ce calculateur détermine la focale équivalente de deux lentilles minces placées en contact. Saisissez leurs focales signées dans la même unité : la règle de la somme des inverses est alors appliquée. Une valeur positive désigne une lentille convergente et une valeur négative une lentille divergente. Le calcul est déterministe, sans accès réseau, et fournit aussi la puissance optique combinée.
Comment saisir correctement les deux focales
Employez la même unité pour les deux valeurs : millimètres, centimètres, mètres ou pouces. Aucune ne peut être nulle, car son inverse serait indéfini. Le champ facultatif precision règle l'arrondi de 0 à 15 décimales.
L'outil suppose des lentilles minces, coaxiales et directement en contact ; il ne convertit pas les unités et ne déduit aucun espacement.
Comment la somme des inverses fournit le résultat
Pour deux lentilles minces en contact, les puissances optiques s'additionnent. Deux lentilles positives donnent une focale positive plus courte que chacune des focales initiales. Une lentille positive et une négative peuvent produire un ensemble convergent ou divergent.
L'arrondi intervient uniquement sur la sortie.
Utilité et limites de cette approximation
Cette approximation convient aux exercices d'optique, à la préparation de travaux pratiques, aux contrôles rapides et aux tests reproductibles de logiciels pédagogiques. Elle permet de vérifier signe et grandeur avant un tracé de rayons. Elle ne remplace pas la modélisation d'un objectif réel : un espacement notable ajoute un terme et les lentilles épaisses exigent des plans principaux.
Indice, longueur d'onde, ouvertures, aberrations et tolérances sont exclus. Chaque requête exécute uniquement ce calcul, sans réseau, stockage, hasard ni date.
Cas d’usage
Vérifier un exercice d'optique
Contrôlez la focale équivalente et son signe avant de terminer un tracé de rayons.
Estimer un couple en contact
Obtenez une première estimation lorsque l'espacement peut être négligé.
Créer des données de test déterministes
Produisez des résultats stables pour logiciels pédagogiques et tests automatisés.
Questions fréquentes
Une focale peut-elle être négative ?
Oui. Saisissez une focale négative pour une lentille divergente.
Le calcul convient-il aux lentilles séparées ou épaisses ?
Non. Il suppose deux lentilles minces en contact ; les autres systèmes demandent un modèle géométrique complet.
Quelle est la focale combinée d'une lentille de 20 cm et d'une de 30 cm accolées ?
12 cm. Additionnez les inverses, 1/20 plus 1/30, soit 1/12, puis inversez le résultat. Les deux lentilles sont convergentes, l'ensemble l'est donc aussi.
Puis-je mélanger centimètres et millimètres pour les deux lentilles ?
Non. Saisissez les deux focales dans la même unité ; le résultat est donné dans cette unité. Le calculateur ne convertit pas les unités et ne les devine pas d'après un libellé.
Pourquoi une focale ne peut-elle pas être nulle ?
Parce que le calcul utilise l'inverse de chaque focale et que l'inverse de zéro n'existe pas. Une lentille de focale nulle n'a pas de sens physique dans ce modèle de lentilles minces.
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/optics/combined-focal-lenses-contact \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"focal_length_1":20,"focal_length_2":30}'const res = await fetch("https://api.kit.forhosting.com/optics/combined-focal-lenses-contact", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"focal_length_1": 20,
"focal_length_2": 30
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/optics/combined-focal-lenses-contact",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"focal_length_1": 20,
"focal_length_2": 30
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/optics/combined-focal-lenses-contact", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"focal_length_1":20,"focal_length_2":30}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"focal_length_1":20,"focal_length_2":30}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/optics/combined-focal-lenses-contact", 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
{
"focal_length_1": 20,
"focal_length_2": 30
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "optics.combined_focal_lenses_contact",
"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
Utilisez-le gratuitement dans le navigateur ou automatisez chaque calcul valide pour $0.002.
Comment saisir correctement les deux focales
Indiquez la focale signée de la première lentille dans focal_length_1 et celle de la seconde dans focal_length_2. Les alias f1 et f2 sont acceptés.
Comment la somme des inverses fournit le résultat
Le moteur évalue 1/f = 1/f1 + 1/f2, puis prend l'inverse. Si leurs puissances s'annulent exactement, le couple est afocal et aucune focale finie n'existe ; invalid_input est alors renvoyé au lieu de Infinity.
Utilité et limites de cette approximation
Le navigateur est gratuit ; l'API coûte $0.002.
Questions techniques
Quel est le prix du calculateur ?
Il est gratuit dans le navigateur. Chaque requête API valide coûte $0.002.
Quelle formule est utilisée ?
La formule est 1/f = 1/f1 + 1/f2, avec toutes les focales dans la même unité.
Que se passe-t-il si les puissances s'annulent ?
Le couple est afocal et n'a aucune focale équivalente finie ; invalid_input est renvoyé.