Distancia focal de una lente gruesa: índice, radios y espesor
Esta calculadora de distancia focal para lentes gruesas aplica la ecuación del fabricante de lentes con la corrección por espesor central que omite la aproximación de lente delgada.
Ejecutar — gratis
Introduzca el índice de refracción del material en aire, el radio con signo de cada superficie y el espesor central; exprese todas las longitudes en metros. El resultado incluye la distancia focal efectiva, la potencia óptica en dioptrías y el carácter convergente o divergente de la lente.
Introduzca la geometría con una convención de signos coherente
La calculadora supone que la luz viaja de izquierda a derecha y adopta la convención cartesiana para los radios. El radio de una superficie es positivo cuando su centro de curvatura queda a la derecha y negativo cuando queda a la izquierda. Por ello, una lente biconvexa habitual tiene un primer radio positivo y un segundo radio negativo. Escriba cero para una cara plana, cuya curvatura es nula. El índice de refracción no tiene dimensiones; ambos radios y el espesor central deben expresarse en metros. No mezcle milímetros y metros: convierta un espesor central de 5 mm en 0.005 m. El espesor no puede ser negativo. Se presupone aire como medio exterior, así que use el índice del material respecto del aire. Una distancia focal positiva identifica una lente convergente y una negativa, una lente divergente. Si una biconvexa corriente produce potencia negativa, revise primero la orientación y los signos de las superficies.
Comprenda la corrección de lente gruesa
En una lente delgada, la ecuación del fabricante solo utiliza el índice y la diferencia entre las curvaturas de ambas caras. En una lente real, las superficies refractoras están separadas por el espesor central. Este cálculo incorpora el término de espesor, que depende del índice, del espesor y del producto de las dos curvaturas, y después invierte la potencia resultante para obtener la distancia focal efectiva. Esta distancia se mide desde un plano principal, no directamente desde uno de los vértices físicos. Por tanto, no equivale a la distancia focal frontal ni a la posterior, que requieren localizar los planos principales o usar matrices de transferencia de rayos. Si establece el espesor en cero, recuperará la ecuación de lente delgada y podrá comparar resultados. La corrección suele ser pequeña en una lente débil y esbelta, pero gana importancia con superficies muy curvas, vidrios de índice alto o espesores apreciables. La potencia devuelta es el inverso de la distancia focal en metros y se expresa en dioptrías.
Interprete y compruebe el resultado
Utilice la distancia focal efectiva como propiedad paraxial de primer orden de la lente completa. Un valor positivo indica que los rayos paraxiales paralelos convergen; uno negativo indica que divergen como si procedieran de un foco virtual. El modelo supone superficies esféricas, material homogéneo, aire a ambos lados y rayos próximos al eje óptico. No contempla dispersión con la longitud de onda, superficies asféricas, índice gradual, aberraciones, revestimientos, descentramiento, inclinación ni tolerancias de fabricación. En diseño, compare el resultado con el caso de espesor cero para decidir si la aproximación delgada es aceptable. Compruebe también las dimensiones: las longitudes de entrada están en metros, la salida focal también y su inverso queda en dioptrías. Si las curvaturas y la corrección se cancelan exactamente, la potencia es cero y no existe una distancia focal efectiva finita; la calculadora lo marca como entrada no válida. Recurra a un programa de diseño óptico cuando necesite rayos marginales, posición exacta del plano focal o rendimiento frente a aberraciones.
Qué puede hacer con ella
Estimar un singlete durante el diseño óptico
Obtenga la distancia focal efectiva paraxial de un singlete esférico antes de construir un modelo completo de trazado de rayos.
Comparar los modelos grueso y delgado
Calcule con el espesor físico y después con espesor cero para cuantificar el cambio causado por la aproximación de lente delgada.
Comprobar la especificación de una lente fabricada
Use radios medidos, índice del vidrio y espesor central para verificar de forma independiente la distancia focal efectiva y la potencia.
Preguntas frecuentes
¿Cuánto cuesta el cálculo?
Cada solicitud API cuesta $0.002; la calculadora del navegador puede ejecutar localmente el mismo cálculo determinista.
¿Qué unidades debo utilizar?
Introduzca radius_1, radius_2 y center_thickness en metros. La distancia focal efectiva se devuelve en metros y la potencia, en dioptrías.
¿Qué signo debe tener cada radio?
Con luz de izquierda a derecha, use un radio positivo si el centro de curvatura está a la derecha de la superficie y negativo si está a la izquierda.
¿Puedo representar una lente plano-convexa?
Sí. Escriba cero como radio de la cara plana, pues su curvatura es nula, e introduzca el radio finito con signo de la cara curva.
¿El resultado es la distancia focal posterior?
No. Es la distancia focal efectiva respecto de los planos principales. La posterior se mide desde el vértice trasero y suele diferir en una lente gruesa.
¿Sirve la fórmula para una lente sumergida en líquido?
No. Esta capacidad supone aire a ambos lados. Una lente sumergida exige los índices de los medios circundantes y un cálculo más general.
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/optics/thick-lens-focal-length \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"refractive_index":1.5,"radius_1":0.1,"radius_2":-0.1,"center_thickness":0.01}'const res = await fetch("https://api.kit.forhosting.com/optics/thick-lens-focal-length", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"refractive_index": 1.5,
"radius_1": 0.1,
"radius_2": -0.1,
"center_thickness": 0.01
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/optics/thick-lens-focal-length",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"refractive_index": 1.5,
"radius_1": 0.1,
"radius_2": -0.1,
"center_thickness": 0.01
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/optics/thick-lens-focal-length", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"refractive_index":1.5,"radius_1":0.1,"radius_2":-0.1,"center_thickness":0.01}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"refractive_index":1.5,"radius_1":0.1,"radius_2":-0.1,"center_thickness":0.01}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/optics/thick-lens-focal-length", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"refractive_index": 1.5,
"radius_1": 0.1,
"radius_2": -0.1,
"center_thickness": 0.01
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "optics.thick_lens_focal_length",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |