一、参考FDTD官网farfield3d命令介绍:

https://optics.ansys.com/hc/en-us/articles/360034930693-farfield3d-Script-command

1. farfield3d命令功能:在3D模拟中将给定的功率或场轮廓监视器,或直线数据集投影到远场,将会返回电场强度|E|^2。

(1) 语法1:out=farfield(“mname”, f, na, nb, illumation, periodsa, periodsb, index, direction) ;将给定的功率或常轮廓监视器投影到远场。如果1个频率点被投影,将会返回N*M阶矩阵,其中N和M相当于na和nb投影的分辨率,即个数;如果多于1个频率点被投影,将会反馈N*M*P阶矩阵,其中P相当于被投影的频率的点数;

(2)语法2:out=farfield(dataset, f, na, nb, illumation, periodsa, periodsb, index, direction);参考语法1介绍,二者区别在于本语法是将数据集dataset中的数据返回;

2.  farfield3d语法中相关参数定义说明:

(1)mname:监视器名称(mintor name),必须输入(required),属于字符串;

(2)dataset:包含电场E和磁场H的直线型数据集,必须输入(required),属于数据集;

(数据集的介绍可参考https://optics.ansys.com/hc/en-us/articles/360034409554-Datasets)

(3)f:目标频率点的索引,可以是一个数字或者矢量;在R2016b (这个是matlab的版本??)中引入了多线程投影功能可以允许多个频率点的数据同时进行投影。选择性输入(optional),不输入时默认值为1,属于矢量;

(4) na/nb:投影到远场的点数,选择性输入(optional),不输入时默认值150,属于数字;

(5) illumination:用于周期性结构,对于高斯照明输入1,对于平面波照明输入2;选择性输入,不输入时默认值为1,即采用高斯照明,属于数字;

(6)periodsa/periodsb:周期性照明中采用的周期数;选择性输入(optional),不输入时默认值1,属于数字;

(7)index:进行投影的材料的折射率,选择性输入(optional),不输入时默认值为监视器中心处才材料折射率,属于数字;

(8)direction:可以为±1,选择性输入(optional),不输入时默认值为最大功率流方向,属于数字;

3. 下面的表格总结了不同监视器取向下ux, uy坐标矢量和周期输入特性与坐标轴的对应关系。

监视器取向

监视器表面法线

‘na’,’ux’,’period a’对应于

‘nb’,’uy’,’periods b’对应于

XY平面

Z

x轴

y轴

XZ平面

Y

x轴

z轴

YZ平面

X

y轴

z轴

4. FDTD官网示例:

(1)第一个示例:对名称为“monitor”的2D监视器的远场投影进行成像。在该示例中选择第二个频率点进行投影。如果监视器中只含有与一个频率的数据,第二个参数可以不用输入。

E = farfield3d("monitor",2); #2表示第二个频率点
ux = farfieldux("monitor",2); #farfieldux命令参考下面说明
uy = farfielduy("monitor",2);
image(ux,uy,E,"","","title","polar"); #ux和uy分别为x和y轴,对E进行作图,对应的图表名称“polar”

思考:farfield("monitor",2)中2可以被识别为f的数值,其它参数均采用默认值;如果对于后面参数不再采用默认值时,前面的参数一定要进行输入,比如na=nb=1000时,输入应为farfield("monitor",2,1000,1000);

(2)第二个示例:对一个直线型数据集的远场投影进行成像。这里的数据集来自一个2D监视器。

dataset=getresult("monitor", "E"); #采用getresult命令来获取名称为monitor的监视器中数据集E的数据
dataset.addattribute("H",getattribute(getresult("monitor","H"),"H"));#采用getresult获取名称为“monitor"的监视器中的数据集H的数据,然后采用getattribute命令获取数据集中的所有属性,最后采用addattribute命令在数据集dataset中添加一个矢量属性H,包含H的所有属性;
E = farfield3d(dataset,2);
ux = farfieldux(dataset,2);
uy = farfielduy(dataset,2);
image(ux,uy,E,"","","title","polar");

思考:在getattribute命令中未找到getattribute(getresult("monitor","H"),"H")这种语法说明,即getattribute(dataset,"a")格式。不知此处的"H"代表啥?

参考FDTD官网getattribut命令:https://optics.ansys.com/hc/en-us/articles/360034409534-getattribute-Script-command

二、参考FDTD官网farfieldux/farfielduy命令介绍:

https://optics.ansys.com/hc/en-us/articles/360034410134-farfieldux-Script-command;

https://optics.ansys.com/hc/en-us/articles/360034410154-farfielduy-Script-command;

1. Farfieldux命令功能:将farfield3d中进行3D模拟获得的远场数据来赋值给ux矩阵。可以参考farfield3d文档中关于不同监视器取向ux,uy,na,nb的解释信息。

(1)语法1 out=farfieldux(“mname”, f, na, nb, index) :可以参考farfield中的说明,相关参数定义同farfield3d。获得的矩阵为N*M阶矩阵,其中N是空间索引数目,M是频率点数;

(2)语法2 out=farfieldux(dataset,f,na,nb,index): 可以参考farfield中的说明,相关参数定义同farfield3d。获得的矩阵为N*M阶矩阵,其中N是空间索引数目,M是频率点数。

2. Farfielduy命令功能:将farfield3d中进行3D模拟获得的远场数据来赋值给ux矩阵。可以参考farfield3d文档中关于不同监视器取向ux,uy,na,nb的解释信息。

(1)语法1 out=farfielduy(“mname”, f, na, nb, index) :可以参考farfield中的说明,相关参数定义同farfield3d。获得的矩阵为N*M阶矩阵,其中N是空间索引数目,M是频率点数;

(2)语法2 out=farfielduy(dataset,f,na,nb,index): 可以参考farfield中的说明,相关参数定义同farfield3d。获得的矩阵为N*M阶矩阵,其中N是空间索引数目,M是频率点数。

FDTD Script命令学习-farfield3d/farfieldux/farfielduy相关推荐

  1. linux命令学习(转)

    查询命令的地方:man.linuxde.net/ Linux必学的60个命令 Linux提供了大量的命令,利用它可以有效地完成大量的工 作,如磁盘操作.文件存 Linux提供了大量的命令,利用它可以有 ...

  2. linux script $,linux的script命令

    script命令能够将终端的会话过程录制下来,下面由学习啦小编为大家整理了linux的script命令的相关知识,希望对大家有帮助! linux的script命令 script 是一个神奇命令,scr ...

  3. 【Redis数据库】命令学习笔记——发布订阅、事务、脚本、连接等命令汇总

    本篇基于redis 4.0.11版本,学习发布订阅.事务.脚本.连接的相关命令. Redis 发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息. 序号 ...

  4. 强大的Linux终端行为记录和回放工具:script命令详解

    文章目录 简单介绍 使用方法详解 常规使用 参数详解 使用场景 总结 作家Philip G. Ezolt在其作品<<Optimizing Linux Performance: A Hand ...

  5. Git:git-rev-parse 命令学习

    概要 Git:git-rev-parse 命令学习 博客 原帖收藏于IT老兵博客 前言 在研究Jenkins的时候,遇到了git rev-parse这个命令,这里学习一下这个命令. 正文 git-re ...

  6. mondb 常用命令学习记录

    mondb 常用命令学习记录 一.MongoDB 下载安装 MongoDB官网 提供了可用于 32 位和 64 位系统的预编译二进制包,你可以从MongoDB官网下载安装,MongoDB 预编译二进制 ...

  7. 硬盘mdr转换成gdp linux,Linux 命令学习神器!命令看不懂直接给你解释!

    原标题:Linux 命令学习神器!命令看不懂直接给你解释! 转自: 良许Linux 大家都知道,Linux 系统有非常多的命令,而且每个命令又有非常多的用法,想要全部记住所有命令的所有用法,恐怕是一件 ...

  8. package中的常用script命令

    执行多个script命令 安装npm-run-all模块 "scripts": {"dev1": "","dev2": ...

  9. linux小工具(2)终端记录器script命令

    前言:(内容不多,请耐心阅读) 首先,终端界面的显示是有缓存大小限制的,当在终端打印的消息超出缓存范围,它前面的打印消息就自动丢失. 那么,当需要记录下一段时间内的shell终端的所有输入命令和打印消 ...

最新文章

  1. 人工智能:技术本无罪,善恶在人心
  2. Orders matters: seq2seq for set 实验
  3. Python检查系统可疑用户
  4. .NET 面试题总结 (附有参考答案) 第2部分
  5. java stringBuilder的用法
  6. ECharts学习总结(五):echarts的Option概览
  7. 洛谷P2312 解方程题解
  8. 当面试官要求现场手敲代码,该如何体现你对Python的编程能力?
  9. 华三路由交换配置命令_华三路由器交换机配置命令
  10. linux c之gcc -g file.c -o file提示warning: no newline at end of file
  11. MySQL Mathematical Functions(数学方法)
  12. 01-HTML基础与进阶-day4-录像250
  13. [转]C语言如何获得精确到毫秒的时间
  14. tomcat绕过同源策略(CORS)--亲测有效
  15. 通过CentOS开机自启动脚本设置iptables
  16. 如何分享带淘宝客的链接到新浪微博
  17. reflector 插件_Reflector Plus Plus-插件,IronPython和其他Peli Goodness
  18. 如何基于ADAS Logger和CANape搭建一个自动驾驶路试采集系统
  19. 80端口被占用的解决办法
  20. 服务器硬盘sas和sata有什么区别

热门文章

  1. 达梦DM8数据库安装和创建实例
  2. 怎么查看计算机的配置?
  3. 因果论 —— 模型、推理和推断(概率、图及因果模型)①
  4. 计算机学校起名网,最新微信网名校园系列
  5. matlab美白磨皮源代码,PS人物美白磨皮动作及脚本Delicious Skin 2.0 (含视频教程)
  6. 【算法之美】改变世界的十位算法大师
  7. 数学算术中无穷小量的不完备性
  8. Java Web应用(JSP/Session/Cookie)
  9. 计算机主机的核心部件是什么意思,电子计算机三大核心部件 是什么
  10. 【直播预告】3月17日从上云到云原生,如何用新技术应对突发事件