Иллюстрированный самоучитель по Mathematica 3

Mathematica как составляющая Вашего программного обеспечения

MathLink может также использоваться для обращения к другим программам изнутри ядра системы Mathematica.

MathLink позволяет устанавливать шаблоны, чтобы точно определить, каким образом должны вызваться внешние программы. Это определяет связь с библиотекой подпрограмм языка C.

:Begin: :Function: anneal :Pattern: TSPTour[r:{{_, _}..}] :Arguments: {First[Transpose[r]],
 Last[Transpose[r]], Length[r], Range[Length[r]]}
 :ArgumentTypes: {RealList, RealList, Integer, IntegerList} :ReturnType: Manual :End:

Создание в системе Mathematica трехмерного графика.

Иллюстрированный самоучитель по Mathematica 3 › Mathematica как составляющая Вашего программного обеспечения

Это изображение было получено с использованием возможностей внешнего графического редактора, в который оно было передано из системы Mathematica через протокол MathLink.

Иллюстрированный самоучитель по Mathematica 3 › Mathematica как составляющая Вашего программного обеспечения

Вы можете использовать MathLink, чтобы управлять интерфейсом системы Mathematica из ее ядра.

Эта команда сообщает интерфейсу системы, что надо открыть окно, содержащее палитру цветов.

FrontEndTokenExecute["ColorSelectorDialog"]

Можно использовать MathLink, чтобы обеспечить связь между несколькими экземплярами ядра системы Mathematica вне зависимости от того, находятся ли они все на локальном или на удаленных компьютерах.

На большинстве компьютерных систем (обычно исключение составляет Macintosh) эта команда запускает дополнительное ядро системы Mathematica на Вашем компьютере.

link=LinkLaunch["MathKernel -mathlink"];

Команда чтения данных из дополнительного ядра.

LinkRead[link]
InputNamePacket["In[1]:= "]

Запись команды в дополнительное ядро.

LinkWrite[link,Unevaluated[$SessionID]]

Считывание $SessionID из вспомогательного ядра.

LinkRead[link]
ReturnPacket[20002811790628968292]

Значение $SessionID в Вашем главном ядре будет отличаться.

$SessionID
20000841219624707995

Закрытие дополнительного ядра.

LinkClose[link];
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.