Реализация пользовательского MATLAB функционирует в Simulink

Я хотел бы использовать пользовательскую функцию MATLAB в Simulink. До сих пор я сделал это путем размещения встроенного функционального блока 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;

где initializeLq и getLr пользовательские функции также.

Существует ли метод для реализации вышеупомянутой функции на моделировании?

6
задан Peter Mortensen 12 February 2012 в 04:02
поделиться

1 ответ

Вам необходимо использовать команду eml.extrinsic для вызова любых внешних функций MATLAB из блока EML. Например, вы можете поместить это в начало вашей функции EML,

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

, чтобы разрешить вызов этих функций. Для получения дополнительной информации см. Документацию

1
ответ дан 17 December 2019 в 22:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: