Ansys Speos|Optimization小工具快速优化设计

概述

优化是一个有助于找到一个光学系统的最佳解决方案的实验过程,它主要是利用参数的变化而试图达到预期的结果。在Speos 2023 R2中提供三种可供选择的方法来执行此类分析。第一个是基于workbench创建的优化,可以参考文章(基于Ansys Workbench和Speos的准直全反射透镜优化设计案例),第二种使用optiSLang及其强大的优化功能,在optiSLang种直接调用Ansys Speos求解器,访问发布的参数,设计识别最重要的输入参数,多目标优化在不同目标之间进行权衡,第三种是利用嵌入到Speos中的优化工具optimization,允许基于随机算法Random search设置一个优化,以研究不同参数集对仿真结果的影响。

本案例讲述使用Speos optimization 优化工具,快速优化设计。为描述案例讲解过程,首先对optimization工具的参数进行详细解释。

优化模式

Speos optimization优化功能提供三种优化模式: Random Search随机搜索算法是一种基于随机的全局优化方法,优值提供函数定义优化的收敛过程,Minimize允许获得尽可能接近目标值的模拟值。Maximum允许获得尽可能远离目标值的模拟值。Design of Experiment实验设计允许定义变量的值,通过使用基于所选变量的Excel文件来定义变量。Plugin插件允许使用自己创建的优化算法,以便在分析中增加更多的灵活性。

变量类型

Optimization特性根据变量的来源提供了三种变量类型。

Simulation variable模拟变量对应Speos的仿真变量,在此变量列表中可以选择光源的参数、探测器的参数、包括3D texture的参数。在optimization设置列表中,可以查看添加到优化中的变量的当前值,和数值变量可变范围,可以修改min和max的数值,使得变量在更大或更小的范围内变化。

Design variable设计变量对应于光学部件设计参数,在Speos 中完成的所有OPD光学部件设计参数,都可以作为优化变量选择optimization中,例如lightguide、TIR、optical lens、optical surfaces等设计参数。在optimization设置列表中,可以查看添加到优化中的变量的当前值,和数值变量可变范围,可以修改min和max的数值,使得变量在更大或更小的范围内变化。

Document variable对应于可以在spacecclaim Groups面板(驱动维度,脚本参数)中创建的输入参数,也可以是机械变量参数,例如机械半径等参数。在optimization设置列表中,可以查看添加到优化中的变量的当前值,和数值变量可变范围,可以修改min和max的数值,使得变量在更大或更小的范围内变化。

优化目标

优化目标对应于想要评估的目标结果,是整个优化过程的最终评估元素。为了得到目标首先需要建立direct或者是inverse仿真,运算仿真得到XMP结果后,使用measure功能确认目标数值,例如RMS、average等,得到一个含有目标结果的XMP。然后创建优化optimization后,在target列表选择评估目标。

优化

1.在Speos中,打开案例LightGuide_Tutorial,此案例可以在Ansys learning Hub优化课程中找到。

2.定义光源、探测器、材料属性、直接仿真运算得到XMP仿真结果。

3.对仿真结果中的出光区域的RMS做为目标优化值。

4.点击optimization,选择light guide仿真,选择R1-R5作为document variable,并修改参数变量的min和max。选择RMS作为target, 设置目标值,权重为1。

5.选择random search,Minimize优化,仿真运算时间600S,GPU运算仿真。

6.最终得到如下结果,优化后RMS降低,整体均匀性提高。

相关推荐
Gauss松鼠会5 小时前
GaussDB性能调优:从根因分析到优化落地
数据库·性能优化·database·gaussdb
、、揽明月九天11 小时前
秒杀系统的性能优化
性能优化
今天也想MK代码1 天前
ReFormX:现代化的 React 表单解决方案 - 深度解析与最佳实践
前端·react.js·性能优化
佩奇的技术笔记1 天前
高级:性能优化面试题深度剖析
性能优化
清源妙木真菌2 天前
Linux:页表详解(虚拟地址到物理地址转换过程)
linux·性能优化·内存管理
MrWho不迷糊2 天前
Spring Boot 首笔交易慢问题排查与优化实践
spring boot·性能优化
无知的前端2 天前
iOS开发,runtime实现切片编程原理以及实战用例
ios·面试·性能优化
wending-Y2 天前
记录clickhouse记录一次性能优化,从60s到1s
前端·clickhouse·性能优化
敲键盘的小夜猫2 天前
Java服务端性能优化:从理论到实践的全面指南
java·开发语言·性能优化
一个天蝎座 白勺 程序猿3 天前
大数据(4.4)Hive多表JOIN终极指南:7大关联类型与性能优化实战解析
hive·hadoop·性能优化