主要内容

金宝appSimulink.sdi.createRun

将数据导入仿真数据检查器

描述

runID= 金宝appSimulink.sdi.createRun在仿真数据检查器中创建一个空的、未命名的运行,并返回运行ID。

您可以使用金宝appSimulink.sdi.getRun访问金宝appSimulink.sdi.Run对象,它对应于运行。控件上设置属性运行对象向运行中添加元数据。使用金宝appSimulink.sdi.addToRun函数或添加函数向运行中添加数据。

例子

runID= 金宝appSimulink.sdi.createRun (runName创建一个名为runName

例子

runID= 金宝appSimulink.sdi.createRun (var创建包含标量工作区变量中的数据的运行var.运行是根据输入变量命名的。例如,当var是一个timeseries对象,则运行名来自的名字财产的timeseries对象。

例子

runID= 金宝appSimulink.sdi.createRun (runName“var”,var、var2 varn……)创建名为runName包含来自基本工作区中的一个或多个变量的数据。使用此语法可从多个变量或表示对象数组的变量(如数组)导入数据金宝app仿真软件。SimulationOutput金宝appSimulink.SimulationData.Dataset对象。

例子

runID= 金宝appSimulink.sdi.createRun (runName“namevalue”,sourceNamessigValues创建包含单元格数组中的数据的运行sigValues.细胞数组sourceNames指定用于设置的源名称RootSourceTimeSource,数据源属性中导入的信号sigValues单元阵列。

例子

runID= 金宝appSimulink.sdi.createRun (runName“文件”,文件名在指定的文件中创建包含数据的运行文件名.您可以使用内置的文件读取器从MAT文件、CSV文件、微软®Excel®文件或MDF文件。

当需要从内置读取器不支持的文件中导入数据时,可以使用金宝appio.reader类。

runID= 金宝appSimulink.sdi.createRun (runName“文件”,文件名名称=值根据使用一个或多个名称-值参数指定的选项,将数据从文件导入到仿真数据检查器中的运行中。例如,表=(“sheet1”“sheet2”)指定从Excel文件导入数据时要从哪个表导入数据。

runIDrunIndex) = 金宝appSimulink.sdi.createRun (___返回在模拟数据检查器中创建的运行的运行ID和运行索引。

例子

runIDrunIndexsignalIDs) = 金宝appSimulink.sdi.createRun (___返回运行ID、仿真数据检查器中运行的索引和运行中信号的信号ID。

例子

全部折叠

通过从基本工作区或文件中的数据创建运行,您可以通过编程方式将数据导入Simulation data Inspector。此示例在工作区中创建数据,然后说明了创建包含数据的Simulation data Inspector运行的几种方法。

创建数据

在工作区中创建数据。仿真数据检查器支持多种格式的时间序列数据。金宝app属性创建数据timeseries金宝appSimulink.SimulationData.Dataset将数据格式化并保存到mat文件中。

创建一个正弦信号和一个余弦信号。将每个信号的数据存储在timeseries具有描述性名称的对象。

时间= 0:0.2:20;sine_vals =罪(2 * 5π/ *时间);sine_ts = timeseries (sine_vals、时间);sine_ts。Name =“sin, T = 5”;cos_vals = cos(π/ 2 * 8 *时间);cos_ts = timeseries (cos_vals、时间);cos_ts。Name =“余弦,T = 8”

你可以使用数据集格式将相关信号数据分组在一个单一对象中。的数据集Format是记录数据的默认格式,用于加载模拟输入数据。金宝app创建一个数据集包含正弦信号的对象timeseries数据。

sinusoids_ds = 金宝appSimulink.SimulationData.Dataset;sinusoids_ds = addElement (sinusoids_ds cos_ts);sinusoids_ds = addElement (sinusoids_ds sine_ts);

将每个信号按倍数缩放2并创建一个数据集对象以包含结果的信号数据。

doubSine = 2 * sine_ts;doubCos = 2 * cos_ts;doubSinusoids_ds = 金宝appSimulink.SimulationData.Dataset;doubSinusoids_ds = addElement (doubSinusoids_ds doubSine);doubSinusoids_ds = addElement (doubSinusoids_ds doubCos);

最后,保存该timeseries数据到mat文件。

保存sinusoids.matsine_tscos_ts

打开仿真数据检查器

要查看在每个部分中创建的运行,请输入以下命令打开Simulation Data Inspector金宝appSimulink.sdi.view在MATLAB™命令窗口。

创建一个运行使用金宝appSimulink.sdi.Run对象

您可以在Simulation data Inspector中创建一个空的运行,然后从工作区或文件向运行添加数据,从而将数据导入到运行中。根据您的任务,您可以使用金宝appSimulink.sdi.Run.create函数或金宝appSimulink.sdi.createRun函数创建空运行。的金宝appSimulink.sdi.Run.create函数的作用是:返回金宝appSimulink.sdi.Run对象的新运行,以及金宝appSimulink.sdi.createRun函数返回新的运行的运行ID。

属性创建一个空运行金宝appSimulink.sdi.Run.create函数,为运行提供有意义的名称和描述,然后添加正弦和余弦timeseries数据使用添加函数。

sinusoidsRun = 金宝appSimulink.sdi.Run.create;sinusoidsRun。Name =正弦曲线的;sinusoidsRun。描述=“不同频率的正弦和余弦信号”;添加(sinusoidsRun“var”、sine_ts cos_ts)

本示例使用金宝appSimulink.sdi.createRun函数在仿真数据检查器中创建一个新的运行,调用我的波然后使用金宝appSimulink.sdi.addToRun函数的正弦和余弦相加timeseries数据到运行。

runID = 金宝appSimulink.sdi.createRun (“我的波”);signalID = 金宝appSimulink.sdi.addToRun (runID,“var”、sine_ts cos_ts);

创建从工作区变量运行

您可以从工作区中的单个变量创建一个运行。在创建运行之后,您可以添加额外的数据,或者您可以创建另一个运行来包含您的其他数据。用于创建运行的变量可以是timeseries对象的数据只对应于一个信号,也可以是数据集对象,该对象包含多个信号。

当您使用此语法从单个工作区变量创建一个运行时,该运行采用与用于创建它的对象相同的名称。

runID = 金宝appSimulink.sdi.createRun (sine_ts);

金宝appSimulink.sdi.createRun函数返回它创建的运行的运行ID。你可以使用金宝appSimulink.sdi.getRun函数访问运行对象来运行。

sineRun = 金宝appSimulink.sdi.getRun (runID);sineRun。的名字
ans = ' sin, T=5'

创建从多个工作区变量运行

当您的数据存在于工作区中的多个变量中时,您可以使用金宝appSimulink.sdi.createRun函数与var选项将多个变量中的数据导入到模拟数据检查器中的一次运行中。还可以使用此语法为使用指定名称的单个变量创建运行。

这个例子创建了一个名为我的正弦曲线它包含了sin和cos的数据timeseries对象。

runID = 金宝appSimulink.sdi.createRun (“我的血窦”“var”、sine_ts cos_ts);

创建运行和指定源名称

你可以使用namevalue选择的金宝appSimulink.sdi.createRun函数创建运行并为运行中的信号指定名称。当从分层数据导入单个叶信号时,此语法特别有用。

控件的数据创建了一个运行数据集对象。每一个数据集对象包含多个信号的数据,因此导入的运行数据具有层次结构。本例中的name-value语法为对应于每个节点的分层节点指定一个名称数据集对象。

runID = 金宝appSimulink.sdi.createRun (“波”“namevalue”, {正弦曲线的...“BigSinusoids”}, {sinusoids_ds doubSinusoids_ds});

创建从文件中的数据运行

你也可以用the金宝appSimulink.sdi.createRun函数将数据从文件导入仿真数据检查器。使用文件选项导入数据simusoids.mat文件。

runID = 金宝appSimulink.sdi.createRun (“波数据”“文件”“sinusoids.mat”);

这个例子展示了当你在模拟数据检查器中创建一个运行时如何访问信号数据。

为运行生成数据

对于本例,为正弦和余弦信号创建时间序列数据。

%创建timeseries工作区数据时间= linspace(0, 20, 101);sine_vals =罪(2 * 5π/ *时间);sine_ts = timeseries (sine_vals、时间);sine_ts。Name =“sin, T = 5”;cos_vals = cos(π/ 2 * 8 *时间);cos_ts = timeseries (cos_vals、时间);cos_ts。Name =“余弦,T = 8”

创建一个运行和返回信号id

你可以使用金宝appSimulink.sdi.createRun使用多个返回参数来更直接地获取信号id,而不是通过金宝appSimulink.sdi.Run对象。

[runID, runIndex sigIDs] =金宝app Simulink.sdi.createRun (正弦曲线的“var”...sine_ts cos_ts);cosID = sigIDs (2);cosSig = 金宝appSimulink.sdi.getSignal (cosID);

在仿真数据检查器中修改信号属性和视图

你可以使用金宝appSimulink.sdi.Signal对象来查看和修改信号属性,并在仿真数据检查器中绘制信号。

cosSig。检查= true;cosSig。AbsTol = 0.05;金宝appSimulink.sdi.view cosSig。的名字

输入参数

全部折叠

在模拟数据检查器中运行的名称,指定为字符向量或字符串。

例子:“基准仿真”

变量,该变量包含要导入到模拟数据检查器中的运行中的数据。仿真数据检查器支持基于时间的数据,其中样本值与样本时间相关联金宝app。仿真数据检查器支持所有加载和记录数据格式,包括金宝apptimeseries金宝appSimulink.SimulationData.Dataset

例子:myData

导入数据的源名称,指定为字符向量的单元格数组。源名称用于设置RootSourceTimeSource,数据源的属性金宝appSimulink.sdi.Signal对象指定的数据创建的sigValues输入。

提供一个sourceNames指定时输入“namevalue”对于第二个论证。

例子:{“sig1”、“sig2”}

要导入的数据,指定为工作区变量的单元格数组。

提供一个sigValues指定时输入“namevalue”对于第二个论证。

例子:{var1, var2}

要导入数据的文件名,指定为字符向量。提供一个文件名指定时输入“文件”对于第二个论证。

你可以使用仿真数据检查器中内置的文件读取器从这些类型的文件创建一个运行:

当需要从内置读取器不支持的文件中导入数据时,可以使用金宝appio.reader类。您还可以编写一个自定义阅读器来代替任何文件扩展名的内置阅读器。例如,请参见使用自定义文件读取器导入数据

例子:“simulation.mat”

名称-值参数

指定可选参数对为Name1 = Value1,…,以=家,在那里的名字参数名和价值为对应值。名称-值参数必须出现在其他参数之后,但对的顺序无关紧要。

例子:表=(“sheet1”“sheet2”)

用于导入数据的文件读取器,指定为字符串或字符向量。

当文件可用时,仿真数据检查器优先使用注册的自定义读取器。当您没有指定读取器时,仿真数据检查器将使用为文件注册的第一个自定义读取器。如果没有注册自定义读取器,则使用内置的读取器导入数据。

在以下情况下指定阅读器输入:

  • 您希望使用内置读取器为自定义读取器也支持的文件导入数据。金宝app

  • 多个已注册的自定义读取器支持该文件。金宝app

要确定哪些阅读器可用来导入文件,请使用io.reader.get金宝appSupportedReadersForFile函数。

例子:“MyExcelReader”

例子:“内置”

要从其中导入数据的Excel文件中的工作表,指定为字符串数组或字符向量的单元格数组。默认情况下,Simulation Data Inspector从所有工作表中导入数据。使用当不希望从Excel文件中的所有工作表导入数据时,使用name-value参数。

当文件中的数据不包括模拟数字和源信息时,每个工作表中的数据将被导入到单独的运行中。有关格式化要从Excel文件导入的数据的详细信息,请参见微软Excel导入,导出和日志格式

例子:[" sheet1”“sheet2”)

具有用户定义的数据类型定义的模型,指定为字符串或字符向量。

当您从使用用户定义的数据类型(如枚举、总线或别名)定义信号数据类型的Excel文件加载数据时,Simulation data Inspector需要访问类型定义以导入数据。您可以通过将关联的对象加载到MATLAB中来提供对类型定义的访问®工作区,或者您可以指定模型参数名-值,以使用保存在模型工作空间或数据字典中的类型定义。

有关格式化要从Excel文件导入的数据的详细信息,请参见微软Excel导入,导出和日志格式

例子:“myModel.slx”

输出参数

全部折叠

新运行的运行标识符,作为标量返回。

模拟数据检查器中新运行的索引,作为标量返回。

运行中信号的信号id,作为矢量返回。

介绍了R2011b