吾爱光设

 找回密码
 注册
会员须知
会员须知
实用帮助
实用帮助
查看: 6721|回复: 13

[求助] [已解决]二元面2(binary)的dll程序是哪一个程序?

[复制链接]
  • TA的每日心情
    无聊
    2024-11-24 10:22
  • 签到天数: 506 天

    [LV.9]以坛为家II

    9

    主题

    31

    回帖

    2

    积分

    小白

    积分
    2
    发表于 2023-4-13 20:18 | 显示全部楼层 |阅读模式
    本帖最后由 lulu 于 2023-4-13 20:28 编辑

    二元面2 附加参数为diffract order、2th order trem....和最大项数、归一化半径、用于计算表面相位差的系数

    用户自定义中us_binary.dll的附加参数为order、norm rad、p^2、p^4、p^6、p^1


    想要了解二元面光线在zemax里如何追迹,程序是如何推导出来的,所有二元面的程序到底是哪一个,该看什么,为什么这两个的附加参数不一样呢?
    希望各位大佬帮忙解答


    最佳答案
    2023-4-14 09:34
    本帖最后由 Falm 于 2023-4-14 09:38 编辑

    1.二元面的程序到底是哪一个,该看什么,为什么这两个的附加参数不一样?
    us_binary.dll 描述的是一个标准面(standard surface)附加一个binary衍射轮廓(偶次多项式表达),而二元面2是一个偶次非球面(even asphere)附加一个binary衍射轮廓,所以us_binary.dll 这边没有2th order term等偶次非球面系数。归一化半径norm radius = norm rad,最大项数表征设计需要的binary衍射轮廓偶次多项式的偶次项数量。
    好像没有binary 2/3/4的自带c代码,但可以直接在
    us_binary.dll 里添加非球面矢高即为binary 2 面型(3/4 就是在这基础上再分区)。

    2.想要了解二元面光线在zemax里如何追迹,程序是如何推导出来的

    可以参考手册。二元面光学即衍射光学在ZEMAX里的本质是附加了额外的光程差,光线偏折角度,用几何光学的方法近似模拟衍射光学元件。
    可以理解为光学追迹到这个面的时候,先是根据标准面/偶次非球面计算光线的方向和坐标,然后ZEMEX根据输入的相位函数计算了相位微分(图1的公式),使得其传播角度进一步改变,并附加上衍射轮廓引入的额外的光程差,代表又经过了这个衍射轮廓。
    binary衍射轮廓的相位函数如图2,这样计算每次只考虑一个衍射级次N,同时不考虑衍射效率。










    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?注册

    ×
    发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    2023-10-20 09:45
  • 签到天数: 235 天

    [LV.7]常住居民III

    1

    主题

    31

    回帖

    6

    积分

    小白

    积分
    6
    发表于 2023-4-14 09:34 | 显示全部楼层    本楼为最佳答案   
    本帖最后由 Falm 于 2023-4-14 09:38 编辑

    1.二元面的程序到底是哪一个,该看什么,为什么这两个的附加参数不一样?
    us_binary.dll 描述的是一个标准面(standard surface)附加一个binary衍射轮廓(偶次多项式表达),而二元面2是一个偶次非球面(even asphere)附加一个binary衍射轮廓,所以us_binary.dll 这边没有2th order term等偶次非球面系数。归一化半径norm radius = norm rad,最大项数表征设计需要的binary衍射轮廓偶次多项式的偶次项数量。
    好像没有binary 2/3/4的自带c代码,但可以直接在
    us_binary.dll 里添加非球面矢高即为binary 2 面型(3/4 就是在这基础上再分区)。

    2.想要了解二元面光线在zemax里如何追迹,程序是如何推导出来的

    可以参考手册。二元面光学即衍射光学在ZEMAX里的本质是附加了额外的光程差,光线偏折角度,用几何光学的方法近似模拟衍射光学元件。
    可以理解为光学追迹到这个面的时候,先是根据标准面/偶次非球面计算光线的方向和坐标,然后ZEMEX根据输入的相位函数计算了相位微分(图1的公式),使得其传播角度进一步改变,并附加上衍射轮廓引入的额外的光程差,代表又经过了这个衍射轮廓。
    binary衍射轮廓的相位函数如图2,这样计算每次只考虑一个衍射级次N,同时不考虑衍射效率。










    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?注册

    ×

    评分

    参与人数 1金币 +3 收起 理由
    前途无量 + 3

    查看全部评分

    发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
    回复

    使用道具 举报

  • TA的每日心情
    无聊
    2024-11-24 10:22
  • 签到天数: 506 天

    [LV.9]以坛为家II

    9

    主题

    31

    回帖

    2

    积分

    小白

    积分
    2
     楼主| 发表于 2023-4-14 14:55 | 显示全部楼层
    Falm 发表于 2023-4-14 09:34
    1.二元面的程序到底是哪一个,该看什么,为什么这两个的附加参数不一样?
    us_bin ...

    谢谢大佬,您的意思是二元面2和us_binary的附加衍射轮廓的表达式不一样嘛;那我如果需要二元面2的表达式,是要重新编写代码替换嘛

    发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    2023-10-20 09:45
  • 签到天数: 235 天

    [LV.7]常住居民III

    1

    主题

    31

    回帖

    6

    积分

    小白

    积分
    6
    发表于 2023-4-14 20:12 | 显示全部楼层
    lulu 发表于 2023-4-14 14:55
    谢谢大佬,您的意思是二元面2和us_binary的附加衍射轮廓的表达式不一样嘛;那我如果需要二元面2的表达式 ...

    附加衍射轮廓的表达式是一样的,不一样的是基础折射面型,us_binary的代码种基础折射面型只写了标准面即(二次)球面,二元面2的基础折射面型是偶次非球面
    发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
    回复

    使用道具 举报

  • TA的每日心情
    无聊
    2024-11-24 10:22
  • 签到天数: 506 天

    [LV.9]以坛为家II

    9

    主题

    31

    回帖

    2

    积分

    小白

    积分
    2
     楼主| 发表于 2023-4-14 20:31 | 显示全部楼层
    Falm 发表于 2023-4-14 20:12
    附加衍射轮廓的表达式是一样的,不一样的是基础折射面型,us_binary的代码种基础折射面型只 ...

    可是us_binary的附加衍射相位的项数只有p^2、p^4、p^6、p^1,不能自己选择最大项数,而二元面2中可以选择附加衍射相位的项数

    发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    2023-10-20 09:45
  • 签到天数: 235 天

    [LV.7]常住居民III

    1

    主题

    31

    回帖

    6

    积分

    小白

    积分
    6
    发表于 2023-4-15 09:59 | 显示全部楼层
    lulu 发表于 2023-4-14 20:31
    可是us_binary的附加衍射相位的项数只有p^2、p^4、p^6、p^1,不能自己选择最大项数,而二元面2中可以选择 ...

    这个确实也是一个不一样的地方,但是他们衍射轮廓的表达式本质都是一样的,都是上面图2的那个表达式,只是us_binary 没有写让使用者选择最大项数这个功能的代码。
    发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
    回复

    使用道具 举报

  • TA的每日心情
    无聊
    2024-11-24 10:22
  • 签到天数: 506 天

    [LV.9]以坛为家II

    9

    主题

    31

    回帖

    2

    积分

    小白

    积分
    2
     楼主| 发表于 2023-4-15 10:25 | 显示全部楼层
    Falm 发表于 2023-4-15 09:59
    这个确实也是一个不一样的地方,但是他们衍射轮廓的表达式本质都是一样的,都是上面图2的那个表达式,只 ...

    那您知道选择最大项数这个功能的代码,哪可以参考嘛
    发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    2023-10-20 09:45
  • 签到天数: 235 天

    [LV.7]常住居民III

    1

    主题

    31

    回帖

    6

    积分

    小白

    积分
    6
    发表于 2023-4-15 10:30 | 显示全部楼层
    lulu 发表于 2023-4-15 10:25
    那您知道选择最大项数这个功能的代码,哪可以参考嘛

    这个不太知道,不过可以参考一下同文件夹下的us_multi_zone_asphere.dll,这是一个分区非球面面型dll,里面有设置最大区域数量,和设置最大项数编写的思路近似
    发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
    回复

    使用道具 举报

  • TA的每日心情
    无聊
    2024-11-24 10:22
  • 签到天数: 506 天

    [LV.9]以坛为家II

    9

    主题

    31

    回帖

    2

    积分

    小白

    积分
    2
     楼主| 发表于 2023-4-15 10:45 | 显示全部楼层
    Falm 发表于 2023-4-15 10:30
    这个不太知道,不过可以参考一下同文件夹下的us_multi_zone_asphere.dll,这是一个分区非球面面型dll,里 ...

    好的 感谢

    发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
    回复

    使用道具 举报

  • TA的每日心情
    无聊
    2024-11-24 10:22
  • 签到天数: 506 天

    [LV.9]以坛为家II

    9

    主题

    31

    回帖

    2

    积分

    小白

    积分
    2
     楼主| 发表于 2023-4-22 16:55 | 显示全部楼层
    Falm 发表于 2023-4-15 09:59
    这个确实也是一个不一样的地方,但是他们衍射轮廓的表达式本质都是一样的,都是上面图2的那个表达式,只 ...

    你好,我这几天又试了一下,用户自定义binary和二元面2在2次方上添加相同的系数,它所呈现的点列图和波前都是不一样,这样来说,他们的衍射轮廓表达式是不一样的吧?

    发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    联系我们|本论坛只支持PC端注册|手机版|小黑屋|吾爱光设 ( 粤ICP备15067533号 )

    GMT+8, 2024-11-26 10:25 , Processed in 0.328125 second(s), 25 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

    快速回复 返回顶部 返回列表