Flotherm工程——概览
Flotherm会对每一个模拟计算的算例建立一个独立的Flotherm工程。算例中涉及到的所有数据都会存储在在这一自动创建的工程目录文件夹中。当用户打开或保存一个工程时,Flotherm会自动从数据文件中提取或写入相关信息,将过程中详细的数字处理过程隐藏到后台,使整个应用过程变得简单易操作。
目录结构
通常情况下,使用Flotherm并没有必要去理解软件自动创建的文件夹中的目录结构,但这里仍做一些简单的介绍,以便某些特殊情况下的应用。
Windows系统中,软件安装时会默认在Program Files(在UNIX系统中,这一文件夹在/opt/目录下,笔者系统是Windows,经验证确实如此,但UNIX尚未验证,大家发现有误可以指出)中创建一个MentorMA文件夹。Flotherm文件的位置,即Solution Directory,默认存储在flosuite_v11\flotherm\flowuser中。这一目录位置当然是可以更改的,设定的模型存储在哪个文件夹,这一数据文件就会存储到哪里去。笔者的习惯是,会针对每一个项目建一个文件夹,项目所有资料分门别类的再建立子文件夹存放,仿真文件就放到项目总体文件夹下对应的仿真子文件夹类目中去,这样方便后续的查找,感觉也比较方便清楚,提给大家参考。在多用户的系统中,这一目录管理的方法优势尤其明显。
在工程求解目录中,没一个工程都有自己包含自身工程名的一个文件夹存在。但其文件夹名称中还包含了一长串的数字。在每一个工程目录下面,不同的数据类型存储在不同的子文件夹下。下图展示了连个工程文件的目录结构:
其实所谓了解这些文件目录,也仍只是对文件做简单的转移、备份工作。核心文件目前仍然无法打开进行直接编辑操作(或者可能有,但目前笔者暂时不知道怎么操作)。用户可能用到的文件有:
l 工程solution directory——如果flouser文件夹位置被重置,此文件夹就表示求解目录;
l Group.bak文件——是工程文件的一个备份,存储在PDProject目录下;
l 几何模型以及各种属性参数库文件目录;
l Floqueue,用于设定远程求解环境
LMCCache和LMRecent目录是库文件管理过程中所需的目录文件。
不要编辑这些文件
笔者:Flotherm软件为了用户使用过程中的便捷,自身做了一些列数据管理。通过其自身固化下来的目录储存方式,简化了过程中数据的管理环节。这带来的一个弊端就是用户不能随意更改其数据目录,因为中间任何一环出现差错,将导致整个工程无法再被使用。因此,可以查看和备份一些求解过程中的数据,但不要尝试编辑它们。
工程文件的使用
Flotherm对工程案例的分析,都是通过工程文件完成。打开Flotherm之后,或者创建一个工程,或者load一个已存在的工程进行后续的分析工作。
每一个Flotherm的工程都会在工程目录中创建或保存。在工程保存之前,求解器是不会工作的。
当一个工程被保存之后,后续其可以被再次下载,当然,如果需要,还可以输出成其他格式的文件,以便在别的Flotherm或者MCAD,ECAD系统中使用。
开始运行Flotherm
Flotherm可以既可以在交互式界面下运行,也可以在批处理模式下运行。下文分别做详细介绍。
开始在交互式界面下运行Flotherm
通常情况下,Flotherm都是在交互式界面中运行的。此时,算例设定,流动计算和结果分析都是在一个相同的程序计划(program session)中完成。
限制
Flotherm的交互式运行方式,只能在Windows系统平台下实现。
步骤
启动环节不再赘述。安装完成后,会有快捷方式。如果没有,就在安装目录下搜索flotherm.bat文件。双击即可进入交互式运行启动画面。
批处理模式下的运行
批处理模式主要用于哪些需要很长处理时间的庞大工程文件,或者你需要软件自动进行一系列的模拟运算时采用。
工程可以通过交互式方法进行创建,但通过撰写批处理文件,来实现软件的自动计算。
退出Flotherm
当解算器没有运行,且当前的工程也已经保存时,点击exit,软件将会直接退出。
限定和相关约束
如果用户视图在软件正在进行交换系数的计算或解算器正在运行时退出Flotherm,会出现提示窗,问及是否确定。关于其退出的文件更改确定等功能,与常规软件无异,且一目了然,此处不再赘述。
Floscript
用户可以使用XML文件作为脚本文件使Flotherm实现一系列的操作。Floscript的使用建立在用户已经对Flotherm的运行非常熟悉,且相当了解XML脚本文件的编写方法基础之上。通常情况下,这一功能并不常用。但遍历各种资料,关于Floscript的解释,均非常模糊。笔者对此功能应用也不多,此处做阶段性简述,必要的话,后续补充。
Flotherm的安装文件中提供了对Floscript的说明文档,具体目录为:
XML文件的编写,实质上就是程序语句的编辑。通过某些Flotherm可以识别的范式,实现模型的自动生成或者后处理结果的自动输出。因此,掌握Floscript的关键是明确这一固定范式。例如,在模型的root assembly下添加一个cuboid的句法如下:
语句完成编写后,可以通过Floscript图表来检查其句法,但推荐直接将Floscript语句加载到XML工具中,直接在编辑时就进行检查。
Floscript图表
Floscript图表在Flotherm安装文件中有详细的文档专门说明。其目录位置为:
这一目录文件中。此处将其粘贴如下:
Floscript在日常的工作中暂时并无用到。但如果要提高工作效率,或者所做产品类型非常相似,通过较为简单的转换就可以新建出合理的模型,那么Floscript就比较有用。
项目管理窗口
Flotherm启动后,默认打开项目管理(Project Manager,简称PM)窗口。如果PM窗口被关闭,整个Flotherm也将被关闭。PM窗口是建立和求解模型中的关键窗口。
关于基本操作,已经有大量中文教程进行指导,此处不再赘述。补充如下对理解模型建立方式有重要意义的说明。
Data Tree——数据树
Flotherm使用集合(assembly)与部件(part)两种模式来组织其几何数据。
这些集合和部件都会在Model标签下的数据树中呈现。对于所有的Flotherm工程,即使是没有任何几何体的工程而言,也将包含:
l 一个工程节点(Project node),在整个工程的最上方,用来区分不同的工程,以及导入或导出工程文件,工程节点的名称与工程名相同
l 一个系统节点(System node),用来定义求解域的大小,求解域的外围环境条件,以及求解域边界面的物理属性
l 一个最顶端的根集合节点,所有的几何部件都在此集合之下
当Flotherm初始启动时,数据树将会默认强制添加此顶端根集合。
新建对象面板
新建对象面板是固定在Drawing board面板和data tree中间的工具栏。所有Flotherm中可建立的对象,都在此面板中包含。新对象有两种创建方式:
1、 PM中创建
2、 DB中创建
关于各类部件的创建方法,大量中文教程都有指引,此处略去不再赘述。然而,无论对哪一种仿真模拟软件,理解各部件类型的物理意义,对于正确建立模型有非常关键的意义。这对于深层理解为什么某些对象上无法再建立子对象,也是最根本的。此处笔者根据自己的理解,进行简述。
l Cuboid——块。表示实体块。产品中有各种结构件,都可以用实体块来代替。当然,Flotherm中的Cuboid是结构化的六面体。从物理意义上理解,任何流体无法流过的区域或结构,都可以认为是实体块,都可以用实体块进行建立,通过赋值不同的材料属性、功耗等参数来表达其对散热场的影响。因此,从这个角度讲,几乎所有的物理实体都可以在块的空间处进行覆盖。
l Prism——物理属性同Cuboid,只是形状不一致。其形状是棱柱。
l TET——物理属性同Cuboid和Prism,只是形状不一致。其形状是四面体。
l Inverted tet——物理属性同cuboid、Prism和TET,只是形状不一致。其形状是反四面体。
l Resistance——Flotherm中一个常用的简化物理模型的组件,表示某区域对流动造成的阻力。复杂模型中,resistance是一个非常有用的简化工具。比如一个刀片式服务器,在设计前期,先通过数值风洞探究待插单板的阻力特性,然后设置resistance的相关参数(参数的设定在Flotherm官方的宏网站上有详细的指导,输入一定的参数之后,甚至可以直接输出PDML格式的文档,方便导入),通过resistance来替代详细单板,极大地减小网格数量,在前期进行风道优化设计,各结构附件对整机散热的影响时,有效提高仿真效率。从物理属性上讲,Resistance本质上讲就是一个均质多孔介质,Flotherm功能简单,它无法实现Fluent那样各处异性的赋值,不过,均质多孔介质的简化对于电子器件阻力的近似已经完全够用。从数值计算的角度上理解,多孔介质的设定并不引入新的变量,resistance存在的网格中,离散方程将根据用户的设定自动在相应控制容积内添加阻力项,此阻力项在控制方程中以源项的形式存在,调用的速度值为上一次迭代得出的速度值。因此,resistance模型的引入,完全没有增加新的变量,在计算过程中也不会造成计算机负荷的明显加重。推荐在风道优化过程中,甚至系统进出风口采用。
l Assembly:其作用相当于windows操作系统中的文件夹,可以存放各种类型的文件。所有可以单独存在的组件都可以放在assembly中,而那些不能单独存在的组件则不能直接建立。可以用这个例子类比:Windows文件夹中可以新建文件夹,这个文件夹可以是空的,也可以是有内容的,与此类似,assembly也是如此,其下可以建立新的assembly,新的assembly可以是空的,也可以包含组件。再有,Windows文件夹中可以存放各种类型的文件,比如word文档,exe文件,视频文件等等,但它不能直接储存几个字符或者一段声音。如果要存储,这些字符或者声音必须写入到相关的文件里,比如word文档或者一个MP3格式的文件,才能在文件夹中存放。Assembly也是如此,用户不可能直接在assembly下建一个孔,supply,extract,一个器件,一个网络节点或者网络块,因为这些组件不能脱离实体而存在。比如最简单的孔:孔只有在块或者板上出现,才能想象到它的意义,单独说有个孔,显然令人无法理解。
l Source:源是Flotherm中另一个非常常用简化组件。通常情况下,在分析传热问题时,它只被用作产生热量或者设置定温来使用,而实际上,它的功能远不止此。它还可以作为质量或力源。大家都知道,Flotherm求解的控制方程包含五个,连续方程,三个方向上的动量方程,以及能量方程。设置定温或者定发热功率,就是改变能量方程。数值压力,就是改变连续方程。设置力,就是改变动量方程。其实,力和质量极少使用,而温度和发热量非常常用。但既然flotherm已经通过软件实现了能量方程的有限制的定制化修改,实现另外四个方程实质上已经不需要再添加任何有难度的指令,所以即便不是很常用,也都集成过来放到这里供大家调用了。
Source的另外一个细节注意点是,面source会出现一个箭头。Source作用到动量方程时,表示力的方向。同时,source作用于其箭头指向的那一层网格。这一注意事项,在使用面热源进行芯片发热量建模时,有时很有必要注意。如果作用在芯片表面而箭头方向指错,有可能导致很大的计算误差。
l Heatsink:散热器。实际上是Flotherm为了用户建模方便设置的模块。物理意义上,相当于一系列cuboid的堆积。所以,其属性和块体一致。但它不能设置孔,是最大缺陷。但是,如果用户确实认为散热器上某处需要打孔,而又想利用Flotherm自带的这一模块化的功能,就可以建好这一模块之后,选中HeatSink,点Geometry,选择Decompose,即可将散热器打散,成为一系列cuboid的堆叠。此时,即可添加hole了。
l PCB:PCB也是Flotherm 便捷用户操作的一个组件,可以覆盖多种物理特性。
l PCB Component:类似Cuboid,但无法使用孔和循环设备。
l Sloping block:斜板,用于几何建模,组件子关系同PCB component。
l Enclosure:框。属性同Cuboid。所有情况下,都用Cuboid堆叠替代。
l Cylinder:圆柱。属性同cuboid。建议少用。Flotherm只有结构化网格,圆形界面不可能完全贴合,固有误差无法消除。
l Hole:孔。可以设置在Cuboid上,Hole分为开放式孔,还可以设定开孔率,模拟多孔板。设置开孔率去模拟多孔板,可以大幅降低网格数,极常用。
l Fan:风扇。是Flotherm为简化建模开发的最重要的部件之一。Flotherm中不能探究具体扇叶对流场的影响,但这种简化会显著提高建模和计算效率。Flotherm风扇的作用通过迭代实现。当设定PQ曲线时,软件的计算过程如下:给定风机压力,计算流场及温度场;回归计算风扇通风量,与PQ线进行比对。如有不符,根据上一次计算差调整给定的风机压力,重复上述过程,直至符合。
l Recirculation device:包含supply和extracts。可以通过别的组件来拼凑supply和extracts的具体形状。通常情况下,可以使用Recirculation device来对离心风机、换热器等Flotherm中并未直接建好而却比较常用的组件模块进行建模。既然能模拟风机,Recirculation device自身也可以设置PQ线。当然,由于recirculation device又并非仅用来建立离心风机,任何循环流动组件都可以用它来建模,所以,这里的PQ线是一个更广义的压力-流量线,反映了这一组件的流动阻力特性。可以说,再配合其热学设置项,recirculation device可以对产品许多组件实现非常大幅度的简化,当然,这一功能在Flotherm 11中通过添加cooler 和rack两个组件更加细化和显性化了。
Recirculation device在模拟换热器时的设置
l Cooler & Rack:Flotherm 11特地添加了这两个组件。从组成上看,这两个组件与recirculation device完全相同,但其属性设置有所区别。相对于recirculation device而言,Cooler还可以设定某点的温度值,设定其可以冷却掉热量的大小用来判断是否失效。对于Rack,我的理解是另一种简化程度更高的模型。它直接将产品中某对其他组件会产生热级联影响的组件集用rack这一个特征去代替。在了解了cooler 的设置项后,rack的各属性设定一目了然。
Cooler和Rack的参数设定界面
l Network assembly:从组件名称就可以看出,它其实是一个集合而非简单的几何体。一个完整的network assembly包含如下几级:
图示的是一个比较简单的热阻网络模型,其包含结、壳和板三个最基本的芯片元素。当精度要求较高,芯片内部组成比较详细时,你可以按照实际情况建立多个结,其热量的传递路径也可能并不是这么单一,除了结到板的传递,还可能有各种形式的边缘的管脚进行热量传递。内部结到板的传热,也有可能有引线参与。通过右键在network assembly上弹出的菜单中,可以设置node到node间的热阻属性,以便描述芯片内部的热物理属性。从这个角度,你不难理解,实际上发热块模型、双热阻模型、星形热阻模型等比较简单的热阻模型,都不过时network assembly的一种简化形态。
l TEC:热电制冷组件,室外柜中常用。室内电子产品目前用的还不多。随着其尺寸愈来愈紧凑,室内的应用,应该也会逐渐出现。
l PowerMap:需要从外部导入thermal map文件。属于精细化建模,而且模型树中的模型需要与powermap导入的文件对应起来,才不会出错。
总结 在Flotherm中定义散热问题
散热问题涉及的物理属性
l 求解域大小及边界条件
l 流动流体的热物理特性
l 需要求解的变量
l 模型的几何尺度
l 求解类型
l 重力影响
l 环境温度和压强
l 热辐射效应
上述8条为Flotherm帮助文档中所总结,全面概述了电子产品本身之外的各种需要考虑的因素,是所有热设计问题都需要考虑的宏观物理信息。实质上,对上述几个因素理解程度,直接决定热设计工程师能否建立可反映实际使用情况的仿真模型。每个因素都是优化产品热设计方案的根本依据。下面分别叙述这些因素的意义及其Flotherm中的设定方法。
Flotherm功能强大,使用便捷,但方便不意味着简单,好用不等于浅显。要想获得准确的仿真结果,真正利用仿真软件对自己的设计产生指导效果(而不是误导),必须要对整个传热知识体系以及热仿真知识框架有所了解。实话讲,从零开始到精准运用Flotherm,这个路程非常艰辛。反过来讲,掌握这门技能,你自己将变得价值非凡。
参考文献:
《 Flotherm 帮助文档 》
感谢阅读
中国热设计网是国内最具活力的热设计技术信息交流平台(QQ群319322744,网址www.resheji.com),如有合作需求,请扫码联系热设计网小谢,谢谢
标签: 点击: 评论: