Scilab与Octave数据共享示例

2020-07-21  本文已影响0人  hongch_911

Scilab和Octave都是免费的科学计算软件。
把两则结合可以综合两则的优势,实现更多的功能。

Scilab和Octave的数据共享,主要通过MAT格式数据文件实现。

Octave导出数据到文件

把Octave的数据保存到MAT文件中

%% start set variant, and save to mat for scilab to load
k=1.5;           %Gain
stp=2;           %Set point
Tau=1.5;       %Time constant
Tf=7;             %Simulation time

save('sci_vars_transfer.mat','-v7','k','stp','Tau','Tf');

Scilab载入数据文件

如下例

// load mat file
loadmatfile('sci_vars_transfer.mat');

载入完成后,Scilab的当前工作空间就会增加k,stp,Tau,Tf等变量。

Scilab计算完成后,把数据保存到MAT

把result保存到MAT文件中

// save mat file
savematfile('sci_vars_res_transfer.mat','result','-v7');

Octave 载入数据文件

载入文件,Octave的工作空间会增加result变量,可以对result做后续处理,如下例用于做图

%% load scilab response, and plot
load sci_vars_res_transfer.mat;

stairs(result.time, result.values,'-b','LineWidth',2)

注意Scilab和Octave通过MAT进行数据交换时,会有少量的数据类型不支持,如果出现这类问题,请对数据进行转换后再处理。

上一篇下一篇

猜你喜欢

热点阅读