В настоящее время я пишу файл MEX на C, чтобы ускорить код MATLAB, который сильно зависит от дескрипторов функций. К сожалению, мой файл MEX работает медленнее, чем должен, потому что мне приходится использовать mexCallMATLAB
для оценки дескрипторов в MATLAB (как описано здесь).
Большинство дескрипторов функций представляют собой простые встроенные функции, которые принимают однородные случайные числа и генерируют случайные переменные. Типичный пример:
f = @(u) exp(norminv(u))
Несмотря на то, что дескрипторы функций используют встроенные функции MATLAB, мой код должен позволять пользователям использовать свои собственные дескрипторы функций, что не позволяет мне жестко кодировать функции в файле MEX.
В идеале я хотел бы предоставить файлу MEX способ оценить этот дескриптор функции без необходимости каждый раз использовать функцию mexCallMATLAB
. Кто-нибудь знает, как такое можно сделать? Я открыт для любых ваших предложений.