当前位置:首页 >> 机械/仪表 >>

STAR-CCM+ 基础培训教程


STAR-CCM+ 基础培训教程
(V 2.02.009)

所属:CDAJ CHINA

目录
Chap.1: STAR-CCM+简介 Chap.2: STAR-CCM+网格功能 Chap.3: STAR-CCM+计算设定 Chap.4: STAR-CCM+后处理 Chap.5: STAR-CCM+的工具(tools

) Chap.6: 一个简单的例子 Chap.7: 附录

Chap 1. STAR-CCM+简介
1.1 STAR-CCM+是什么? 1.2 STAR-CCM+ 求解问题的过程. 1.3 STAR-CCM+ 的工作界面. 1.4 现有的网格功能. 1.5 现有的物理模型.

1.1 STAR-CCM+是什么?
STAR-CCM+由CD-adapco公司开发, 是“下一代的CFD解决方案” 强大的网格能力:从面网格(Surface wrapper)到体网格。 先进的物理模型: 包括层流,湍流,多相流,气穴,辐射,燃烧,边界 层转戾,高马赫流,共轭热传导等等,以及新的热交换器和风扇模 型。 多面体网格: 较少的内存和更快的求解速度。

强大的可视化:: 分析过程中的动态显示。
可信赖的结果: STAR-CCM+ solver的稳健性 网格兼容性: STAR-CD, ICEM, GridGen, Gambit 十亿以上的网格处理能力: 诞生之初,STAR-CCM+就专门为处理大 规模网格而设计。.

STAR-CCM+ makes the Tour de France less of a Drag

1.2 STAR-CCM+ 求解问题的过程
输入模型
准备网格

选择物理模型
设定边界条件 设定初始条件 运算 后处理

1.3 STAR-CCM+ 的工作界面
STAR-CCM+ 的工作界面(workspace)如下:

1.4 网格功能 (Version 2.02.009)
表面几何输入 ? 可以导入的面网格或几何: ? .dbs - pro-STAR surface database mesh file ? .inp - pro-STAR cell/vertex shell input file ? .nas - NASTRAN shell file ? .pat - PATRAN shell file ? .stl - Stereolithography file 面网格 ? 面网格工具: ? Surface remesher ? Surface wrapper ? Hole filler ? Edge zipper ? 特征线提取和编辑工具 网格演化 ? Transform – 缩放, 平移和旋转 ? 对边界(boundaries)和区域(regions)的分裂和合 并 ? 创建,删除和融合交界面(interfaces) ? 融合内部边界 ? 将3维网格转化为2维

体网格 ? 3种体网格模型: ? tetrahedral ? polyhedral ? trimmed ? 边界层网格模型: prism layer ? 精细网格调节: ? Volume sources ? 全局或局部参数设置

和其他网格生成软件的协调性 ? 可以输入来自以下网格: ? pro-STAR ? Gridgen ? Fluent ? Gambit ? STAR-CD ? ICEM ? 可以输出到pro-STAR进行后处理

1.5 现有的物理模型 (Version 2.02.009)
基本模型 ? 空间
? ? ?

湍流
? 二维l 轴对称 三维 稳态 显式非稳态 隐式非稳态 ? ?

?

时间
? ? ?

?
? ? ?

?
? ?

运动
运动参照系模型# 刚体运动模型

Spallart-Allmaras K-Epsilon K-Omega 雷诺应力输运方程 壁面处理 (Low y+, High y+, All y+) 壁面距离 (Exact, Approximate) 边界层转戾(prescriptive boundary-layer transition)

辐射
?

流动和能量 ? 无粘,层流,湍流。 ? 气体,液体,固体和多孔介质。 ? 共轭传热 ? 自由表面 (VOF) ? 空化(cavitation) ? 辐射类型的热交换 ? FAN性能曲线修正的动量源项。

?

Surface-to-surface Discrete ordinate

燃烧
? ?

Eddy Break Up (EBU) Presumed Probability Density Function (PPDF), adiabatic and non-adiabatic

Chap 2. STAR-CCM+ 网格功能
2.1 面网格
? ? ? ?

2.1.1 Surface Wrapper 2.1.2 Surface Remesher 2.1.3 特征线 2.1.4 修补工具(hole filler, edge zipper) 2.2.1 Polyhedral mesher 2.2.2 Tetrahedral mesher 2.2.3Trimmer 2.2.4 prsim layer mesher

2.2 体网格
? ? ? ?

2.3 模型的演化 2.4 界面的处理

2.1.1 surface wrapper
? ? ? ? ?

?
?

在导入的CAD数据质量较差时, 例如存在: 洞和缝隙; 错配的边; 多重边(multiple edges); 折叠尖角(sharp angle folds); 很差的三角形状 (如needles cells); 交叉(self intersection); 非流形拓扑结构(non-manifold topology)

时, surface wrapper可以用来提供一个封闭,流形,非交叉的表面。包括:
? ? ? ?

封闭洞(holes), 缝隙(gaps)和错配的面(mismatches); 去掉双重面(double surfaces), 除去不需要的内部几何特征; 简化表面, 除去不必要的细节; 提供基于曲率(curvature), 临近率(proximity)以及对独立表面的细化

2.1.1.1 surface wrapper的属性选项
?

Surface wrapper的属性有3 个选项:
?
? ?

Do curvature refinement Do gap closure Do proximity refinement

?

缺省情况下, 只有Do curvature refinement打开
curvature refinement, gap closure, proximity refinement 在附录中有介绍

2.1.1.2 surface wrapper的全局(global)设


使用surface wrapper时,有如下的全局控 制参数:
? ? ? ? ? ? ?

base size; gap closure size; surface curvature(#Pts/circle ); surface proximity (Search Floor, # Points in a gap); surface size; wrapper feature angle; and wrapper scale factor
解释

2.1.1.3 surface wrapper区域(region)设
有关区域Region和边界(boundary)的概念见附录



在区域(region)这一级, 有三个选项来 进一步控制包面效果,它们是:
? ? ?

volume of interest specification; contact prevention; smallest wrapping volume

其中体积指定(volume of interest specification)有如下四个选项:
? ?

?
?

external; largest internal; seed point; nth largest
Largest internal Nth largest

解释
external Seed point

2.1.1.4 surface wrapper边界(boundary)设



在边界(boundary)这一级, 对 每一个边界,有四个控制参 数:
? ? ? ?

custom gap closure size; custom surface curvature; custom surface proximity; custom surface size
解释

2.1.2 surface remesher
? ? ?

surface remesher用来对已有的表面进行再次三角化, 以 便提高表面三角形质量, 为生成体网格做准备. Remeshing的效果主要取决你设定的目标尺度, 同时可以 提供基于表面曲率(curvature), 临近率(proximity)的细化. 在每个边界(boundary), 可以设定不同的目标尺度, 进行局 部控制.也可以取消remesher, 以便保留原始网格.

2.1.2.1 surface remesher的属性选项

?

Surface remesher的属性 有两个选项:
?

?

Do curvature refinement Do proximity refinement

?

缺省情况下, 两个选项都 打开

curvature refinement, proximity refinement 在附录中有介绍

2.1.2.2 surface remesher的全局(global)

设定
使用surface remesher时,有如下的 全局控制参数:
? ? ?

?
?

base size; surface curvature(#Pts/circle ); surface growth rate; surface proximity(Search Floor, # Points in a gap); surface size
解释

2.1.2.3 surface remesher边界 (boundary)设定
?

在区域(region)这一级, remesher没有控制选项. 在边界(boundary)这一级, 有 如下四个控制参数:
?

?

?
? ?

custom surface curvature; custom surface proximity; custom surface size; customize surface remeshing
解释

2.1.3 特征线

?

?

为了抓住想要的几何特征, 得到高质量的网格( 无论是面网格还是体网格), 有必要定义特征线. 所有定义为特征线的边(edge),将会在meshing过 程中保留. 此外, 在进行表面修理时(例如补洞, 缝合边), 也 需要事先定义特征线.

2.1.3.1创建特征线
STAR-CCM+里, 可以创建下面 亓种特征线:
?

? ? ? ?

sharp edges – 创建基于锐边角度值 (Sharp edge angle value)的特征线 ( 缺省值为31度); free edges – 将所有的自由边定义 为特征线; non-manifold edges – 将所有的非 流形边定义为特征线; patch perimeters – 将patch的周围 定义为特征线 boundary perimeters – 将边界的周 围定义为特征线

2.1.3.2 增加特征线
?

特征线可以按照如下方 式手动添加

2.1.3.3 编辑特征线
?

可以对特征线进行编 辑(重新分组或删除)

2.1.4. 面的修补

STAR-CCM+里可以利用特征线对表 面进行修补. ? 补洞 (hole filler) ? 缝合边 (edge zipper)

2.1.4.1补洞 (hole filler)

2.1.4.2缝合边 (zipping edge)

2.2 体网格
?

STAR-CCM+有三种体网格模型:
? ? ?

tetrahedral mesher polyhedral mesher trimmer

?
? ?

对以上3种网格模型, 都可以同时使用prism layer mesher, 以便在近壁区域产生棱柱状边界层网格. 使用volume source (包括长方体, 球体, 圆柱体, 圆锥 体)可以对网格密度进行控制 当解析结果存在时, 生成新的网格后, 解析结果会自 动映射到新的网格上.

2.2.1 polyhedral mesh
?

使用polyhedral mesher产生的网格如下:

2.2.2 tetrahedral mesh
?

使用tetrahedral mesher产生的网格如下:

2.2.3 Trimmed mesh
?

使用trimmer产生的网格如下:

2.2.4 prism layer mesh
边界层网格有如下控制参量: ? 边界层层数; ? 边界层厚度; ? 边界层分布(三种方法任选其一):
? ? ?

stretching factor near wall thickness thickness ratio

Stretching factor: 相邻两层厚度之比 Near wall thickness: 最靠近壁面那一层的厚度 Thickness ratio: 最外层和最内层厚度之比

2.3 模型的演化
2.3.1 三维网格转化二维网格 2.3.2 针对区域(region)的演化
? ? ? ? ?

2.3.2.1 2.3.2.2 2.3.2.3 2.3.2.4 2.3.2.5 2.3.3.1 2.3.3.2 2.3.3.3 2.3.3.4

区域的缩放 区域的平移 区域的旋转 区域的合并 区域的分割 边界的合并 边界的融合 边界的分割 边界的投影

2.3.3 针对边界(boundary)的演化
?

?
? ?

2.3.1: 三维网格转化二维
?

导入三维网格后, 任何位于Z=0平面的边界 (boundary)都可以被抽取出来, 然后作为二 维网格来计算.

2.3.2.1 区域的缩放

2.3.2.2 区域的平移

2.3.2.3 区域的旋转

2.3.2.4 区域的合并

2.3.2.5 区域的分割
?

通过连续性对区域进行分割

2.3.2.5 区域的分割(续):通过函数
?

可以通过用户场函数来对区域进行分割, 例如通 过Tools> Field functions > new function, 建立名为 User Field Function 1的用户函数: ($$Centroid[0] < 4) ? 0 : 1 然后通过该函数对图示区域进行分割.

2.3.3.1 边界的合并

2.3.3.2 边界的融合

2.3.3.3 边界的分割
有五种方法可以进行边界的分割: ? splitting non-contiguous boundaries; ? splitting boundaries by angle; ? splitting by function; ? splitting by patches; ? splitting by feature curves

2.3.3.4 边界的投射
?

有时为了创建交界面或是抽取二维网格, 需要将一条起伏的边界投射到某一平面 上, 这时可以使用边界的投射功能

2.4 界面(interface)的处理
界面(Interfaces)可以由现存的 边界(boundary)创建: ? 由两条边界创建一个界面 ? 将一条边界转化为界面
界面可以用来: ? 创建baffle或porous baffles; ? 创建周期性边界 ? 将两块同一类型或不同类 型的区域连接起来.

界面的类型见附录

2.4.1 由两条边界创建交界面
?

选择两条需要定义为界面的边界, 可以创建一个交界面. 然后在Interfaces节点上会出现一个新的界面名称.

在Interfaces下会出现一个新的节点.

2.4.2 将一条边界转化为交界面
将一条边界转化为交界面时: ? 这条边界(boundary)会自动生成一份拷贝; ? 一个in-place类型的交界面会自动创建

Chap.3 STAR-CCM+ 计算设定
3.1 物理模型 3.2 边界条件 3.3 初始条件 3.4 Solver参数 3.5 监控(monitor)设置 3.6 终止判据

3.1 物理模型
空间 时间 运动 材料 流动 二维, 三维, 轴对称 稳态, 显式非稳态, 隐式非稳态 静止, 刚体运动, 运动参照系 气体, 液体, 固体, 多组分气体, 多组 分液体, 多相流(VOF, 可以考虑空化) 耦合求解, 分离求解

状态方程
粘性格式 辐射 其他

常密度, 理想气体, 多项式密度
无粘, 层流, 湍流
Surface-to-surface, Discrete ordinate

被动标量, 重力, etc

3.1 物理模型(续)
Lien Low-Re AKN Low-Re

K-Epsilon

Realizable K-E Realizable 2-layer K-E Standard K-E Standard 2-layer K-E BSL K-Omega

湍流模型

K-Omega

SST K-Omega Standard (wilcox) K-Omega 线性压力应变

雷诺应力模型

线性压力应变(2层) 二次压力应变 标准Spalart-Allmaras

Spalart-Allmaras

高雷诺数Spalart-Allmaras

3.2 边界条件
STAR-CCM+使用如下的边界条件:
?

?
? ?

?
? ?

?

velocity inlet; symmetry plane; wall; stagnation inlet; pressure outlet; mass flow inlet; free-stream; and flow-split outlet.

选择类型

定义大小

3.3 初始条件
初始条件可以通过如下方法 设定: ? 使用定值; ? 使用场函数 ? 使用列表数据. 此外,还可以对每个单独的 区域设定进行定制。

注: 现在的版本不支持通过User Code 来定义初始条件

3.3.1 使用定值
通常情况下,大多数初始条 件均直接输入定值。

?

3.3.2 使用自定义场函数
步骤: ① 定义场函数 ② 选择该变量指定方 式为FieldFunction ③ 选中已定义的场函 数

例如在VOF两相流计算中,指定空气的体积份数 为: ($$Position[0] >= -1) ? 1 : 0

3.3.3 通过列表数据指定
步骤: ① 读入列表数据 ② 选择指定方式为Table(*) ③ 选中已读入的table数据
2

1

3

3.4 Solver 参数
?

在Solver节点,可以调整诸如 松弛因子,Courant数之类的 求解器参数

3.5 监控(monitor)设置
STAR-CCM+可以提供两种监控: ? 残差监控(residual monitors) ? 基于Report的监控(report-based monitors)

3.5.1 残差监控
残差(residual)代表各守恒 方程在控制单元的不满足 程度。缺省情况下,在进行 运算时残差监控(Monitors) 和残差显示(plots)会自动 创建。

?

3.5.2 基于报告(Report)的监控
?

?

基于Report的监控可以用来监 视我们感兴趣的变量(例如压 力系数)在迭代过程中的变化 情况。 任何一个report都可以用来创 建监控(Monitor), 同时基于 report的监控(Monitor)可以用 做计算的终止判据。

3.6. 终止判据

?

使用自动生成的终止判据
? ?

稳态 非稳态

?

使用基于监视(monitor)的终止判据
? ? ?

最大值 最小值 渐进值

3.6.1 使用自动生成的终止判据

?

稳态
? ?

Maximum Steps; Stop File:

?

非稳态
? ? ? ?

Maximum Inner Iterations; Maximum Physical Time; Maximum Steps; and Stop File.
解释

3.6.2 基于监视值的终止判据
?

?

相对于设置迭代步数,更有意义的方法是设置基 于监视值的终止条件,例如限定残差最小值,或 是监控某个物理量(例如阻力系数和升力系数) 是否达到稳定。 有3种限制方法:
?

?
?

最小值(minimum) 最大值(maximum) 渐进值(asymptotic limit)

3.6.2.1 使用最大/最小值
?

?

缺省情况下,基于 monitor的终止条件均采 用最小值限制。 选择最大或最小值限制 后,可在属性栏设置指 定的数值。

3.6.2.2 使用渐进值
?

使用渐进值限定(asymptotic limit)的方法可以让 我们监视某个变量是否达到稳定. 如在给定区间 (如10个迭代步数)的最大变化量(|Max-Min|)小 于某个数值,则计算终止。

Chap.4 STAR-CCM+后处理

4.1 显示几何 4.2 显示标量 4.3 显示矢量 4.4 显示流线 4.5 显示x-y图

4.1 显示几何
? ?

操作: Scenes>New Scene>Geometry 在属性栏可控制不同的显示模式, 如 显示网格, 特征线, 轮廓线等

4.2 显示标量
? ?

操作: Scenes>New Scene>Scalar 在属性栏可控制标量的显示

4.3 显示矢量
? ? ?

操作: Scenes>New Scene>Vector 在属性栏可控制矢量的显示 缺省情况下显示的是速度场,但是其 它矢量场也可以显示出来。

4.4 显示流线
显示流线的步骤: ① 创建一个新的Scene ② 创建一个新的derived part. (操作: Derived Parts > New > Streamline... ) ③ 这样一个新的streamline节点会出 现在该Scene下, 可以在属性栏控 制显示效果. (lines, ribbons,tubes)

1

2

3

4.5 显示X-Y图
显示X-Y图的步骤: ? 右击Plots, 选择 New Plot> XY Plot.
?
?

1

选择数据所在的part(如某 个截面) 选择X, Y轴的类型, 选择函 数名称
2

3

Chap.5 STAR-CCM+其他工具(tools)

? ? ? ? ? ?

5.1 注释 5.2 局部坐标系 5.3 场函数 5.4 table 5.5 用户子程序 5.6 Volume shapes

5.1 使用注释
注释是什么 注释就是用户想要增加在图形里面的文字或图片.
?

2D 图形

3D 图形

5.1.1 添加注释
添加注释的步骤: ① 右击 Annotations节点, 选择New> Simple Text ② 出现新的节点:user 1, 在属性栏进行定义. ③ 将定义好的注释拖到scene图形中

1 2

3

5.2 局部坐标系
?

?

局部坐标系可以在全局坐标系的基础上定义. 可 以是笛卡尔, 圆柱或球形坐标系. 局部坐标系经常用来定义边界条件和初始条件, 例如:
? ?

提供一个旋转进口的速度剖面. 提供一个旋转区域的速度

5.2.1 创建局部坐标系
? ?

在Tools节点, Coordinate Systems node > New > Cartesian Coordinate System. 在属性栏进行定义.

5.2.2 显示局部坐标系
?

将创建好的局部坐标系节点”拖”到Scene图形窗 口(见1)或是”拖”到该Scene节点(见2).

(1)

(2)

5.3 用户场函数
?

?

STAR-CCM+可以让用户定义自己的场函数, 可以是标量场或矢量场; 可以手动创建或是在 已有场函数的基础上定义 定义用户场函数的语法采用C语言子集. 如果 出现语法错误, 在输出窗口有相应提示.

例如: ($$Position[0] >= -1) ? 1 : 0 ($Time >= 0.01) ? 1000 : 300+70000*$Time

5.3.1 定义场函数
1.

2.

在Tools节点, 选择Field Functions >New Function. 在属性栏对函数进行具体定义

对函数进行定义

5.3.2 引用已有函数

$Temperature $$Velocity $$Position[0]

$$Velocity[0]

定义用户场函数时经常要引用已有的函数

5.3.3 user function示例
?

体积份数初始分布: ($$Position[0] >= -1) ? 1 : 0

边界上的温度随时间的变化(0.1秒之前从300K线性上升到 1000K: ($Time >= 0.01) ? 1000 : 300+70000*$Time
?

采用[X, Y, Z]的形式定义一个管道的初始速度场, 以X=4为 分界面, 在大直径截面上的速度为10, 在小直径截面上速 度为2: [($$Centroid[0] < 4) ? 2 : 10, 0, 0]
?

5.4 Table
?
?

STAR-CCM+里的Table意指包含多个变量的表状数据 我们可以:
? ?

读入table数据, 例如来定义边界条件和初始条件 从流场中抽取table数据. 例如可以用来作为其他模拟时的边界条件或初 始条件..
-4.035 0.8604
-3.386 0.8584 -2.487 0.84544 -2.017 0.81856 -1.695 0.78999 -0.937 0.67503 -0.761 0.64874 -0.455 0.5848 -0.288 0.56893 .xy -0.11 0.56395

?

STAR-CCM+可以抽取2种基本类型:
? ?

xyz internal tables radial internal tables.

?

STAR-CCM+可以读入3种基本表格类型: .tab, .csv, .xy

{'Type': 'xyz' 'DataSets': [ 'X' 'Y' 'U' 'SaNut'] 'X': [-4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4] 'Y': [1.0 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2.0] 'U': [0.04 0.123 0.209 0.291 0.359 0.409 0.445 0.471 0.491 0.509 0.523] 'SaNut': [1.14e-05 3.51e-05 6.078e-05 8.84e-05 0.00012 0.00015 0.00019 0.00022 0.00026 0.00030 0.00035] }

.tab

"Pressure" "X" "Y" "Z" -4.575748e+000 -8.418948e-003 2.498270e-002 .csv 2.594989e-004 7.556490e-001 -1.588532e-002 2.644022e-002 8.548013e-003


5.4.1 读入table
?

右击Table节点, 选择 New > File...

5.4.2 创建table
步骤: ① 创建一个新的空table (XYZ或 R Internal ) ② 指定数据所在的part. ③ 指定抽取的变量. ④ 抽取数据. 这样, 新的table数据创建出来. 可以用于当前模拟或 是输出到外部文件

1

2 1

3 4

5.5 用户子程序(user code)
? ?

?

?

?

User code 可以让用户自己定制函数, 函 数可以用C, C++ 或Fortran写成. User code采用用户库(user library)的形式 出现. 每个用户库包含一个(或多个)用户 函数(user function)和一个注册函数 (library registration function). 一旦用户库(user library)被导入, 其定义 的用户函数会出现在合适的下拉菜单 (drop-down lists)中, 以备使用. User code 一般用来指定边界(boundary) 或区域(region)上的值的分布. 例如初始条 件, 边界条件, 源项. 用来定义标量场或矢量场的User code, 其 功能和 Field Function差不多. 但是相比 Field Function, User code显得更加强大, 可以实现更复杂的功能.

Loading a New User Library

5.5.1 创建用户子程序的步骤
?

用户函数的书写必须遵守C模版(C template)或 Fortran模版(Fortran template)的规范. 每个定义的用户函数都要加至注册函数中 (library registration function), 以实现注册. 编译用户函数和注册函数, 可以得到最终所需的 用户库(user library).

?

?

5.5.2 用户函数模版

C模版
#include "Real.h" void name(result, int size, args ...);

Fortran模版
subroutine name(result, size, args ...) use StarRealMod integer, intent(in) :: size

5.5.3 用户函数示例(C)
以下用户函数设定边界上的温度梯度为零.
#include "Real.h" /* Set boundary temperature equal to cell temperature */ void zeroGradT(Real *result, int size, int (*fc)[2], Real *T) { int i; /* Loop through all entities applying T_boundary = T_cell * * fc[i][0] is the cell next to i */ for (i = 0; i != size; ++i) { result[i] = T[fc[i][0]]; } }

5.5.3 用户函数示例(Fortran)
以下用户函数设定边界上的温度梯度为零.
C Set boundary temperature equal to cell temperature subroutine zeroGradT(result,size,fc,T) use StarRealMod implicit none integer, intent(in) :: size real(StarReal), intent(out) :: result(size) integer, intent(in) :: fc(2,*) real(StarReal), intent(in) :: T(*) integer i C Loop through all entities applying T_boundary = T_cell C fc(1,i) is the cell next to i do i = 1,size result(i) = T(fc(1,i)) end do return end

5.5.4 注册函数(Library registration functions)
?

每个用户库必须包含一个注册函数: uclib (for C) 或者 uflib (for Fortran). 当用户库被加载时, STAR-CCM+ 会首先调用注 册函数, 以便确认用户库里究竟定义了哪些用户 函数, 以及它们的返回值的类型是什么.

?

?

注册函数(Library registration functions) 也须遵 守C模版或Fortran模版的规范.

5.5.5 注册函数示例 (C)
#include "uclib.h" void zeroGradT(Real*, int, int*, Real*); void initVelocity(Real*, int, CoordReal*); void sutherlandViscosity(Real*, int, Real*); void uclib() { /* Register user functions here */ ucfunc(zeroGradT, "BoundaryProfile", "Zero Gradient Temperature"); ucarg (zeroGradT, "Face", "FaceCellIndex", sizeof(int[2])); ucarg (zeroGradT, "Cell", "Temperature", sizeof(Real));

ucfunc(initVelocity, "RegionProfile", "Initial Velocity"); ucarg(initVelocity, "Cell", "Centroid", sizeof(CoordReal[3]));
ucfunc(sutherlandViscosity, "ScalarFieldFunction", "Sutherland Viscosity"); ucarg(sutherlandViscosity, "Cell", "Temperature", sizeof(Real)); }

5.5.5 注册函数示例 (Fortran)
The equivalent library registration function in Fortran 90 could be coded in uflib.f: subroutine uflib() use StarRealMod implicit none C Register user functions here external zeroGradT,initVelocity,sutherlandViscosity call uffunc(zeroGradT, "BoundaryProfile", & "Zero Gradient Temperature") call ufarg (zeroGradT, "Face", & "FaceCellIndex", 2*StarIntSize) call ufarg (zeroGradT, "Cell", & "Temperature", StarRealSize)

call uffunc(initVelocity, "RegionProfile", & "Initial Velocity") call ufarg(initVelocity, "Cell", & "Centroid", 3*CoordRealSize)
call uffunc(sutherlandViscosity, "ScalarFieldFunction", & "Sutherland Viscosity") call ufarg(sutherlandViscosity, "Cell", & "Temperature", StarRealSize) return end

5.5.6 创建用户库(User Library)
?

用如下的命令编译得到用户库 .

Compiler GCC GNU Fortran 77 G95

Compilation Command gcc -fPIC -shared *.c -o libuser.so g77 -fPIC -shared *.f -o libuser.so g95 -fPIC -shared *.f -o libuser.so

5.6 Volume shapes

?

Volume shapes可以让用户定义四种不同类型的封闭体积, 即块状, 圆锥, 圆柱, 球体, 以便进行网格细化(或粗化). Volume shapes 可以手动输入数值创建或使用交互式工具. 可以使用不同类型的Volume shapes, Volume shapes之间可 交叉.

?

?

5.6.1 创建Volume shapes(球状)
Tools > Volume Shapes > New Shape > sphere

5.6.2 创建Volume shapes(块状)
Tools > Volume Shapes > New Shape > brick

5.6.3 创建Volume shapes(柱状)
Tools > Volume Shapes > New Shape > cylinder

5.6.4 创建Volume shapes(圆锥)
Tools > Volume Shapes > New Shape > cone

Chap.6 一个简单的例子
Y-tube

?

启动STAR-CCM+
?

在Unix and Linux机器上, 输入(须事先正确设置PATH环 境变量):
starccm+

?

在Windows 2000/XP机器上, 从 Start 菜单打开程序:

新建一个 Simulation

>> simulation 是什么? >> 使用 Client 和 Server

导入网格
在Region节点下会出现一个 新的region: Region 1

STAR-CCM+ 在输出栏显示反馈 信息.

查看表面网格

在属性栏选中Mesh, 可以显示网格

创建特征线并补洞
在补洞之前, 必须将洞口周围的自由边作为特征线创建 出来.

选中特征线节点, 右击然后选择Fill All Holes

分割边界
必须将名为Filled Holes 的边界分开, 以便定义不同的边
界条件.

设定边界名称及类型
设定如下的边界名称及类型
Boundary Boundary 1 Filled Holes Filled Holes 2 Filled Holes 3 New name wall inlet1 outlet inlet2 Boundary type Wall Velocity Inlet Flow-Split Outlet Velocity Inlet

选择网格模型

设定总体网格参考值
设定如下的总体网格控制参数:
Reference Node Name Property Name Value

Base Size
Number of Prism Layers Prism Layer Stretching Prism Layer Thickness>Absolute Size

Value
Number of Prism Layers Prism Layer Stretching value

3 mm
2 (default) 1.5 (default) 3 mm

Surface Curvature
Surface Growth Rate Surface Proximity Surface Size>Relative Minimum Size Surface Size>Relative Target Size Volume Mesh Density

#Pts/circle
Surface Growth Rate Search Floor Percentage of Base Percentage of Base Density

36 (default)
1.3 (default) 0.0 (default) 25 (default) 100 (default) 1.0 (default)

运行 Surface Remesher
在工具栏, 点击
(网格数: 785154)

(生成面网格)按钮, 生成新的面网格

运行 Polyhedral Volume Mesher
在工具栏, 点击 (生成面网格)按钮, 生成新的面网格

(多面体网格数: 123874)

选择物理模型
在 Physics Model Selection 对话窗口, 依次选择如下模型:
Space Material Motion Flow Equation of state Time Viscous regime turbulence Three dimentional Gas Stationary Segregated flow Ideal gas Steady Turbulent K-E turbulence

设定初始条件
设定如下初始条件: variables
Pressure velocity components Turbulent dissipation rate Turbulent kinetic energy

Initial values
0 (gauge) [0, 0, 0] (m/s) 150 (J/kg-s) 1.5 (J/kg)

在湍流指定方式节点, 选择 K+Epsilon 指定方法

设定边界条件
设定如下边界条件:
Boundaries inlet1 inlet2 outlet Wall type Velocity inlet Velocity inlet Flow-split outlet wall Boundary conditions (default, T=300K, V=1m/s) (T=350K, V=1m/s) (default) (default)

设定Solver参数和计算终止条件

? ?

使用缺省的求解器参数 设定最大迭代步数( Maximum Steps) 为250

创建Report, 创建基于Report的监控 (Monitor)和显示(Plot)

进行计算
点击工具栏上的 (Run) 按钮开始计算
(Stop) 按钮终止计算. 然后点击 可继续计算 ) (在计算工程中, 可以随时点击

创建 Derived Part: 一个截面
勾上 Plane Tool 可以显示交互式定 义工具, 以方便截面的选取.

定义截面完成后, 一个新的节点 出现在Derived Parts 下

显示标量云图

选择想要的变量

显示速度矢量

改变网格
?

在网格模型选择窗口, 反选Polyhedral model, 然后选择Trimmer model. 点击 重新生成 体网格

已有的结构会自动映射到新的网格 上

进行更多迭代
?

设定最大迭代步数为500, 点击 进行更多迭代

Y_tube Case: 总结
1. 2. 3. 4.

5.
6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22.

启动STAR-CCM+ 新建一个 Simulation 导入网格 查看网格表面 创建特征线并补洞 分割边界 设定边界名称及类型 选择网格模型 设定总体网格参考值 运行 Surface Remesher 运行 Polyhedral Volume Mesher 选择物理模型 设定初始条件 设定边界条件 设定求解器参数和计算终止条件 创建Rport, 创建基于Report的监控(Monitor)和显示( Plot) 进行计算 创建Derived Part: 一个截面 显示标量云图 显示速度矢量 改变网格 进行更多迭代

Chap.7 附录

7.1 区域和边界的概念 7.2 曲率细化, 临近率细化和间隙封闭尺寸 7.3 界面的类型 7.4 使用server和client架构

7.1 区域和边界的概念
边界(boundary)是表面(对二维问题则是线), 这些表面(或线)围成 一个区域(Region).

7.2 曲率细化, 临近率细化, 间隙封闭

尺寸
?

曲率细化 (curvature refinement, 可用于surface wrapper, surface remesher
和trimmer)通过控制圆周上的点数(#Pts/circle)对网格进行细化

?

临近率细化(proximity refinement, 可用于surface wrapper, surface
?

remesher和trimmer ), 通过控制搜寻距离(Search Floor)和缝隙点数 (number of points in a gap)来对网格进行细化.
搜寻距离(Search Floor) represents the minimum size gap to be considered for proximity refinement (based on the # Points in a gap). It is useful when the surface contains overlapping faces or faces otherwise in extremely close proximity due to complex detail or CAD artifacts. If a gap is found with a distance less than the search floor value, it will not be considered for proximity to prevent unwanted refinement. 缝隙点数 (# Points in a gap) value is used for specifying the refinement for surfaces that are in close proximity to one another. A local size for triangles or cells is determined by dividing the distance from one face to another across a gap by the specified # Points in a gap parameter, as long as the gap distance is not less than the Search Floor value.

?

?

缝隙封闭尺寸(The gap closure size) 参数控制着在Surface Wrapping过程

中判定几何面上的缝隙是否封闭. 一个洞要被认为是间隙, 洞的实际尺寸必须 小于设定的间隙封闭尺寸. 所有大于指定间隙尺寸的洞将不被封闭.

7.3 界面的类型

界面(Interfaces)分为两种拓扑类型: ? 直接界面(direct interface)
?

界面被分割, 两条新的边界会自动创建, 原来的边界则相应 减小 界面没有被分割, 只是简单的联接关系, 质量, 热量等的传递 通过平均方法实现

?

非直接界面(indirect interface)
?

直接界面

7.3 界面的类型(续)

在直接边界(direct interface)里, 有三种类型: ? in-place; ? periodic; ? repeating.

7.4: 使用 client和server
STAR-CCM+ 使用 client-server 架构: ?仿真文件在server上创建并求解. ?在client上操作工作界面

7.4.1 建立本地server

7.4.2 建立远程server

7.4.3 建立并行的server
?

starting a server on multiple CPUs :

7.4.4 连接server

?

在本地开启STAR-CCM+, 找到想要连接的 server点击右键, 选择connect

END


相关文章:
黑客入门VIP精华教程视频
黑客入门 VIP 精华教程视频 01 ping 命令的使用 http://images.enet.com.cn/...三维造型高级培训教程 http://www.starinfo.net.cn/photo2000_3d_advance.zip...
最基础的面试工具之STAR法则
基础的面试工具之STAR法则_经管营销_专业资料。STAR法则最基础的面试工具之 STAR 法则 所谓 STAR 原则,即 Situation(情景) 、Task(任务) 、Action(行动)和 Resu...
超级电脑学习资料大全
三维造型高级培训教程 http://www.starinfo.net.cn/photography/gif/f6/shuji/...//www.starinfo.net.cn/photography/gif/f6/shuji/html123.zip linux 基础...
Imatest史上最详细教程
Imatest史上最详细教程_电脑基础知识_IT/计算机_专业资料。Imatest 史上最详细...Star Chart - Analysis of the Siemens star chart Introduction Creating, ...
语音的ipt基础知识
语音的 ipt 基础知识整理者 chen 1. debug voice ccapi 可以 debug 模拟信号 ...59. 如果要让 CCM 通过 IP 转到 GW,然后 GW 再通过 IP 转发到远端的 GW ...
常用后缀详解_电脑基础知识_IT/计算机_专业资料
用于 OS/2 CCH Corel 图表文件 CCM Lotus cc:邮箱(例如“INBOX.CCM”) CCO...(MOD)文件 DOC FrameMaker 或 FrameBuilder 文档;Word Star 文档、Word Perfect...
数据库系统基础教程答案ch7
数据库系统基础教程答案ch7_工学_高等教育_教育专区。数据库系统基础教程答案ch...(length >= 60 AND length <= 250); d) ALTER TABLE MovieStar ADD ...
STAR-CCM+安装教程9.02.005_图文
STAR-CCM+安装教程9.02.005_计算机软件及应用_IT/计算机_专业资料。。。...STAR-CCM+__3D-CAD_培训... 97页 1下载券 STAR-CCM+基础培训教程C......
star-ccm+系列软件安装教程_图文
star-ccm+系列软件安装教程_计算机软件及应用_IT/计算机_专业资料。star-ccm+...star-ccm+应用技巧 2页 免费 STAR-CCM+ 基础培训教程 130页 1下载券 ...
STAR-CCM+安装说明
STAR-CCM+安装说明_计算机软件及应用_IT/计算机_专业资料。装 win64 版本,如果你电脑不是 64 位系统,建议你装个 64 位 win7 系统 选自定义 反选 FLEXNet,...
更多相关标签:
star ccm 安装教程 | star ccm 教程 | star ccm 视频教程 | star ccm 中文教程 | star ccm 教程 网盘 | star ccm 10安装教程 | star ccm实例教程 | star ccm 高级培训 |