首页/文章/ 详情

Fluent的表达式

2年前浏览2726

导读:介绍Fluent表达式的使用。

什么是Fluent Expressions?      

     
  • 是一种基于Python的解释型的声明式语言

  • 功能

    • 指定与时间、迭代步、位置、求解变量相关的复杂的边界条件和源项
    • 基于时间和迭代步指定不同的模型和求解器设置
  • 由数值、变量、操作符、函数组成的可以返回一定值的字符串

    • 2 *  StaticPressure; 当它在一个域上进行计算时, 它返回域 (Zone) 的场
    • average  (2 *  staticPressure, ["inlet"]); 返回一个具体的实数值
    • Vmax(5.0exp(t-0.3[s]/2.8[s])
    • 返回的数据类型可以是数字、场、布尔值
  • 表达式的值可以是一个实数、整数、布尔数或Quantities

  • Quantities是一个带有量纲的实数。

    • 例如:23.0[Pa Kg^-3s]
    • 需要进行单位的指定


单位的指定      

     

-数据的量纲用单位或单位的组合 定义。例如:

  • 质量的单位可以是: [kg], [g], [lb]
  • 压力的单位可以是: [atm], [  \left[\mathrm{m}^{\wedge}-2\right],[\mathrm{Pa}]
  • 单位字符串的形式一般为 [multiplier| unit|^power]
    • multiplier是一个倍乘数, 例如: mega, pico, centi等
    • unit是单位, 例如:  k g, m, J ,等
    • power是指数-整个单位字符串必须用方括号包围, [...]。

-单位的声明需服从如下规则:

  • 必须包含一个或多个unit
  • 独立的unit必须用一个或多个空格分割
  • multiplier和power不是必需的
  • 可以使用缩写形式的multiplier。n(nano),  \mu  (micro), c(centi), k(kilo), m(milli),\mathrm{M}(  mega), G(giga)
  • Power以^代替。不支持使用/,所以必须使用负指数,如 [kg  \left.\mathrm{m}^{\wedge}-3\right]  。但是,可以使用/unit, 如  \mathrm{m} / \mathrm{s}
  • 不能以量纲术语 (例如:mass, length, time, temperature, angle) 给定单位。但\mathrm{Pa} 和J可以接受
  • 单位字符串大小写敏感。例如Kg和KG是无效的
单位的验证      

     
  • 如输入单位与物理量所需的单位不一致, 软件会弹出对话框进行提示
  • Fluent会自动验证表达式的单位并给出警告
    • 例如: 1 [cm] + TotalPressure
    • Fluent会给出警告。因为二者单位不一致
    • 例外: 缺失括弧有可能不报警。例如: Area(["inlet"]) vs Area["inlet"]
  • Fluent允许同一个表达式内使用不同的单位系统
    • 例如: 1 [atm] +  200[\mathrm{~Pa}]
操作符、数值和函数      

     
  • 操作符    
  • 条件运算
  • 数值
    • 表达式内的数值可以是实数、整形数、布尔值或Quantities
  • 双曲函数、数学函数、归约、三角函数
  • 矢量的分量可通过后缀.  x, . y, . z  获得, 模可以后缀.mag获得-IF语句
    • IF(
表达式创建      

     
  • 直接创建    
  • 生成Named Experssions    
  • 表达式相关条件(Contest Specification)指定
    • 在多组分/多相系统中,大量的值是与组分/相相关的
    • 例如:MassFracion(species="co2",phase="smoke")
案例1:抛物线型进口速度分布      

     
  • 定义Named Expression为 umax  =0.2[\mathrm{~m} / \mathrm{s}] ,表示进口周线上最大速度
  • 定义 Named Expression为 Radius  =\operatorname{sqrt}\left(\right.  Area  \left.\left(\left[{ }^{\prime} i^{\prime \prime}\right]\right)\right) / \mathrm{PI} ,表示管径
  • 定义 Named Expression为 radius  =\operatorname{sqrt}\left(x^{* } 2+z^{ *} 2\right) ,表示当地半径
  • 定义 Named Expression为 uprofile  =\operatorname{umax}^{*}(1-(radius/Radius)  * * 2  )
  • 将uprofile指定为进口速度


来源:新能源热管理技术
Fluent
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2022-11-15
最近编辑:2年前
LEVEL水平线仿真
硕士 | 热管理工程师 公众号LEVEL电池热管理技术
获赞 769粉丝 3944文章 321课程 8
点赞
收藏
作者推荐
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈