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