函数
“表达式编辑器”(Expression Editor) 中的以下函数可启用矢量和标量的数学和逻辑运算:
运算符
矢量和标量共用,例如加法和减法
仅限标量,例如平方根和对数
仅限矢量,例如点积和叉积
逻辑
三角和双曲
其他函数
运算符
运算符可对矢量和标量进行数学运算。在下表中,a、b、c 是标量,而 U、V、W 是矢量。
表达式运算符
函数
示例
运算符:标量和/或矢量
a = b+c 或 V = U+W
a = b-c 或 V = U-W
*
两个标量或标量与矢量的乘法
a = b*c 或 V = a*U (但并非 V = U * W)
运算符:仅限标量
/
a = b/c
exp(标量)
以 e 为底的指数函数
a= exp(b) 表示 e 的 b 次幂:a= eb
ln(标量)
e 的自然对数函数
a= ln(b) 返回 b 的自然对数
sqrt(标量)
平方根函数
a = sqrt(b)
^
指数函数
a= b^c 表示 b 的 c 次幂:a= bc
运算符:仅限矢量
&
矢量点积
a = V&U (a = |V| |U| cos (角度))
^
矢量叉积
V=U^W (|V| = |U| |W| x sin (角度) ),将应用右手定则。
len(矢量)
返回矢量 V 的长度
a = len(V)
normalize(矢量)
返回归一化的单位矢量 V/|V|
V = normalize(U)
rotate(矢量,角度,方向,中心)
根据旋转角度、RHR、旋转轴和可选旋转中心返回旋转矢量。(如果未定义中心,则默认为 0,0,0)
Vrot = rotate(V,alpha,U,W),其中 V 是要旋转的矢量,alpha 是以弧度表示的角度,U 是旋转轴。即会应用右手定则。W 是定义为矢量的可选中心点。
逻辑
逻辑函数允许包含逻辑语句。
表达式运算符
函数
示例
逻辑真
逻辑假
<
小于
>
大于
==
逻辑比较中的相等
a = (b==3) ? 1 : 2
or
逻辑或
逻辑与
!
逻辑非
!< 不小于
a = 表达式 ? b : c
如果表达式为真,则 a = b;
如果表达式为假,则 a = c
a = (b>3) ? 1 : 2 ==> (如果 b 大于 3,则 a = 1,否则 a = 2)
三角和双曲
三角函数和双曲函数允许在数学语句中包含相应的函数。
超越表达式
函数
三角
sin(弧度)
正弦函数
cos(弧度)
余弦函数
cot(弧度)
余切函数
tan(弧度)
正切函数
asin ()
反正弦函数,返回以 rad 为单位的值
acos ()
反余弦函数,返回以 rad 为单位的值
acot()
反余切函数,返回以 rad 为单位的值
atan ()
反正切函数,返回以 rad 为单位的值
atan2(y,x)
两个可变反正切函数,(-pi, pi),返回以 rad 为单位的值
双曲
sinh ()
双曲正弦函数
cosh ()
双曲余弦函数
coth()
双曲余切函数
tanh ()
双曲正切函数
asinh()
反双曲正弦函数
acosh()
反双曲余弦函数
acoth()
反双曲余切函数
atanh()
反双曲正切函数
显示相关函数
显示相关函数,请参阅显示面板。它们能够让您:
创建具有衍生变量所有特征的新变量。其特征之一是能够在几何要素(例如,边界和等值面)上显示函数。
在监控点访问变量
定义 XY 坐标图的用户变量
用于 3D 显示的用户定义变量
display.varname - 为 3D 绘图定义用户变量,例如:轮廓、等值面和矢量。新变量将显示在“视图”(View) 选项卡中“变量”(Variable) 下的属性面板中。
#display.varname: dispname [unit] -(可选)为用户定义的显示变量指定一个新名称以及单位。
示例:
display.pref = flow.P - 101325
#display.pref:表压 [Pa]
使用这些表达式时,仪表压力要素将出现在“变量”(Variable) 属性的值下方,如下所示。
监控点处的变量
您可以使用以下格式访问任何监控点处的局部单元变量:
module[.subname].var@probe.name
点坐标:
probe.coord@probe_name
示例:
inletP = flow.P@probe."Point01"+101325
XY 坐标图用户定义变量
plot.varname - 定义可在 XY 坐标图中使用的用户变量。新的常用变量将作为“变量”(Variable) 属性的值添加到“属性面板”(Properties Panel)。
#plot.varname: dispname [unit] -(可选)为用户定义的变量指定一个新名称以及单位。
示例:
plot.head = (flow.pt@outlet - flow.pt@inlet)/998/9.8
#plot.head: Pressure Head[m]
* 
定义新的显示或出图变量名称和单位时,不要在冒号符号前添加空格。
显示和出图变量的默认单位显示在方括号中。例如,压力变量默认单位为 Pa。如果对单位进行了正确定义,则单位会出现在屏幕上。在此示例中,当您更改显示的最终单位时,其值也会被转换。如果未正确定义单位,软件将忽略该单位。
其他函数
表达式运算符
函数
示例
abs(x)
绝对值函数
max(x,y)
最大函数
a = max(b,c) ==> 如果 b >c 则 a = b,如果 c>=b 则 a=c
min(x,y)
最小函数
a = min(b,c) ==> 如果 b <c 则 a= b,如果 c<=b 则 a=c
mod(x,y)
模函数
a = mod(c,b) ==> a = c 除以 b 的余数
sgn(x)
返回指示符号的标志 (-1、0 或 1)
a= sgn(b) ==> 如果 b<0 则 a = -1,如果 b=0 则 a = 0,如果 b>0 则 a = 1
step(x)
阶跃函数根据相对于零的值返回 0 或 1
a= step(b) ==> 如果 b<0 则 a = 0,如果 b>=0 则 a = 1
表函数允许将外部表文件中的数据包含在项目文件 (*.spro) 所在的目录中。
表表达式
函数
table(文件名,x)
从一维表进行插值
table(文件名, x ,y)
从二维表进行插值
示例:
使用表:
# 从表中提取信息
p = table("inlet_pressure.txt",time)
density = table("R134a_density.txt",temp,pre)
表格式:1-D (文件名,x) - 允许您访问项目文件 (*.spro) 所在目录中的一维数据表。
均匀分布格式的一维表
<?xml version="1.0" encoding="ISO-8859-1"?>
<table size="n" min="xmin" max="xmax" outside="flat | extrapolation">
# comments (x assumed to have uniform distribution)
v1
v2
...
vn
</table/>
非均匀分布格式的一维表
<?xml version="1.0" encoding="ISO-8859-1"?>
<table size="n" outside="flat | extrapolation">
# You can add comments by putting the hashmark “#” in front .. but do not insert comments before the xml line (line 1)
x1 v1
x2 v2
xn vn
</table/>
在格式中,表标记下的 outside = “flat” or outside = "extrapolation" 可确定当输入 x、y 超出范围时如何确定值。
表格式:2-D (文件名,x) - 允许您访问项目文件 (*.spro) 所在目录中的二维数据表。
均匀分布二维表的格式
<?xml version="1.0" encoding="ISO-8859-1"?>
<table size="nx my" min="xmin ymin" max="xmax ymax" outside="flat | extrapolation">
# comment
# values table (x and y assumed to have uniform distribution
v(x1,y1) v(x2,y1) … v(xn,y1)
v(x1,y2) v(x2,y2) … v(xn,y2)
...
v(x1,ym) v(x2,ym) … v(xn,ym)
</table>
非均匀分布二维表的格式
<?xml version="1.0" encoding="ISO-8859-1"?>
<table size="nx my" outside ="flat | extrapolation">
# x and y variable ranges
x1 x2 … xn
y1 y2 … ym
# values table
v(x1,y1) v(x2,y1) … v(xn,y1)
v(x1,y2) v(x2,y2) … v(xn,y2)
...
v(x1,ym) v(x2,ym) … v(xn,ym)
</table>
在格式中,表标记下的 outside = “flat” or outside = "extrapolation" 可指示当输入 x、y 超出范围时如何确定值。
* 
要添加备注,请在文本前加上井号 "#"。请勿在 xml 行或行 1 之前插入备注。