Flow3D学习——3 算例1 Aerospace TutorialAerospace Tutorial新建一个项目,Model Setup Tab-Meshing & Geometry Tab-Subcomponent Tab-Geometry Files-c:\Flow3D\gui\stl_lib\tank.stl,Type and Potential使用缺省选项,因为将引入其它形状作为固体,Subcomponent 1中坐标范围为:X: 5.0~15.0, Y: 5.0~15.0, Z: 0.0~15.0tank.stl的单位对FLOW-3D来说是未知的,可能是英寸、英尺、毫米等,现在假设模型是SI〔国际单位〕,那么流体或固体的属性都应该是SI的.〔这里有些糊涂,FLOW-3D会使用STL文件中的单位么?〕模拟的情况为从圆柱形底部入口向球形水箱内充水,计算域应该和此形状范围相近,略大一点但不能紧贴着形状边界.底边界的位置和边界条件类型有关,如果入口处流速已知那么模拟多少入口长度没有关系,因为断面形状是固定的,但是如果特定位置的压力是已知的,那么要把边界放在该位置处因为压力会受入口长度的重力和粘性效应影响而变化.建议计算域要大于最大几何尺寸的5%,底边界除外,可以小于5%,这样计算域底部和入口交叉,不会挡住水流,因此计算域定义为X: 4.95~15.05 Y: 4.95~15.05 Z: 0.05~15.05在Mesh-Cartesian的Block 1中按上面参数修改计算域尺寸,然后在Block 1上右键选择Update Mesh更新显示.Re = Reynold数 = Inertial Force/Viscous Force = UL/νBo = Bond数 = Gravitational Force/Surface Tension Force = gΔρL^2/σWe = Weber数 = Inertial Force/Surface Tension Force = LU^2ρ/σU是特征流速,L是特征长度,g是重力加速度,ρ是密度,σ是表面张力系数.这个问题中大约用100s充满水,冲水体积540立米,入口直径2m,入口流速为540/<100*π*1^2>=1.7m/s,Reynolds数为Re=1.7*2/<1.0e-6>=3.4e6由于Reynolds数远大于1,因此惯性力比粘性力更重要,即不需要很密的网格考虑粘性力,也不需要指定粘性特性.考虑表面张力影响的系数为Bo = gΔρL2/σ = 9.8m/s^2 * 1000 kg/m^3 * <2m>^2/<0.073kg/s^2> = 5.4e5We = LU2ρ/σ = 2m * <1.7 m/s>^2 * 1000 kg/m^3 / <0.073kg/s^2> = 7.9e4可以看出表面张力也不需要考虑.缺省网格在X、Z方向为10,Y方向为1.在Block 1上右键选择Automatic Mesh,通过网格大小或总网格数修改网格.由于入口直径2m,最少应该有5个网格,因此网格大小为0.4m,选择所有方向均为0.4生成网格.当前水箱为固体,在Geometry的Component 1下面展开Subcomponent 1,把Subcomponent Type由Solid变为Complement〔什么意思?〕,网格定义变为正常情况.选择工具栏中的Favor图标,在FAVORize下选择using computational mesh,在view component volume中选择Open,单击Render,保存项目显示.用cutting planes或mesh slice可以看到网格内部.〔这里是什么作用?为什么第二个例子里没有这步?〕选择Model Setup中的Boundaries tab定义边界条件,选择Z-min边界,选择Specified Velocity按钮然后输入W-velocity为1.7,其它边界条件不变.General tab:设置计算结束时间为100s,并在Finish condition中选择使用Finish time.低速流入时不必考虑气体影响,因此在Number of fluids中仅选择一种流体.Interface Tracking选择Free surface or sharp interface,如果是气体注入则用No sharp interface选项并用2种流体让气体扩散.Flow Mode选择不可压流体.Initial tab:这个模拟中不需要设置初始条件.Physics tab:设置使用的模块,因为是高Reynolds数,不需要考虑粘性,所以仅使用Gravity,Z-direction中输入-9.8.Viscosity和Surface tension模块不必考虑.Fluids tab:仅需要考虑流体密度,在左侧Density中的Fluid 1的Density中输入1000〔或者找到Water at 20 C-si用Load Fluid 1载入〕Output tab:Flow-3D始终输出速度、温度、流体fraction等,缺省输出间隔为1/10结束时间,暂时取缺省值.Simulate tab:Run Simulation.然后可以观看结果.下面进行热启动计算,关闭入口边界,定义x方向的加速度使流体摇晃,在计算域中嵌套一个块体并计算流体摇晃时流体对块体的作用力.转到Navigator下,File>Add Restart Simulation,创建热启动模拟,模拟名称取缺省值,选择OK.在General tab中选择Restart按钮,数据源〔flsgrf.*〕应该正确,热启动开始时间为100s,选择reset time to zero保证非惯性输入从0开始,其它取缺省选项.修改结束时间为12s.热启动既可以从输入文件中读入新的数据也可以从上次计算结果中读取数据,这些都在刚才的对话框〔Restart Options〕中设置.热启动时间输出在hd3msg中,可以在Restart Options的Times下拉列表中选择,还可以在Diagnostics>Solver Messages中查看.在Boundaries tab中设置Z-min边界为symmetry边界条件.在Physics Tab中选择Non-Inertial Reference Frame按钮,激活非惯性作用,并使用Tabular Input,输入数据0 5 0.0 9.8 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.03 -5 0.0 9.8 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.06 5 0.0 9.8 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.09 -5 0.0 9.8 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.010 0 0.0 9.8 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.012 0 0.0 9.8 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0在Meshing and Geometry中增加Component 2,选择Subcomponent-Cylinder并选择New Component 2,圆柱半径设置为0.25,Z-low为7,Z-high为12,单击transform按钮在X和Y方向均平移10.设置完后Geometry列表中多出Component 2项.〔每个Component表示具有不同性质的材料,同一Component下的每个Subcomponent都是相同材料的〕要计算障碍物上的作用力,创建嵌套的加密网格包含障碍物,这样计算结果更准确,嵌套计算网格范围为:X: 9.0 to 11.0 Y: 9.0 to 11.0 Z: 6.5 to 12.5在Mesh-Cartesian上右键选择Add Mesh Block,输入上面的计算范围.嵌套网格要保持比例在2:1以内,因此在Block 2上右键选择Auto mesh,设置所有方向网格大小为0.2.为保证插值准确,在Block 1中增加Block 2的边界点,在Mesh Cartesian的Block 1的X Direction上右键Add,增加9和11两个点,在Y方向相同,Z方向增加6.5和12.5.〔这是只增加点,不必重新划分网格?〕在Numerics tab下选择Pressure solver options下的Convergence controls,缺省inter-block boundary type coefficient为0.25,修改为0.〔如果不为0是什么含义?〕为计算障碍物上的作用力,包括压力和粘性剪切应力〔不是没有考虑粘性?〕,需要手动编辑输入文件,File-Edit simulation在$grafic namelist下增加障碍物上的力<这是什么意思?可能需要参考Input变量的说明>nwinf=1,xf1<1>=9.4, xf2<1>=10.6, yf1<1>=9.4, yf2<1>=10.6, zf1<1>=6.9, zf2<1>=12.1,修改Model Setup-Output中的Restart Data-time interval为0.24,这样每计算0.24s输出一次结果,12s会有50次输出.Simulate-Run simulation开始模拟在Analyze tab下选择flsgrf.aerospace_restart打开结果文件,作用力输出在Probe Tab下,在Data source中选择General History,可以检查障碍物上各方向的作用力,注意这些作用力包括压力和粘性剪应力,在列表中选择x-force window 1,Render查看.Flow3D学习——4 算例2 Casting Tutorial创建新的workspace,名称为Casting Example,创建新的simulation名称为casting.导入几个stl文件,每个文件都是Component 1的Subcomponent,即材料特性将应用于里面的每个固体.注入口〔sprue〕先作为固体导入以便观看,然后修改为complement,这样网格区域内除几何形状存在的区域都变为固体,即对那部分进行取反操作.另外cad生成的stl文件是毫米单位,这里用CGS单位,需要缩放1/10.导入c:\Flow3D\gui\stl_lib\sprue2.stl和part.stl,都作为Component 1的Subcomponent,把part.stl的类型改为Hole.把每个Subcomponent的Global Magnifications变为0.1.Subcomponent 2需要平移,X方向Translations为3,Z方向0.5.每次输入后按Enter键可以更新显示.增加一个Box作为Hole,参数为X 4.5-8.5, Y -0.4-0.4, Z -0.4-0.6使用3块网格计算,修改计算网格参数 # Cells Low HighX: 6 -1.5 1.5Y: 1 -0.1 0.1Z: 30 -3.4 11.6X: 21 1.5 12.0Y: 1 -0.1 0.1Z: 6 -2.4 0.4X: 16 2.5 10.5Y: 1 -0.1 0.1Z: 20 0.4 10.4此时可以把Subcomponent 1从Sol。