感恩回馈:电磁场仿真软件CST原版宏:Parameter Mesh的修改版(自动更新参数取值)
时间:10-02
整理:3721RD
点击:
电磁场仿真软件CST原版宏:Parameter Mesh的修改版(自动更新参数取值)
作者:aaron8967 博客:http://aaron8967.blog.51cto.com
我在学习CST软件的过程中,在论坛里受到了很多热心人的帮助,一直心存感激,
在这里把自己修改过的VBA宏程序分享给大家,希望可以帮助到那些正在使用CST软件的朋友……
如果对我的这个程序有什么疑问,可以在我的博客里给我留言,
这个文章我也写在了自己的博客里,欢迎大家为我的博客增加人气,谢谢……
说明: 我在学习和使用CST软件的过程中,首先建立了参数化的结构模型,然后想通过改变结构参数的取值,让CST自动对不同的结构进行仿真计算。但是CST自带的宏程序无法完全满足我要求的功能,于是自己就简单学习了一下VBA语言,然后修改了原版的VBA宏文件,基本实现了一些自定义的功能。最后,无论是CST软件还是VBA编程,我现在只算是略懂皮毛,分享只为学习交流,所以不足之处还请谅解,欢迎批评指正。
原版宏:Wizard / Parameter + Mesh Study
源文件:见CST软件菜单中Macros->Edit/Move/Delete VBA Macro ->Global Macro
功能:首先选择参数的个数和名称,并设置相应的起始值、步长和结束值,然后宏程序会自动扫描所有取值范围内的参数设置并仿真。
限制:如果用户只是想仿真所有参数设置中的个别几组设置或者有一些参数设置的组合会造成仿真无法进行等问题时,原版宏显然无法高效完成所有仿真目标。
修改版:ParSweepV05
功能:采用TXT文本文件输入参数设置的方法,实现只扫描用户自定义的参数设置组合进行仿真分析。
源文件:ParSweepV05.txt ParSweepV05说明.txt
使用前提:
1. 用户在使用CST软件建立物理模型的过程中,至少建立了1个变量
2. 用户需要将自己想要仿真的参数设置按照后文规定的格式写入TXT文件中
3. 以防万一,在使用本修改版宏之前,请备份原版仿真文件
使用方法:
一、将ParSweepV05源文件中的内容导入到CST软件中,并生成宏
二、将用户设置的格式化参数文件(TXT文档)放到仿真文件夹的根目录下
三、运行ParSweepV05进行仿真
四、查看输出结果及日志文件
详细操作步骤:
一、导入宏文件
1. 打开下载的源文件ParSweepV05.txt,将其中内容全选并使用Ctrl+C复制
2. 双击*.cst文件,打开用户的CST仿真工程
3. 点击菜单中的制作宏选项:Macros->Make VBA Macro
4. 在弹出的对话框中设置宏程序名称ParSweepV05:
选项说明:前两个单选框按默认选择Control Macro即可,最后一个复选框(Make globally avaliable)如果选中,会使得这个宏在本机的CST软件打开的所有工程都可用,否则只在本工程中可用。
5. 点击OK,会进入宏编辑界面,将其中内容全部删除,并将之前复制的内容Ctrl+V拷贝进来。
6. 点击保存按钮,现在可以在Maxros菜单下找到ParSweepV05的选项了,不过现在还不能成功使用
二、创建参数文件
1. 格式说明:参数文件名为ParSets.txt,必须包含CST参数列表中所有参数,且要放在工程文件夹的根目录下(与*.cst同一目录)
2. 根据CST工程中的参数列表,将参数名写入ParSets.txt文件的首行,以制表符间隔
3. 根据首行参数名的顺序,依次写入参数的取值,以制表符间隔。每一行的参数取值代表一次仿真的参数设置,有多少行参数设置就会进行多少次仿真,请务必保证每一行的参数设置至少有一个参数的取值与其他行不同。
4. 保存文件并关闭
三、仿真
1. 在CST软件的工程界面,打开Macros菜单,会看到ParSweepV05的选项,在Macros菜单的顺序可能不同
2. 确保已经备份全部工程文件,点击ParSweepV05,会弹出对话框显示参数的总数,如果确认无误,点击OK按钮
3. 这时会显示一个当前所有参数的初始值列表,对仿真时的取值没有影响,点击OK按钮
4. 在自定义的程序中已经屏蔽了设置参数范围的功能,点击Start Parameter Study即可
5. 选择要使用的求解器,点击Start按钮开始仿真
四、查看结果
1. 在仿真完成后,可以在CST界面查看所有的1D仿真结果,若要查看电场分布等内容,需要进入工程根目录查看。
2. 在工程根目录,会有一个名称为“工程名字_sweep_序号”的文件夹,这就是仿真结果的存放路径,工程名字就是当前工程的名字,其序号的值代表这个是用户第几次运行ParSweepv05所产生的结果。
3. 进入这个文件夹,每一个以“Set 序号”命名的.cst文件都对应一种参数设置下的仿真工程,双击打开即可查看,其序号的值代表在该次仿真所使用的参数设置是ParSets.txt文件中除了首行外的的第几行的参数取值。
4. 在这个结果文件夹内,还有若干日志文件用于记录每次仿真的时间和参数设置,例如ParSwLog.txt和ParSwPost.txt,在ParSweepV05说明.txt中有简单说明。
本文内容修改自CST软件原版VBA宏:Wizard / Parameter + Mesh Study,仅供学习和交流。
由于个人水平有限,不足之处还望多多包涵,欢迎批评指正。
By aaron8967
看看审核通过没
这个给力……不会VBA的飘过
很好 不过你那个网站没怎么去过 下不来 上传论坛被
LZ真给力,之前听说过宏这个东西,这下有了深入的认识,非常感谢!
先看再顶
确实非常的感谢
没用过cst,帮顶!
由于我的博客在那个网站里,就把附件传到那个网站了
这里是百度云的分享:http://pan.baidu.com/share/link?shareid=387183&uk=4113838203
没注意到论坛的附件功能,现在已经不能编辑帖子了,
我的博客就在51CTO里,你可以随便注册一个账号,免费下载的
好的 谢谢
一提到宏就感觉很厉害。
haoxainghenlihaideyangzi
不会VBA的飘过
cst小白,想学习一下