ssSetOutputPortDimensionInfo() 二维矩阵示例

以下是如何在 Matlab/Simulink S-Function 中使用 ssSetOutputPortDimensionInfo() 指定二维矩阵输出端口。在此示例中,我们将指定一个 7x7 矩阵输出端口(总共 49 个元素)。

sssetoutputport.cpp
#include "simstruc.h"

static int _outputSubDims[2] = {7, 7};
static DimsInfo_T outputDimsInfo = {
        7*7,
        2,
        _outputSubDims,
        nullptr
};


// Function: mdlInitializeSizes ==============================================
static void mdlInitializeSizes(SimStruct *S) {
  // ...
  if (!ssSetNumOutputPorts(S, 1)) return;
  ssSetOutputPortWidth(S, 0, 49); // 7x7 elements

  ssSetOutputPortDimensionInfo(S, 0, &outputDimsInfo);
}

Check out similar posts by category: Matlab/Simulink, C/C++