CFX之CEL语言介绍讲解.doc

  1. 1、本文档共24页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
在CFX中,CFX表达式语言(CFX Expression Language :CEL)作为一种解释性和说明性的语言嵌入到CFX中。利用CEL,用户可以提高分析模拟的功能,而不需要使用外部分离的Fortran子程序。 在ANSYS的CFX程序中,只要是可以输入值的地方就可以使用CEL表达式进行输入。 CEL的适用范围: 通过变量定义材料属性; 设定复杂的边界条件; 对于求解方程增加求解项。 用户也可以使用监测点功能,在求解过程中对于某个CEL表达式进行监测。 注意: 有些CEL表达式只能在ANSYS的CFX中使用,而不能使用在CFD的后处理中。任何在CFX前处理器中创建的CEL表达式并作为设计浏览器(Design Exploration)中的输出参数,在设计浏览器运行的过程中可能导致致命的错误;所以,若用户需要进行设计浏览,则需要在CFD-Post(后处理)中创建所需所有的设计变量。 本读本包含如下内容: CEL基础。 CEL操作符,常量和表达式。 CEL的例子。 CEL技术细节。 CEL基础 值和表达式 利用CEL可以创建值变量和表达式。值变量可以是带量纲的,也可以是不带量纲的。例如下面这个最简单的不带量纲的变量: b = 3.743 用户也可以创建具有量纲的变量,如下: g = 9.81 [m s^-2] 在CFD计算过程中,变量的量纲是具有意义的,它们表征了质量,长度,时间,温度或者角度的信息。量纲也是理解值和表达式的基础概念之一。 在CEL中,值可以直接指定,也可以作为表达式的一部分。例如,用户可以使用两个值变量求和形成一个表达式: Expr_1 = Value_1 + Value_2 在本例中,用户可能希望将Value_1和Value_2相加并赋值给Expr_1,若只是两个无量纲的变量进行相加用户不需要考虑量纲的问题;但是这两个变量具有量纲则需要考虑量纲的问题了。 表达式可以由之前已定义的表达式进行定义,例如: Expr_2 = Expr_1 + Value_3 在CFX中进行表达式求值往往需要进行单位装换,在缺省状态下使用公制单位制(SI单位制),这样用户就可以使用任何自己的单位制了。 若某个表达式未设定自己的单位字符串,但是引用的变量中有的是具有单位的,则结果表达式的单位由引用的变量或表达式计算后的???纲所决定。例如:某个表达式引用了x坐标平方的倒数,则隐式的使用了长度的-2次方单位。 在表达式中使用定位符 在CFX模拟过程中,具有物理面和网格面的概念: 物理面:在CFX中表征物理边界条件的面称之为物理面; 网格面:在CFX中在几何拓扑结构中划分网格的面称之为网格面。 在模拟过程中,这两种类型的面可能占据完全不同的几何区域;然而,并不需要将物理面和网格面的名称完全区分开,这样只会在表达式使用过程中造成混淆。 为了避免混淆,在CFX使用“@locator”HYPERLINK mailto:进行物理面和网格面的区分。若在面名称中找到了“@locator”定位符则表示是一个物理面;若未找到则在网格面的列表中进行查找。例如:“in1”既是一个物理面的名称,可能也是一个网格面的名称,则“@locator”表示使用的是一个物理面。 在CFX中,用户可以使用@REGION参数表示某个命名的面是网格面。例如,为了表示网格面in1,可以使用如下表达式: @REGION:in1 注意:若定位符不是作为物理面或者网格面的表达式而出现,则该表达式无效。 CEL语句 CEL语言是一种说明性的语言。用户使用表达式语句进行表达式的申明和定义,并和Fortran以及C语言进行表达式定义的相一致: 语句中必须包含如下内容: The statement must consist of the following: 一个数,量纲可选,用于定义一个常量。 对于数学表达式,可能需要引用一个或者多个数学常量,变量,系统变量或者用户自定义的变量,并由+,-,*,/和^运算符进行连接,并用()定义运算的优先级,这些规则和传统的数学运算规则一致。 对于关系表达式则包含关系运算符,一个或者多个数学常量或者从数学表示计算的结果,并由=,,==,!=,.=连接而成,并可以由可选的()设定运算优先级。 对于逻辑表达式包含逻辑操作符,一个或者多个逻辑常量或者关系运算的结果,并通过!,,||连接而成,并可以由可选的()设定运算优先级。 使用常量 在表达式中使用常量并不需要预先定义,例如:可以使用x + 5 [m]进行表达式计算;或者用户也可以先定义一个常量b=5[m],再创建一个表达式x+b。 逻辑常量值为false和true。逻辑表达式的计算结果为0或者1,分别对应false和TRUE。 推荐用户使用常量进行表达式的定义,因为可能有多个表达式同时引用一个常量的

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档