Inicio Ejemplos Capturas de pantalla Manual de usuario Logotipo de Bluesky YouTube
OghmaNano Simule células solares orgánicas/de perovskita, OFETs y OLEDs DESCARGAR

Tutorial de S-Plane (Parte A): Barridos automatizados de parámetros para un triplete Cooke

1. Introducción

Multi-element optical system focusing broadband light through optimised lenses
Los sistemas de lentes multielemento equilibran geometría, separación y dispersión para minimizar las aberraciones. En este tutorial, exploramos cómo los barridos automatizados de parámetros y los optimizadores recorren este espacio de diseño óptico.

En este tutorial, mostramos un flujo de trabajo práctico para la optimización de lentes y el diseño óptico utilizando la herramienta de barrido de parámetros en OghmaNano. Centrándonos en un sistema de lentes triplete Cooke clásico, variamos sistemáticamente parámetros ópticos clave como la curvatura de la superficie y el espesor del elemento y analizamos su impacto en el rendimiento de imagen. Se utilizan grandes lotes de simulaciones de trazado de rayos para explorar el espacio de diseño y cuantificar el rendimiento mediante métricas que incluyen el radio RMS del spot, el tamaño y centroide del spot, los radios del spot de los ejes mayor y menor, la elipticidad y orientación del spot, y los radios de energía encerrada (EE50, EE80, EE90), junto con la inspección visual de las trayectorias de los rayos en la vista 3D de trazado de rayos. Este enfoque proporciona un marco reproducible para la optimización de sistemas ópticos, el análisis de sensibilidad y los estudios de tolerancia, y es directamente aplicable al diseño de lentes en etapas tempranas y a la evaluación rápida de compromisos ópticos del mundo real.

2. Iniciar la simulación del triplete Cooke en OghmaNano

En este tutorial, comenzaremos iniciando una simulación de lente triplete Cooke preconfigurada. Empiece iniciando OghmaNano desde el menú Inicio de Windows. En la ventana principal, haga clic en el botón New simulation para abrir la biblioteca de simulaciones, mostrada en Figures 2a–b. En la lista de categorías de dispositivos, haga doble clic en Ray tracing. Cuando aparezcan las demos de óptica S-plane, localice el ejemplo Cooke triplet y haga doble clic en él para abrir un sistema de lentes listo para ejecutar.

OghmaNano new simulation window listing device categories including optics and S-plane examples
La ventana New simulation proporciona una biblioteca de categorías de dispositivos. Haga doble clic en Ray tracing para acceder a los ejemplos de óptica S-plane.
OghmaNano S-plane examples list including Cooke triplet and other optics demos
La lista de demostraciones de óptica S-plane. Seleccione Cooke triplet para abrir un sistema de lentes preconfigurado adecuado para barrido de parámetros y optimización.

💡 Consejo: Para obtener el mejor rendimiento, guarde esta simulación en una unidad local como C:\. En este tutorial ejecutaremos grandes barridos de parámetros, volcando repetidamente datos de trazado de rayos y archivos de malla 3D al disco. Esto genera un gran volumen de pequeñas operaciones de lectura/escritura, que pueden convertirse en un cuello de botella importante en carpetas de red, USB o sincronizadas con la nube (p. ej. OneDrive), haciendo que las simulaciones se ejecuten sustancialmente más despacio.

3. Abra la simulación del triplete Cooke e inspecciónela en el editor S-plane

Una vez que haya guardado la simulación Cooke triplet, se abrirá la ventana principal de OghmaNano y debería verse como ??. En la vista 3D puede ver la disposición clásica del triplete: una fuente de luz verde, el rojo primer elemento de lente, un diafragma azul, el naranja segundo elemento de lente, el amarillo tercer elemento de lente, y el plano detector morado.

A continuación, haga clic en el botón S-plane de la barra de herramientas izquierda para abrir el editor S-plane, mostrado en ??. Esta tabla enumera los elementos de lente y sus parámetros (material, radio de superficie, espesor, diámetro, etc.). Como con cualquier otra simulación en OghmaNano, puede ejecutar este modelo pulsando el botón Run (play) (o F9) e inspeccionar los resultados en la pestaña Output; sin embargo, la ejecución de simulaciones individuales no será el foco de este tutorial. En los siguientes pasos, utilizará este editor para elegir qué parámetro(s) barrer.

Main OghmaNano optics interface showing the Cooke triplet elements in 3D
La interfaz principal de óptica de OghmaNano tras abrir el ejemplo Cooke triplet (vista 3D).
S-plane editor table listing lens elements and parameters for the Cooke triplet
El editor S-plane para el triplete Cooke, que enumera superficies de lente individuales y parámetros.

4. Automatización

4.1 Apertura de la ventana de barrido

En este tutorial, utilizaremos las herramientas de Automation para ejecutar barridos sistemáticos de parámetros. Estas herramientas se acceden desde la cinta Automation de la ventana principal (véase ??). Haga clic en el botón Parameter scan para abrir la ventana de barrido de parámetros (véase ??). De forma predeterminada, verá una entrada llamada new; al hacer doble clic en ella se abre un editor individual de barrido de parámetros (véase ??).

La herramienta de barrido de parámetros se describe con más detalle en el manual en parameter scan. Para los fines de este tutorial, basta con saber que la ventana de barrido de parámetros le permite definir y gestionar múltiples barridos independientes utilizando el botón New, cada uno correspondiente a una exploración automatizada diferente del espacio de parámetros.

En la figura final puede ver que ya se ha configurado un barrido. El nombre de la variable Splane.object.lens1 (b).thickness indica que estamos barriendo el espesor de la superficie posterior del primer elemento de lente, con los valores del barrido especificados explícitamente en metros.

Automation ribbon showing parameter scan tools
La cinta Automation, que proporciona acceso a barridos de parámetros y herramientas por lotes.
Parameter scan window listing scan configurations
La ventana de barrido de parámetros que enumera las configuraciones de barrido disponibles.
Parameter scan editor showing scan variables and values
El editor de barrido de parámetros que muestra un barrido sobre el parámetro derivado de espesor de lente S-plane.

4.2 Edición de un barrido

Para esta tarea, vamos a añadir una línea de barrido adicional para barrer parámetros en más de un elemento de lente. Haga clic en el botón plus del editor de barrido de parámetros para crear una nueva fila de barrido, como se muestra en ??. Esto añade una nueva línea a la tabla con las columnas Parameter to change, Values y Operation. Utilizaremos esta segunda fila para definir un barrido adicional, permitiendo variar múltiples parámetros de lente en la misma ejecución automatizada.

Es muy importante asegurarse de que la fila de barrido correcta esté seleccionada antes de editarla. Haga clic en la nueva fila para que quede resaltada y luego haga clic en el botón three dots para elegir un parámetro. Esto abre el cuadro de diálogo de selección de parámetros, mostrado en ??. Navegue por objectLens 2 (b) y seleccione Thickness, que corresponde al espesor de la superficie posterior del segundo elemento de lente. Una vez seleccionado, haga clic en OK.

Tras configurar ambas filas de barrido, la ventana de barrido de parámetros debería verse como la configuración final mostrada en ??. En este punto, el barrido está configurado para variar simultáneamente el espesor de dos elementos de lente diferentes durante la ejecución automatizada.

💡 Consejo: Los objetos en OghmaNano existen como parte de un mundo óptico tridimensional. El S-plane es una representación unidimensional específica de óptica de esta geometría 3D. El árbol de parámetros mostrado en ?? proporciona una forma cómoda de seleccionar y barrer parámetros ópticos, pero estos valores S-plane son derivados de los objetos 3D subyacentes definidos en el árbol superior de data.

Parameter scan editor with a newly added scan row highlighted
Añadir una nueva fila de barrido utilizando el botón plus.
Select simulation parameter dialog highlighting Thickness of Lens 2 back surface
Selección del parámetro Thickness de la superficie posterior para la segunda lente.
Final parameter scan window with two lens thickness scans configured
El barrido de parámetros completamente configurado con dos parámetros de espesor de lente definidos.

Una vez que el barrido de parámetros se haya configurado como se muestra en ??, haga clic en el botón Run. Esto ejecutará todas las simulaciones definidas por el barrido. En este caso, OghmaNano recorrerá todas las combinaciones de los parámetros del barrido: para cada valor de la primera fila de barrido, ejecutará todos los valores definidos en la segunda fila. El resultado es una exploración completa de todas las permutaciones de parámetros del sistema óptico.

Cuando el barrido haya finalizado, cambie a la pestaña Output, mostrada en ??. La salida está organizada como un árbol de directorios que refleja los parámetros barridos. En el nivel superior, las carpetas etiquetadas 1.1e-2, 1.2e-2, 1.3e-2 y 1e-2 corresponden a los valores del primer parámetro que se barrió. Al navegar dentro de uno de estos directorios se revelan subdirectorios correspondientes a los valores del segundo parámetro del barrido, como se muestra en ??.

Cada directorio hoja representa una ejecución de simulación individual, equivalente a una simulación única ejecutada manualmente. Dentro de estos directorios encontrará archivos como device.csv, que contiene la geometría 3D triangulada del sistema óptico, y la salida ray_trace, que almacena los rayos trazados para esa combinación concreta de parámetros. Estos pueden visualizarse directamente, como se muestra en ?? y ??. Esto le permite inspeccionar y analizar el comportamiento de simulaciones individuales correspondientes a puntos específicos del espacio de parámetros barrido.

Parameter scan output directory showing top-level parameter folders
La ejecución del barrido de parámetros genera un árbol de directorios organizado por los parámetros barridos.
Output tab showing parameter scan results
La pestaña Output después de que el barrido haya finalizado.
Nested parameter scan directories showing second parameter values
Subdirectorios correspondientes al segundo parámetro barrido.
3D device geometry from a single parameter scan simulation
Visualización de la geometría 3D del dispositivo para un único punto del barrido.
Ray-trace visualisation for a single parameter scan simulation
Salida de trazado de rayos correspondiente a la misma combinación de parámetros.

4.3 Archivos multiplot

En el directorio principal de salida del barrido (??) observará varios iconos coloridos con multiple-curves. Estos representan un tipo especial de archivo generado por barrido: no son archivos de datos individuales, sino colecciones de enlaces a los datos producidos en todo el árbol del barrido de parámetros. Por ejemplo, all_triangles.csv enlaza a cada malla triangulada generada para todos los puntos del barrido, mientras que ray_trace enlaza a todas las salidas de trazado de rayos producidas durante el barrido.

Si hace doble clic en all_triangles.csv, se abre el visor de mallas (véase ??). Usando el deslizador de la parte inferior de la ventana, puede recorrer las simulaciones individuales que se generaron. A medida que mueve el deslizador, la geometría de la lente se actualiza para reflejar la combinación actual de parámetros, y la ruta de la simulación activa se muestra en la parte inferior de la ventana. En el ejemplo mostrado, la ruta indica la combinación de parámetros 1.2e-2 / 1.4e-2, correspondiente a los dos valores barridos de espesor de lente (en metros).

De forma similar, al hacer doble clic en ray_trace se abre el visor de trazado de rayos (véase ??). Este visor suele proporcionar dos deslizadores: el deslizador superior recorre las diferentes simulaciones en el árbol del barrido, mientras que el deslizador inferior recorre la longitud de onda. Esto hace posible inspeccionar cómo evolucionan las trayectorias de los rayos tanto a través del espacio de parámetros como de la longitud de onda. Un segundo ejemplo, mostrado en ??, ilustra el mismo barrido visto en un rango de longitudes de onda diferente. Si inicialmente no aparece nada, puede que necesite hacer clic en el botón plus de la tabla de gráficas para añadir un archivo a representar.

Viewer showing all triangulated meshes generated during the parameter scan
Visualización de all_triangles.csv: recorrido por las mallas trianguladas generadas en todo el barrido de parámetros.
Ray-trace viewer stepping through scan points and wavelength
Visor de trazado de rayos que muestra rayos para diferentes puntos del barrido y longitudes de onda usando los dos deslizadores.
Ray-trace viewer showing the same scan at a different wavelength range
El mismo barrido de trazado de rayos visto en un rango de longitudes de onda diferente.

Como otro ejemplo de estos metaarchivos de barrido, navegue dentro de la carpeta de salida detector0 y haga doble clic en ella (véase ??). De nuevo verá elementos de multiple-curves correspondientes a distintas salidas del detector. Si hace doble clic en detector_efficiency0.csv, OghmaNano abrirá la gráfica mostrada en ??. Esta gráfica muestra cuánta luz transmite el sistema (como porcentaje) en función de la longitud de onda, con una curva para cada geometría de lente explorada en el barrido de parámetros. Tenga en cuenta que este ejemplo utiliza solo tres puntos de malla óptica, por lo que cada curva contiene solo tres muestras de longitud de onda.

Detector output folder showing scan meta-files for different detector outputs
La carpeta de salida detector0 que contiene metaarchivos de barrido para salidas del detector (p. ej. eficiencia y entrada).
Detector efficiency plot versus wavelength showing multiple curves for different scan points
detector_efficiency0.csv representado frente a longitud de onda: una curva por cada geometría de lente explorada en el barrido.

En esta sección, hemos visto cómo OghmaNano organiza los resultados de un barrido de parámetros usando metaarchivos multiplot, que proporcionan una forma estructurada de explorar grandes conjuntos de simulaciones sin duplicar datos. Al recorrer mallas, trazados de rayos y salidas de detectores usando un pequeño número de visores interactivos, es posible inspeccionar de forma eficiente cómo evolucionan la geometría, la longitud de onda y el rendimiento óptico a través del espacio de parámetros. Este enfoque hace manejables los grandes estudios de barrido, permitiendo tanto la inspección cualitativa como la comparación cuantitativa del comportamiento óptico entre muchas variantes de diseño.

5. El optimizador

En la sección anterior, utilizamos la herramienta de barrido de parámetros para generar por fuerza bruta un gran número de simulaciones que pudimos inspeccionar directamente observando trayectorias de rayos, geometrías y salidas de detectores. Aunque esto es muy útil para construir intuición física, también genera un gran número de archivos, consume una cantidad significativa de espacio en disco y ralentiza el flujo de trabajo general de simulación. En muchos casos, en su lugar se desea un barrido rápido del espacio de parámetros que se centre en métricas cuantitativas de rendimiento en lugar de en datos de salida completos.

Para ello, utilizamos el optimizer. Vuelva al editor de barrido de parámetros (véase ??) y haga clic en el botón Fast optimizer. Este modo desactiva la generación de archivos de salida detallados (trazados de rayos, mallas, etc.) mientras sigue ejecutando las simulaciones subyacentes y recopilando métricas estadísticas. Es importante destacar que cualquier archivo de salida generado por barridos anteriores permanece intacto y aún puede inspeccionarse; el optimizador simplemente evita crear nuevos.

Después de habilitar el optimizador rápido, vuelva a ejecutar la simulación. Cuando finalice, abra la pestaña Output (véase ??). Verá un nuevo archivo llamado optimizer_output.csv. A diferencia del barrido completo, no se crea un nuevo árbol de directorios: el resultado principal del optimizador es este archivo CSV único que contiene los datos agregados de rendimiento.

Parameter scan editor with the Fast optimizer button highlighted
Activación de Fast optimizer en el editor de barrido de parámetros.
Output tab showing optimizer_output.csv
El archivo optimizer_output.csv producido por el optimizador rápido.

Haga doble clic en optimizer_output.csv y ábralo en su programa de hoja de cálculo preferido (Excel, LibreOffice o cualquier herramienta que pueda leer archivos CSV). El contenido se muestra en ??. Las primeras columnas enumeran los parámetros que se barrieron (en este caso los espesores de lentes S-plane), seguidos de una gama de métricas cuantitativas de rendimiento extraídas de cada simulación.

Estas métricas incluyen la desviación estándar de la posición del spot en x y y, la desviación estándar del radio del spot (r_std), los ejes mayor y menor de la distribución del spot (sigma_major, sigma_minor), el ángulo de orientación del spot (spot_theta), radios de energía encerrada (p. ej. EE50, EE80, EE90), y medidas de calidad relacionadas. En conjunto, estas proporcionan un resumen cuantitativo compacto del rendimiento óptico para cada punto del espacio de parámetros barrido.

optimizer_output.csv opened in a spreadsheet showing scan parameters and performance metrics
El contenido de optimizer_output.csv, que muestra los parámetros barridos junto con métricas de spot y eficiencia.

Debido a que los datos están en forma tabular, puede ordenarlos o filtrarlos fácilmente para identificar diseños óptimos. Por ejemplo, en ?? la hoja de cálculo se ha ordenado por r_std, la desviación estándar del radio del spot. A partir de ello podemos ver inmediatamente qué combinación de espesores de lente produce el spot más pequeño: en este caso un espesor de la primera lente de 0.013 y un espesor de la segunda lente de 0.0106.

optimizer_output.csv sorted by spot radius standard deviation
Ordenación de la salida del optimizador por r_std para identificar la geometría de lente con mejor rendimiento.

6. Examen de los resultados del optimizador

Ahora que hemos ejecutado tanto el barrido sistemático de parámetros como el optimizador, podemos examinar los resultados con más detalle. El optimizador nos permite identificar rápidamente regiones prometedoras del espacio de parámetros, mientras que el barrido completo nos permite inspeccionar las simulaciones correspondientes de una manera más física y visual.

Como primer paso, podemos volver a las salidas de trazado de rayos y localizar la simulación correspondiente a la solución de tamaño mínimo de spot identificada por el optimizador. Esto se muestra en ??. Utilizando las barras selectoras del visor de trazado de rayos, puede recorrer el árbol de simulaciones hasta alcanzar la combinación de parámetros que produjo el spot más pequeño.

Luego podemos profundizar más en el árbol de simulaciones para comparar cómo se comporta el sistema óptico para distintas elecciones de parámetros. Por ejemplo, ?? muestra un spot relativamente pequeño y bien enfocado correspondiente a un diseño casi óptimo, mientras que ?? muestra un spot más grande y menos óptimo producido por un punto diferente en el espacio de parámetros barrido.

Ray-trace view corresponding to the minimum spot-size solution found by the optimizer
Visualización de trazado de rayos de la solución de tamaño mínimo de spot identificada por el optimizador.
Detector image showing a small, well-focused spot for an optimal lens configuration
Un spot pequeño y bien enfocado correspondiente a una configuración de lente casi óptima.
Detector image showing a larger spot for a less optimal lens configuration
Un spot más grande producido por un punto menos óptimo en el espacio de parámetros barrido.

En conjunto, esto ilustra un flujo de trabajo típico: primero ejecute el optimizador para explorar rápidamente el espacio de parámetros e identificar regiones prometedoras, luego desactive el optimizador y realice un barrido completo en la región de interés. Esto le permite generar salidas detalladas —trazados de rayos, geometrías e imágenes de detectores— que pueden inspeccionarse físicamente para confirmar que la solución se comporta como se espera y cumple sus objetivos de diseño.

7. Uso de formas de haz alternativas para acelerar las simulaciones

En las secciones anteriores, utilizamos un haz square para ejecutar tanto el barrido de parámetros como el optimizador. Aunque esto es un valor predeterminado razonable, un haz cuadrado contiene un gran número de rayos y puede ralentizar significativamente las simulaciones. En muchos casos, no necesita un perfil completo de haz cuadrado para comprender el comportamiento del sistema, y formas de haz más simples son suficientes.

Para cambiar la forma del haz, haga clic derecho sobre la fuente de luz en la vista 3D, como se muestra en ??, y seleccione Edit object. En el editor de la fuente de luz, navegue a la pestaña Configure (véase ??) y cambie Beam shape de Square a Star. El patrón de rayos resultante se muestra en ??.

Si ahora vuelve a ejecutar el optimizador, observará que la simulación se completa más rápidamente. Esto se debe a que el haz en estrella utiliza muchos menos rayos que un haz cuadrado completo, mientras sigue muestreando el sistema óptico de forma efectiva. También existe la opción de utilizar una forma de haz Cross, que es útil para examinar el astigmatismo de forma independiente a lo largo de los dos ejes principales y reduce aún más el coste computacional. Por tanto, estas formas de haz alternativas son una forma práctica de acelerar barridos exploratorios y ejecuciones de optimización.

Right-click context menu on the light source showing Edit object
Haga clic derecho en la fuente de luz y seleccione Edit object.
Light source editor showing beam shape configuration
Cambio de la forma del haz en la pestaña Configure de la fuente de luz.
Star-shaped beam pattern in the ray-trace view
Un haz en estrella utiliza menos rayos y aun así muestrea el sistema óptico.

8. Resumen

En este tutorial, exploramos cómo utilizar el flujo de trabajo de óptica S-plane en OghmaNano para investigar sistemáticamente y optimizar un sistema clásico de lentes triplete Cooke. Partiendo de un ejemplo predefinido, aprendimos cómo el editor S-plane proporciona una vista compacta y compatible con óptica de rayos de un sistema óptico completamente tridimensional, con todos los parámetros S-plane derivados de manera coherente de la geometría 3D subyacente.

Luego utilizamos la herramienta de parameter scan para realizar una exploración por fuerza bruta del espacio de diseño de lentes variando simultáneamente múltiples parámetros de lente y ejecutando todas las permutaciones de los sistemas ópticos resultantes. Esto nos permitió inspeccionar simulaciones individuales en detalle, visualizar trayectorias de rayos y geometrías, y construir intuición física sobre cómo los cambios en el espesor y la separación de las lentes afectan al rendimiento del sistema.

Para permitir una exploración más rápida, introdujimos el fast optimizer, que desactiva la generación pesada de salidas mientras recopila métricas cuantitativas de rendimiento en un único archivo CSV. Analizando estas métricas —como el tamaño RMS del spot, la energía encerrada y la elipticidad del spot— pudimos identificar de forma eficiente combinaciones óptimas de parámetros y vincularlas de nuevo a geometrías específicas de lente.

Por último, mostramos cómo formas de haz alternativas (estrella y cruz) pueden reducir drásticamente el coste computacional mientras siguen capturando el comportamiento óptico clave, lo que las hace muy adecuadas para optimización y barridos exploratorios.

En conjunto, estas herramientas forman un bucle de optimización práctico y reproducible: utilice el optimizador para localizar regiones prometedoras del espacio de parámetros y luego cambie a barridos completos de parámetros con salida detallada para inspeccionar el comportamiento de los rayos y validar el rendimiento físico. Este flujo de trabajo escala de manera natural desde sistemas de lentes simples hasta diseños ópticos más complejos y proporciona una base robusta para la optimización sistemática de lentes en OghmaNano.

💡 Siguientes pasos: Una vez completado este tutorial, puede que desee explorar otros flujos de trabajo de sistemas ópticos en OghmaNano, como el tutorial de lentes triplete Cooke, el ejemplo de lente prime de 200 mm, o la demostración de microlentes y filtrado óptico para ver cómo se aplican las mismas herramientas de optimización y análisis en distintos sistemas ópticos.