6

我想在 Simulink 中使用自定义 MATLAB 函数。到目前为止,我已经通过放置一个嵌入式 MATLAB 功能块来完成它。但是,如果自定义函数包含另一个自定义函数,则编译过程会失败。

这是我试图嵌入模拟的函数示例:

function [c, d, iterationsCount] = decodeLDPC(y, H, variance)
Lci = initializeLq(y, H, variance);
Lr = getLr(Lci);
[Lq, c] = getLq(Lci, H, Lr);
iterationsCount = 1;

while(sum(mod(c * H', 2)) ~= 0)
    Lr = getLr(Lq);
    [Lq, c] = getLq(Lq, H, Lr);
    iterationsCount = iterationsCount + 1;
end;
G = getGeneratorMatrix(H);
d = c/G;

whereinitializeLqgetLr也是自定义函数。

有没有办法在仿真中实现上述功能?

4

1 回答 1

1

您需要使用命令eml.extrinsic从 EML 块调用任何外部 MATLAB 函数。例如,您可以将其放在 EML 函数的顶部,

eml.extrinsic('getLr', 'initializeLq');

允许调用这些函数。有关更多信息,请参阅文档

于 2010-04-29T01:11:21.343 回答