主要内容

依赖性分析仪范围和限制

分析范围

依赖关系分析器为您的项目或模型识别所需的文件和附加组件。分析涵盖了广泛的依赖关系,包括模型引用、子系统引用、链接库、MATLAB®C / C ++代码,stateflow.®图表,数据文件,S函数和要求文档。

当依赖分析器遇到MATLAB代码时,例如在模型或块回调中,或在.m文件S函数,它尝试识别IT引用的文件。有关更多信息,请参阅分析的局限性

对于MATLAB根文件夹下的文件,依赖性分析器仅显示所需产品。下载188bet金宝搏它没有分析依赖关系。

依赖性分析仪识别用户定义的加载项和依赖关系内的依赖关系,这些附加组件和依赖项在模型参数中由Matlab代码引入。默认情况下,这些选项已关闭,因为它们可能对大型设计耗时。

要指定分析的范围,请在依赖性分析器工具系列中单击分析并选择以下选项中的一个或多个:

选项 默认的 描述
C / C ++代码 分析所介绍的依赖关系C / C ++代码文件。
附加组件 分析附加组件内部的依赖关系。
模型参数 分析Matlab代码在模型块参数中引入的依赖关系。
生成的代码可追溯性 分析由模型生成的代码引入的依赖项。

分析的局限性

  • 依赖性分析仪具有特定于MATLAB代码分析的限制:

    • 依赖性分析器仅在文字字符向量或字符串时识别函数输入参数:

      加载(“mydatafile”)加载mydatafile

      如果将文件名定义为变量并将其传递给函数,则依赖性分析器无法识别依赖项。在以下示例中,由于未执行代码,因此依赖性分析器没有值str..依赖关系分析器可能会报告缺失的依赖关系。

      str =“mydatafile”;负载(str);
      该限制延伸到类似于的功能加载, 如富豪xlsread.importData.dlmread求解, 或者imread

    • 依赖关系分析器并不总是自动确定类型。依赖项分析器可能会将方法与函数混淆,并报告缺失的依赖项,这取决于您调用对象方法的方式。

      在MATLAB中,可以用两种不同的方式调用对象方法。例如,对于一个对象P.,您可以调用该方法添加文件使用函数符号:

      p = currentProject;addfile(p,“myfile”);
      或者使用点表示法:
      p = currentProject;p.addfile(“myfile”);
      如果您没有声明类型P.显式,依赖性分析仪可能会混淆使用函数符号的方法调用。分析仪报告添加文件作为缺失的依赖。

      要解决此限制,请使用点表示法调用方法或使用参数在函数中显式声明变量类型:

      函数myfunction (p)参数P.matlab.project.Project结尾addfile(p,“myfile”);结尾

  • 依赖分析器可能不会报告模型所需的特定块集。

    依赖分析器无法检测不引入任何文件依赖关系的块集,例如Fixed-Point Designer™。

    要包含分析无法检测到的依赖项,请添加引入对项目依赖的文件。要从模型中创建项目,请参阅从模型中创建项目

  • 依赖性分析器可能无法检测到所需的支持包。金宝app它列出了必需的附加组件,包括应用程序和工具箱。

  • 依赖性分析器可能不会报告屏蔽块中的动态内容的依赖关系。

    基于屏蔽块的参数,动态掩模可以修改屏蔽子系统并更改块依赖性。如果动态掩码位于库中,依赖性分析器无法检测到动态变化。

  • 依赖性分析器不支持Simulink金宝app金宝app®从MATLAB函数块调用的函数。

  • 依赖分析器不支持使用MATLAB作为操作语言的状态流图。金宝app

  • 一些数学作业®下载188bet金宝搏产品和附加组件共享代码和Simulink库。金宝app依赖性分析器可能会报告所有这些依赖性。

    调查使用共享代码的位置特性面板,下载188bet金宝搏部分,指向下方的产品共享之间的功能:并单击“搜索文件夹”图标

  • 依赖分析器分析项目代码而不评估其内容,因此:

    • 依赖性分析器不会在执行的函数中添加全局变量。

    • 依赖性分析器分析逻辑语句内的代码,即使没有执行。在以下示例中,未执行代码,但依赖性分析器报告对Simulink的缺失依赖项。金宝app

      如果假load_system (vdp)结尾

相关的话题