matlab/simulink仿真中normal,Accelerator,Rapid Accelerator模式有什么区别?求详细,谢谢

如题所述

第1个回答  2021-05-19

matab技术文档里面有(网页链接):

Normal 模式

在 Normal 模式下,MATLAB® 技术计算环境是 Simulink 软件的基础环境。Simulink 控制仿真过程中使用的求解器和模型方法。模型方法包括模型输出的计算等内容。Normal 模式在一个进程中运行。

Accelerator 模式

默认情况下,Accelerator 模式采用即时 (JIT) 加速方式在内存中生成执行引擎,而不是生成 C 代码或 MEX 文件。您还可以将模型回退到经典 Accelerator 模式,在这种模式下,Simulink 将生成代码并将代码链接到 C-MEX S-Function。

在 Accelerator 模式下,模型方法与 Simulink 软件相分离,它们将作为之后进行仿真时使用的加速目标代码的一部分。

Simulink 会在重用加速目标代码之前检查代码是否为最新版本。有关详细信息,请参阅Code Regeneration in Accelerated Models。

在 Accelerator 模式下,有两种操作模式。

即时 Accelerator 模式

在此默认模式下,Simulink 在内存中只为顶级模型(而不为引用模型)生成执行引擎。因此,仿真过程中不需要使用 C 编译器

由于加速目标代码在内存中,因此只要模型处于打开状态,就可以重用这些代码。Simulink 还会序列化加速目标代码,因此当模型处于打开状态时,不需要重新构建模型。

经典 Accelerator 模式

要使用生成 C 代码的经典 Accelerator 模式对您的模型进行仿真,请运行以下命令:

set_param(0, 'GlobalUseClassicAccelMode', 'on');

在此模式下,Simulink 会生成代码并将代码链接到与 Simulink 软件进行通信的共享库。MATLAB 与 Simulink 的目标代码执行过程相同。

Rapid Accelerator 模式

Rapid Accelerator 模式从您的模型中创建一个 Rapid Accelerator 独立可执行文件。这个可执行文件包含求解器和模型方法,但位于 MATLAB 和 Simulink 的外部。它使用 External 模式(请参阅External Mode Communication (Simulink Coder))与 Simulink 通信。

相似回答