MATLAB 帮助中心
本页采用了机器翻译。点击此处可查看英文原文。
类: cv.cvdatagroup 命名空间: cv
在 cvdata 中获取指定的 cvdatagroup 对象
cvdata
cvdatagroup
covData = get(cvdg,dataName)
covData = get(cvdg,dataName,simMode)
covData = get(cvdg,dataName) 返回 cv.cvdatagroup 对象 cvdg 中的一个或多个 cvdata 对象,这些对象对应于 dataName 中指定的模型或文件。如果您使用多种不同的仿真模式仿真相同的模型引用,则 get 将返回多个 cvdata 对象。
covData
cvdg
dataName
cv.cvdatagroup
get
covData = get(cvdg,dataName,simMode) 返回具有仿真模式 simMode 的 cvdata 对象或对象。
simMode
全部展开
覆盖率数据组,指定为 cv.cvdatagroup 对象。
数据类型: cv.cvdatagroup
覆盖率数据的名称,指定为字符数组或字符串数组。dataName 可以是与 cv.cvdatagroup 中包含的一个或多个 cvdata 对象相对应的模型、子系统或外部代码文件的名称。如果该函数未找到匹配项,它将返回一个空数组。如果该函数找到多个匹配项,它将返回 cvdata 对象的元胞数组。
数据类型: char | string
char
string
"Normal"
"SIL"
"PIL"
"ModelRefSIL"
"ModelRefPIL"
"ModelRefTopSIL"
"ModelRefTopPIL"
与 cv.cvdatagroup 对象中的一个或多个 cvdata 对象对应的仿真模式,指定为以下选项之一:
普通仿真模式下的模型。
"SIL" or "PIL"
软件在环 (SIL) 或处理器在环 (PIL) 仿真模式下的模型。
"ModelRefSIL" or "ModelRefPIL"
软件在环 (SIL) 或处理器在环 (PIL) 仿真模式中的模型引用。
"ModelRefTopSIL" or "ModelRefTopPIL"
软件在环 (SIL) 或处理器在环 (PIL) 仿真模式下的模型引用,其代码接口设置为顶层模型。
如果该函数未找到匹配项,它将返回一个空数组。如果该函数找到多个匹配项,它将返回一个元胞数组。
覆盖率数据,以 cvdata 对象或 cvdata 对象的元胞数组返回。如果指定了 simMode,则 covDataArray 仅包含与 simMode 匹配的覆盖率数据。
covDataArray
数据类型: cell
cell
此示例说明如何从 cv.cvdatagroup 对象中检索指定的覆盖率数据对象、所有覆盖率数据对象或所有覆盖率数据对象的名称。
加载示例模型。
modelName = 'slvnvdemo_eml_model_coverage_demo'; load_system(modelName);
使用 Simulink.SimulationInput 类来设置启用覆盖率的仿真场景。
Simulink.SimulationInput
simIn = Simulink.SimulationInput(modelName); simIn = setModelParameter(simIn,'CovEnable','on'); simIn = setModelParameter(simIn,'CovMetricStructuralLevel','MCDC'); simIn = setModelParameter(simIn,'CovSaveSingleToWorkspaceVar','on'); simIn = setModelParameter(simIn,'CovSaveName','covData'); simIn = setModelParameter(simIn,'CovSaveOutputData','off');
通过将 SimulationInput 对象传递给 sim 函数对模型进行仿真,并从 SimulationOutput 对象中检索覆盖率数据。
SimulationInput
sim
SimulationOutput
simOut = sim(simIn); covData = simOut.covData
covData = ... cv.cvdatagroup slcoverageExternalFile (simulation mode: Normal) slvnvdemo_eml_model_coverage_demo (simulation mode: Normal)
示例模型包含一个 MATLAB® Function 模块,该模块调用了一个外部 MATLAB 函数。由于 Simulink Coverage 以一个单独的 cvdata 对象形式返回 MATLAB 函数的覆盖率数据,因此 sim 会返回一个 cv.cvdatagroup 对象,其中包含模型和 MATLAB 函数的覆盖率结果。
要确定与 cv.cvdatagroup 中的每个 cvdata 对象关联的名称,请使用类方法 allNames。
allNames
covDataNames = allNames(covData)
covDataNames = 2×1 cell array {'slcoverageExternalFile' } {'slvnvdemo_eml_model_coverage_demo'}
cv.cvdatagroup 包含模型以及 MATLAB 函数的覆盖率结果。
要检索模型的覆盖率数据,请使用 get 类方法。
modelCovData = get(covData,modelName)
modelCovData = ... cvdata version: (R2025b) id: 882 type: TEST_DATA test: cvtest object rootID: 884 checksum: [1x1 struct] modelinfo: [1x1 struct] startTime: 12-Aug-2025 18:01:59 stopTime: 12-Aug-2025 18:01:59 intervalStartTime: intervalStopTime: simulationStartTime: 0 simulationStopTime: 1 filter: simMode: Normal
要检索模型和外部文件的覆盖率数据,请使用 getAll 类方法。
getAll
covDataArray = getAll(covData)
covDataArray = 2×1 cell array {1×1 cvdata} {1×1 cvdata}
在 R2007b 中推出
cvdata | cv.cvdatagroup
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
欧洲
亚太
联系您当地的办事处