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

提交評論