Maple и C++

Форум пользователей пакета Maple

Модератор: Admin

bdfn
Сообщения: 2
Зарегистрирован: Чт янв 28, 2016 1:24 pm

Maple и C++

Сообщение bdfn » Чт июл 07, 2016 11:35 am

У меня вопрос по поводу "связки" Maple и С++.
Пусть есть файл в Maple в котором получена система дифференциальных уравнений.
Далее я хочу решать эту систему числено, но не с помощью функции dsolve, а с помощью
функций находящейся в библиотеке boots (http://www.boost.org) для С++.

Для решения этой проблемы я сделал следующее:
1) первое написал консольное приложение в С++, в которое вставил мою систему уравнений из Maple.
2) при численном решений консольное приложение записывало (полученные при численном решении) точки в файл txt.
3) далее я в Maple "считывал" этот файл и записывал полученные данные в массив и выполнял дальнейшие манипуляции с ними в Maple.

В результате у меня возник следующий вопрос. Можно ли каким то образом "автоматически" из Maple передать систему дифференциальных уравнений (а не переписывать их вручную) в нужную мне функцию в библиотеке boots и далее также передать полученное решение в Maple (не записывая в txt файл) ? Подскажите пожалуйста, хотя бы в каком направлении нужно "копать".

Markiyan Hirnyk
Сообщения: 1343
Зарегистрирован: Вс дек 04, 2011 11:07 pm

Re: Maple и C++

Сообщение Markiyan Hirnyk » Чт июл 07, 2016 12:19 pm

bdfn писал(а):У меня вопрос по поводу "связки" Maple и С++.
Можно ли каким то образом "автоматически" из Maple передать систему дифференциальных уравнений (а не переписывать их вручную) в нужную мне функцию в библиотеке boots... ?
Сомневаюсь ввиду

Код: Выделить всё

CodeGeneration[C](diff(y(x), x) = y(x)+x);
Warning, the function names {diff, y} are not recognized in the target language
cg3 = diff(y(x), x) == y(x) + x;

Относительно передачи данных в обратном направлении см. http://www.mapleprimes.com/maplesoftblog/100432-Introduction-To-External-Calling
Пытались ли Вы применить http://www.maplesoft.com/support/help/Maple/view.aspx?path=Compiler%2fCompile?