Блог им. Kot_Begemot |Интеграция MatLab Engine и С++ (1)

В сложных вычислительных задачах (или просто при нежелании программировать на Lua, Cpp и т.д., а пользоваться более высокоуровневыми инструментами разработки), незаменимым оказывается API интерфейс Матлаба реализованный в качестве Active-X COM Automation Server.  Для его реализации на языке Си существует специальная библиотека libeng.lib, позволяющая языкам Си, С++, Фортран обмениваться данными и пользоваться всеми ресурсами Матлаба (обычно это обработка видео, автопилоты, ИИ, нейронные сети и т.п.).


Поэтому, в качестве изучения возможностей, попробуем реализовать простейший проект обмена данными и вызова функций Матлаб со стороны Си++ при использовании CodeBlocks и MinGW64.



  • Запуск интерфейса Матлаб

Чтобы адресовать все внешние процессы к единому процессу Матлаб, а не запускать Engine для каждого процесса в отдельности, 
запустим «двигатель» матлаба внутренней командой :

server=actxserver('matlab.application.single'); server.Execute(' enableservice (''AutomationServer'', true)');


( Читать дальше )

Блог им. Kot_Begemot |COM интерфейс МаtLab в LUA

Так уж вышло, что пару дней назад я познакомился с терминалом QUICK и языком его скриптов — LUA

   Естественно, сразу возникла необходимость передать полный контроль над этим двумя сложнейшими приложениями чему-то более простому и понятному, например Матлабу, чтобы нажимая разноцветные кнопочки «Обыграть рынок» и «Что там опять у волатильности?» оставить конечному пользователю, то есть мне, только наслаждение от наблюдения за происходящим.


     Теоретически, для этого надо нанять менеджера COM из LUACOM.dll и дать ему в управление пару простых исполнителей — объектов LUA, чтобы высшее руководство МатЛаба могло эффективно распоряжаться ресурсами в иерархии 

 Руководство МатЛаб -> менеджер интерфейса  COM -> исполнитель  объект LUA 


       Но в силу каких-то неведомых причин (от сборки dll, до сборки MS Windows и даже предустановленного железа) сделать по теории управления с ходу не получилось, поэтому была использована альтернативная схема:

( Читать дальше )
  • обсудить на форуме:
  • Quik Lua

....все тэги
UPDONW
Новый дизайн