340 likes | 695 Views
iSIGHT 基本 培训 连接 和集成 模拟代码 到 iSIGHT. iSIGHT 中的模拟代码( Simcodes ). iSIGHT 的基本特征是能运行模拟代码 iSIGHT 运行的代码,是可执行文件和由 ASCII 组成的输入、输出文件 ( 文本文件) iSIGHT 可以运行商业的和拥有使用权的模拟代码( simcodes). iSIGHT 使用的代码. 商业程序( Commercial Codes ) 由供应商开发的程序
E N D
iSIGHT 基本培训 连接和集成模拟代码到 iSIGHT
iSIGHT中的模拟代码(Simcodes ) • iSIGHT 的基本特征是能运行模拟代码 • iSIGHT 运行的代码,是可执行文件和由ASCII 组成的输入、输出文件 (文本文件) • iSIGHT 可以运行商业的和拥有使用权的模拟代码(simcodes)
iSIGHT使用的代码 • 商业程序(Commercial Codes) • 由供应商开发的程序 • ANSYS; ABACUS; CFX; UG; ADAMS; Pro/ENGINEER; MSC/NASTRAN; Radioss; Matlab; Excel; LS-DYNA; MOLDFLOW; MATRIXx; DEFORM; PATRAN • 所有权程序 (Proprietary Codes ) • 由公司开发的程序
代码因素(Code Considerations) • iSIGHT 不能运行所有通过用户图形界面(GUI)生成的代码,除非有宏存在 • 宏文件记录了图形界面受驱动的动作 • 第三方脚本工具
紧密/松散连接(Tight / Loose Coupling) • 松散连接—文件编译器—ASCII 输入/输出 • 普通的(generic) • 盒子之外(out of the box) • 容易使用 • 紧密连接 • 有价值名字文件(name-value files) • APIs • 更好的性能
代码连接(Code Coupling) • iSIGHT 运行模拟代码之前, 模拟代码必须集成到 iSIGHT 环境中 • 代码连接包括给予iSIGHT需要执行代码的 信息 (执行协议)
执行协议(Execution Protocol) • 模拟代码的名称和路径 • 输入输出文件的名称和路径 • 允许返回的代码 • 花费的时间 • 文件编译指令
iSIGHT中的路径名 • iSIGHT 接受相对和绝对的路径名 • 相对路径名是指相对于描述文件开始的目录
程序文件的要求 程序文件执行选项包括花费的时间,返回的代码,以及可选择的运行参数
文件编译指令(File Parsing Instructions) • iSIGHT 中新的设计点不直接通过模拟代码,而是通过输入输出文件 • iSIGHT 必须以代码能够识别的形式设置数据点 • 为了建立数据流,必须将iSIGHT 变量定义和映射到输入输出文件的位置
iSIGHT中的参数名 • iSIGHT 变量名可以不同于模拟代码的变量名 • iSIGHT 变量名: • 字母和数字 • 必须以字母开头 • 不能包含特殊字符,如:空格,下划线,百分号,等 • 例如—FlangeWidth 不能写作 Flange_Width
输入编译指令 The value of X is 5 The value of Y is 3 Write Read X = 5 Y = 3 Z = X * Y iSIGHT 输入文件 模拟代码 • 模拟代码读取输入文件,iSIGHT WRITES输入文件
输入文件的产生 • 从技术上讲, iSIGHT 需要为每一次运行创建新的输入文件 • 如果输入文件仅有一小部分改变,新的运行中重新创建输入文件将浪费时间 • 对于大的输入文件使用一个模板文件,从而在运行之间使某些地方相对不变
模板文件(Template File) • 是一个工作实例文件,它用来产生送到模拟代码的输入文件 • iSIGHT 复制一份模板文件,用新设计点的值修改它,通过模拟代码保存在输入文件中
输入编译命令 • 用于输入编译的命令很多 • 普通的输入编译命令 • 查找(find ) • 写(write ) • 替换(replace)
查找(find)命令 • 查找(find)命令代表一个字符串 • 它移动光标到要找的字符串的末端 • 例子: • find “The value of X is” The value of X is|5 The value of Y is 3
写(write )命令 • 写(write)命令写一个值在文件内的光标位置 • 如果另外的值已经在光标位置, 那么写(write)命令将用新值覆盖此值 • 例子: • write $X
替换(replace )命令 • 替换(replace)也写一个值到文件内的光标位置 • 替换(replace)命令将立即移动光标后面的值,并用新值替换它 • 例子 • replace word with $X
写与替换(write vs. replace) • New X value = 2.3 • iSIGHT 和代码不同步 The value of X is 2.33 The value of Y is 3 write $X The value of X is|5.43 The value of Y is 3 The value of X is 2.3 The value of Y is 3 replace word with $X Template file
格式确定器(Format Specifiers) • 数值应该如何写进文件,写(write)和替换(replace)命令不能提供给用户任何控制方法 • 如果数值必须有一个确定的格式,那么必须使用格式确定器 • iSIGHT 使用 C 语言格式确定器来控制数值写入文件的方法
格式确定器(Format Specifiers) • C 语言格式确定器的结构:%X.YZ • X 是宽度 – 数值的字符总数 (包括小数点) • Y 是精度 – 小数点后数字的数量 • Z 是类型 – 浮点(floating),整型(integer),指数型(exponential),等
格式(Format)举例 • %6.4f 表示一个浮点数,6个字符的长度,小数点后有4位—X.XXXX • 数值 1.23456 以 %6.4f 格式表示为 1.2345,数字 6 被忽略 • 格式确定器对于 FORTRAN 输入文件是有用的,因为它的数值必须在某列
带有写( write)和替换( replace)的格式 • New X value = 2.3 The value of X is 2.30 The value of Y is 3 write $X as “%4.2f The value of X is|5.43 The value of Y is 3 The value of X is 2.3 The value of Y is 3 replace word with $X Template file
输出编译指令 The value of Z is 15 Write Read Z = X * Y Z = 15 模拟代码 输出文件 iSIGHT • 模拟代码写到输出文件,iSIGHT READS输出文件
输出编译命令 • 有许多命令用于输出编译中 • 普通的输出编译命令 • 查找(find ) • 读(read ) • 提取(provide)
读(read )命令 • 读(read)命令用于从输出文件中读取数值 • 这个数值可以在编译指令中用于数学计算 • 例子 • read Z
提取(provide)命令 • 提取(provide)命令从输出文件中读取一个数值,并将它映射给一个 iSIGHT 参数 • 例子 • provide $Z
怎样连接代码(Couple Codes) • 代码连接通过过程集成( Process Integration )和文件编译器(File Parser)完成 • 过程集成(Process Integration)用来定义执行协议 • 文件编译器(File Parser)用来创建编译指令
练习 • 连接一个所有权代码到 iSIGHT • 这个代码是一个简单的飞机空气动力学分析 • 这个问题在5分钟内运行 (使用缺省的时间花费) • 这个代码返回一个 0 退出状态 (使用缺省的允许返回代码)
练习 • 创建iSIGHT 变量 • iSIGHT 输入变量 • 翼展(WingSpan);机翼面积(WingArea);机身长度(FuseLength);机身直径(FuseDia) • iSIGHT 输出变量 • SurfAreaFuse;WetArea;LoD
练习 WingSpan WingArea FuseLength FuseDia AeroIn.txt aero.exe AeroOut.txt SurfAreaFuse WetArea LoD • 模板文件—AeroInTemp.dat
练习步骤 • 开始过程集成(Process Integration) • 添加一个代码 • 输入文件名 • 开始文件编译器( File Parser) • 创建文件编译指令 • 执行应用程序 • 检验数据流 (是否是所要的输出量?)
总结 • 过程集成(Process Integration ) • 执行代码协议 (执行的文件名和路径,花费的时间,返回的代码) • 设置初始值 • 文件编译器(File Parser) • 创建和映射iSIGHT 参数到输入和输出文件 • 任务管理器(Task Manager)- 执行
附加练习 • 命令行 • 多个输入文件 • 标准输入和标准输出 • 批处理文件或 文本文件 • 简单的数组分析