Форум русскоязычного сообщества Ubuntu


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

Автор Тема: LaTeX + Maxima  (Прочитано 976 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн obgorelyi

  • Автор темы
  • Новичок
  • *
  • Сообщений: 45
    • Просмотр профиля
LaTeX + Maxima
« : 10 Июня 2013, 00:17:33 »
Честно, сказать, не знаю пригодится, кому-нибудь помимо меня или нет, но вот написал небольшой скриптик, который, как бы так выразиться, формулы из tex-документа в Maxima решает.
Идея возникла из-за того, что не смог заставить работать данный проект http://webs.um.es/mira/tex/maxima_latex.php на своей машине, увы но LISP я не знаю, и как пишутся sty-файлы для LaTeX'а тоже, чтобы разобраться с этим.
Также скидываю, демонстрационным пример, из тех, что мне ручками вычислять приходилось :).
Процедура использования следующая, скидывается все в одну папку. Далее в консоли последовательно выполняем:
   python3 mltex.py test.tex
   ./parser.sh test_result.tex
   latex test_result.tex
/*Эту операцию лучше проделать дважды, по-моему горькому опыту, если сделать это один раз, может, что-нибудь отвалится, чаще всего отваливается содержание, но его в демонстрационном примере нету*/
   dvips test_result.dvi

Вместо test.tex используете свой tex-файл.
В исходном tex-файле, код который должен вычисляться в Maxima ограничивается c помощью:
\begin{maxima}
    % Вычисления;
    tex(Результат, который хотим увидеть в документе);
\end{maxima}

Файл parser.sh нужен исключительно, чтобы привести полученный документ к форме записи привычной для механиков, правда вот не знаю, как сделать так, чтобы еще и скобки лишние удалял, вокруг фи с точкой и фи с двумя точками, а точнее, чтобы вне зависимости от переменной фи это или пси, чтобы от лишних скобок избавлял, надеюсь, кто нибудь знает, как это сделать, буду рад узнать сию тайну :).
Также из недостатков могу выделить, что записи формулы в файл, разбивает оную на много строк, что не есть хорошо, как от этого избавиться?

Результат должен быть соответствующий:

Также желательна критика, может опять дури наляпал :).
Также из недостатков, пока не рассматривает вычисления через весь файл! То есть вычисления каждой зоны происходят по отдельности, от этого проку мало, но это я исправлю, ибо самому нужно, чтобы вычисления в блоках maxima были взаимосвязаны.
***
Добавил возможность вычислений через весь файл. Пользоваться, так же как и раньше, правда без парсера, если все записывать в форме, в какой это Maxima родила, не влезет на страницу, а формулы, стоящие отдельно в LaTeX'e только ручками разбить на строки можно.
Пока не разобрался, как от лишних скобок избавиться (на выходном tex-файле их отчетливо видно).
« Последнее редактирование: 10 Июня 2013, 20:43:15 от obgorelyi »

 

Страница сгенерирована за 0.09 секунд. Запросов: 25.