A:在天软中,数组都是用array()表示,一维,二维,多维等,矩阵也如此。
在matlab调天软函数的过程中,经常会需要传入数组到天软模型中去使用,下面分别介绍传入一维数组(序列)、二维数组、多维数组等的方法。
封装天软函数:该函数仅返回展示传入的数组源代码,方便对照是否有效。
Function TestMatlab_01(s,t);
Begin
return '传入'$s$'参数 '$tostn(t);
End;
Matlab调用天软之前,首先创建一个Com对象,代码如下(后面的范例中不再重复该步骤):
ts=actxserver('TSExpert.CoExec');
1、一维数组传递:matlab中使用{a,b,c}这种形式传递
展示范例:
data = ts.RemoteCallFunc('TestMatlab_01',{'一维数组',{'SZ000002','SZ000008'}})
结果展示:其中参数成功转换成天软的一维数组array('SZ000002','SZ000008')
2、二维数组传递:matlab中使用{a,b;c,d;e,f}的形式传递
data = ts.RemoteCallFunc('TestMatlab_01',{'二维数组',{'a','b';2,2;3,3}})
结果展示:
3、多维数组传递:matlab中比如四维表示用{{a,b},{c,d};e,f}}的形式
data = ts.RemoteCallFunc('TestMatlab_01',{'多维数组',{'a',1;{'b1','b2'},2;'c',{3,3}}})
结果展示:
