文档库 最新最全的文档下载
当前位置:文档库 › fluent并行

fluent并行

fluent并行
fluent并行

28. 并行处理

Fluent支持并行计算,且提供检查和修改并行配置工具。你可用一个专用并行机(如多处理器工作站)或通过工作平台的网络运行Fluent。下面介绍Fluent 并行计算的特点。

28.1 并行计算简介

Fluent并行计算就是利用多个计算节点(处理器)同时进行计算。并行计算可将网格分割成多个子域,子域的数量是计算节点的整数倍(如8个子域可对应于1、2、4、8个计算节点)。每个子域(或子域的集合)就会“居住”在不同的计算节点上。它有可能是并行机的计算节点,或是运行在多个CPU工作平台上的程序,或是运行在用网络连接的不同工作平台(UNIX平台或是Windows平台)上的程序。计算信息传输率的增加将导致并行计算效率的降低,因此在作并行计算时选择求解问题很重要。

推荐运行并行Fluent的操作步骤如下:

1.开启平行求解器,选择计算节点数,详见28.2和28.3节。

2.读入case文件,让Fluent自动将网格分割为几个子域。最好是在建立

问题之后分割,因为这种分割和计算的模型有关(象非等形接触面、滑移网格、shell-conduction encapsulation的自适应)。如果你的case文件

中包含滑移网格,或是在计算过程中要对非等形接触面进行修改,那就

得用串行求解器进行分割。

还有其他的方法进行分割,如在串行或并行求解器上进行手工分割。

3.仔细检查分割区域,如必要再重新分割,详见28.

4.5节如何检查分割区

域。

4.进行计算,详见28.5节如何检查和提高并行计算。

28.2 开启并行求解器

开启Fluent并行求解器的方法依赖于操作平台是专用并行机还是工作站。

28.2.1 在UNIX系统下开启并行求解器

可以在装有UNIX系统的专用并行机或工作平台网络上运行Fluent,如何运行如下:

在多处理器UNIX机上运行

Figure 28.2.1: Select Solver控制面板

在专用并行机(多处理器工作平台或大型并行机)运行Fluent,键入运行命令,点击Fluent中File Run...,用Select Solver(图28.2.1)控制面板设定并行架构和求解器信息。

1.在Version框里,点击3D和Double Precision来选择所求解问题是

3D还是2D问题,所采用精度是单精度还是双精度,然后点击Parallel选项。

2.在Options框里,在Communicator下拉菜单中选择所要用的信息传

输库。推荐选用Default库,因为它可以为并行机提供最全面的并行操作。

这里还包含Vendor MPI和Shared Memory MPI (MPICH)。Vendor MPI 选用被机器硬件优化的信息传输库。如果机器上的硬件支持并行工具包,当选用Default时,Fluent会自动检测它。Shared Memory MPI (MPICH)选用MPICH信息传输库(MPI公共域)。

3.在Processes上选择并行计算的CPU数。

4.点击Run按钮就可以进行并行计算了,一旦求解器开始运行,就不需要

任何其他的设备了。

如果你想利用命令开始并行计算,可键入如下命令:

fluent version -t n [-p comm ] [-load host ] [-path path ]

其中version可选择2d、3d、2ddp和3ddp,n指的是CPU数。其他的根据需要使用,使用时根据方括号提示的信息写(写时不包括方括号)。comm指的是并行传输库的名称,host指的是连接计算节点的主机(默认的是你使用的主机)名,path指的是Fluent.Inc安装的路径。

!!一般,只有你想不用默认的传输库时才需要设置-p comm。

专用并行机上的传输装置和与它相关的传输库列表如下:

vmpi vendor MPI

smpi shared memory MPI (MPICH)

net socket

在UNIX工作平台上运行

在UNIX工作平台网络上运行Fluent,键入运行命令,点击Fluent中File Run...,用Select Solver(图28.2.1)控制面板设定并行架构和求解器信息。

1.在Version框里,点击3D和Double Precision来选择所求解问题是

3D还是2D问题,所采用精度是单精度还是双精度,然后点击Parallel选项。

2.在Options框里,在Communicator下拉菜单中选择Socket信息传输

库。

!!当起用并行网络版是,必须选择Communicator下拉菜单的Socket,除非Vendor MPI支持集成。如果选用Default时,就会起用一个MPI 并行版本,那就不能生成附加计算节点。

3.在Processes上设置初始并行计算节点数。可先从1或0个节点开始,

后面再生成其他节点,详见28.3.1节。

4.(可选择)在Hosts File键入包含机器列表的文件的名字。如果

Processes被设为0,Fluent会为文件中列出的每一台机器产生一个节点。

5.点击Run按钮就可以进行并行计算了。

如果你想利用命令开始网络并行计算,可键入如下命令:

fluent version–t1 –pnet(用socket传输装置)

fluent version–t1 –pnmpi(用网络MPI传输装置)

这样就可以在工作平台上的某个计算节点上开启求解器了,然后用Network Configuration控制面板添加远程工作平台上的计算节点,详见28.3.1节。

如果键入如下命令:

fluent version–t0 –pnet [-cnf= hostsfile](用socket传输装置)

fluent version–t1 –pnmpi[-cnf= hostsfile] (用网络MPI传输装置)

这样就可以开启远程机器上的计算节点的控制程序。如果设置了-cnf= hostsfile,则在hostsfile文件中列出的每个机器都被设为一个计算节点,详见28.3.1节。

28.2.2在Windows系统下开启并行求解器

可以在装有Windows系统的专用并行机或网络Windows平台上运行Fluent。

在多处理器Windows机上运行

在Windows系统下,可通过MS-DOS窗口开启Fluent专用并行版本。如在x处理器上开启并行版本,可键入

fluent version–t x

在提示命令下,将version替换为求解器版本(2d、3d、2dpp、3ddp),将x 替换为处理器的数量(如fluent 3d –t3是在3台处理器上运行3D版本)。如果Fluent命令不被识别,1.5.3节介绍了如何修改用户的环境变量。

在Windows工作平台上运行

有两种方法在Windows工作平台网络上运行Fluent:一种是用RSHD传输装置软件,另外一种是采用硬件支持的信息传输接口(VMPI)。参考Windows并行安装说明书来安装。启动说明书是在假定机器已经装了必要的软件(遵照安装说明书安装)前提下的。

启动基于RSHD的Fluent并行版本

如果你的机器是采用RSHD软件进行网络传输的,在命令提示符中键入:

fluent version -pnet [-path sharename ] [-cnf= hostfile ] -t nprocs version必须用你所运行的Fluent版本(2d、3d、2ddp、3ddp)代替。

●-path sharename是用通用命名标准设定Fluent.Inc路径的网络共享名。

只有你不是在安装Fluent的那台机器上计算才进行这项操作,如果是在同一台机器上进行计算就不必键入这项信息。例如,Fluent是安装在

computer1上,就将sharename用共享路径\\computer1\Fluent.Inc代替。

●-cnf= hostfile指定所有你要运行并行工作的计算机列表的文件。如果这个

文件不在系统默认的路径下,就要给出它的全路径。用Notepad类文本编辑器生成hostfile,仅有的要求就是文件名中不能含有空格,如hosts.txt

是对的,而my hosts.txt不行。这个hostfile要包含如下内容:

computer1 如(node01)

computer2

!!列表中的第一个计算机必须是你所使用的计算机。

如果网络上的计算机是多处理器,可将它在列表中多写几次。例如,computer1有两个CPU,在hosts.txt中就要将computer1列两次,如下:

computer1

computer1

computer2

如果你没有用-cnf选项,Fluent会在命令栏里进行nprocs操作。然后就可以用Fluent里Network Configuration控制面板在工作站上引入交互式计算节点。

●-t nprocs设置所用节点数。如果-cnf被选用,hostfile就会自行选择那几

台计算机用于并行工作。例如,hostfile里列有10台计算机,而你只想用其中的5个节点进行计算,就可以将nprocs设为5(即-t5),Fluent就会用hostfile中列出的前5台计算机工作。可用Network Configuration控制面板杀掉进程或是引入其他节点,详见28.3节。

例子:对一个基于RSHD的3D问题,启用名字为hosts.txt的hostfile中前3台计算机进行并行计算的完整命令是:

fluent 3d -pnet -cnf=hosts.txt -path\\computer1\fluent.inc -t3

启动基于Vendor-MPI的Fluent并行版本

如果你的机器是采用硬件支持的MPI软件进行网络传输的,在命令提示符中键入:

fluent version–pvmpi [-path sharename ] [-cnf= hostfile ] -t nprocs

各选项的含义与上节中相同,但要注意以下两点:

●hostfile是必须的。当使用MPI软件时不能用Network Configuration控

制面板为工作站引入计算节点(注意:列表中的第一个计算机必须是你所使用的计算机)。

●当使用MPI软件时不能用Network Configuration控制面板杀掉进程或

是引入新的计算节点。

例子:对一个基于Vendor-MPI的3D问题,启用名字为hosts.txt的hostfile 中前3台计算机进行并行计算的完整命令是:

fluent 3d –pvmpi -cnf=hosts.txt -path\\computer1\fluent.inc -t3

28.3使用并行网络工作平台

可利用在网络上连接的工作平台引入(杀掉)计算节点来形成一个虚拟并行机。即使一个工作平台仅有一个CPU,也允许有多个计算节点共同存在。

28.3.1 配置网络

若想将计算节点引入到几台机器上,或是对当前网络配置进行一些修改(如当启动求解器时发现主机上引入了太多的计算节点),可通过点击Parallel Network Configure...打开Network Configuration控制面板(见图28.3.1)来设置。

Figure 28.3.1:Network Configuration控制面板

网络结构

计算节点的标签从0开始顺序增加。除计算节点外,还有一个主机节点。Fluent启动时主机节点也自动启动,而退出Fluent时它也随之被关闭,在Fluent 运行时它不能被关掉。而计算节点随时都可以关闭,节点0除外,因为它是最后一个计算节点,主机总是引入节点0,而节点0引入所有其他节点。

引入计算节点的步骤

引入计算节点的基本步骤如下:

1.在Available Hosts列表中选取要引入节点的主机。如果所需要的机器

未被列出,可在Host Entry里手工增加一个主机,或是从host database 中复制所需要的主机(见28.3.2节)。

2.在Spawn Count里为每个被选主机设置计算节点数。

3.点击Spawn按钮,新的节点就会被引入,并被添加到Spawned

Compute Nodes列表中。

其他的和网络配置有关的用途在下面介绍:

手动增加主机

在Network Configuration控制面板上的Available Hosts列表里手动增加一个主机,可在Host Entry下的Hostname里键入远端机器的网络名,在username里键入机器的注册名(除非所有的帐户都是相同的注册名,这种情况不需要指定username),然后点击Add按钮,这个被指定的主机就被加到了Available Hosts列表里。

删除主机

在Network Configuration控制面板上的Available Hosts列表里删除一个主机,选择这个主机,点击Delete按钮,这个主机名就被从Available Hosts 列表里删除了(但主机数据库不受影响,见28.3.2节)。

杀掉计算节点

如果引入了一个不需要的计算节点,要杀掉它,可在Spawned Compute Nodes列表中选中它,然后点击Kill按钮即可。

!!注意:计算节点0只有当它是最后一个计算节点时才能被杀掉。

保存Hosts文件

如果已经编辑了一组Available Hosts列表,还想在另一个进程中使用它,可将此组列表中所有信息存为一个hosts文件。点击Save...按钮,会弹出Select File对话框,键入文件名,执行保存。当你想用时,可将此文件载入主机数据库(见28.3.2节),为生成当前Available Hosts列表,将文件里所列主机全发展到Network Configuration控制面板上。

节点引入时通常出现的问题

引入进程时系统会尝试和新节点建立连接,但50秒后系统未从新节点获取回应,它就会认为这次引入是不成功的。如果远程计算机不能找到可识别的Fluent,就会出现这种情况。若想测试在引入新机器时是否生成新节点,可在所引入机器上的DOS窗口运行如下命令

rsh [-l username ] hostname fluent -t0 -v

hostnam是想引入新节点的机器的网络名,username是被hostnam指定的远程机器的注册名。

!!如果所有帐户都是相同的注册名,这种情况不需指定username(方括号内的-l username不总需要被设置,而键入注册名时不含有方括号)。另外注意,在某些系统下,DOS命令rsh要用remsh代替。

引入节点失败的几点原因:

注册不正确。机器引入新节点必须能rsh到新进程执行的机器上,不然引入就失败。要成功rsh有好几种方法,可求助于系统管理员。

Fluent不被识别。成功rsh到远程机器,但在远程机器上却无法找到Fluent 的路径,这时可用csh命令,将Fluent的路径加到.cshrc文件的路径变量里。如果这样还是失败,那就在引入新节点之前用parallel/network/path命令直接设置Fluent.Inc安装的路径。

28.3.2 主机数据库

建立工作平台的并行网络时,很容易生成局域网机器列表(“hosts file”),将包含这些机器名的文件加载到主机数据库,然后点击Parallel Network Database...(或点击Network Configuration控制面板上的Database...按钮),利用28.3.2图示的Hosts Database控制面板,在工作平台上选择那些组成并行配置(或网络)的主机。

Figure 28.3.2: Hosts Database控制面板

如果主机文件fluent.hosts或.fluent.hosts在根目录里,它里面的内容将在程序启动时自动加载到主机数据库里,否则主机数据库为空,直到读入一个主机文件。

读主机文件

如已有包含局域网内机器列表的主机文件,可点击Load...按钮,在弹出Select File对话框里选中此文件,将其加载到Hosts Database控制面板里。当文件被读入之后,主机名字就会被显式在Hosts列表中(Fluent自动添加每台可识别机器的IP地址,如果某台机器不在当前局域网内,它将被标以unknown)。

将主机复制到Network Configuration控制面板

若想将Hosts Database控制面板内的Hosts复制到Network Configuration控制面板中Available Hosts列表里,选择列表中所需复制的名字,点击按钮,被选中的主机就会被添加到你想引入节点机器的Available Hosts 列表中。

28.3.3 检测网络连通性

对任何计算节点,都可以查看如下网络连通性信息:主机名、体系结构、操作ID、被选节点ID以及所有被连接的计算机。被选节点的ID用星号标识。

Fluent主进程的ID总是主机,计算节点则从node-0开始按顺序排列,所有计算节点都被连接在一起,计算节点0被连接到主进程。

为了获得某计算节点的连通性信息,可点击Parallel Show Connectivity...,打开Parallel Connectivity控制面板(图28.3.3)

Figure 28.3.3: Parallel Connectivity控制面板

在Compute Node区域选择想要了解连通性信息的计算节点数,然后点Print按钮,例如,节点0的输出信息如下所示:

--------------------------------------------------------------

ID Hostname O.S. PID Mach ID HW ID Name

--------------------------------------------------------------

node-2 fili irix 16729 2 11 Fluent Node

node-1 bofur irix 16182 1 10 Fluent Node

host balin sunos 5845 0 7 Fluent Host

node-0* balin sunos 5864 0 -1 Fluent Node

O.S.指体系结构,PID是进程ID数,Mach ID是计算节点ID,HW ID是交换机的标识符。

也可以在Network Configuration控制面板里查看某个计算节点的连通性,方法是在Spawned Compute Nodes列表中选择此节点,然后点Connectivity 按钮。如果没有选中Spawned Compute Nodes里的任何节点而点了Connectivity按钮,Network Configuration控制面板将重新被打开,再按照上述方法作就行了。如果选中Spawned Compute Nodes里的两个以上节点,点Connectivity按钮,可显式每个节点的连通性信息。

28.4 分割网格

28.4.1 网格分割的一般方法

在用Fluent的并行求解器时,需要将网格细分割为几组单元,以便在分离处理器上求解(见图28.4.1)。将未分割的网格读入并行求解器里,可用系统默认的分割原则(推荐使用,详见28.4.2节),还可以在连续求解器里或将mesh文件读入并行求解器后自己分割(详见28.4.3节)。上述任一情况可用的分割方法在28.4.4节介绍。在建立问题(定义模型、边界条件等)之前或之后分割网格都可以,不过,由于某些模型的特点(象非等形接触面、滑移网格、shell-conduction encapsulation的自适应),最好是在建立问题后。

!!如果case文件含有滑移网格或非等形接触面,要在计算过程中进行自适应,因此要用连续求解器分割,详见28.4.2和28.4.3节。

值得注意的是计算节点间的相关单元的分布在网格自适应时要保持不变,除非是非等形接触面,这样在自适应后就不必重新分割了,详见28.4.6节。

若在网格分割前用连续求解器建立问题,用于此项工作的计算机必须有足够大的内存来读入网格。如果网格太大,不能读进连续求解器,可将未分割的网格直接读入并行求解器里(使用所有被定义主机的内存),然后让并行机自动分割。在这种情况下,你将在做一个初步网格分割后建立问题。如果必要可以手工再重新分割一次。在28.4.2节和28.4.3节介绍了详细情况和限制条件,28.4.5节将介绍如何检测网格分割。

Figure 28.4.1:网格分割

28.4.2 自动分割网格

在将case文件读入并行求解器之前选用两分法或是其他网格分割方法来自动分割网格。对一些方法,可预览来确定是否为最佳的网格分割,28.4.4节介绍Fluent里可用的网格分割方法。

注意case文件中含有滑移网格或非等形接触面,在计算过程中要自适应,则需要在连续求解器中分割此文件,然后再把它读入并行求解器,在Auto Partition Grid控制面板上选择Case File选项。

并行求解器上自动网格分割的步骤如下:

1.(任选)在菜单栏上点Parallel Auto Partition...,弹出Auto Partition

Grid控制面板(图28.4.2),设置分割参数。

Figure 28.4.2: Auto Partition Grid控制面板

读入mesh文件或case文件时如果没有获取分割信息,那就保持Case File选项开启,Fluent会用Method下拉菜单里的方法分割网格。

设置分割方法和相关选项的步骤如下:

a)关闭Case File选项,就可选择控制面板上的其他选项。

b)在Method下拉菜单里选取两分方法,此方法在28.4.4节详细介绍。

c)可为每个单元分别选取不同的网格分割方法,也可以利用Across

Zones让网格分割穿过区域边界。推荐不采用对单元进行单独分割

(关闭Across Zones按钮),除非是溶解过程需要不同区域上的单元

输出不同的计算信息(主区域包括固体和流体区域)。

d)若选取Principal Axes或Cartesian Axes方法,可在实际分割之

前对不同两分方向进行预测试以提高分割性能。用预检则开启

Pre-Test选项,见28.4.4节。

e)点击OK。

如果case文件已经网格分割,且网格分割的数量和计算节点数一样,那就可以在Auto Partition Grid控制面板上默认选择Case File选项,这会让Fluent在case文件中应用分割。

2.读入case文件,方法是在菜单栏上选File Read Case...。

自动分割过程的报告

当网格自动分割时,有关分割进程的信息就会被显示在控制窗口上。如果想需要额外信息,可在分割完成后,选Parallel Partition...,弹出Partition Grid 控制面板,打印报告。

在Partition Grid控制面板上点击Print Active Partitions或Print Stored Partitions时,Fluent会在控制窗口里显示分割ID、单元数、面数、接触面数和每个活动或已储存分割的接触面曲率,还可以显示最小和最大的单元、面、接触面和面曲率变量,详见28.4.5节。安装28.4.5节介绍的方法利用图形查看分割状况。

28.4.3 手动分割网格

在网格分割时推荐使用并行求解器上的自动分割,也可在连续求解器或并行求解器上手动分割。在自动或手动分割后,可以检查生成的分割(见28.4.5节),如果必要可重新分割。在连续或并行求解器里,利用Partition Grid也可同样作。已分割的网格也可毫无损失的在连续求解器里使用。

分割网格的指导方针

手动分割网格时推荐采用如下步骤:

1.用默认的两分方法(Principal Axes)和优化方法(Smooth)分割网格。

2.检查分割统计表(见28.4.5节)。在开启负载平衡(单元变化)时,主要是

使球形接触面曲率和接触面曲率变量最小。如果统计表不能使用,可尝

试其他的两分方法。

3.一旦确定问题所采用的最佳两分方法,如需要就可以开启Pre-Test提

高分割质量。

4.如需要可用Merge优化提高分割质量

下面是手动分割的说明。

用Partition Grid控制面板

分割网格,需要选择生成网格分割的两分方法、设置分割数、选择区域和记录、以及所使用的优化方法等。对某些方法可采用预测试的方法以选择最好的两分方法。一旦在Partition Grid控制面板上设置了所有你都满意的参数,点Partition按钮,将网格用所选的两分方法和优化方法分割成所需要的数量。

在菜单栏上选Parallel Partition...,弹出Partition Grid控制面板(并行

求解器见图28.4.3,连续求解器见图28.4.4),可在上面设置所有相关的输入参数。

Figure 28.4.3:并行求解器上的Partition Grid控制面板

Figure 28.4.4:连续求解器上的Partition Grid控制面板

1.在Method下拉菜单里选取两分方法,此方法在28.4.4节详细介绍。

2.在Number里设置你想要分割的整数值。可以用计数箭头来增加或减小

这个值,也可直接键入某整数值。此数值必须是整数,且是并行计算处理器数的倍数。

3.可为每个单元分别选取不同的网格分割方法,也可以利用Across

Zones让网格分割穿过区域边界。推荐不采用对单元进行单独分割(关闭Across Zones按钮),除非是溶解过程需要不同区域上的单元输出不同的计算信息(主区域包括固体和流体区域)。

4.如果你想单元将mesh里所有的非等形网格接触面都围绕起来,并且在

计算的过程中始终在同一个分割里,可选择Encapsulate Grid

Interfaces。当有滑移或网格被调整时,网格接触面必须被压缩,则当前网格为滑移网格时,Encapsulate Grid Interfaces选项总是被选中的。如果case文件中含有在计算过程中自适应的非等形接触面,就不得不在连续求解器中选择Encapsulate Grid Interfaces和Encapsulate for Adaption选项来分割它。

5.如果在连续求解器中选择Encapsulate Grid Interfaces选项,

Encapsulate for Adaption选项也被选中了。当选中此选项时,单元附加层将被压缩,因此并行时就不必进行单元传递了。

6.可用Optimizations下的选项来激活和控制想采用的优化方法。通过

选中Do按钮来激活Merge和Smooth格式。可为每个格式选择

Iterations数。当遇到合适的标准或迭代最大数已被执行完时就会应用每一个优化格式。若Iterations数为0,则一完成就会应用优化格式,而没有迭代最大数的限制。

7.若选取Principal Axes或Cartesian Axes方法,可在实际分割之前

对不同两分方向进行预测试以提高分割性能。用预检则开启Pre-Test

选项,见28.4.4节。

8.在Zones和Registers列表里,选择所想分割的分区和记录表。大多

数情况下,选择所有的Zones (默认)分割整个区域,详细说明在下面介

绍。

9.点击Partition按钮分割网格。

10.若感觉新的分割比先前的(网格已被分割)更好,可点击Use Stored

Partitions按钮激活上次存储的单元分割(保存一个case文件就会存储

最后一次进行的单元分割),用于当前的计算中。

用区域或记录表分割

对单元分区和记录表的分割约束性可使你对一个域的子域采用不同的分割方法。例如,你的几何形状包含一个连接到矩形管道的圆柱实体,则可以用Cylindrical Axes方法分割圆柱体,用Cartesian Axes方法分割矩形管道。

如果圆柱体和矩形管道位于不同的单元区域,可一次选一个作所需的分割。如果它们不是在两个不同的单元区域,就可以用函数为每个区域标记调整后的单元,生成一个单元记录表(基本上是一个单元列表)。这些函数根据物理位置、单元体积、某变量的梯度和等值、及其他参数标记单元。第23章介绍了如何进行标记,23.9节提供用不同的记录表生成新的记录表的方法,一旦生成就可用上述方法进行分割了。

!!使用Fluent的并行版本或分割方法选用Metis时不能使用分区和记录表分割网格。

分割报告

若网格已被分割,和分割程序有关的信息就会显示在控制窗口里。默认情况下,求解器打印产生的分割数,单元、面、接触面和面曲率变量的最小值和最大值。如果将Verbosity从默认的1增加到2,所用分割方法,分割ID,单元、面和接触面的数量,以及每个分割上的接触面的曲率也会显示在控制窗口上。如果将Verbosity减小到0,仅有产生的分割数和分割所需时间被显示。

若分割完成后也可以将一部分信息显示出来。在并行求解器上点Print Active Partitions或Print Stored Partitions,Fluent就会在控制窗口上显示分割ID,单元、面和接触面的数量,以及每个活动或存储的分割上的接触面的曲率。在连续求解器上点Print Partitions,也可获取相同的信息。

!!再次提醒:若感觉新的分割比先前的(网格已被分割)更好,可点击Use Stored Partitions按钮激活上次存储的单元分割(保存一个case文件就会存储最后一次进行的单元分割),用于当前的计算中。

重新设置分割参数

如果想修改所设置的分割参数,通过点Default按钮就会返回到Fluent默认的设置,Default按钮被点后就会变为Reset按钮。Reset可使你返回到最近保存的设置(象点Default按钮前设置的数值),被点后就会变为Default按钮

28.4.4 网格分割方法

并行程序的网格分割有三个主要目标:

●生成等数量单元的网格分割。

●使分割的接触面数最小――减小分割边界面积。

●使分割的邻域数最小。

平衡分割(平衡单元数)可确保每个处理器有相同的负载,分割被同时传输。既然分割间的传输是强烈依赖于时间的,那使分割的接触面数最小就可以减少数据交换的时间。使分割的邻域数最小,可减少网络繁忙的机会,而且在那些初始信息传输比较长信息传输更耗时间的机器来说尤为重要,特别是对依靠网络连接的工作站来说非常重要。

Fluent里的分割格式是采用两分的原则来进行的,但不象其他格式那样需要分割数,它对分割数没有限制,对每个处理器都可以产生相同分割数(也就是分割总数是处理器数量的倍数)。

两分法

网格采用两分法则进行分割。被选用的法则被用于父域,然后利用递归应用于子域。例如,将网格分割成四部分,求解器将整个区域(父域)对分为两个子域,然后对每个子域进行相同的分割,总共分割为四部分。若将网格分割成三部分,求解器先将父域分成两部分――一个大概是另一个的两倍大――然后再将较大子域两分,这样总共就分为三部分。

网格可用下列的任一方法进行分割。最有效的方法是和求解问题有关的,所以可试用不同的方法,直至某一个适合所求解问题,28.4.3节介绍了分割策略。

Cartesian Axes:两分基于笛卡儿坐标系的单元区域(见图28.4.5)。它两分父域,所有子域都垂直于活动区域最长轴方向。因此也被称为坐标两分。Cartesian Strip:采用坐标两分,但严格垂直于父域最长轴方向(见图28.4.6)。

可用这种方法使分割邻域数最小。

Cartesian X-, Y-, Z- Coordinate:两分基于所选笛卡儿坐标系的区域。它两分父域,所有子域都垂直于指定方向(见图28.4.6)。

Cartesian R Axes:两分区域,使得从单元中心到笛卡儿轴(x,y或z)的径向距离最短,这样开始接触面积最小。此种方法限用于3D情况。

Cartesian RX-, RY-, RZ-Coordinate:两分区域,使得从单元中心到所选笛卡儿轴(x,y或z)的径向距离最短。此种方法限用于3D情况。

Cylindrical Axes:两分基于单元柱坐标系的区域,此方法限用于3D情况。

Cylindrical R-, Theta-, Z-Coordinate:两分基于所选柱坐标系的区域,此方法限用3D情况。

Metis:用METIS软件包分割不规则图形,这是由Army HPC研究中心和Minnesota 大学的Karypis和Kumar提出的。它采用多级近似将精细图形上的点和边结合形成一副粗糙的图形,这副粗糙图被分割,再回复到原始图形。在使变粗糙和恢复的过程中,此方法被用于高质量分割。

!!值得注意的是用socket版本(-pnet)时,不能用METIS进行分割。在这种情况下,可用下面的分割滤波器进行METIS分割

Polar Axes:两分基于单元极坐标系的区域(见图28.4.9),此方法限用于2D

情况。

Polar R-Coordinate, Polar Theta-Coordinate:两分基于所选极坐标系的区域(见图28.4.9),此方法限用于2D情况。

Principal Axes:两分基于主轴坐标系的区域(见图28.4.7)。若主轴是笛卡儿轴时,即是Cartesian bisection。此原则也要考虑力矩、惯性矩或惯性力矩。

它是Fluent里默认的两分方法。

Principal Strip:采用力矩两分,但严格垂直于父域最长主轴方向(见图28.4.6)。

可用这种方法使分割邻域数最小。

Principal X-, Y-, Z-Coordinate:两分基于所选主坐标系的区域(见图28.4.8)。

Spherical Axes:两分基于单元球坐标系的区域,此方法限用于3D情况。

Spherical Rho-, Theta-, Phi-Coordinate:两分基于球坐标系的区域,此方法限用于3D情况。

Figure 28.4.5:用Cartesian Axes方法产生的分割

Figure 28.4.6:用Cartesian Strip或Cartesian X-Coordinate方法产生的分

Figure 28.4.7:用Principal Axes方法产生的分割

Figure 28.4.8:用Principal Strip或Principal X-Coordinate方法产生的分割

(完整版)《FLUENT中文手册(简化版)》

FLUENT中文手册(简化版) 本手册介绍FLUENT的使用方法,并附带了相关的算例。下面是本教程各部分各章节的简略概括。 第一部分: ?开始使用:描述了FLUENT的计算能力以及它与其它程序的接口。介绍了如何对具体的应用选择适当的解形式,并且概述了问题解决的大致步骤。在本章中给出了一个简单的算例。 ?使用界面:描述用户界面、文本界面以及在线帮助的使用方法,还有远程处理与批处理的一些方法。?读写文件:描述了FLUENT可以读写的文件以及硬拷贝文件。 ?单位系统:描述了如何使用FLUENT所提供的标准与自定义单位系统。 ?使用网格:描述了各种计算网格来源,并解释了如何获取关于网格的诊断信息,以及通过尺度化(scale)、分区(partition)等方法对网格的修改。还描述了非一致(nonconformal)网格的使用. ?边界条件:描述了FLUENT所提供的各种类型边界条件和源项,如何使用它们,如何定义它们等 ?物理特性:描述了如何定义流体的物理特性与方程。FLUENT采用这些信息来处理你的输入信息。 第二部分: ?基本物理模型:描述了计算流动和传热所用的物理模型(包括自然对流、周期流、热传导、swirling、旋转流、可压流、无粘流以及时间相关流)及其使用方法,还有自定义标量的信息。 ?湍流模型:描述了FLUENT的湍流模型以及使用条件。 ?辐射模型:描述了FLUENT的热辐射模型以及使用条件。 ?化学组分输运和反应流:描述了化学组分输运和反应流的模型及其使用方法,并详细叙述了prePDF 的使用方法。 ?污染形成模型:描述了NOx和烟尘的形成的模型,以及这些模型的使用方法。 第三部分: ?相变模拟:描述了FLUENT的相变模型及其使用方法。 ?离散相变模型:描述了FLUENT的离散相变模型及其使用方法。 ?多相流模型:描述了FLUENT的多相流模型及其使用方法。 ?移动坐标系下的流动:描述单一旋转坐标系、多重移动坐标系、以及滑动网格的使用方法。 ?解法器(solver)的使用:描述了如何使用FLUENT的解法器。 ?网格适应:描述了如何优化网格以适应计算需求。 第四部分: ?显示和报告数据界面的创建:本章描述了explains how to create surfaces in the domain on which you can examine FLUENT solution data ?图形和可视化:本章描述了检验FLUENT解的图形工具 ?Alphanumeric Reporting:本章描述了如何获取流动、力、表面积分以及其它解的数据。 ?流场函数的定义:本章描述了如何定义FLUENT面板内出现的变量选择下拉菜单中的流动变量,并且告诉我们如何创建自己的自定义流场函数。 ?并行处理:本章描述了FLUENT的并行处理特点以及使用方法 ?自定义函数:本章描述了如何通过用户定义边界条件,物理性质函数来形成自己的FLUENT软件。 如何使用该手册 对于初学者,建议从阅读“开始”这一章起步。 对于有经验的使用者,有三种不同的方法供你使用该手册:按照特定程序的步骤从按程序顺序排列的目录列表和主题列表中查找相关资料;从命令索引查找特定的面板和文本命令的使用方法;从分类索引查找特定类别信息(在线帮助中没有此类索引,只能在印刷手册中找到它)。 什么时候使用Support Engineer:Support Engineer能帮你计划CFD模拟工程并解决在使用FLUENT 中所遇到的困难。在遇到困难时我们建议你使用Support Engineer。但是在使用之前有以下几个注意事项:●仔细阅读手册中关于你使用并产生问题的命令的信息 ●回忆导致你产生问题的每一步 ●如果可能的话,请记下所出现的错误信息 ●对于特别困难的问题,保存FLUENT出现问题时的日志以及手稿。在解决问题时,它是最好的资源。

Fluent动网格专题讨论

Fluent动网格专题讨论(-) 题记:在学习使用Fluent的时候,有不少朋友需要使用动网格模型(Dynamic Mesh Model),因此,本版推出这个专题,进行大讨论,使大家在使用动网格时尽量少走弯路,更快更好地掌握;也欢迎使用过的版友积极参与讨论指导,谢谢! 该专题主要包括以下的主要内容: ##1. 动网格的相关知识介绍; ##2. 以NACA0012翼型俯仰振荡实例进行讲解动网格的应用过程; ##3. 与动网格应用有关的参考文献; ##4. 使用动网格进行计算的一些例子。 ##1. 动网格的相关知识介绍 有关动网格基础方面的东西,请具体参考FLUENT User’s Guide或FLUENT全攻略的相关章节,这里只给出一些提要性的知识要点。 1、简介 动网格模型可以用来模拟流场形状由于边界运动而随时间改变的问题。边界的运动形式可以是预先定义的运动,即可以在计算前指定其速度或角速度;也可以是预先未做定义的运动,即边界的运动要由前一步的计算结果决定。网格的更新过程由FLUENT 根据每个迭代步中边界的变化情况自动完成。在使用动网格模型时,必须首先定义初始网格、边界运动的方式并指定参予运动的区域。可以用边界型函数或者UDF 定义边界的运动方式。FLUENT 要求将运动的描述定义在网格面或网格区域上。如果流场中包含运动与不运动两种区域,则需要将它们组合在初始网格中以对它们进行识别。那些由于周围区域运动而发生变形的区域必须被组合到各自的初始网格区域中。不同区域之间的网格不必是正则的,可以在模型设置中用FLUENT软件提供的非正则或者滑动界面功能将各区域连接起来。 注:一般来讲,在Fluent中使用动网格,基本上都要使用到UDF,所以你最好具备一定的C语言编程基础。 2、动网格更新方法 动网格计算中网格的动态变化过程可以用三种模型进行计算,即弹簧近似光滑模型(spring-based smoothing)、动态分层模型(dynamic layering)和局部重划模型(local remeshing)。 弹簧近似光滑模型 在弹簧近似光滑模型中,网格的边被理想化为节点间相互连接的弹簧。移动前的网格间距相当于边界移动前由弹簧组成的系统处于平衡状态。在网格边界节点发生位移后,会产生与位移成比例的力,力量的大小根据胡克定律计算。边界节点位移形成的力虽然破坏了弹簧系统原有的平衡,但是在外力作用下,弹簧系统经过调整将达到新的平衡,也就是说由弹簧连接在一起的节点,将在新的位置上重新获得力的平衡。从网格划分的角度说,从边界节点的位移出发,采用虎克定律,经过迭代计算,最终可以得到使各节点上的合力等于零的、新的网格节点位置,这就是弹簧光顺法的核心思想。 原则上弹簧光顺模型可以用于任何一种网格体系,但是在非四面体网格区域(二维非三角形),最好在满足下列条件时使用弹簧光顺方法: (1)移动为单方向。 (2)移动方向垂直于边界。 如果两个条件不满足,可能使网格畸变率增大。另外,在系统缺省设置中,只有四面体网格(三维)和三角形网格(二维)可以使用弹簧光顺法,如果想在其他网格类型中激活该模型,需要在dynamic-mesh-menu 下使用文字命令spring-on-all-shapes?,然后激活该选项即可。 动态层模型 对于棱柱型网格区域(六面体和或者楔形),可以应用动态层模型。动态层模型的中心思想是根据紧邻运动边界网格层高度的变化,添加或者减少动态层,即在边界发生运动时,如果紧邻边界的网格层高度增大到一定程度,就将其划分为两个网格层;如果网格层高度降低到一定程度,就将紧邻边界的两个网格层合并为一个层: 如果网格层j扩大,单元高度的变化有一临界值:

fluent并行计算配置(曙光文档)

1.并行处理
? Fluent支持并行计算,且提供检查和修改并行配置工具。你可用 一个专用并行机(如多处理器工作站)或通过工作平台的网络运行 Fluent。下面介绍Fluent并行计算的特点。 ? 1.1 并行计算简介 ? Fluent并行计算就是利用多个计算节点(处理器)同时进行计算。 并行计算可将网格分割成多个子域,子域的数量是计算节点的整数倍 (如8个子域可对应于1、2、4、8个计算节点)。每个子域(或子域的集 合)就会“居住”在不同的计算节点上。它有可能是并行机的计算节 点,或是运行在多个CPU工作平台上的程序,或是运行在用网络连接 的不同工作平台(UNIX平台或是Windows平台)上的程序。计算信息 传输率的增加将导致并行计算效率的降低,因此在作并行计算时选择 求解问题很重要

? 推荐运行并行Fluent的操作步骤如下: ? 开启平行求解器,选择计算节点数。 ? 读入case文件,让Fluent自动将网格分割为几个子域。最好是在建立 问题之后分割,因为这种分割和计算的模型有关(象非等形接触面、 滑移网格、shell-conduction encapsulation的自适应)。如果你的 case文件中包含滑移网格,或是在计算过程中要对非等形接触面进行 修改,那就得用串行求解器进行分割。 ? 还有其他的方法进行分割,如在串行或并行求解器上进行手工分割。 ? 仔细检查分割区域,如必要再重新分割,。 ? 进行计算。

? -------------------------------------------------------------? ID Hostname O.S. PID Mach ID HW ID Name ? -------------------------------------------------------------? node-2 fili irix 16729 2 11 Fluent Node ? node-1 bofur irix 16182 1 10 Fluent Node ? host balin sunos 5845 0 7 Fluent Host ? node-0* balin sunos 5864 0 -1 Fluent Node ? O.S.指体系结构,PID是进程ID数,Mach ID是计算节点ID,HW ID 是交换机的标识符。

FLUENT动网格讲解分析

题记:在学习使用Fluent的时候,有不少朋友需要使用动网格模型(Dynamic Mesh Model),因此,本版推出这个专题,进行大讨论,使大家在使用动网格时尽量少走弯路,更快更好地掌握;也欢迎使用过的版友积极参与讨论指导,谢谢! 该专题主要包括以下的主要内容: ##1.动网格的相关知识介绍; ##2.以NACA0012翼型俯仰振荡实例进行讲解动网格的应用过程; ##3. 与动网格应用有关的参考文献; ##4. 使用动网格进行计算的一些例子。 ##1.动网格的相关知识介绍 有关动网格基础方面的东西,请具体参考FLUENT User’s Guide或FLUENT全攻略的相关章节,这里只给出一些提要性的知识要点。 1、简介 动网格模型可以用来模拟流场形状由于边界运动而随时间改变的问题。边界的运动形式可以是预先定义的运动,即可以在计算前指定其速度或角速度;也可以是预先未做定义的运动,即边界的运动要由前一步的计算结果决定。网格的更新过程由FLUENT 根据每个迭代步中边界的变化情况自动完成。在使用动网格模型时,必须首先定义初始网格、边界运动的方式并指定参予运动的区域。可以用边界型函数或者UDF 定义边界的运动方式。FLUENT 要求将运动的描述定义在网格面或网格区域上。如果流场中包含运动与不运动两种区域,则需要将它们组合在初始网格中以对它们进行识别。那些由于周围区域运动而发生变形的区域必须被组合到各自的初始网格区域中。不同区域之间的网格不必是正则的,可以在模型设置中用FLUENT软件提供的非正则或者滑动界面功能将各区域连接起来。 注:一般来讲,在Fluent中使用动网格,基本上都要使用到UDF,所以你最好具备一定的C 语言编程基础。 2、动网格更新方法 动网格计算中网格的动态变化过程可以用三种模型进行计算,即弹簧近似光滑模型(spring-based smoothing)、动态分层模型(dynamic layering)和局部重划模型(local remeshing)。 弹簧近似光滑模型 在弹簧近似光滑模型中,网格的边被理想化为节点间相互连接的弹簧。移动前的网格间距相当于边界移动前由弹簧组成的系统处于平衡状态。在网格边界节点发生位移后,会产生与位移成比例的力,力量的大小根据胡克定律计算。边界节点位移形成的力虽然破坏了弹簧系统原有的平衡,但是在外力作用下,弹簧系统经过调整将达到新的平衡,也就是说由弹簧连接在一起的节点,将在新的位置上重新获得力的平衡。从网格划分的角度说,从边界节点的位移出发,采用虎克定律,经过迭代计算,最终可以得到使各节点上的合力等于零的、新的网格节点位置,这就是弹簧光顺法的核心思想。 原则上弹簧光顺模型可以用于任何一种网格体系,但是在非四面体网格区域(二维非三角形),最好在满足下列条件时使用弹簧光顺方法: (1)移动为单方向。 (2)移动方向垂直于边界。 如果两个条件不满足,可能使网格畸变率增大。另外,在系统缺省设置中,只有四面体网格 (三维)和三角形网格(二维)可以使用弹簧光顺法, 需要在dynamic-mesh-menu 下使用文字命令spring-on-all-shapes?,然后激活该选项即

如何在超算中心使用fluent做并行计算——入门

现在国内的开放式机群环境越来越多,许多都部署了fluent(大好事),不过还是有许多人不太清楚如何利用这些有用的资源。这里结合我所在单位的情况做一个简单的介绍,其他的机群环境大同小异。 1、什么是机群?有什么特点? 机群又叫集群,当然就是许多的计算机(废话),因为机器太多 了,又需要协同工作,所以需要按照一定的方式来管理,管理 的结构形式叫做拓扑(这个不用管)。机群使用的电脑是刀片(又 薄又长的机箱)形式(为了便于插入机柜),一个刀片一般称为 一个节点。 一般而言,机群会分为三种节点:管理节点(若干台),编译节 点(若干台),计算节点(其余全部)。这三种节点的配置略有 不同(废话),管理节点主要用来存储使用机群的用户的信息,如名字,密码,可以使用机器数的权限,用户状态等等;编译 节点一般用来预查程序故障,用户的程序先在这里试运行,查 看是否与系统兼容等;计算节点用来直接计算其他节点提供来 的程序。 就配置而言,管理节点和编译节点一般相同,会部署软件环境; 计算节点只会部署简单的必要运行文件。计算机点之间会采用 高速交换机,速度可达几十GB/s,如IB等;计算节点与编译、登陆节点之间采用普通的万兆交换机。 2、如何使用机群? 机群中一般采用linux操作系统来操作(多用户情况下效率高),

用户会通过远程登录软件(如xshell)来登录到登陆节点进行个 人的操作(一般会通过VPN网络加密数据传输)。 Linux集群将程序任务分解发送到计算节点上时,是通过LSF作 业调度系统(也有其他的,如PBS等)来实现的,这个系统的 作用是使整个机群负载均衡,便于管理,所以我们使用fluent 也要通过这个系统。在成熟的集群中,用户登录之后,默认便 可以使用作业调度系统了。使用时,除了常见的linux命令以外,调度系统也有一些简单的命令,这个一般会有手册介绍,常用 的就3、5个,很好记。 3、如何在集群中使用fluent? 因为fluent是成熟的封装好的商业软件,所以用户直接使用命 令调用即可。 但是因为大部分的linux下的远程登录是不支持图形界面的,所 以我们看不到在windows下的熟悉界面,无法进行操作。其实, fluent最早也是linux下的软件,它提供了一种jou脚本来操作 各种命令(即帮助中的TUI命令),我们在windows的图形界面 中,也可以在控制台窗口中查看如何使用。这样,我们在启动 fluent软件时,指定它的jou执行脚本即可使软件按照我们的意 图来进行操作了。如果在帮助中找太慢,可以在windows的 fluent图形界面下,右下角控制台中用回车键显示文字命令,q 键返回。 4、实例

并行计算综述

并行计算综述 姓名:尹航学号:S131020012 专业:计算机科学与技术摘要:本文对并行计算的基本概念和基本理论进行了分析和研究。主要内容有:并行计算提出的背景,目前国内外的研究现状,并行计算概念和并行计算机类型,并行计算的性能评价,并行计算模型,并行编程环境与并行编程语言。 关键词:并行计算;性能评价;并行计算模型;并行编程 1. 前言 网络并行计算是近几年国际上并行计算新出现的一个重要研究方向,也是热门课题。网络并行计算就是利用互联网上的计算机资源实现其它问题的计算,这种并行计算环境的显著优点是投资少、见效快、灵活性强等。由于科学计算的要求,越来越多的用户希望能具有并行计算的环境,但除了少数计算机大户(石油、天气预报等)外,很多用户由于工业资金的不足而不能使用并行计算机。一旦实现并行计算,就可以通过网络实现超级计算。这样,就不必要购买昂贵的并行计算机。 目前,国内一般的应用单位都具有局域网或广域网的结点,基本上具备网络计算的硬件环境。其次,网络并行计算的系统软件PVM是当前国际上公认的一种消息传递标准软件系统。有了该软件系统,可以在不具备并行机的情况下进行并行计算。该软件是美国国家基金资助的开放软件,没有版权问题。可以从国际互联网上获得其源代码及其相应的辅助工具程序。这无疑给人们对计算大问题带来了良好的机遇。这种计算环境特别适合我国国情。 近几年国内一些高校和科研院所投入了一些力量来进行并行计算软件的应用理论和方法的研究,并取得了可喜的成绩。到目前为止,网络并行计算已经在勘探地球物理、机械制造、计算数学、石油资源、数字模拟等许多应用领域开展研究。这将在计算机的应用的各应用领域科学开创一个崭新的环境。 2. 并行计算简介[1] 2.1并行计算与科学计算 并行计算(Parallel Computing),简单地讲,就是在并行计算机上所作的计算,它和常说的高性能计算(High Performance Computing)、超级计算(Super Computing)是同义词,因为任何高性能计算和超级计算都离不开并行技术。

FLUENT 动网格教程

FLUENT动网格教程 摘自https://www.wendangku.net/doc/eb10826283.html,/dvbbs/dispbbs.asp?boardid=61&id=1396题记:在学习使用Fluent的时候,有不少朋友需要使用动网格模型(Dynamic Me sh Model),因此,本版推出这个专题,进行大讨论,使大家在使用动网格时尽量少走弯路,更快更好地掌握;也欢迎使用过的版友积极参与讨论指导,谢谢!。 该专题主要包括以下的主要内容: §一、动网格的相关知识介绍; §二、以NACA0012翼型俯仰振荡实例进行讲解动网格的应用过程; §三、与动网格应用有关的参考文献; §四、使用动网格进行计算的一些例子。 §一、动网格的相关知识介绍 有关动网格基础方面的东西,请具体参考FLUENT User’s Guide或FLUENT全攻略的相关章节,这里只给出一些提要性的知识要点。 1、简介 动网格模型可以用来模拟流场形状由于边界运动而随时间改变的问题。边界的运动形式可以是预先定义的运动,即可以在计算前指定其速度或角速度;也可以是预先未做定义的运动,即边界的运动要由前一步的计算结果决定。网格的更新过程由FLUE NT 根据每个迭代步中边界的变化情况自动完成。在使用动网格模型时,必须首先定义初始网格、边界运动的方式并指定参予运动的区域。可以用边界型函数或者UDF定义边界的运动方式。FLUENT 要求将运动的描述定义在网格面或网格区域上。如果流场中包含运动与不运动两种区域,则需要将它们组合在初始网格中以对它们进行识别。那些由于周围区域运动而发生变形的区域必须被组合到各自的初始网格区域中。不同区域之间的网格不必是正则的,可以在模型设置中用FLUENT软件提供的非正则或者滑动界面功能将各区域连接起来。 注:一般来讲,在Fluent中使用动网格,基本上都要使用到UDF,所以你最好具备一定的C语言编程基础。

[整理]fluent经典问题请问双CPU并行计算的效率问题.

fluent 经典问题请问双CPU并行计算的效率问题.txt27信念的力量在于即使身处逆境,亦能帮助你鼓起前进的船帆;信念的魅力在于即使遇到险运,亦能召唤你鼓起生活的勇气;信念的伟大在于即使遭遇不幸,亦能促使你保持崇高的心灵。发信人: rao (绕绕), 信区: NumComp 标题: [合集] 请问双CPU并行计算的效率问题 发信站: BBS 水木清华站 (Mon Jul 7 03:32:43 2003), 站内 ☆─────────────────────────────────────☆ xuzheng (天使暂时离开@_@反方向的钟) 于 (Fri Jul 4 11:03:44 2003) 提到: 大致上只有一个CPU在工作,或者两CPU占有率相当于一个CPU mpich1.2.5+fortran 怎么配置可以使两个CPU同时工作?? BOW ☆─────────────────────────────────────☆ luxz (panda--在热死和冻死边缘挣扎) 于 (Fri Jul 4 11:04:57 2003) 提到: mpirun -np 2 *.exe 【在 xuzheng (天使暂时离开@_@反方向的钟) 的大作中提到: 】 : 大致上只有一个CPU在工作,或者两CPU占有率相当于一个CPU : mpich1.2.5+fortran : 怎么配置可以使两个CPU同时工作?? : BOW ☆─────────────────────────────────────☆ xuzheng (天使暂时离开@_@反方向的钟) 于 (Fri Jul 4 11:06:27 2003) 提到: 不是,你误解了我的意思 再具体点说就是16个节点双CPU的集群,并行计算过程中 每个节点的CPU效率大概只有50%

FLUENT算例 (5)搅拌桨底部十字挡板的流场分析

搅拌桨底部十字挡板的流场分析搅拌设备在各个行业运用的十分广泛,搅拌就是为了更够更快速更高效的将物质与介质充分混合,发生充分的反应,而搅拌中存在着许多不利于混合的情况,比如液体旋流。为了解决这个问题,之前很多人提出在罐体的侧壁上增加挡板,可以抵消大部分旋流,然后大部分都是研究侧挡板的,对于底部挡板的研究十分少,本文就在椭圆底部挡板增加十字型挡板,对罐体中进行流场分析。 1.Gambit建模 首先用Gambit建模图形如下: 图1:Gambit建立的模型 分为两个区域,里面的圆柱为动区域,外面包着的大圆柱设为静区域,静区域划分网格大,划分粗糙,内部动区域划分网格小,划分精细。边界条件主要设置了轴,搅拌桨,底部挡板,上层液面。以下就是fluent进行数值模拟。 2.fluent数值模拟 2.1导入case文件

2.2对网格进行检查 Minimum volume的数值大于0即可。 图2网格检查2.3调节比例 单位选择mm单位。 图3比例调节2.4定义求解器参数 设置如图4所示

图4设置求解器参数2.5设置能量线 图5能量线 2.6设置粘度模型,选择k-e模型 k-e模型对该模型模拟十分实用。

图6粘度模型2.7定义材料 介质选择液体水。 2.8定义操作条件

由于存在着终于,建模时的方向向上,所以在Z轴增加一个重力加速度。 图8操作条件 2.9定义边界条件 在边界设置重,动区域如图所示,将材料设成水,motion type设成moving reference frame (相对滑动),转速设为10rad/s,单位可在Define中的set unit中的angular-velocity设置。而在在轴的设置中,如上图所示,将wall motion设成moving wall,motion设成Absolute,速度设成-10,由于轴跟动区域速度是相对的,所以设成反的。

FLUENT和ANSYS的并行计算设置

Fluent并行计算 以2核为例: 1:找到fluent安装目录中的启动程序,在地址栏中复制目录例如:C:\Fluent.Inc\ntbin\ntx86 2:开始-->程序-->附件-->命令提示符 cd C:\Fluent.Inc\ntbin\ntx86 3:fluent 3d –t2 (启动3d模型,两核) 6.在ansys中使用多核处理器的方法: 使用AMG算法,可以使多个核同时工作。使用方法1或2. 方法1: (1). 在ansys product lancher 里面lauch标签页选中parallel performance for ansys. (2). 然后在求解前执行如下命令: finish /config,nproc,n!设置处理器数n=你设置的CPU数。 /solu eqslv,amg !选择AMG算法 solve !求解 方法2: (1). 在ansys product lancher 里面lauch标签页选中parallel performance for ansys. (2). 在D:\professional\Ansys Inc\v90\ANSYS\apdl\start90.ans中添加一行:/config,nproc,2.别忘了把目录换成你自己的安装目录. 化学反应软件 FactSage_Demo COMSOL

Courant number实际上是指时间步长和空间步长的相对关系,系统自动减小courant数,这种情况一般出现在存在尖锐外形的计算域,当局部的流速过大或者压差过大时出错,把局部的网格加密再试一下。 在FLUENT中,用courant number来调节计算的稳定性与收敛性。一般来说,随着courant number的从小到大的变化,收敛速度逐渐加快,但是稳定性逐渐降低。所以具体的问题,在计算的过程中,最好是把courant number从小开始设置,看看迭代残差的收敛情况,如果收敛速度较慢而且比较稳定的话,可以适当的增加courant number的大小,根据自己具体的问题,找出一个比较合适的courant number,让收敛速度能够足够的快,而且能够保持它的稳定性。FLUENT计算开始迭代最好使用较小的库朗数,否则

传统并行计算框架与MR的区别

现在MapReduce/Hadoop以及相关的数据处理技术非常热,因此我想在这里将MapReduce的优势汇总一下,将MapReduce与传统基于HPC集群的并行计算模型做一个简要比较,也算是对前一阵子所学的MapReduce知识做一个总结和梳理。 随着互联网数据量的不断增长,对处理数据能力的要求也变得越来越高。当计算量超出单机的处理能力极限时,采取并行计算是一种自然而然的解决之道。在MapReduce出现之前,已经有像MPI这样非常成熟的并行计算框架了,那么为什么Google还需要MapReduce,MapReduce相较于传统的并行计算框架有什么优势,这是本文关注的问题。 文章之初先给出一个传统并行计算框架与MapReduce的对比表格,然后一项项对其进行剖析。 MapReduce和HPC集群并行计算优劣对比 ▲ 在传统的并行计算中,计算资源通常展示为一台逻辑上统一的计算机。对于一个由多个刀片、SAN构成的HPC集群来说,展现给程序员的仍旧是一台计算机,只不过这台计算拥有为数众多的CPU,以及容量巨大的主存与磁盘。在物理上,计算资源与存储资源是两个相对分离的部分,数据从数据节点通过数据总线或者高速网络传输到达计算节点。对于数据量较小的计算密集型处理,这并不是问题。而对于数据密集型处理,计算节点与存储节点之间的I/O将成为整个系统的性能瓶颈。共享式架构造成数据集中放置,从而造成I/O传输瓶颈。此外,由于集群组件间耦合、依赖较紧密,集群容错性较差。 而实际上,当数据规模大的时候,数据会体现出一定的局部性特征,因此将数据统一存放、统一读出的做法并不是最佳的。 MapReduce致力于解决大规模数据处理的问题,因此在设计之初就考虑了数据的局部性原理,利用局部性原理将整个问题分而治之。MapReduce集群由普通PC机构成,为无共享式架构。在处理之前,将数据集分布至各个节点。处理时,每个节点就近读取本地存储的数据处理(map),将处理后的数据进行合并(combine)、排序(shuffle and sort)后再分发(至reduce节点),避免了大量数据的传输,提高了处理效率。无共享式架构的另一个好处是配合复制(replication)策略,集群可以具有良好的容错性,一部分节点的down机对集群的正常工作不会造成影响。 硬件/价格/扩展性 传统的HPC集群由高级硬件构成,十分昂贵,若想提高HPC集群的性能,通常采取纵向扩展的方式:即换用更快的CPU、增加刀片、增加内存、扩展磁盘等。但这种扩展方式不能支撑长期的计算扩展(很容易就到顶了)且升级费用昂贵。因此相对于MapReduce集群,HPC集群的扩展性较差。 MapReduce集群由普通PC机构成,普通PC机拥有更高的性价比,因此同等计算能力的集群,MapReduce集群的价格要低得多。不仅如此,MapReduce集群

windows 系统下启动linux主机群的fluent并行操作

windows 系统下启动linux主机群的fluent并行操作 第一步,首先在linux系统下安装好fluent,包括更改环境变量,操作如下: ANSYS 12.0产品的linux安装方法 1.将ANSYS 12.0 安装光盘放进光驱,后,系统会自动Mount,但是这个Mount指定的参数可能不对,则需要执行以下命令: 1.mkdir dvdrom_dir (在根目录下) 2.mount -t iso9660 /dev/cdrom dvdrom_dir 3.cd dvdrom_dir 4../INSTALL (直接运行命令INSTALL即可) 2. 出现下图请选择“I AGREE ”并单击“Next” 3 出现下图请选择对应的操作系统,并单击“ Next” 4. 出现下图,请在“Install directory:” 里写入安装的路径,或者单击“Browse”选择,这里就使用默认路径了

5.出现下图,请选择要安装的产品 6. 出现下图,请单击“Next” 7.出现下图,请选择“Next”

8.出现下图,请选择Next 9. 出现下图证明安装正在进行 10.出现下图证明产品安装完毕,请单击“ Next” 11. 出现下图,请单击“Exit” 12. 出现下图,产品安装完毕,请单击“Next”

13.弹出以下窗口,配置服务器相关信息 请在hostname1下面输入服务器主机名,如“server”,并单击OK。如果碰到无法输入的情况,这时直接点击cancel。再进入ansys的安装目录, ../ansys_inc/shared_files/licensing下,编辑文件ansyslmd.ini,内容为: SERVER=1055@hostname ANSYSLI_SERVERS=2325@hostname 注意:大小写一致。

20100428第三章 并行计算模型和任务分解策略

第三章并行计算模型和任务分解策略 首先,我们将研究不同类型的并行计算机,为了不严格限定于某个指定机型,我们通过模型把并行计算机抽象为几个特定属性。为了说明并行程序中处理器之间的通信概念模型我们讨论了不同的程序模型,另外为了分析和评估我们算法的性能,我们讨论了多计算机架构下评估并行算法复杂度的代价模型。在介绍并分析的各种代价模型的基础上给出了改进型的代价模型。 其次我们定义这样几个指标如负载均衡和网络半径等用来研究图分解问题的主要特性。并把图分解问题归纳为一般类型和空间映射图类型。我们重点研究的是后者,因为多尺度配置真实感光照渲染算法可以很方便的描述成空间映射图形式。 3.1 并行计算机模型 以下给出并行计算机的模型的概述,根据其结构并行计算机大致可分为以下几类。 多计算机(Multicomputer):一个von Neumann计算机由一个中央处理器(CPU)和一个存储单元组成。一个多计算机则由很多von Neumann计算机通过互联网络连接而成的计算机系统。见图3.1。每个计算机(节点)执行自己的计算并只能访问本地的存储。通过消息实现各计算机之间的互相通讯。在理想的网络中,两个计算节点之间的信息传送代价与本地的计算节点和它的网络阻塞无关,只和消息的长度相关。以上多计算机和分布式存储的MIMD机器之间的主要区别在于后者的两个节点间的信息传输不依赖于本地计算和其它网络阻塞。 分布式存储的MIMD类型的机器主要有IBM的SP, Intel的Paragon, 曙光4000系列, Cray 的T3E, Meiko的CS-2, NEC的Cenju 3, 和nCUBE等。通过本地网络的连接的集群系统可以认为是分布式存储的MIMD型计算机。 多处理器(Multiprocessor):一个多处理器型并行计算机(共享存储的MIMD计算机)由大量处理器组成,所有的处理器都访问一个共同的存储。理论上理想的模型就是PRAM模型(并行的随机访问系统),即任何一个处理器访问任一存储单元都是等效的(见图3.2)。并发存储访问是否允许取决于所使用的真正的模型【34】。 混合模型:分布式共享存储(DMS)计算机,提供了一个统一的存储访问地址空间但是分布式物理存储模块。编译器和运行时系统负责具体的并行化应用。这种系统软件比较复杂。 图3.1 多计算机模型图3.2 PRAM 模型 SIMD计算机:在一个SIMD(单指令流多数据流)计算机中在不同数据流阶段所有的处理器执行同样的指令流。典型的机型有MasPar的MP, 和联想机器CM2。 多计算机系统具有良好的可扩展性,价格低廉的集群式并行计算机就属于这种模型,本文中的算法主要基于多计算机体系结构。 3.2 程序模型 并行程序的编程语言如C或Fortan。并行结构以某种类库的形式直接整合进这些编程语言中。编程模型确定了并行程序的风格。一般可分为数据并行、共享存储和消息传递等模型[35]。 数据并行编程:数据并行模型开始于编写同步SIMD并行计算机程序。程序员需要在每个处理器上独立执行一个程序,每个处理器均有其自己的存储器。程序员需要定义数据如何分配到每个局部存储中。实际应用中大量的条件分支的需要使得其很难高效的运行在SIMD型的机器上。 共享存储编程:共享存储模型是一个简单的模型,因为程序员写并行程序就像写串行程序一样。一个程序的执行与几个处理器独立,也不需要同步。一个处理器的执行状态独立于其它处理器的运

windows下fluent 并行计算的设置

windows下fluent 并行计算的设置(转载) 在WINDOWS XP 下FLUENT并行计算工作笔记 作者:谢辉作者在写这篇工作笔记的5天之前从未接触过任何并行计算,客观原因应该是之前的工作中并不需要进行并行计算,但是由于一次心血的冲动而决定介入并行计算。在这5天中不断的从论坛上查阅和下载高手的经验之谈,反复调试,个人的心情也随每一次调试而上下起伏,不爽的时间占了绝大多数。5天之后的现在调试成功了,为了其他正在进入并行计算学习的同行们、即将打算进入并行计算的同行们、以及想对并行计算设置有一些了解的人提供帮助经验,我决定写下我的详细设置过程,以供大家参考,希望大家提出问题和建议,大家共同进步。可以联系我:xiehui@https://www.wendangku.net/doc/eb10826283.html,。QQ:19217163 使用的软件和硬件: 主机(作者使用的计算机):P4 3.00GHz、超线程、内存2.00G、硬盘80G、内置网卡; 副机A:P4 2.8GHZ、超线程、内存1.00G、硬盘80G、集成网卡; 副机B:P4 2.4GHZ、超线程、内存640MB、硬盘80G、双网卡、一个HUB。 上述三台计算机都是使用WINDOWS XP 操作系统。 使用的网络: 主机和副机A都是通过副机B连接成局域网的,在并行设置前,这三台计算机都是可以在网络邻居里互相看到对方,登陆到对方的机器中。 以上是进行并行计算的硬件和软件的环境了,接下来开始并行计算的工作了: 1、安装FLUENT 6.2.16 这一步作者就不多说了,相信大家都是可以做到的。安装完毕后,请立刻就将安装文件夹设置为共享!千万不要忽略了。 2、启动MS-DOS命令提示符,输入rshd -install (中间要有空格隔开),安装FLUENT自带的

Fluent17.2在基于Linux下PC集群的并行计算

Fluent17.2在基于Linux PC集群的并行计算 软件需求可联系QQ:2294976284

目录 一、CentOS7.2.1.15安装及配置 (3) 1.1软件下载及安装 (3) 1.2配置 (4) 1.2.1网络配置 (4) 1.2.2用户名更改 (4) 二、计算集群配置 (5) 2.1NFS配置 (5) 2.2无密访问连接(RSH、SSH) (8) 2.2.1SSH配置 (8) 三、Ansys17.2安装及配置 (9) 3.1图形化安装过程 (10) 3.2安装License server (16) 3.3配置和启动License server (19) 3.4启动fluent GUi界面 (23) 3.4fluent并行计算 (24)

一、CentOS7.2.1.15安装及配置 1.1软件下载及安装 为方便后期软件环境的配置,采用CentOS-7-x86_64-Everything-1511.ISO版本,安装采用光盘转U盘启动,可以通过UltraISO软件实现,在软件中“文件”打开CentOS7的ISO镜像文件,“启动”选择“写入硬盘映像”,硬盘驱动器选择插入的U盘,保证U盘空间在9G 以上,写入方式选择USB-HDD+v2,点击写入等待完成即可,注意写入过程会格式化整个U 盘,为防止文件丢失,作为启动U盘应为空白盘。 U盘插入目标电脑,以BIOS模式启动,清华同方电脑为启动时按F12进入,选择U盘点击开始安装,出现安装界面后选择第二项“Test and install…”,为防止Fluent计算环境配置出错,采用英文环境安装,进入图形化安装界面,“DATE&TIME”选择city Shanghai,调整时间后左上角点击Done返回上一级页面;点击SOFTWARE SELECTION进入软件安装界面,由于linux下软件依赖性强,对于系统不是很精通选择全部安装,在左侧每一项对应的右侧选项上左键选中,依次全选后点击Done返回;点击INSTALLATION DESTINATION进行系统安装位置的配置,上方选择要安装系统的硬盘,下方选择“I will configure a portitioning”,点击Done进行配置,若选择安装的硬盘内有其他文件占用空间,选择左下方条目,选择“—”号弹出删除界面,点击并选择Delete It将删除原有文件并释放空间,选择“New mount points will…”下的下拉框,格式选为Standard,上方选择“Click here to creat them automatically”将自动产生分区,依次点击,在右侧Desired Capacity进行容量分配,其中/boot和/swap选择 4GiB~10GiB,/和/home分配剩余所有空间,其中/home可以分配很大,(参考个人总容量为931G,

ICEM CFD动网格学习

FLUENT动网格教程 该专题主要包括以下的主要内容: §一、动网格的相关知识介绍; §二、以NACA0012翼型俯仰振荡实例进行讲解动网格的应用过程; §三、与动网格应用有关的参考文献; §四、使用动网格进行计算的一些例子。 §一、动网格的相关知识介绍 有关动网格基础方面的东西,请具体参考FLUENT User’s Guide或FLUENT全攻略的相关章节,这里只给出一些提要性的知识要点。 1、简介 动网格模型可以用来模拟流场形状由于边界运动而随时间改变的问题。边界的运动形式可以是预先定义的运动,即可以在计算前指定其速度或角速度;也可以是预先未做定义的运动,即边界的运动要由前一步的计算结果决定。网格的更新过程由FLUE NT 根据每个迭代步中边界的变化情况自动完成。在使用动网格模型时,必须首先定义初始网格、边界运动的方式并指定参予运动的区域。可以用边界型函数或者UDF定义边界的运动方式。FLUENT 要求将运动的描述定义在网格面或网格区域上。如果流场中包含运动与不运动两种区域,则需要将它们组合在初始网格中以对它们进行识别。那些由于周围区域运动而发生变形的区域必须被组合到各自的初始网格区域中。不同区域之间的网格不必是正则的,可以在模型设置中用FLUENT软件提供的非正则或者滑动界面功能将各区域连接起来。 注:一般来讲,在Fluent中使用动网格,基本上都要使用到UDF,所以你最好具备一定的C语言编程基础。 2、动网格更新方法 动网格计算中网格的动态变化过程可以用三种模型进行计算,即 弹簧近似光滑模型(spring-based smoothing)、 动态分层模型(dynamic layering) 局部重划模型(local remeshing)

如何在超算中心使用fluent做并行计算——入门

什么是机群?有什么特点? 机群又叫集群,当然就是许多地计算机(废话),因为机器太多了,又需要协同工作,所以需要按照一定地方式来管理,管理地结构形式叫做拓扑(这个不用管).机群使用地电脑是刀片(又薄又长地机箱)形式(为了便于插入机柜),一个刀片一般称为一个节点.文档来自于网络搜索 一般而言,机群会分为三种节点:管理节点(若干台),编译节点(若干台),计算节点(其余全部).这三种节点地配置略有不同(废话),管理节点主要用来存储使用机群地用户地信息,如名字,密码,可以使用机器数地权限,用户状态等等;编译节点一般用来预查程序故障,用户地程序先在这里试运行,查看是否与系统兼容等;计算节点用来直接计算其他节点提供来地程序.文档来自于网络搜索 就配置而言,管理节点和编译节点一般相同,会部署软件环境;计算节点只会部署简单地必要运行文件.计算机点之间会采用高速交换机,速度可达几十,如等;计算节点与编译、登陆节点之间采用普通地万兆交换机.文档来自于网络搜索 如何使用机群? 机群中一般采用操作系统来操作(多用户情况下效率高),用户会通过远程登录软件(如)来登录到登陆节点进行个人地操作(一般会通过网络加密数据传输).文档来自于网络搜索 集群将程序任务分解发送到计算节点上时,是通过作业调度系统(也有其他地,如等)来实现地,这个系统地作用是使整个机群负载均衡,

便于管理,所以我们使用也要通过这个系统.在成熟地集群中,用户登录之后,默认便可以使用作业调度系统了.使用时,除了常见地命令以外,调度系统也有一些简单地命令,这个一般会有手册介绍,常用地就、个,很好记.文档来自于网络搜索 如何在集群中使用? 因为是成熟地封装好地商业软件,所以用户直接使用命令调用即可. 但是因为大部分地下地远程登录是不支持图形界面地,所以我们看不到在下地熟悉界面,无法进行操作.其实,最早也是下地软件,它提供了一种脚本来操作各种命令(即帮助中地命令),我们在地图形界面中,也可以在控制台窗口中查看如何使用.这样,我们在启动软件时,指定它地执行脚本即可使软件按照我们地意图来进行操作了.如果在帮助中找太慢,可以在地图形界面下,右下角控制台中用回车键显示文字命令,键返回.文档来自于网络搜索 实例 这里给出一个在调度系统中使用地实例: 首先,使用命令提交脚本(名字为),在命令窗口中键入即可.文档来自于网络搜索 脚本内容如下: (这句话是说此脚本使用来解释执行,小白可以略过) (这句话是说此脚本调用名字为地集群排序提交队列,小白继续略过)文档来自于网络搜索 (这句话是说此脚本地任务将调用个来执行)

相关文档