金宝appSimulink.sdi.constraints.MatchesSignalclass
包:金宝appSimulink.sdi.constraints
超类:matlab.unittest.constraints.Constraint
描述
使用金宝appSimulink.sdi.constraints.MatchesSignal
约束比较时间序列数据对一个期望值作为一个测试的一部分。您可以配置约束使用的组合绝对的,相对的,和时间公差值比较。您还可以指定附加选项配置比较使用的行为金宝appSimulink.sdi.constraints.MatchesSignalOptions
对象或使用一个或多个名称-值对的观点。更多信息关于公差和对齐选项影响比较,看看仿真数据检查比较如何。
创建
描述
输入参数
指定可选的双参数作为Name1 = Value1,…,以=家
,在那里的名字
参数名称和吗价值
相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。
R2021a之前,用逗号来分隔每一个名称和值,并附上的名字
在报价。
例子:“IgnoringDataTypes”,真的
IgnoringDataTypes
- - - - - -数据类型不匹配时约束行为
假
(默认)|真正的
配置约束对实际值与期望值不同的数据类型。
假
——约束检查的期望值和实际值数据类型是否匹配。真正的
——约束对数据类型不匹配的期望值和实际值。
例子:“IgnoringDataTypes”,真的
IgnoringSignalsNotAligned
- - - - - -当信号不对齐约束行为
假
(默认)|真正的
配置约束灵敏度不是一个或多个信号调整期望值和实际值之间的关系。
假
——约束检查信号不对齐的期望值和实际值之间的关系。真正的
约束是对一个或多个信号不调整期望值和实际值之间的关系。
例子:“IgnoringSignalsNotAligned”,真的
IgnoringExtraData
- - - - - -约束行为,当实际值覆盖不同时间间隔的期望值
假
(默认)|真正的
配置约束灵敏度之外的实际价值包含的数据定义的时间间隔期望值。
假
——约束检查的实际价值是否包含在定义的时间间隔数据期望值。真正的
——约束是不包含数据的实际价值以外的时间间隔定义为预期的价值。
例子:“IgnoringExtraData”,真的
AligningBy
- - - - - -信号校准标准
字符串数组
校准标准的比较。当预期值包含不止一个信号,仿真数据检查比较算法将信号期望值和实际值之间的比较。默认情况下,模拟数据源督察对齐的数据,然后通过块路径,然后通过SID,然后通过信号名称。对仿真数据的细节检查员对齐算法,明白了仿真数据检查比较如何。
指定对齐标准作为字符串数组与一个或更多的这些选项中列出你希望他们考虑的顺序:
BlockPath
——源块路径的信号。SID
——自动分配模型标识符。金宝appSignalName
——信号的名称。数据源
-路径的变量。
例子:“AligningBy”, (“SignalName”、“BlockPath”)
指定信号对齐的信号名称,然后通过块路径。
属性
预期
- - - - - -期望值作为比较的基准
时间序列数据|字符串标量|字符数组
期望值作为比较的基准。预期值的数据必须与时间对数据值。可以在任何数据格式支持的仿真数据检查员。金宝app仿真数据检查员需要数据的格式,将样本值与时间。金宝app支持的格式包括timeseries
,结构随着时间的推移
,数据集
。
您可以指定约束使用变量的期望值在工作区中包含数据或通过指定完整路径或文件名的文件,其中包含数据,作为字符串标量或字符数组。
属性:
GetAccess |
公共
|
SetAccess |
不可变的
|
MatchesSignalOptions
- - - - - -约束比较配置选项
金宝appSimulink.sdi.constraints.MatchesSignalOptions
金宝appSimulink.sdi.constraints.MatchesSignalOptions
对象,该对象指定选项来配置约束的比较。默认情况下,比较使用的默认对齐方式设置仿真数据检查和严格的验收标准,也就是说,比较不忽略任何检查。您可以使用MatchesSignalOptions
属性配置约束如何将信号在预期和实际运行和测试使用约束是否敏感:
实际值具有不同数据类型的期望值。
一个或多个信号不预期和实际运行之间的调整。
外面的实际价值包含的数据定义的时间间隔期望值。
您可以指定MatchesSignalOptions
使用单个属性的约束名称-值对的观点或使用名称-值对“WithOptions”
与一个金宝appSimulink.sdi.constraints.MatchesSignalOptions
对象的值。当你指定MatchesSignalOptions
财产使用MatchesSignalOptions
对象,您可以使用一个名称-值对配置的所有选项比较使用约束。
属性:
GetAccess |
公共
|
SetAccess |
不可变的
|
数据类型:金宝appSimulink.sdi.constraints.MatchesSignalOptions
AbsTol
- - - - - -绝对对的比较
0(默认)|标量
RelTol
- - - - - -相对宽容的比较
0(默认)|标量
使用约束相对宽容的比较。例如,指定0.1
使用10%的公差比较。详情如何仿真数据检查员使用公差值比较,看看仿真数据检查比较如何。
例子:0.05
属性:
GetAccess |
公共
|
SetAccess |
不可变的
|
数据类型:双
TimeTol
- - - - - -时间对比较
0(默认)|标量
例子
创建测试时间序列比较
这个例子展示了如何使用金宝appSimulink.sdi.constraints.MatchesSignal
约束比较在工作区中使用数据生成的时间序列数据。您可以使用MatchesSignal
约束比较数据从许多来源,包括测量测试数据在文件和记录仿真输出。
当你使用MatchesSignal
限制,您可以指定绝对、相对和时间比较中使用的公差。的MatchesSignal
限制使用模拟数据检查比较算法,其中包括步骤校准和同步。关于该算法的更多信息,请参阅仿真数据检查比较如何。
的MatchesSignal
限制使用模拟数据时间序列比较和检查员需要这些产品之一:下载188bet金宝搏
金宝app仿真软件®
信号处理工具箱™
MATLAB编码器™
定点设计师™
创建时间序列数据
这个示例中生成工作空间中的数据timeseries
格式仅为演示之用。您可以使用MatchesSignal
约束比较数据从其他来源,如模拟输出或包含测试数据的文件,和约束可以在任何支持的格式比较时间序列数据仿真数据检查员。金宝app
在这个例子中,第一个是一个信号timeseries
对象包含的数据对于一个正弦波的名字波数据
。
时间= 0:0.1:20;sig1vals =罪(2 * 5π/ *时间);sig1_ts = timeseries (sig1vals、时间);sig1_ts。Name =“波数据”;
第二个信号也是一个正弦波的频率,略有衰减和采样速度不同。因为比较算法MatchesSignal
约束包括同步步骤,比较这两个信号不同时间向量并不总是导致测试失败。第二个信号也叫波数据
所以对齐算法可以对信号进行比较。
time2 = 0:0.05:20;sig2vals = 0.98 * sin(2 * 5π/ * time2);sig2_ts = timeseries (sig2vals time2);sig2_ts。Name =“波数据”;
创建一个测试用例,比较信号
这个例子使用一个交互式测试用于演示目的。您可以使用MatchesSignal
MATLAB的约束与其他类型的单元测试测试框架。例如,编写基于类的单元测试,看看编写简单的测试用例使用类。
创建一个TestCase
实例交互使用。
进口matlab.unittest.TestCasetestCase = TestCase.forInteractiveUse;
比较sig1_ts
和sig2_ts
使用MatchesSignal
约束。使用sig1_ts
的期望值的实例MatchesSignal
约束。
进口金宝appSimulink.sdi.constraints.MatchesSignaltestCase.verifyThat (sig2_ts MatchesSignal (sig1_ts));
验证失败。- - - - - - - - - - - - - - - - - - - - - - - -框架诊断:- - - - - - - - - - - - - - - - - - - - - - - - MatchesSignal(<价值>)失败。- - >以下一致信号不匹配:名字ActualSignals ExpectedSignals _____ _________________售予波数据实际> <。数据<预期>。数据比较结果保存到:- - > / tmp / Bdoc23a_2213998_2913825 comparisonresults_48f498c2 b09f - 4227 bd1b a271b17——29370。mldatx - - - - - - - - - - - - - - - - - -堆栈信息:- - - - - - - - - - - - - - - - - -在/ tmp / Bdoc23a_2213998_金宝app2913825 / tpac99fd01 / simulink-ex22803619 / TestTimeSeriesDataWithTimeToleranceExample。mlx (TestTimeSeriesDataWithTimeToleranceExample)在14 / mathworks /猛击/棒/ Bdoc23a /构建/ matlab / matlab工具箱/ matlab / codetools / embeddedoutputs / + / + / +内部编辑器/ evaluateRegions。p (evaluateRegions)在0 / mathworks /猛击/棒/ Bdoc23a /构建/ matlab / matlab工具箱/ matlab / codetools / embeddedoutputs / + / + / +内部编辑器/ EvaluationOutputsService。p (EvaluationOutputsService.evalRegions)在0 / mathworks /猛击/棒/ Bdoc23a /构建/ matlab / matlab工具箱/ matlab / codetools / + / + / +内部liveeditor @LiveEditorUtilities /执行。(执行)68 / mathworks /猛击/棒/ Bdoc23a /构建/ matlab /工具/ / exampletools / + mwtools / liveCodeToDocbook例子。431 (doRun) / mathworks /猛击/棒/ Bdoc23a /构建/ matlab /工具/ / exampletools / + mwtools / liveCodeToDocbook例子。346 (doRunConvert) / mathworks /猛击/棒/ Bdoc23a /构建/ matlab /工具/ / exampletools / + mwtools / liveCodeToDocbook例子。164 (liveCodeToDocbook) / mathworks /猛击/棒/ Bdoc23a /构建/ matlab / / build_using_matlab / BML工具。在13米(BML)
诊断信息显示,验证失败。当一个测试失败,比较结果和原始数据保存在一个模拟数据检查会话文件。MLDATX文件点击链接打开会话在仿真数据检查员,在那里你可以调查比较的数据测试和比较的结果。当你检查结果中,您可以看到衰减创建和原因的差异比较失败。
指定一个绝对的宽容0.02
的实例MatchesSignal
约束用于比较。
testCase.verifyThat (sig2_ts MatchesSignal (sig1_ts“AbsTol”,0.02));
验证通过。
配置MatchesSignal
约束行为
这个例子展示了如何配置的比较行为金宝appSimulink.sdi.constraints.MatchesSignal
限制使用金宝appSimulink.sdi.constraints.MatchesSignalOptions
对象。您可以使用一个MatchesSignalOptions
对象配置多重比较属性与一个名称-值对输入的建设MatchesSignal
实例。
创建时间序列数据
这个示例创建工作区数据仅用于演示目的。您可以使用MatchesSignal
约束比较数据从其他来源,如模拟输出或包含测试数据的文件,和约束可以在任何支持的格式比较时间序列数据仿真数据检查员。金宝app
在这个例子中,第一个是一个信号timeseries
对象的名称波数据
包含数据为正弦波。
时间= 0:0.1:20;sig1vals =罪(2 * 5π/ *时间);sig1_ts = timeseries (sig1vals、时间);sig1_ts。Name =“波数据”;
第二个信号也是一个正弦波的频率,略有衰减和采样速度不同。因为比较算法MatchesSignal
约束包括同步步骤,比较这两个信号不同时间向量并不一定导致测试失败。第二个信号是演员单
数据类型和还任命波数据
所以对齐算法可以对信号进行比较。
time2 = 0:0.1:22;sig2vals =单(0.98 * sin(π/ 2 * 5 * time2));sig2_ts = timeseries (sig2vals time2);sig2_ts。Name =“波数据”;
配置一个MatchesSignal
实例和比较数据
您可以使用一个MatchesSignalOptions
指定对象的一个实例MatchesSignal
约束处理等条件不匹配的数据类型和信号是如何实际的和预期的数据集之间的对齐。您可以指定的属性MatchesSignalOptions
对象,以适应测试你想写。例如,如果你想让你的测试比较不同的数据类型和数据类型不匹配功能相关,你可以设置IgnoreDataTypes
财产真正的
。
创建一个MatchesSignalOptions
对象创建一个MatchesSignal
实例,忽略了数据类型不匹配和数据样本以外的时间间隔的实际和预期的信号。
进口金宝appSimulink.sdi.constraints.MatchesSignalOptions选择= MatchesSignalOptions (“IgnoringDataTypes”,真的,“IgnoringExtraData”,真正的);
创建一个TestCase
实例交互使用和比较sig1_ts
和sig2_ts
使用MatchesSignal
约束,MatchesSignalOptions
对象,绝对的宽容0.02
。
进口matlab.unittest.TestCasetestCase = TestCase.forInteractiveUse;进口金宝appSimulink.sdi.constraints.MatchesSignaltestCase.verifyThat (sig2_ts MatchesSignal (sig1_ts“AbsTol”,0.02,“WithOptions”,选择))
验证通过。
测试通过。当你再次运行相同的测试没有定义的选项MatchesSignalOptions
对象,测试失败由于不匹配的数据类型。
testCase.verifyThat (sig2_ts MatchesSignal (sig1_ts“AbsTol”0.02))
验证失败。- - - - - - - - - - - - - - - - - - - - - - - -框架诊断:- - - - - - - - - - - - - - - - - - - - - - - - MatchesSignal(<价值>,“AbsTol”, 0.02)失败。- - >数据类型不匹配的对齐后的信号:名字ActualSignals ActualDataType ExpectedSignals ExpectedDataType售予___________ _____ _________________ * * *波数据实际> <。数据单> <预期。数据的两倍- - - - - - - - - - - - - - - - - -堆栈信息:- - - - - - - - - - - - - - - - - -在/ tmp / Bdoc23a_2213998_2904105金宝app / tp3e641a9d / simulink-ex71177165 / ConfigureMatchesSignalConstraintBehaviorExample。mlx (ConfigureMatchesSignalConstraintBehaviorExample) 16岁/ mathworks /猛击/棒/ Bdoc23a /构建/ matlab / matlab工具箱/ matlab / codetools / embeddedoutputs / + / + / +内部编辑器/ evaluateRegions。p (evaluateRegions)在0 / mathworks /猛击/棒/ Bdoc23a /构建/ matlab / matlab工具箱/ matlab / codetools / embeddedoutputs / + / + / +内部编辑器/ EvaluationOutputsService。p (EvaluationOutputsService.evalRegions)在0 / mathworks /猛击/棒/ Bdoc23a /构建/ matlab / matlab工具箱/ matlab / codetools / + / + / +内部liveeditor @LiveEditorUtilities /执行。(执行)68 / mathworks /猛击/棒/ Bdoc23a /构建/ matlab /工具/ / exampletools / + mwtools / liveCodeToDocbook例子。431 (doRun) / mathworks /猛击/棒/ Bdoc23a /构建/ matlab /工具/ / exampletools / + mwtools / liveCodeToDocbook例子。346 (doRunConvert) / mathworks /猛击/棒/ Bdoc23a /构建/ matlab /工具/ / exampletools / + mwtools / liveCodeToDocbook例子。164 (liveCodeToDocbook) / mathworks /猛击/棒/ Bdoc23a /构建/ matlab / / build_using_matlab / BML工具。在13米(BML)
版本历史
介绍了R2019aR2020a:增强的诊断信息
从R2020a开始,当一个测试使用金宝appSimulink.sdi.constraints.MatchesSignal
约束失败,诊断信息提供了一个路径和检查员会话文件链接到一个模拟数据相比,包括比较结果和原始数据的测试。打开会话文件检查数据和仿真数据的比较结果检查员。
在以前的版本中,诊断信息包括路径和链接到一个静态图像的比较结果。诊断信息不再包含图像。
MATLAB命令
你点击一个链接对应MATLAB命令:
运行该命令通过输入MATLAB命令窗口。Web浏览器不支持MATLAB命令。金宝app
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。