Creo Flow Analysis > 开始使用 Creo Flow Analysis > Creo Flow Analysis 界面 > 表达式编辑器 > 函数
  
函数
“表达式编辑器”(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()
反双曲正切函数
其他函数
表达式运算符
函数
示例
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 之前插入备注。
表达式编辑器