ISIGHT应用培训

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

ISIGHT应用培训
1 ISIGHT主要功能
集成
自动化
优化
2 iSIGHT集成过程
集成的几个概念:
1parameter 参数:即变量
2calculation 块:用于在iSIGHT中做一些简单的数据处理
3simcode块:用于定义被集成到iSIGHT中的可执行程序
下面举一个例子说明问题
现在有一个程序a.exe,这个程序从一个文件ain.dat中读取两个数据x1、x2,并进行一系列的计算,并输出一个数据y到一个文件aout.dat中。

其中x1和x2的变化范围分别是
0<x1<100 0<x2<50
现希望得到在x1和x2的变化范围内y的最小值。

如果结合本所的具体题目,可以说现在有一个CFX程序,这个程序从一个文件ain.dat中读取数据x1为隔板偏转角度,x2为隔板宽度,并进行一系列计算,并输出一个数据y为压力损失系数到一个文件aout.dat中。

其中隔板偏转角度为10~40度,隔板宽度为10~20mm。

现希望得到在给定的隔板偏转角度x1和隔板宽度x2的变化范围内压力损失系数y的最小值。

如果手工完成这个工作,其流程为:
1选定x1和x2的初始值
2在ain.dat文件中按要求的格式把x1和x2的值写入并保存文件
3运行a.exe程序
4打开aout.dat文件,并从中读出y的数值。

5判断y的变化趋势,如果可以判断出y已经是最小值,则设计过程结束。

如果无法判断y 是最小值,则根据经验重新选定x1和x2的值,并从第2步再次循环。

在iSIGHT中同样需要这个过程:
在iSIGHT中,首先需要进行软件的集成和设置自动化流程,这样iSIGHT才能知道应该用怎样的顺序调用哪些软件。

这里只有一个a.exe程序。

下面看看如何在iSIGHT中集成一个程序。

首先打开iSIGHT
2打开iSIGHT中的集成窗口,通过单击左上角的integrate图标。

在集成窗口中,上部是工具栏,其中有simcode和calculation。

一般的集成工作,仅仅用这两个图标的功能即可完成。

因此是最常用的工具。

窗口的左半部分是一个集成结果列表,将来我们定义的任务以同文件夹类似的结构显示在这里。

右半部分是用流程图方式显示集成结果,可以使我们更加直观的观察到集成后的结果。

对于我们这个题目来说,由于要集成一个可执行程序(包括exe/com/bat),因此需要集成进来一个simcode。

3单击simcode图标,在下面的流程图窗口中就出现了一个simcode图标。

我们称之为一个simcode块。

在simcode块的图标上,有两个按钮。

先单击中间按钮,注意,这个按钮的颜色是粉色的。

这个按钮是用来修改simcode块的名称的。

这里我们把他的名称改为abc。

这时,可以看到原来的粉色变成了绿色。

在iSIGHT的集成界面中,需要改动的部分都是粉色的,而改动后,颜色变为绿色。

接着单击左边的加号“+”按钮,这时可以进入simcode块
的内部。

4我们可以看到,simcode块的内部默认有三个子块:input子块、output子块、program子块。

其中program子块对应着需要被集成的可执行程序,而input子块和output子块分别对应着一个输入文件和一个输出文件。

在iSIGHT中,什么样的文件是输入文件:一个输入文件同时满足两个特征:1这个文件是可执行程序执行时需要用到的文件。

2这个文件中是由iSIGHT生成的。

在iSIGHT中,什么样的文件是输出文件:同样需要满足2个特征:1这个文件是可执行程序执行后生成的文件。

2iSIGHT需要从该文件中读取某些数据。

就我们这个问题为例,program子块对应的可执行程序是a.exe程序。

a.exe程序运行前需要从ain.dat文件中读取x1和x2的数值,那么它满足了第一个条件。

而x1和x2都是需要由iSIGHT来改变的,a.exe每运行一次,都需要iSIGHT重新生成一次这个文件,那么它满足了第二个条件。

因此,它是一个输入文件。

a.exe程序运行后生成了aout.dat文件,那么它满足第一个条件。

而aout.dat文件中的一个数据y是iSIGHT需要读取的数据,因此它叶满足第二个条件,因此它是一个输入文件。

5首先指定program子块。

单击左边按钮,则进入指定可执行程序的界面。

在这里,指定需要集成的可执行程序的路径和文件名即可。

6定义input子块。

单击中间图标,在这里需要指定模板文件和输入文件。

那么什么是模板文件呢?iSIGHT需要改变ain.dat文件中的两个参数,那么如何修改呢?我们需要告诉iSIGHT。

在这里我们就需要一个模板文件。

这个文件定义了生成ain.dat所用的格式。

我们先看看ain.dat文件的格式:在同一行中有两个数据,分别是x1和x2。

现在我把这两个数值用两个字符串来代替,写为x1 x2。

以后就可以告诉iSIGHT打开这个文件,并在x1处写上x1的具体数值,在x2处写上x2的具体数值,并另存为一个文件ain.dat,这样就可以为a.exe准备了一个输入文件。

在模板文件中输入模板文件的路径和文件名,在输入文件中输入最后将生成的文件的文件名。

接着,就要告诉iSIGHT如何对模板文件中的相应位置进行替换并生成新的文件。

这个过程叫做file parse 即文件解析。

单击input子块左边图标,可以进入一个窗口,叫做file parser,即文件解析器。

这时,右半部分就是我们刚才生成的模板文件,而左半部分将显示我们定义的文件解析过程。

上部的工具栏上是一系列文件解析的动作,包括replace、find等等。

现在我们要做的就是把x1和x2这两个字符串替换成两个具体的数值。

那么我们首先要先定义两个变量,iSIGHT通过改变这两个变量,并把更改后的值写入ain.dat中,以达到改变输入参数的目的。

这时,我们先退出文件解析器,回到集成界面。

单击左上角的parameter图标。

这时弹出一个定义参数(变量)的窗口。

单击add,增加变量x1和x2。

再进入input子块的文件解析器。

单击工具栏上的replace图标,x1,选中string,在with后单击下拉箭头,在变量列表中选择x1。

然后ok。

这时,可以看到,x1这个模板文件中的字符串被x1这个iSIGHT 变量的当前值0.0所代替了。

接着x2。

通过模板文件和两个replace的动作,我们定义了如何生成ain.dat。

以后运行时,iSIGHT就会执行这些动作,并把文件另存为ain.dat。

7定义output子块。

单击中间图标,这里仅仅需要指定输出文件的文件名,而不需要模板文件。

ISIGHT将来需要从这个文件中读取数据y,因此,同样需要用文件解析器,告诉iSIGHT 如何从文件中读取y。

单击左边图标,进入文件解析器。

此时,文件只有一个数据。

红色光标表示目前文件指针的位置是文件头。

我们需要从该文件中读取这是数值并存到变量y中。

现在我们还没有在iSIGHT中定义y变量。

因此退出文件解析器,进入parameter窗口。

单击add,增加变量y。

现在可以看到在变量表的第二列是变量的类型,默认为input。

Input 变量是指iSIGHT可以改变的变量。

而y变量不是iSIGHT改变的量,而是iSIGHT读入的、
并需要进行判断的量,在这里需要定义为output类型。

单击ok退出。

再次进入文件解析器。

此时的动作是读取数据,因此用read命令。

单击read,在弹出的对话框中,可以看到,需要指明将读入的数据存储到哪个变量中。

选择y。

在默认状态下,iSIGHT的read命令读入的是光标当前位置后的一串数据,直到遇到了空格、制表符、回车等分隔符。

现在整个集成过程全部完成了。

8退出集成,此时系统提示存盘。

9此时开始设置优化。

在iSIGHT主界面中,单击parameter图标,此时可以看到两个input 类型的变量,显示为蓝色,一个output类型变量,显示为黑色。

三个系统变量,显示为红色。

我们要改变x1和x2,因此,在其后的第一栏中打勾,指明这两个变量是优化变量。

接着定义他们的变化范围。

大于号和小于号。

接着定义我们的优化目标,就是y值最小。

10此时退出parameter界面,我们需要选择一个优化算法来进行优化。

选择tools→optimization plans。

在弹出的对话框中单击new,可以新建一个优化模式。

在这里,我们选择NLPQL方法进行优化。

单击ok。

11在主界面右侧栏中,单击run mode下的下拉菜单,选择optimization→newplan,即选中了我们刚才定义的优化模式。

此时,只要单击excute图标,即可进行优化的过程了。

但此时,我们不忙进行优化,先设置一个monitor,监视一下优化的过程。

12单击monitor图标,在弹出的窗口中,单击graph图标,并选择parameter标签,选中x1,x2,y,ok,则出现三个监视图。

一会优化时,这三个图会实时变化。

13,单击excute图标,开始优化。

我们可以看到优化的全过程。

14验证结果。

在monitor中,file→open,选择task1.db,整个优化过程的数据全部存储在这个文件中。

我们可以看到优化的结果了。

第二个例子
再增加一个程序b,该程序从a程序的输出文件aout.dat中读取数据,并经过一系列计算,得到一个结果z。

现在希望z最小。

相关文档
最新文档