cfd教程gambit学习中文帮助附录_第1页
cfd教程gambit学习中文帮助附录_第2页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、GAMBIT USERS GUIDE:附录A:IF块和DO循环PAGE PAGE 4附录AIF块和DO循环A.1 概述GAMBIT允许用户使用IF块和DO循环作为一组分类文件夹命令的一部分。IF块和DO循环允许用户分类文件夹用户化目的是促进gambit模型的生成和/或网格生成。例如,用户可以利用DO循环来构造、定位和判断一个简单实体类型的多个拷贝。这个附录的如下部分描述了一般语法以及GAMBIT IF块和DO循环的使用。A.2 IF块A.2.1 一般语法GAMBIT IF块的一般语法如下:IF COND (E)Commands ELSECommands ENDIF这里E代表一个逻辑表达式,同时

2、方括号()表明ELSE和与它相关的Commands是可以选择的。(关于正确的逻辑表达式的描述,参见附录B,B.3.2部分) 当GAMBIT遇到一个IF块时,它要求计算表达式E的值,然后执行根据表达式的值是true或者false而选定的后续命令块。如下的表格描述了由GAMBIT IF块表达式的计算而导致的操作。E操作TrueGAMBIT执行存在与IF和ELSE命令之间的命令块。 如果IF块不包括ELSE命令,GAMBIT就执行IF和ENDIF命令之间整个命令块。 FalseGAMBIT跳到同一级别的下一个ELSE命令。 如果IF块不包括ELSE命令,GAMBIT就跳到ENDIF命令之后的命令。

3、注意(1):GAMBIT IF,ELSE和ENDIF指令对字体不敏感。例如,如下的命令块组成一个正确的GAMBIT IF块。if cond ($q .eq. 5)volume create sphere radius ($q*3)endif注意(2):如果你使用GAMBIT参数作为逻辑表达式E的一部分,你必须在IF块之前定义该参数。你可以通过GAMBIT Edit parameter或者分类文件夹或者Command列的命令来定义该参数。(参见4.2.3部分)。A.2.2 例子作为一个GAMBIT IF块的使用实例,要考虑以下命令块: IF COND ($a .GT. 5)volume crea

4、te sphere radius ($a/2)ELSEvolume create brick width 1 height 1 depth 1ENDIFGAMBIT将该IF块解释如下:如果参数“a”大于5,则生成一个半径2.5的球体。如果参数“a”小于等于5,则生成一个单位立方体。A.2.3 嵌套IF块GAMBIT IF块可以包含任何数量的嵌套IF块。例如,如下的结构构成了一个正确的嵌套IF块的常用用法: IF COND ()IF COND ()CommandsELSEIF COND ()CommandsELSECommandsENDIFENDIFELSEIF COND ()CommandsE

5、NDIFENDIF这里代表单独的、正确的逻辑表达式。A.3 DO循环A.3.1 一般语法任何GAMBIT DO循环的基本语法如下: DO PARA $p INIT i COND (E) INCR n commandsENDDO这里方括号()表明关键字INIT和INCR以及与它们相关的参数是可以任选的。上述的DO-循环参数定义如下。参数 定义 $p循环控制变量注意:循环控制变量必须指定一个存在的参数也就是说,一个前面已经定义过的参量。对于GAMBIT参量的定义和使用的描述(参见4.2.3部分)i当循环开始执行时为$p提供一个内部值的数学表达式。(缺省值1)E用作中止循环操作的逻辑表达式。当表达式

6、的值为时循环中止。注意:对于正确的逻辑表达式的描述,参见附录B,B.3.2部分n定义每次DO循环步长的数学表达式。(缺省值1)注意:值仅仅计算一次在DO循环初始化时注意(1):GAMBIT DO-循环指令对大小写不敏感。例如,如下的命令块组成了一个正确的DO循环 do para $x init 3 cond ($x .le. 5)volume create brick width $x height ($x*2.5)enddo注意(2):一定不要试图在DO循环中定义或更新参量。A.3.2 DO-Loop 操作当GAMBIT遇到一个DO循环时,它执行如下一系列的操作步骤操作1计算i和n2初始化$

7、p 值为i。3计算:如果的计算结果是,跳到ENDDO后面的语句如果的计算结果不是,执行DO和ENDDO之间的命令语句4以步长增加5转到的3步。A.3.3 例子作为一个GAMBIT DO循环,要考虑以下命令块: $Tmp = 2$Z = 6do para $Z init 6 cond ($Z .le. 24) incr ($Tmp*3)volume create sphere radius $Zenddo如果执行以上所示的命令块,GAMBIT生成四个半径分别为6,12,18和24的球体。A.3.4 BREAK和NEXT命令GAMBIT允许你通过两条附加命令来控制DO循环:BREAK NEXT BREAK和NEXT命令操作如下:如果GAMBIT遇到BREAK命令,它就立刻跳转到ENDDO下面的命令。如果GAMBIT遇到NEXT命令,它就会跳转到

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论