主要内容

金宝appsimulink.simulationdata.datasetref类

包裹:金宝appsimulink.simulationdata.
超类:

创建金宝appsimulink.simulationData.datasetref.目的

描述

使用引用访问a金宝appSimulink.SimulationData.Dataset存储在MAT文件中的对象,创建一个金宝appsimulink.simulationData.datasetref.对象。您可以使用这个引用来避免内存耗尽,通过对您的数据信号逐个地检索数据日志持久存储.你可以流DatasetRef对象导入根级输入端口,也可以使用它来创建SimulationDatastore用于流式传输的对象。有关详细信息,请参阅加载模拟数据

对于并行模拟,您可以为其指定数组金宝appsimulink.simulationInpul.对象,如果你正在记录到文件,Simulink金宝app®

  • 创造金宝appsimulink.simulationData.datasetref.用于访问Mat文件中的输出数据的对象,并包含这些对象仿真output.对象数据

  • 启用Capticerrors.理由模拟

建造

dsrefobj.= 金宝appSimulink.SimulationData.DatasetRef (地点标识符对象的内容的引用金宝appSimulink.SimulationData.Dataset变量存储在MAT文件中。

输入参数

全部展开

MAT-file包含金宝appSimulink.SimulationData.Dataset对象,指定为字符向量。字符向量是mat文件的路径。不要在不同的区域设置中使用来自一个语言环境的文件名。

的名字金宝appSimulink.SimulationData.Dataset变量,指定为字符向量。当您登录持久存储时,Simulink使用为每种日志记录指定的变量名称。金宝app

假设您使用默认变量名进行信号日志记录(logsout)默认存储日志记录的默认MAT文件名(mat.out),在模拟模型后,然后创建对此的引用数据集MATLAB的信号记录的对象®命令行,输入:

siglogref = 金宝appsimulink.simulationdata.datasetref('out.mat','logsout');

输出参数

全部展开

引用日志数据集,返回为金宝appsimulink.simulationData.datasetref.对象。

特性

全部展开

MAT-file包含金宝appSimulink.SimulationData.Dataset对象,指定为字符向量。字符向量是mat文件的路径。包括。垫在文件名中的扩展名。不要在不同的区域设置中使用来自一个语言环境的文件名。

的名字金宝appSimulink.SimulationData.Dataset变量,指定为字符向量。当您将日志记录到持久存储时,Simulink将使用为每种日志类型指定的变金宝app量名(例如,'logsout'用于信号测井数据)。

方法

使用徘徊呕吐,getElementNamesA.的方法金宝appsimulink.simulationData.datasetref.对象与您使用这些方法的方式相同金宝appSimulink.SimulationData.Dataset对象。

方法

目的

徘徊

获取数据集的元素数量

getElementNames

返回数据集中所有元素的名称

得到

得到方法的别名呕吐方法。

笔记

您可以使用花括号来简化索引语法,以访问数据集引用中的元素,而不是使用得到呕吐方法。要使用花括号获取元素,索引必须是不大于变量中元素数量的标量。这得到呕吐方法支持按名称或金宝app块路径以及按索引指定元素。

获取DataSet的元素

getasdatastore.

得到matlab.io.datastore.SimulationDatastorea元素的表示DatasetRef目的

getdatasetvariamens.

列表的名称数据集Mat文件中的变量

阴谋

在模拟数据检查器中绘制数据

提示

获得名称数据集在mat -文件中使用金宝appSimulink.SimulationData.DatasetRef.getDatasetVariableNames功能过程比使用更快谁是功能。

复制语义

你可以复制DatasetRef对象属性的值。然而,复制DatasetRef对象产生一个句柄对象。复制DatasetRef对象不会复制对象引用的mat文件中的数据。复制的具体操作请参见复制对象在Matlab文件中。

例子

全部折叠

此示例显示了如何构建和使用金宝appsimulink.simulationData.datasetref.对象以访问日志持久存储的模型的数据。这个简单的示例显示了日志记录到持久存储的基本步骤。此示例不代表日志记录到持久存储的现实情况,因为它显示了具有小的内存要求的短模拟。

打开vdp模型。

配置参数>数据导入/导出窗格,选择这些参数:

  • 状态

  • 将数据集数据记录到文件

设定格式参数到数据集

留下其他参数设置,然后单击申请

在模型中,单击信号和动作栏,选择启用数据日志记录

模拟模型。

获取数据集变量名称在out.mat文件。

varNames = 金宝appSimulink.SimulationData.DatasetRef.getDatasetVariableNames ('out.mat'
varnames = 1x2单元格数组'logsout''xout'

创建对存储在的记录状态数据的引用out.mat.记录状态数据的变量为xout

statesLogRef = 金宝appSimulink.SimulationData.DatasetRef ('out.mat''xout'
sologref = simu金宝applink.simulationdata.dataseTref特性:location:out.mat(/my_files/out.mat)标识符:xout已解析数据集:'xout'具有2个元素名称块路径____ _________ 1'''VDP / X1 2''VDP / X2

中存储的信号记录数据创建一个引用out.mat.信号记录数据的变量是logsout

siglogref = 金宝appsimulink.simulationdata.datasetref('out.mat''logsout'
siglogref = 金宝appsimulink.simulationdata.datasetref特性:location:out.mat(/my_files/out.mat)标识符:logsout已解析数据集:'logsout',其中1个元素名称块路径____ _________ 1 x1

使用徘徊访问已记录状态数据集中的元素数量。

solulylogref.numelements.
ans = 2

使用DatasetRef访问信号测井数据集的第一个元素。

siglogref {1}
ans = 金宝appsimulink.simulationdata.signal package:simulink.simulationdata属性:名称:'x1'传播名称:''块路径:[1x1 simulink.simulationdata.blockpath] porttype:'outport'portindex:1值:[1x1次]方法,超类

删除持久存储mat文件,并尝试使用DatasetRef对象。

删除('out.mat');statesLogRef.get (1)
文件不存在。

statesLogRef仍然存在,但它是对a的引用数据集在不再存在的文件中的对象。

在R2016A介绍