MathScript语法(MathScript RT模块)

LabVIEW 2012 MathScript RT模块帮助

版本日期:June 2012

产品编号:373123C-0118

»查看产品信息
下载帮助
(仅限Windows)

LabVIEW MathScript可编写用于LabVIEW MathScript窗口MathScript节点函数和脚本。编写MathScript函数和脚本时应遵循以下规范:

  • 变量不能以下划线、空格或数字开始。
  • MathScript变量可调整为相应的数据类型。例如,如a = sin(3*pi/2)a为双精度浮点数。如a = 'result'a为字符串。
  • 使用ij表示复数单位,-1的平方根。
  • 使用空格或逗号分隔矩阵元素,使用分号分隔矩阵行。
  • 使用单引号定义一个字符串。如字符串中包含单引号,将该单引号用两个单引号表示。例如,字符串a = 'C:\test\test''s subfolder',其中test''s包括两个单引号,a表示的字符串为C:\test\test's subfolder
  • 调用内置函数时,如输入的是字符串,字符串两端无需加上圆括号。例如,pathgetsubset dirpathgetsubset (dir)都会返回当前的搜索路径。因为在两种语法中,dir都用于指定路径。
  • 在每行注释前添加%符号。
  • a == b表示a等于b。a ~= b表示a不等于b。对于MathScript中的复合逻辑表达式,LabVIEW使用就近原则进行计算。例如,有下列逻辑表达式if 0 == 0 || foo(a) == 2,LabVIEW并不计算foo(a),因为表达式的前半部分为TRUE。类似地,对于下列逻辑表达式if 0 ~= 0 && foo(a) == 2,LabVIEW并不计算foo(a),因为表达式的前半部分为FALSE。
  • MathScript中的数组索引从1开始, 而不是0。因此,数组第一个元素的索引为1。
  • 不能使用n维数组。
  • 如命令行以分号结尾,LabVIEW MathScript窗口LabVIEW MathScript探针不显示该命令的输出。
注:  有些函数,如disp,即使命令行以分号结尾仍会显示输出。
  • 不能使用逗号作为十进制数的小数点。必须使用点号作为小数点。
  • MathScript支持在字符串中使用非Unicode字符,但是不能在变量名称中使用非Unicode字符。变量名称只能使用ASCII字符。例如,可在字符串中使用á,但不能在LabVIEW MathScript窗口或MathScript节点调用下列脚本:

    á = rand(50, 1)
    plot(á)
  • 不能直接执行MathScript函数。换言之,在LabVIEW MathScript窗口或MathSript节点调用函数之前,必须先定义和保存函数。

下表列出了常用结构的MathScript语法。

循环或语句语法范例
Switch语句switch 表达式
case 表达式
语句列表
[case 表达式
语句列表]
...
[otherwise
语句列表]
end
switch mode
case 'start'
a = 0;
case{'middle', 'ongoing'}
a = 1;
case 'stop'
a = –1;
otherwise
a = a+1;
end

执行switch语句中一个分支时,LabVIEW不会自动选择下一个分支。因此,无需使用类似C语言中的break语句。
For循环for 表达式
语句列表
end
for i = 1:10
     a = sin(2*pi*i/10)
end
If-Else语句if 表达式
语句列表
[elseif 表达式
语句列表]
...
[else
语句列表]
end
if b == 1
     c = 3
else
     c = 4
end
范围start:[step:]endb = 2:2:20
b返回2到20之间的偶数。
如没有指定step,LabVIEW使用的step为1。

可在范围结构中使用end关键词表明行、列,或矩阵的最后一个元素。
A = [1 2 3; 4 5 6; 7 8 9]
A(3, 2:end)返回矩阵A中从第3行第2个元素开始至最后一个元素的所有元素。
While循环while 表达式
语句列表
end
while i < 10
     a = cos(2*pi*i/10)
     i = i + 1;
end

文章是否对您有帮助?

没有帮助