找回密码
 注册
查看: 1657|回复: 2

[分享]多相流模拟

[复制链接]
发表于 2005-10-10 17:39:46 | 显示全部楼层 |阅读模式

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

您需要 登录 才可以下载或查看,没有账号?注册

x
王巍雄——
18. 多相流模拟介绍
自然界和工程问题中会遇到大量的多相流动。物质一般具有气态、液态和固态三相,但是多相流系统中相的概念具有更为广泛的意义。在多项流动中,所谓的“相”可以定义为具有相同类别的物质,该类物质在所处的流动中具有特定的惯性响应并与流场相互作用。比如说,相同材料的固体物质颗粒如果具有不同尺寸,就可以把它们看成不同的相,因为相同尺寸粒子的集合对流场有相似的动力学响应。本章大致介绍一下Fluent中的多相流建模。第19章和第20章将会详细介绍本章所提到的内容。第20章会介绍一下融化和固化方面的内容
·18.1 多相流动模式
·18.2 多相系统的例子
·18.3 多相建模方法
·18.4 多相流模型的选择
18.1 多相流动模式
我们可以根据下面的原则对多相流分成四类:
·气-液或者液-液两相流:
o气泡流动:连续流体中的气泡或者液泡。
o液滴流动:连续气体中的离散流体液滴。
o活塞流动: 在连续流体中的大的气泡
o分层自由面流动:由明显的分界面隔开的非混合流体流动。
·气-固两相流:
o充满粒子的流动:连续气体流动中有离散的固体粒子。
o气动输运:流动模式依赖诸如固体载荷、雷诺数和粒子属性等因素。最典型的模式有沙子的流动,泥浆流,填充床,以及各向同性流。
o流化床:由一个盛有粒子的竖直圆筒构成,气体从一个分散器导入筒内。从床底不断充入的气体使得颗粒得以悬浮。改变气体的流量,就会有气泡不断的出现并穿过整个容器,从而使得颗粒在床内得到充分混合。
·液-固两相流
o泥浆流:流体中的颗粒输运。液-固两相流的基本特征不同于液体中固体颗粒的流动。在泥浆流中,Stokes数(见方程18.4-4)通常小于1。当Stokes数大于1时,流动成为流化(fluidization)了的液-固流动。
o水力运输: 在连续流体中密布着固体颗粒
o沉降运动: 在有一定高度的成有液体的容器内,初始时刻均匀散布着颗粒物质。随后,流体将会分层,在容器底部因为颗粒的不断沉降并堆积形成了淤积层,在顶部出现了澄清层,里面没有颗粒物质,在中间则是沉降层,那里的粒子仍然在沉降。在澄清层和沉降层中间,是一个清晰可辨的交界面。
·三相流 (上面各种情况的组合)
上述的各种流动模式如图18.1.1 所示:
图18.1.1 多相流动模式
18.2 多相系统的例子
18.1节给出的各流动模式对应的例子如下:
·气泡流例子:抽吸,通风,空气泵,气穴,蒸发,浮选,洗刷
·液滴流例子:抽吸,喷雾,燃烧室,低温泵,干燥机,蒸发,气冷,刷洗
·活塞流例子:管道或容器内有大尺度气泡的流动
·分层自由面流动例子: 分离器中的晃动,核反应装置中的沸腾和冷凝
·粒子负载流动例子:旋风分离器,空气分类器,洗尘器,环境尘埃流动
·风力输运例子:水泥、谷粒和金属粉末的输运
·流化床例子:流化床反应器,循环流化床
·泥浆流例子: 泥浆输运,矿物处理
·水力输运例子:矿物处理,生物医学及物理化学中的流体系统
·沉降例子:矿物处理
18.3 多相建模方法
计算流体力学的进展为深入了解多相流动提供了基础。目前有两种数值计算的方法处理多相流:欧拉-拉格朗日方法和欧拉-欧拉方法。

·18.3.1 欧拉-拉格朗日方法
·18.3.2 欧拉-欧拉方法
18.3.1 欧拉-拉格朗日方法
在Fluent中的拉格朗日离散相模型(详见第19章)遵循欧拉-拉格朗日方法。流体相被处理为连续相,直接求解时均纳维-斯托克斯方程,而离散相是通过计算流场中大量的粒子,气泡或是液滴的运动得到的。离散相和流体相之间可以有动量、质量和能量的交换。
该模型的一个基本假设是,作为离散的第二相的体积比率应很低,即便如此,较大的质量加载率(  )仍能满足。粒子或液滴运行轨迹的计算是独立的,它们被安排在流相计算的指定的间隙完成。这样的处理能较好的符合喷雾干燥,煤和液体燃料燃烧,和一些粒子负载流动,但是不适用于流-流混合物,流化床和其他第二相体积率不容忽略的情形。
18.3.2 欧拉-欧拉方法
在欧拉-欧拉方法中,不同的相被处理成互相贯穿的连续介质。由于一种相所占的体积无法再被其他相占有,故此引入相体积率(phasic volume fraction)的概念。体积率是时间和空间的连续函数,各相的体积率之和等于1。从各相的守恒方程可以推导出一组方程,这些方程对于所有的相都具有类似的形式。从实验得到的数据可以建立一些特定的关系,从而能使上述方程封闭,另外,对于小颗粒流(granular flows),则可以通过应用分子运动论的理论使方程封闭。
在FLUENT中, 共有三种欧拉-欧拉多相流模型,分别为:流体体积模型(VOF),混合物模型,以及欧拉模型。
VOF模型
所谓VOF模型(详见第20.2节),是一种在固定的欧拉网格下的表面跟踪方法。当需要得到一种或多种互不相融流体间的交界面时,可以采用这种模型。在VOF模型中,不同的流体组分共用着一套动量方程,计算时在全流场的每个计算单元内,都记录下各流体组分所占有的体积率。VOF模型的应用例子包括分层流,自由面流动,灌注,晃动,液体中大气泡的流动,水坝决堤时的水流,对喷射衰竭(jet breakup)(表面张力)的预测,以及求得任意液-气分界面的稳态或瞬时分界面。
混合物模型
混和物模型(详见第20.3节)可用于两相流或多相流(流体或颗粒)。因为在欧拉模型中,各相被处理为互相贯通的连续体,混和物模型求解的是混合物的动量方程,并通过相对速度来描述离散相。混合物模型的应用包括低负载的粒子负载流,气泡流,沉降,以及旋风分离器。混合物模型也可用于没有离散相相对速度的均匀多相流。
欧拉模型
欧拉模型(详见第20.4节)是Fluent中最复杂的多相流模型。它建立了一套包含有n个的动量方程和连续方程来求解每一相。压力项和各界面交换系数是耦合在一起的。耦合的方式则依赖于所含相的情况,颗粒流(流-固)的处理与非颗粒流(流-流)是不同的。对于颗粒流,可应用分子运动理论来求得流动特性。不同相之间的动量交换也依赖于混合物的类别。通过FLUENT的客户自定义函数(user-defined functions),你可以自己定义动量交换的计算方式。欧拉模型的应用包括气泡柱,上浮,颗粒悬浮,以及流化床。
18.4 多相流模型的选择
解决多相流问题的第一步,就是从18.1 节中挑选出最能符合实际流动的模式。在18.4.1节中,将对如何根据不同的模式,挑选恰当的模型给出最基本的原则,然后在18.4.2节中,将就以下的问题给出具体的方法:即如何给定相与相之间(包括气泡,液滴,和粒子)耦合的程度,以及如何针对不同程度的耦合情况选择恰当的模型。

·18.4.1 基本原则
·18.4.2 细节指导
18.4.1 基本原则
通常,你一旦决定了采用何种模式最能符合实际的流动,那么就可以根据以下的原则来挑选最佳的模型。更为具体的指导,包括如何选择含有气泡,液滴和粒子的流动模型可以参见第18.4.2节。
·对于体积率小于10%的气泡、液滴和粒子负载流动,采用离散相模型。具体内容参见第19章。
·对于离散相混合物或者单独的离散相体积率超出10%的气泡、液滴和粒子负载流动,采用混合物模型(详见20.3)或者欧拉模型(详见20.4)。具体采用何种模型,可参考18.4.2和20.1所述。
·对于活塞流,采用VOF模型。详见20.2。
·对于分层/自由面流动,采用VOF模型。详见20.2。
·对于气动输运,如果是均匀流动(详见20.3),则采用混合物模型;如果是粒子流(详见20.4),则采用欧拉模型。具体采用何种模型,可参考18.4.2和20.1节内容。
·对于流化床,采用欧拉模型模拟粒子流。详见20.4。
·对于泥浆流和水力输运,采用混合物模型(详见20.3)或欧拉模型(详见20.4)。具体采用何种模型,可参考18.4.2和20.1节内容。
·对于沉降,采用欧拉模型。详见20.4。
·对于更加一般的,同时包含若干种多相流模式的情况,应根据最感兴趣的流动特征,选择合适的流动模型。此时由于模型只是对部分流动特征做了较好模拟,其精度必然低于只包含单个模式的流动。
18.4.2 细节指导
对于分层流和活塞流,最直接的就是选择VOF模型,如18.4.1所述。选择其他的模型就不那么直接。一般来说,下面的一些参数可以帮助选择合适的多相流模型: 粒子的加载率,  , 和斯托克斯数, St。 (注意:这里“颗粒”一词泛指粒子,液滴和气泡)
粒子加载率的影响
粒子加载率对相之间的影响具有很大的作用。颗粒加载率定义为离散相的质量密度( d)和载体相的质量密度( c)之比:
                               (18.4.1)
物质密度比为:
                               (18.4.2)
气-固两相流中它大于1000,液-固两相流中在1左右,而气-液两相流中小于0.001。
利用这些参数,就可以估计粒子相中粒子之间的平均间隔距离。下面是由Crowe et al.给出的一种估计方法[ 42]:
                     (18.4.3)
其中  。 这些参数的信息对于决定如何来处理离散相是非常重要的。例如,对于某种气体-颗粒流动,其粒子加载率为1,那么粒子间距 就等于8;于是粒子就可以看成相互孤立的 (也就是说,粒子加载率很低)。
根据粒子加载率的不同,相之间的影响程度可以分为三类:
·对于低加载率,相之间的耦合作用是单向的;就是说,作为载体的流体介质可以通过推动和涡漩影响粒子的运动,但是粒子对流体运动却没有影响。离散相,混合物以及欧拉模型都可以很好的处理这一类问题。由于欧拉模型是最消耗资源的,故此离散相和混合物模型相对更为合适。
·对于中等的加载率,耦合作用成为双向的;就是说,流体通过推动和涡漩影响粒子运动的同时粒子反过来也通过消耗平均动量和涡漩来影响流动。离散相,混合物和欧拉模型都可以应用于这种情况,但是你需要考虑其他的一些影响因素来决定采用何种模型更为合适。可利用下文将要介绍的斯托克斯数作为判断的准则。
·对于高加载率,在双向影响的基础上还有粒子压力和由粒子引起的粘性应力的耦合(是四向的耦合)。只有欧拉模型才能正确的处理此类问题了。
斯托克斯数的重要意义
对于具有中等粒子加载率的系统,通过估计斯托克斯数的大小可以帮助你选择合适的模型。斯托克斯数可以根据粒子响应时间和系统响应时间的关系来定义:
                         (18.4.4)
其中  ,而 t s 是根据所考察系统的特征长度( L s)和特征速度( V s)来定义的 。
对于  的情况,对载流而言,粒子将具有很好的跟随性,所以三种模型(离散相,混合物和欧拉模型)都可以采用,于是你可以选择最节省资源的模型(通常为混合物模型),或者根据到其他的因素选择最为合适的。对于 的情况,粒子将独立于流场运动,此时选用离散相模型和欧拉模型比较合适。对于 的情况,三种模型又都可以采用了,可以根据情况选择最节省资源的或者最为合适的的模型。
例子
某选矿器,特征长度为1 m,特征速度为10 m/s,于是对于直径为30微米的粒子,其斯托克斯数为0.04,而对于300微米的粒子,其斯托克斯数为4.0。显然,混合物模型就不适用于后者。
某矿处理机,特征长度为0.2 m,特征速度为2 m/s,则对300微米的粒子,斯托克斯数为0.005。在此情况下,你可以选择混合物模型或者欧拉模型。(因为粒子体积率太高,采用离散相模型是不适合的,见下文所述)
其他考虑因素
牢记一点,即离散相模型只适用于低体积率的情况。但同时,也只有离散相模型才允许你指定颗粒的分布或者在多相流模型中同时加入燃烧模型。
 楼主| 发表于 2005-10-10 17:41:05 | 显示全部楼层

[分享]多相流模拟

Fluent用户界面
赵玉新(国防科技大学航天学院)
注意:本资料只用于学习心得的交流,未征得Fluent和海基公司的同意,如果涉及版权问题,请于作者联系
FLUENT包括下拉菜单,面板和对话框还包括文本命令行的界面。本章详细介绍了上述几个部分的使用方法及相应功能。
图形用户界面(GUI)
它由控制台窗口,控制面板,对话框以及图形窗口组成。下图就是典型的fluent界面。上述四个部分将在下面详细介绍。在UNIX系统中,GUI (包括颜色和字体)可以自定义以适合操作系统的环境。

Figure 1:屏幕显示的GUI各部分
控制台(Console)
FLUENT控制台是控制程序执行的主窗口。用户和控制台之间有两种交流方式:文本界面(TUI),图形界面(GUI)。控制包括终端仿真程序和菜单按钮的图形界面。

Figure 1: 控制台
终端仿真程序
终端仿真程序和MS-DOS命令提示符类似,它使你能够和TUI菜单交流。所有的文本都输出到终端仿真程序,所有的输入都从最底行开始。快捷键Control-C可以暂停正在计算的程序。它也支持控制台和其它X Window或Windows NT应用程序之间文本的复制和粘贴。下面是UNIX系统中复制和粘贴的方法:
1.鼠标左键选中要复制的东东
2.到新窗口点击中键便可粘贴
下面是在Windows NT系统中复制文本到剪贴板的方法:
1.选中文本
2.Ctrl+Insert
菜单按钮
菜单按钮用下拉菜单组织图形界面的层次,下图就是下拉菜单的外观

Figure 1:Help下拉菜单
FLUENT下拉菜单使用方法和Windows的一样。快捷方式也一样——Alt,然后下划线字母选中,ESC键退出。有些下拉菜单有快捷键,在相应的菜单后面会提示快捷键是什么,自己去找就可以了。
对话框
对话框用于完成简单的输入输出任务,比如说警告、错误和询问。对话框是临时窗口,出现时要注意,你对它作出选择之后关闭就可以做其它工作了。
下面是几种对话框
信息提示框

信息提示框告诉我们需要知道的信息,点击OK就关闭了
警告对话框

警告对话框用于警告某些潜在问题,并询问是否继续当前操作,
错误对话框

工作对话框

工作对话框显示正在进行的任务,这是一个特殊的对话框,你唯一的操作就是干掉它,否则它不需要你进行任何操作,只告诉你——等待吧!!程序结束它也自动关闭了。
问题对话框

阅读,决定之后选择就可以了
文件选择对话框

文件选择对话框并不是完全一成不变,上面的是较为常见的,在用XY绘图读入外部数据文件时的文件对话框如下:

文件选择的步骤如下:
1.找到适当的目录,两种方法:在Filter中输入路径,按回车键,要保证最后一个字符是“/” ;双击一个目录,然后子目录……,Filter按钮和双击的功能一样。注意“.”表示当前目录,“..”表示父目录
2.在文件列表中指定文件名,或者输入文件名。注意:*.dat*表示扩展名为dat的文件,只输入*表示所有文件。
3.如果你是读入多重XY-plot data文件,所选的文件将被加入到XY文件列表中 File(s)。选错了文件的话你可以点击所选错的文件然后点击Remove按钮。
4.如果你用Write Binary Files按钮选择二进制或文本文件来写case、data或者radiation文件。你可以阅读和编辑文本文件,但是它比二进制文件需要更多的存储空间,而且读写的速度较二进制文件慢
5.点击OK按钮读写特定的二进制文件,这步的捷径如下。
如果文件出现在列表中并且所读的不是XY文件,双击文件就和点击OK按钮具有相同的功能。如果是XY文件你就不能够通过双击文件来打开它,而只能将它选入文件列表中。
如果输入的是文件名,按回车键和点击OK按钮具有相同的功能
Windows NT系统的文件选择使用标准的Windows NT文件选择对话框。详细介绍可以参阅相关内容。
面板
面板用于处理复杂的输入任务。和对话框相似,面板也是一个独立的窗口,但是使用面板更像是填充一个表格。每一个面板都是独一无二的,而且使用各种类型的输入控制组成表格。
在面板的控制下输入数据后,你需要应用所改变的设置,或者取消所改变的设置。具体的形式请看下面:
l应用设置之后立刻关闭面板,这种面板有两个按钮:OK应用设置并关闭面板;Cancel关闭面板而且不做任何改变。如下图:

l另一种面板是在你应用设置后仍然不关闭面板,这是我们可以很快的做更多的设置。后处理和自适应网格中经常会出现这样的面板。按钮功能为:Apply应用设置不关闭面板,这一按钮经常也有其它的名称,比如后处理过程中该按钮的名字是Display自适应网格中这个按钮是Adapt。Close关闭面板。如下例:

所有的面板都包含Help按钮,用于显示如何使用面板的信息
面板中的各种类型输入控制如下:
Push Button

Check Button

Radio Buttons

这类按钮中,只有一个选项可以打开。
Text Entry

Integer Number Entry

一般说来用鼠标点击上下箭头,会增加或者减少1。如果结合键盘点击一次鼠标就可以增加更多的数量。用法如下表:
Key  Factor of Increase
Shift  10
Ctrl    100
Real Number Entry

可以输入实数如10, -10.538, 50000.45和5.e-4),一般都会带有相应的单位。
单选列表

许多面板响应鼠标的双击功能,在实践中多试几次就熟练了
多选列表

鼠标点击一次选上;再点击一次取消选择
下拉菜单

使用方法和Windows的一样。
标尺

可以用鼠标操作,也可以用鼠标选择之后再用键盘左右选择
图形显示窗口

Figure 1: 图形显示窗口的例子
显示选项面板可以控制图形显示的属性也可以打开另一个显示窗口。鼠标按钮面板可以用于设定鼠标在图形显示窗口点击时所执行的操作。
当为图形显示处理数据时要取消显示操作可以按Ctrl+C,已经开始画图的话就无法取消操作了。
输出图形显示窗口是Windows NT系统的特有功能,UNIX系统没有此项功能。页面设置面板也是Windows NT系统独有的功能
Windows NT系统的特有的输出图形显示窗口功能
如果你选择的是Windows NT版本的FLUENT,点击图形窗口的左上角便可以显示图形窗口系统菜单,该菜单包括常用系统命令如:move,size和close。连同系统命令一起,FLUENT 为支持打印机和剪贴板增加了三条命令:
1.复制到剪贴板:将当前图形复制到Windows的剪贴板。可以用页面设置面板改变复制的属性。图形窗口的大小影响了图形中所使用的字的大小。
2.打印:将当前图形复制到打印机。可以用页面设置面板改变打印的属性。
3.页面设置:显示页面设置面板。
Windows NT系统独有的页面设置面板功能:在图形显示窗口的system菜单中点击Page Setup..菜单,弹出页面设置面板如下:

第一个Color:允许你选择是否使用彩色图
第二个Color:选择彩色图形
Gray Scale:选择灰度比例图
Monochrome:选择黑白图
Color Quality:允许你指定图形的色彩模式
True Color:创建一个由RGB值定义的图,这假定了你的打印机或者显示器有至少65536个色彩或无限色彩。
Mapped Color:用色彩图创建图形,这对于只有256色的设备是一个不错的选择
Dithered Color:用20个或更少的色彩创建一个颤动图
Clipboard Formats:允许你选择所需格式复制到剪贴板。图形窗口的大小会影响剪贴板图形的尺寸。要得到最好的结果最好是调节图形窗口的尺寸并用Windows剪贴板查看器检查剪贴板图形。
Bitmap:图形窗口以位图形式复制
DIB Bitmap:是一个与设备有关的图形窗口位图复制
Metafile:是一个Windows 图元文件
Enhanced Metafile:是一个Windows增强图元文件
Picture Format:允许你指定光栅和矢量图
Vector:创建矢量图,这一格式在打印时有很高的清晰度,但是一些大的3D图可能会花很长时间来打印
Raster:创建光栅图,这一格式在打印时有相对较低的清晰度,但是一些大的3D图可能会花较少时间来打印
Printer Scale %:控制打印图形覆盖页面的范围,减少尺度会有效的增加图形页面的空白。
Options:包括控制图形其它属性的选项
Landscape Orientation (Printer):指定图形的方向。如果选上改选项,图形将会在前景(landscape)模式中形成,否则是在肖像(portrait)模式下形成。改选项只在输出时应用。
Reverse Foreground/Background:如果选定就会使图形的前景和背景颜色互换。这一功能可以使你复制白前景黑背景的图为黑前景白背景。
文本用户界面(TUI)
文本用户界面(TUI)使用被称为Scheme的Lisp专业用语,而且是用这一语言写成的。用户熟悉Scheme将能够使用界面的解释功能来创建自定义命令。(附注:Scheme 是 LISP 的一种方言。它不但设计非常干净,而且非常强大。它只有7种最基本的语法结构,1种数据结构,甚至连循环语句都没有,但是它却有非常强大的宏,它可以自己扩展自己的语法,自己定义出循环语句,定义出各种其它语言可以见到的数据结构,定义出类,对象,……变成一个面向对象语言对它来说只是小菜一碟。 用Scheme编程序,你可以专注于设计算法本身,而不是为语言本身的比如内存泄漏之类的事情而烦恼。所以用这种语言教学,学生可以学会“解决现实世界的问题” 而不是困惑于 “电脑自己的问题”。Scheme 是很多大学,比如 MIT 的计算机系学生首选的编程入门语言,甚至有一个丹麦高中讲授这种语言。)
文本菜单系统
文本菜单系统为程序下的程序界面提供了分级界面。因为它是基于文本的,所以你可以用标准基于菜单的工具操作它:输入可以保存在文件中,用文本编辑器修改,并可以将执行的读入。因为文本菜单系统紧密地与Scheme扩展语言结合,所以它可以很容易的形成程序来提供复杂控制和自定义函数。
菜单系统结构和UNIX操作系统的目录树很相似。当你第一次进入FLUENT,你是在根菜单下,菜单的提示符只是一个简单的补字符:“>”。
要生成子菜单和命令的列表只需键入回车:
>  
adapt/                  grid/                   surface/
display/                plot/                   view/
define/                 report/                 exit
file/                   solve/
方便起见,子菜单的名字都以“/”结尾,以区别于菜单命令。要执行一个命令,键入命令名或该命令的简写就可以。与之相似,进入子菜单,只需键入菜单名字或其简写就可以,提示符也会相应改变为当前菜单的名字。
> display
/display> set
/display/set>
要回到上一级菜单只需在命令提示中键入q或者quit。
/display/set> q 回车
/display>
你可以键入菜单全路经名直接进入到另一菜单
/display> /file
/display//file>
在上一例中,控制直接从/display转到/file而不结束根菜单,因此,当你从/file菜单退出时,控制会直接退回到/display.
/display//file> q
/display>
而且,如果你直接执行一个命令而不结束路径上的任何菜单,控制会仍然回到你调用命令时的菜单。
/display> /file start-journal jrnl
Input journal opened on file "jrnl".
/display>
文本菜单系统为菜单命令提供了在线帮助,具体请见帮助界面介绍一节。
命令的缩写
选择菜单命令你不必输入全名;你可以输入匹配该命令的缩写。匹配命令的规则如下:命令由连字符分隔的短语组成。该命令与短语的初始序列匹配。连字符的匹配是可选的。短语和它的字符串的初始序列匹配,通过输入那个字符串来匹配。
如果一个缩写匹配多于一个命令,那么具有最大匹配字符数的命令将被选择。如果不止一个命令有相同的匹配短语,那么第一个出现在菜单中的命令将被选择。
例如下面的每一个都匹配命令set-ambient-color:set-ambient-color, s-a-c, sac, 和sa。当缩写命令时,通常你的缩写会匹配不止一条的命令。在这种情况下,第一个命令将会被选择。有时候会有不正常的情况,比如说lint并不匹配lighting-interpolation,因为li匹配lights-on但是nt并不匹配interpolation。这一问题可以通过选择不同的缩写来解决,如liin或者l-int。
Scheme Evaluation
如果你在菜单提示行中输入“(”,那么所有的插入语和所有的字符串加上“)”都会传送到被估值的Scheme中,而且估计的表达式显示如下:
> (define a 1)
a
> (+ a 2 3 4)
10
别名
在菜单系统中可以定义命令的别名。就UNIX csh外壳来说别名比命令执行的优先级要高。下面的别名是在Cortex中预定义的:error, pwd, chdir, ls以及alias。
Error:显示最近Scheme错误中断中无效Scheme对象
Pwd:打印工作目录,在这个工作目录中所有的文件操作都可以进行
Chdir: 改变工作目录
Ls:列出工作目录的文件
Alias:显示当前别名的符号列表。
文本提示系统
命令需要各种变量:数,文件名,yes/no响应,字符串和列表。这些输入的统一界面是一个文本提示系统,提示包括提示字符串以及相应的用方括号括起来的选项或者用方括号括起来的默认值。
filled grids? [no]  
shrink-factor [0.1]  
line-weight [1]  
title [""]
获取提示的默认值只需要键入回车或者逗号
注意:逗号不是一个分隔符,它是默认值的分隔标志:"1,2"表示3个值,“1”是第一个提示值,第二个提示值为默认,“2”为第三个提示值。在任何提示中输入“a”会显示一个简短的帮助信息。要中断一个提示序列只需要按Control-C即可。

一般大多数的提示类型是数,即可是整数也可是实数,举例来说,有效的输入如:16, -2.4, .9e5, 和+1e-5。整数也可以是二进制,八进制和十六进制的格式。如:十进制数31可以输入为31, #b11111, #o37, 或者#x1f。In Scheme, 整数是实数的子集,所以你不需要加上小数点表明哪一个数是实数,2也是实数2.0。如果你在整数提示符中键入实数,那么小数部分会被省掉,如1.9就变成1了
布尔运算符
有些提示需要yes或no的响应。Yes或y表示同意,no或者n表示不同意。yes/no提示通常用于证实某些潜在的危险操作如:覆盖文件,不保存文件就退出,数据,网格等是否进行。 有一些提示符需要真正的布尔值(真或假),其输入分别为#t和#f.
字符串
字符串的输入需要双引号括起,如: "red"。会址标题或者绘制图例就是字符串的一个例子,字符串可以包括任何的字符,包括空格和标点。
符号
符号的输入不需要加引号。区域名,表面名以及材料名就是符号的例子。符号必须以字母开始不能包括任何的空格或逗号。
文件名
文件名只是字符串的一种,为方便起见,文件名不需要加双引号括起来。如果有些例外——文件名中有空格,那么文件名必须加双引号括起来
这样“方便”结果使得文件名提示无响应值。例如:
> (define fn "valve.ps")
fn
> hc fn
会结束fn,文件名的硬拷贝,而不是valve.ps。因为文件名提示无响应值,fn 没有机会求"valve.ps"的值,对于大多数其他的提示也是一样。
列表
FLUENT中有些函数需要目标的列表,如:数,字符串,布尔运算值等。Scheme 对象的列表是一个简单的由空白列表“’()”结束的对象序列。.每次列表提示一个单元,最后一个是空列表。这一结束列表组成了提示列表的末尾,既可能是空也可能包含任何值。为方便起见,空列表中可以输入“()”也可以输入标准格式“';()”。通常地,列表提示默认保存先前声明的列表。要修改列表,覆盖所需单元并用空列表结束进程。例如:
element(1) [()] 1
element(2) [()] 10
element(3) [()] 100
element(4) [()]  
相应的创建三个数1, 10, 和100的列表
element(1) [1]  
element(2) [10]  
element(3) [100]  
element(4) [()] 1000
element(5) [()]  
增加第四个单元。然后
element(1) [1]  
element(2) [10]  
element(3) [100] ()
只有1和10在列表中。随后输入:
element(1) [1] ,,';(11 12 13)
创建一个五元素列表:1, 10, 11, 12,和13。最后一个空列表移走所有的单元
element(1) [1] ()
赋值
所有的响应(除了文件名)在被使用之前都被Scheme解释程序赋值了。因此你可以输入任何一个有效的Scheme表达式来响应提示。例如输入一个单位矢量,某一分量为1/3 (不使用你的计算器)。
/foo> set-xy
x-component [1.0] (/ 1 3)
y-component [0.0] (sqrt (/ 8 9))
或者你可以输入一个有效函数,计算单位矢量的另一个分量
> (define (unit-y x) (sqrt (- 1.0 (* x x))))
unit-y
/foo> set-xy
x-component [1.0] (/ 1 3)
y-component [0.0] (unit-y (/ 1 3))
默认值绑定
任何提示的默认值被限制为Scheme符号"_" (下划线)以便于默认值可以形成Scheme表达式的一部分。例如,如果你想将默认值减去,你可以输入:
shrink-factor [0.8] (/ _ 3)
中断
代码的执行可以用<Control-C>停止,这时,目前的操作停止在下一个可恢复的位置。
系统命令
如果在UNIX操作系统中运行FLUENT,你可以用字符! (bang)来执行系统命令。在UNIX基础的操作系统下你可以执行系统命令。以!开始的所有字符串一直到下一行开始都会在子外壳中执行。与这些系统命令有关的任何进一步的输入必须被输入到你启动程序的窗口中,而且任何的输出也是在这个窗口中。(注意:如果你远程启动FLUENT,这些输入和输出必须是在你启动外壳(Cortex)的窗口中。
> !rm junk.*
> !vi script.rp
别名ls和pwd在工作目录中调用UNIX ls和pwd命令。别名chdir改变了程序目前的工作目录。
!ls和!pwd将会在外壳启动的目录中执行UNIX命令。屏幕输出会在启动FLUENT的窗口中,除非你使用远程启动,在远程启动中会在你启动外壳的的窗口中输出。(注意:!chdir或者!cd在子外壳中执行,所以它不会改变FLUENT或者Cortex的工作目录,因此它并不是很有用)。不带任何声明的输入chdir会将你移到控制台的父目录。
下面是控制台中输入系统命令的几个例子。输出会在启动FLUENT窗口中出现(或者远程启动程序,就会在Cortex窗口中出现)
输入的例子(在FLUENT控制台中):
> !pwd
> !ls valve.*
例子的输出(FLUENT或者Cortex启动的窗口中):
/home/cfd/run/valve
valve1.cas   valve1.msh   valve2.cas   valve2.msh
从字符串进行文本菜单输入
通常说来,当为FLUENT写入Scheme扩展函数,在函数中能够包含菜单命令是很方便的。使用ti-menu-load-string就可以实现。例如,要打开图形窗口1,使用:
(ti-menu-load-string "di ow 1")
一个Scheme循环会打开窗口0和窗口1,并在窗口0种显示网格的前一次视图,窗口1的后一个视图由下面给出:
(for-each
(lambda (window view)
   (ti-menu-load-string (format &#35;f "di ow ~a gr view rv ~a"
window view)))
';(0 1)
';(front back))
menu-load-string用使用格式函数的循环来创建字符串。这一简单的循环也可以根本就不用菜单命令来写入,但是你需要知道菜单命令执行的Scheme函数:
(for-each
(lambda (window view)
   (cx-open-window window)
   (display-grid)
   (cx-restore-view view))
';(0 1) ';(front back))
在FLUENT中,字符输入也为创建别名提供了一种简单的方法。例如:要创建显示网格的别名,你可以键入:(alias ';dg (lambda () (ti-menu-load-string "/di gr")))
那么任何时候你在菜单层中的任何地方输入dg,网格就会在被激活的窗口中显示。
命令! ti-menu-load-string在顶层菜单中估计字符的声明。当你调用ti-menu-loadstring时它会忽略你所在的任何菜单。因此,命令:
(ti-menu-load-string "open-window 1 gr")    ; incorrect usage
即使你在display/下键入它也不会工作。字符必须输入display/菜单才可能生效,如:
(ti-menu-load-string "display open-window 1 grid")
使用在线帮助
FLUENT中有一个在线帮助工具,它提供了进入程序文档的简便方法。通过图形用户界面,你有完全的用户向导和参考向导,只需用鼠标键点击即可。用户向导和参考向导显示在Help Viewer面板中,它对于多重字体和图形轮廓起重要作用,对于浏览和交叉参考的按钮及超文本链接也起重要作用。
使用GUI帮助系统
有很多进入在线帮助的办法。对于特定条目和面板来说,你可以在面板或者上下文帮助中获取参考信息。你也可以跳到参考向导,或者将用户向导打开到当前页面,并使用超文本链接以及在线目录来查找你需要的信息。
注意:参考向导作为用户向导在线帮助的最后一章,包含了每一个菜单条目和面板的描述,还对文本界面命令的相关内容有简短描述。
Windows NT用户请注意:这里所叙述的是应用于UNIX系统的在线帮助。有关于FLUENT在Windows NT系统上的在线帮助将是标准Windows NT帮助系统。要想获取有关使用Windows NT帮助的信息,在帮助下拉菜单中选择How to Use Help菜单条目。
面板帮助
要获得一个面板的帮助只需要在该面板中点击帮助按钮。Help Viewer面板将会打开解释该面板中每一条目的功能的参考向导的相关章节。在这个章节中你还会发现到用户向导相关章节的超文本链接,它讨论了如何使用面板并提供相关信息。
上下文(Context-Sensitive)帮助
如果你想知道如何或者什么时候使用某一菜单条目或面板,你可以使用上下文帮助功能。在帮助下拉菜单中选择Context-Sensitive Help条目 :Help/Context-Sensitive Help。
使用问题标定指针,在下拉菜单中选定一个条目,或者点击图形用户界面的另一部分(比如说:一个面板)。Help Viewer面板就会打开讨论该条目的用户向导的相关章节。
打开用户向导
要第一次打开用户界面或者重新打开最近查看的章节,在帮助下拉菜当中选择User';s Guide...菜单。Help/User';s Guide...。当你第一次打开用户向导时,将会给出章节的列表。每一章节都是因个超文本链接以便于你查阅该章的内容。
打开参考向导
将Help Viewer面板打开到参考向导的第一页,这一页包含了每一面板和菜单条目的信息,它们以下拉菜单的方式排列,还包含了相关文本界面的描述(可以在用户向导中点击相关的超文本链接)。要在任何时候回到总面板,简单的点击Help Viewer面板底部的Overview按钮即可。
关于帮助的帮助
你可以获取关于在线帮助的的帮助信息,方法是在帮助下拉条目中选择Using Help...菜单。Help/Using Help...。当你选择了该条目,Help Viewer面板就会打开到Using On-Line Help部分。
文本界面命令的帮助s
在GUI在线帮助中,执行比较功能的面板或者菜单条目中的部分描述了每一个文本界面命令。通过点击面板中的帮助按钮你可以知道哪一个文本命令符合特定的面板,然后在Help Viewer面板中移到下一页。文本命令也在用户向导最后的命令目录中列出。
文本命令的帮助也通过文本界面提供。详细内容请参阅文本用户界面帮助。
使用Help Viewer面板
你可以以几种不同的方法在Help Viewer 面板中存取信息。在Help Viewer面板中(Figure 1),你可以用鼠标点击所要查看的内容。

Figure 1:Help Viewer面板
超文本链接可以使你很方便得跳到另一部分。这些内容就不详细介绍了,因为任何一个熟悉Windows的人都知道它的帮助怎么用,比如:向上一级,前进,后退,书签等。
使用帮助内容面板
帮助内容菜单显示了用户向导和参考向导的列表。它通常来源于Help Viewer面板或者和Help Viewer面板一起使用为我们提供了另一种浏览用户向导和参考向导的途径。要打开帮助内容面板,请在Help Viewe面板的底部点击Contents…按钮。

Figure 1:帮助内容面板
第一次打开帮助面板它将只列出最高层(每章)的列表。要详细察看下一层的内容用鼠标点击所要查看的名字就可以了。后面有三个点的内容表示它还有下一层的分类。双击名字就可以查看相关内容,单击名字然后点击View按钮也可以查看相关内容。
版本与发布信息:点击Help/Version察看。
使用文本界面帮助
文本用户列表提供了上下文在线帮助。在文本菜单系统中,通过输入?加命令名,就会输出有关该命令的简短描述
例子:
> ?dis
display/: Enter the display menu.
你可以仅输入?进入帮助模式。在这个模式下你只需要输入命令或者菜单名就可以显示帮助信息了。输入q或者quit就可以退出帮助模式了。
例子:
> ?
[help-mode]> di
display/: Enter the display menu.
[help-mode]> pwd
pwd: &#35;[alias]
(LAMBDA ()
   (cx-send ';(system "pwd")))
[help-mode]> q
你也可以在提示行输入?获取该提示行的帮助。
例子
display/annotate
Annotation text [""] ?
Enter the text to annotate the plot with.
Annotation text [""]  
远程执行(只用于UNIX系统)
如果FLUENT已经启动但是没有版本声明(比如3d),你可以用选择解算器面板来确定解算器。File/Run...。
以这种方式启动解算器允许你在远程处理器上运行它。在默认情况下,当你键入命令启动FLUENT及相应版本,事实上是启动了Cortex (它是一个为FLUENT提供用户界面和图形窗口的程序),然后Cortex在其运行的相同处理器上启动FLUENT。当你键入启动命令但不指定版本时,只启动了Cortex。这一方法是你能够指定不同的运行解算器的版本。
远程机器运行的步骤
在远程处理器上运行FLUENT一般遵循如下步骤:
1.在远程执行下,在选择解算器面板中设定远程机器的名字(Hostname),以及拟在那个机器上的用户名(Username)和密码。
2.在选择解算器面板中的版本和选项中指定适当的解算器版本(关于该选项的更多信息请参阅启动FLUENT和启动并行版本解算器的相关章节)。
3.点击Run按钮。
如果远程机器拒绝启动解算器,你可能需要参阅下面所述的相关步骤。
在远程机器上手动启动解算器
上述第三步失败的话,你可以使用"listen"选项在阻止Cortex创建远程程序的网络安全驱动程序之外来启动FLUENT。点击Listen按钮而不是Run按钮就告诉了Cortex等待手动启动FLUENT解算器。选择这个按钮之后,你将被提示输入声明-cx host:p1:p2来启动解算器,其中的host是正在运行的host Cortex名字,p1:p2是被冒号分隔的两个代表端口的整数。这样,解算器就会在另一个系统窗口中启动。输入
fluent version -cx host:p1:p2
version为相关版本号,host和端口号被显示在FLUENT文本窗口中。
通过读入Case文件进行远程执行
如果你打算通过读入case文件来启动适当的版本,但是你希望在远程机器上启动,你可以在第一步中指定远程机器,然后点击Apply按钮。这将会保存远程执行的设定。当你指定Case文件来启动解算器时,解算器就会在指定的远程机器上运行
批处理
FLUENT可以以交互式人机界面运行,从屏幕中输入,并输出到屏幕。它也可以以批处理或者后台模式运行,此时输入从文件中获得,输出保存在文件中。一般说来,在问题设定、初始计算以及后处理时使用交互模式。当你打算大量的迭代时,你可能就希望FLUENT已批处理模式或者后台模式运行了。这使得计算机资源能够以重要性为顺序安排或处理,使你能够用文件控制(在计算过程中你就不必介入了),并将计算的历史记录(残数)输出到文件。FLUENT以批处理模式运行依赖于你的操作系统,下面这节介绍了一下UNIX系统的后台处理。
UNIX系统的后台处理
要在UNIX系统的C-shell中后台运行FLUENT,请在系统层的提示行中键入下面的命令:
fluent -g < inputfile >&outputfile&
或者在Bourne/Korn-shell中,键入
fluent -g < inputfile > outputfile 2>&1&
在这些例子中
l你键入的fluent是用来交互执行FLUENT的。
l-g表示没有图形用户界面或者图形窗口。
linputfile是FLUENT命令文件,该文件记录了你在交互模式下需要输入的内容。
loutputfile是后台工作创建的文件。它包括了FLUENT正常输出时,将要输出到屏幕的内容(如:菜单提示和残数报告)。
l&告诉UNIX系统在后台执行任务,并将所有的标准系统错误(如果有的话)输出到文件。
文件“inputfile”可以是先前FLUENT进程的日志文件,也可以是你用文本编辑器编辑的文件。在这两种情况下,文件必须仅由文本界面命令组成(因为在批处理过程中图形用户界面已经被禁用了)。下面是一个典型的输入文件:
rc example.cas
solve/init/init
it 50
wd example50.dat
it 50
wd example100.dat
exit
这一文件读入了一个case文件example.cas,对解进行了初始化并在两组中共迭代了100步。最后一行结束了进程。注意:这一输入文件使用了读写case和data文件的标准别名来读写case和data文件与迭代(rc是file/read-case的别名,wd是file/write-data的别名)。这些预定义的别名允许你执行常用命令而不必输入对应的文本菜单。一般说来,FLUENT假定输入开始于顶层文本菜单,所以如果你使用没有别名的文本命令,你必须保证键入命令的全部名字(比如:solve/init/init).
下面是提交批处理命令的另一种方法,这一方法的优点在于,输出的文件包含了输入文件的命令记录。具体命令如下:
fluent -g -i inputfile >&outputfile&
退出程序:点击文件菜单中的Exit选项,如果还有未保存的东西,你会收到一个警告。这和一般的Windows程序是一样的。
发表于 2005-10-11 11:43:39 | 显示全部楼层

[分享]多相流模拟

多谢指点!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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