主要内容

万博1manbetxSimulink.SimulationData.DatasetRef

创建万博1manbetxSimulink.SimulationData.DatasetRef对象

描述

使用引用来访问万博1manbetxSimulink.SimulationData.Dataset对象存储在一个MAT-file,创建一个万博1manbetxSimulink.SimulationData.DatasetRef对象。您可以使用这个引用避免耗尽内存检索数据信号通过信号数据日志来持久存储。你可以流DatasetRef对象到一个根级输入端口。或者你可以使用DatasetRef对象创建一个SimulationDatastore对象用于流媒体。有关详细信息,请参见为模拟加载大数据

对于并行模拟,你指定的数组万博1manbetxSimulink.SimulationInput对象,如果你日志文件,软件:

  • 创建万博1manbetxSimulink.SimulationData.DatasetRef对象来访问MAT-file中的输出数据,包括那些对象SimulationOutput对象数据

  • 使CaptureErrors理由模拟

提示

的名字数据集对象变量MAT-file,万博1manbetxSimulink.SimulationData.DatasetRef.getDatasetVariableNames函数过程的速度比使用功能。

创建

描述

例子

DSRefObj= 万博1manbetxSimulink.SimulationData.DatasetRef (位置,标识符)创建一个引用的内容万博1manbetxSimulink.SimulationData.Dataset对象变量存储在一个MAT-file。

输入参数

全部展开

MAT-file包含万博1manbetxSimulink.SimulationData.Dataset对象引用,指定为字符串或字符向量。字符串或字符MAT-file向量是一个路径。不要使用一个文件名从一个地区,在不同的地区。

例子:“out.mat”

的名字万博1manbetxSimulink.SimulationData.Dataset变量MAT-file,指定为字符串或字符向量。日志来持久存储时,软件使用指定的变量名称为每个类型的日志记录。

假设您使用信号的默认变量名日志记录logsout为持久性存储日志和默认MAT-file名称mat.out。模拟模型之后,创建一个引用数据集对象信号记录,在MATLAB®命令行输入:

sigLogRef = 万博1manbetxSimulink.SimulationData.DatasetRef (“out.mat”、“logsout”);

例子:“logsout”

输出参数

全部展开

参考数据集对象,作为一个返回万博1manbetxSimulink.SimulationData.DatasetRef对象。

属性

全部展开

这个属性是只读的。

MAT-file包含万博1manbetxSimulink.SimulationData.Dataset对象引用,作为一个特征向量返回。MAT-file特征向量是一个路径。

这个属性是只读的。

的名字万博1manbetxSimulink.SimulationData.Dataset变量在MAT-file,返回作为特征向量。日志来持久存储时,软件使用指定的变量名称为每个类型的日志记录。例如,信号测井数据默认的变量名logsout

对象的功能

得到 得到元素或元素的集合万博1manbetxSimulink.SimulationData.Dataset对象
getElementNames 返回所有元素的名称万博1manbetxSimulink.SimulationData.Dataset对象
numElements 得到的元素数量万博1manbetxSimulink.SimulationData.Dataset对象
情节 图中的数据万博1manbetxSimulink.SimulationData.Dataset督察对象仿真数据
getAsDatastore 得到matlab.io.datastore.SimulationDatastore表示引用的元素数据集对象
万博1manbetxSimulink.SimulationData.DatasetRef.getDatasetVariableNames 包含变量在垫子上文件的名称列表万博1manbetxSimulink.SimulationData.Dataset对象

例子

全部折叠

您可以构建和使用万博1manbetxSimulink.SimulationData.DatasetRef对象访问日志来持久存储的数据模型。这个例子显示了日志记录持久性存储的基本步骤。这个例子并不代表实际情况对日志持久性存储,因为它显示了一个短的模拟小内存需求。

打开vdp模型。

mdl =“vdp”;open_system (mdl)

在模型中,马克的信号x1对测井信号。

  1. 右键单击该信号x1

  2. 选择日志选择信号

或者,您可以标记日志以编程方式的信号。

万博1manbetxSimulink.sdi.markSignalForStreaming (“vdp / x1”,1“上”)

配置模型,以日志数据持久存储。

配置参数>数据导入/导出面板:

  1. 选择参数。

  2. 选择日志数据集的数据文件参数。

  3. 点击好的。

点击运行模拟模型。

或者,您可以选择以编程方式使用的参数名称参数。

sim (mdl“SaveState”,“上”,“LoggingToFile”,“上”)
ans =仿万博1manbetx真软件。模拟Output: tout: [64x1 double] SimulationMetadata: [1x1 Simulink.SimulationMetadata] ErrorMessage: [0x0 char]

得到的列表数据集对象的变量名out.mat文件。

varNames = 万博1manbetxSimulink.SimulationData.DatasetRef.getDatasetVariableNames (“out.mat”)
varNames =1 x3单元格{' logsout} {‘xout}{'你'}

创建一个引用存储在记录的状态数据out.mat。登录状态数据的变量xout

statesLogRef = 万博1manbetxSimulink.SimulationData.DatasetRef (“out.mat”,“xout”)
statesLogRef = 万博1manbetxSimulink.SimulationData。DatasetRefCharacteristics: Location: out.mat (/tmp/Bdoc23a_2213998_2905674/tp91654242/simulink-ex68096319/out.mat) Identifier: xout Resolved Dataset: 'xout' with 2 elements Name BlockPath ____ _________ 1 '' vdp/x1 2 '' vdp/x2

创建一个参考信号存储在日志数据out.mat。日志数据的变量信号logsout

sigLogRef = 万博1manbetxSimulink.SimulationData.DatasetRef (“out.mat”,“logsout”)
sigLogRef = 万博1manbetxSimulink.SimulationData。DatasetRefCharacteristics: Location: out.mat (/tmp/Bdoc23a_2213998_2905674/tp91654242/simulink-ex68096319/out.mat) Identifier: logsout Resolved Dataset: 'logsout' with 1 element Name BlockPath ____ _________ 1 x1 vdp/x1

使用numElements函数来访问元素的数量记录的状态Datasetref对象。

numElements (statesLogRef)
ans = 2

使用花括号来访问的第一个元素测井信号Datasetref对象。

sigLogRef {1}
ans = 万博1manbetxSimulink.SimulationData。信号包:仿真软件。万博1manbetx模拟Data Properties: Name: 'x1' PropagatedName: '' BlockPath: [1x1 Simulink.SimulationData.BlockPath] PortType: 'outport' PortIndex: 1 Values: [1x1 matlab.io.datastore.SimulationDatastore] Methods, Superclasses

如果你删除持久性存储MAT-file和尝试使用一个DatasetRef对象,软件就会返回一条错误,因为文件不存在。的statesLogRef变量仍然存在,但这是一个引用数据集对象在一个文件中,不再存在。

版本历史

介绍了R2016a