声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 3112|回复: 0

[优化设计] Isight通用集成之Matlab【转贴】

[复制链接]
发表于 2015-11-7 11:12 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
1.建立所需文件
脚本文件
01.png
图1.1 Matlab脚本文件
Matlab自身作为一款数值计算程序,拥有自己的成熟脚本语言,大部分功能都是基于编写后缀为“.m”的脚本文件来实现的。使用Matlab本身就是在编写脚本文件,所以这里并不需要对此多做介绍。
批处理文件
a. Windows系统下,调用Matlab的批处理命令为:
"C:\Program Files\MATLAB\R2012b\bin\win64\MATLAB.exe" /minimize -r test
根据所使用电脑中Matlab安装路径修改该命令前面蓝色部分,根据前面所建立的脚本文件调整该命令后面绿色的文件名称。
b.新建txt文本文档,将修改后的命令复制并保存,将该文档的后“.txt”修改为“.bat”,即可得到windows批处理文件,如图1.2所示。
02.png
图1.2 Matlab批处理文件
输出文件
Matlab是一款功能十分强大的分析程序,我们可以利用其脚本语言以多种格式来输出任何信息,该脚本命令为:
save 'test.txt' 'z' -ASCII
其中“test.txt”为输出文件的格式及名称,“z”为输出变量,“-ASCII”为文本编码格式,该格式为Isight要求,该命令的详细使用方法请参考Matlab相关教程。
03.png
图1.3 Matlab输出文件
2.调整并验证所需文件
a.在得到以上三个文件之后,首先需要根据实际情况对脚本文件的内容进行调整,以便于进行Isight集成。一般需要注意两个方面:
(1)在输出结果时,通常是可以指定输出路径的,可以将指定的路径添加至结果文件名称前面,但是为了Isight集成方便,建议去掉输出路径,以保证输出文件默认保存至“当前位置”;
------------------以下内容为Isight集成逻辑分析,只在乎结论者可忽略------------------
原因在于:
Isight在每次迭代优化时,默认情况下,会在其工作路径下建立一个新的文件夹,然后将以上建立的脚本文件及批处理文件由原始位置拷贝至该文件夹,同时修改脚本文件中的设计变量并驱动分析软件的运行,分析结束后,会在该文件中搜索并读取结果文件,然后再次新建一个文件夹,进行下一轮迭代。
假如我们没有修改输出路径,结果文件会输出至被集成软件的默认工作路径或导出结果时指定的路径,这将会导致Isight因无法找到该文件而报错,这是Isight集成时常见错误之一。
也就是说,为了让Isight找到结果文件,需要保证分析软件在每次迭代完成后,其结果的输出位置始终保持在Isight新建的文件夹下。
为了解决这个问题,我们在“Isight通用集成之ABAQUS”中采取的措施是,将脚本文件中结果输出路径删除,从而实现以上目的。
------------------以上内容为Isight集成逻辑分析,只在乎结论者可忽略------------------
(2)由于该批处理命令采用了最小化Matlab界面的方式将其放至后台运行,即每次迭代之后并没有关闭Matlab,这可能导致多个Matlab命令同时运行,所以在M文件的最后,需要添加退出命令:
exit;
b. 接下来需要验证以上文件的可靠性,将所需文件(除去结果文件)拷贝至同一英文路径下,双击批处理文件(“.bat”),在该文件下查看是否能够生成结果文件(或者在指定的导出位置下寻找),如果没有生成,请检查以下几个方面:
1)验证分析软件是否运行;
2)验证结果文件是否生成;
3)验证生成位置。
将该路径下生成的结果文件剪切至其他路径(保证该路径下的文件),在脚本文件中寻找并调整设计变量(即想优化的参数),再次双击批处理文件(“.bat”),对比两次生成的结果文件,确定结果随着设计变量的变化而改变。
3.Isight软件集成
完成以上工作之后,便可以进行软件集成,参照“Isight通用集成之ABAQUS”。
a.打开Isight的Design Gateway,在Application Components选项卡中找到Simcode组件(第一个),并拖拽至优化流程中。如图3.1所示。
04.png
图3.1 Design Gateway
b.双击Simcode组件进入默认对话框,点击Find Program并找到前面得到的批处理文件(“.bat”),同时勾选Distribute Executable,图3.2
05.png
图3.2 Simcode默认对话框
c.选择Advanced选项卡并取消勾选所有选项,图3.3.
06.png
图3.3 Simcode对话框
d.选择Input选项卡并双击中间的“Click here to open a new Data Source”,打开如图3.4对话框。
07.png
图3.4 输入文件对话框
e.选择Browse并指向以上生成的脚本文件(”.m”),寻找设计变量并进行解析,然而很多时候我们并不能直接选择所关心的数值,这种情况下可以点击右键并选择Edit Section Format,在other后面的对话框内输入分隔符(英文,以空格隔开),如图3.5所示。
08.png
09.png
图3.5 输入文件解析
f.再次选择设计变量后,可以在Parameter文本框内对其命名,之后点击右侧Write图标(红色)完成给变量的解析,可对多个变量进行解析,图3.6。
10.png
图3.6 输入文件解析
g.选择Output选项卡,以同样的方式加载结果文件(“.txt”),解析所关心的输出结果,不同的是在为输出参数命名之后,需要点击右侧Read图标(绿色),如图3.7所示
11.png
图3.7 输出文件解析
h.解析完成之后,选择OK并退出Simcode对话框,回到主界面之后会发现Simcode右上方的黄色倒三角(图2.1)消失。此时点击界面上方的蓝色三角即可运行测试,图3.8。
12.png
图3.8 集成完成
最后,祝您顺利。
同时,该教程会以视频的形式进行更为详细的阐述,视频的申请与任何提问均可随时与我们联系。

来自:思易特-优化、仿真之家

本帖被以下淘专辑推荐:

回复
分享到:

使用道具 举报

您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-15 10:47 , Processed in 0.072082 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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