CODE V 离轴三反系统的基本优化过程(macros)

本文详细介绍了在CODEV中对离轴三反光学系统进行优化的方法,涉及主要优化方向、间隙控制(包括第一类和第二类间隙)及使用JMRCC宏命令的具体步骤。通过导入系统、调整间隙参数和像面位置,展示了优化过程和关键代码实例。
摘要由CSDN通过智能技术生成

离轴三反的优化(CODE V)



前言

本次实验主要通过CODE V中的实际例子完成对离轴三反的优化。

一、离轴三反主要优化方向

对于离轴三反的优化,其实一直都是在优化系统的反射镜之间的距离,整个光学系统的光线走向,以及光学系统的体积。对于离轴光学系统来说总共有两种间隙:“第一类间隙”和“第二类间隙”。
以CODE V中的三反系统为例子展示,间隙的优化方式,主要用到基本的宏命令:JMRCC。
在这里插入图片描述
JMRCC 的宏描述方式如下:
主要放置于codev的macros目录下的 DEFINE_JMRCC.SEQ 文件中
JMRCC 需要导入以下这些参数:
^clearance == @JMRCC(RA,FA,SA,RB,FB,SB,RC,FC)
clearance是得到值,随便写个名字(xxxxx等)
RA代表光线的主光线还是边缘光线
FA代表输入的视场
SA代表面
上述三个代表线 Line A

RB 代表光线的主光线还是边缘光线
FB代表输入的视场
SB 代表面
下述三个代表Point B

RC,FC暂时不用赋予数值
主要求点到线的距离,从而控制反射镜之间的间隙,从而控制优化方向。

在这里插入图片描述

二、参考案例

1.导入系统

现在命令行输入以下代码

in cv_macro:define_jmrcc 
res cv_lens:threemir ! 载入三反射系统
yde s2 (yde s2)-(yde s1) ! 设置第二面的Y轴decenter为(yde s2)-(yde s1)
del dda s1 ! 删除S1面的decenter数据
thc s1..2 0 ! 设置变量
thc s4 0    ! 设置变量
bc s2 0 ! 设置非球面 6th为变量
bc s3 0 ! 设置非球面 6th为变量
bc s4 0 ! 设置非球面 6th为变量
del ape sa ! 删除掉 apertures from surface(s).
! nbr 代表箭头
vie;nbr;aap;go

2.优化代码

代码如下(示例):

aut
! 利用宏控制间隙Use clearance control UDMF in 3 places:
@s3_clr == @jmrcc(3,2,1,2,3,3,0,0)
@s3_clr < -25
@field_stop_clr == @jmrcc(3,1,2,2,3,3,3,3)
@field_stop_clr > 5
@lyot_stop_clr == @jmrcc(2,1,3,3,1,4,3,3)
@lyot_stop_clr < -6
! 控制像面中心对焦Image centration
y r1 f2 si = 0

! 由于近轴EFL对离轴系统不太适用,因此控制像面高度,y r1 f1 si代表1视场主光线在像面y高度,y r1 f1 si代表3视场主光线在像面y高度
@image_height == (y r1 f1 si)-(y r1 f3 si)
@image_height = 4.6

! 控制系统高度,以及系统的总长,r1主光线,r2上边缘光线,r3 下边缘光线,f代表视场,s代表面,g1代表以第一个面作为参考面的坐标系统进行计算(同一参考系计算)
@system_length == (z r1 f2 s4 g1)-(z r2 f3 s3 g1)
@system_length < 175
@system_height == (y r2 f3 s2 g1)-(y r2 f1 s4 g1)
@system_height < 200
! 画图
dra
! 两次优化之间的error小于0.01即停止
imp .01
go
vie;nbr;aap;go

总结

在这里插入图片描述
以上过程并未完成最终优化,需要重新写一个宏控制一下第二类间隙,后续有空再进行填写。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值