主要内容

getAsDatastore

得到matlab.io.datastore.SimulationDatastore引用的元素的表示形式数据集对象

描述

例子

元素= getAsDatastore (安全域idx返回一个matlab.io.datastore.SimulationDatastore元素的表示形式金宝appSimulink.SimulationData.DatasetRef对象安全域基于索引idx

你可以得到一个SimulationDatastore代表数据集如果元素被放置到mat文件中:

  • 日志记录数据集将数据格式化到持久存储

  • 将元素放入金宝appSimulink.SimulationData.Dataset对象,并保存数据集对象到7.3版本的mat文件

请注意

您不能创建SimulationDatastore表示数据集包含数组数据的元素。

你可以使用SimulationDatastore对象:

  • 参考存储在磁盘mat文件中的日志模拟数据。

  • 指定从磁盘增量流到模拟的信号。

  • 为使用MATLAB进行大数据分析提供基础®功能。

元素= getAsDatastore (安全域elName返回一个SimulationDatastore对象中的元素或元素集合的表示形式数据集根据元素名称初始化elName

元素= getAsDatastore (安全域英国石油公司返回一个SimulationDatastore对象中的元素或元素集合的表示形式数据集对象英国石油公司

例子

全部折叠

打开SineWave模型,其中包含连接到输出端口块的正弦波块。

mdl =“SineWave”;open_system (mdl)

配置模型以将输出数据记录到持久存储并模拟模型。

  1. >数据导入导出窗格中,选择日志数据集数据到文件参数。然后,单击好的。

  2. 点击运行模拟模型。

或者,您可以将模型配置为记录日志数据集数据到文件中,并以编程方式模拟模型。默认情况下,数据保存到一个名为out.mat

sim (mdl“LoggingToFile”“上”);

创建一个DatasetRef对象的日志输出数据SineWave模型。

sigLogRef = 金宝appSimulink.SimulationData.DatasetRef(“out.mat”“你”
sigLogRef = 金宝appSimulink.SimulationData.DatasetRef特征:位置:out。/tmp/Bdoc23a_2213998_2913825/tpac99fd01/simul金宝appink-ex98930208/out.mat)标识符:yout解析数据集:'yout'带1个元素名称BlockPath _______ _____________ 1 sineSig SineWave/Out1

使用getAsDatastore函数创建SimulationDatastore对象的sineSig信号。的SimulationDatastore对象存在于返回者的财产金宝appSimulink.SimulationData.Signal对象。

sineSig_dst = getAsDatastore(sigLogRef,“sineSig”
sineSig_dst = 金宝appSimulink. simulationdata . signal Package: Simulink. sineSig_dst = Simulink. simulationdata . signal Package模拟Data Properties: Name: 'sineSig' PropagatedName: '' BlockPath: [1x1 Simulink.SimulationData.BlockPath] PortType: 'inport' PortIndex: 1 Values: [1x1 matlab.io.datastore.SimulationDatastore] Methods, Superclasses
sineSig_dst。值
文件名称:'/tmp/Bdoc23a_2213998_2913825/tpac99fd01/simulink-ex98930208/out /金宝appmat'数据预览:时间数据_______ _______ 0秒0 0.2秒0.19867 0.4秒0.38942 0.6秒0.56464 0.8秒0.71736::

该模型MultByTwo包含一个增益块,它将输入数据乘以2并使用Outport块记录数据。

方法中引用的数据SineWave模型MultByTwo模型。因为的属性sineSig_dst信号对象是SimulationDatastore对象时,信号数据流进入模型。

mdl2 =“MultByTwo”;open_system(mdl2) multibytwoout = sim(mdl2,“LoadExternalInput”“上”“ExternalInput”“sineSig_dst”);

控件中的“仪表盘作用域”块MultByTwo的输入流SineWave模型是振幅为的正弦波1输出是振幅为的正弦波2

输入参数

全部折叠

参考数据集对象存储在mat文件中,指定为金宝appSimulink.SimulationData.DatasetRef对象。

指数DatasetRef对象元素获取为SimulationDatastore表示,指定为正整数。

的名字DatasetRef对象元素获取为SimulationDatastore表示形式,指定为字符串或字符向量。

块路径DatasetRef对象元素获取为SimulationDatastore表示,指定为金宝app仿真软件。BlockPath对象或金宝appSimulink.SimulationData.BlockPath对象。

输出参数

全部折叠

SimulationDatastore引用的元素的表示形式数据集对象,指定为matlab.io.datastore.SimulationDatastore对象或金宝appSimulink.SimulationData.Signal金宝appSimulink.SimulationData.State,或类似的对象参数包含matlab.io.datastore.SimulationDatastore对象。

替代

可以使用花括号简化索引语法,以获得SimulationDatastore对象DatasetRef对象的信号值,而不是使用getAsDatastore函数。属性时的要求和结果是相同的getAsDatastore函数。例如,假设您配置了一个模型,通过选择将信号数据记录到持久存储日志数据集数据到文件配置参数并模拟该模型。你可以用大括号得到SimulationDatastore对象的第一个元素数据集对象。的SimulationDatastore对象存在于返回者的财产金宝appSimulink.SimulationData.Signal对象。

sigLogRef = 金宝appSimulink.SimulationData.DatasetRef(“out.mat”“logsout”);firstSig = sigLogRef{1}
信号包:Si金宝appmulink. simulationdata . ans = Simulink. simulationdata . signal Package: Simulink. Simulink. ans模拟Data Properties: Name: 'x1' PropagatedName: '' BlockPath: [1x1 Simulink.SimulationData.BlockPath] PortType: 'outport' PortIndex: 1 Values: [1×1 matlab.io.datastore.SimulationDatastore]

版本历史

在R2017a中引入