Системы компьютерной алгебры с открытым исходным кодом для общей теории относительности

Я хотел бы использовать систему компьютерной алгебры (CAS) с открытым исходным кодом для исследований в области общей теории относительности. Пожалуйста, предложите хороший выбор между Ipython и Sage. Меня больше интересует теоретический аспект, а не численные расчеты.

Вы знаете о Кадабре ? Также см. его домашнюю страницу здесь , а также эту статью в качестве сводки по тензорной алгебре в GR: Brewin, LC, 2010, «Краткое введение в Cadabra: инструмент для тензорных вычислений в общей теории относительности», Computer Physics Communications [P], vol. 181, Elsevier BV, Амстердам, Нидерланды, стр. 489-498. Однако он написан на C++, и я думаю, что его единственный интерфейс — TeX.
Существует также Maxima/wxMaxima, который поставляется с тензорными пакетами (я часто использую ctensor), andrejv.github.io/wxmaxima .
«Символический и численный анализ в общей теории относительности с использованием систем компьютерной алгебры с открытым исходным кодом» arxiv.org/abs/1703.09738

Ответы (5)

Есть только два пакета GR/tensor с открытым исходным кодом, о которых я знаю: Cadabra (без координат) и Maxima/xwMaxima (на основе координат, пакеты ctensor, itensor и atensor).

Cadabra больше не является только «свободной от координат»; вы также можете выполнять вычисления компонентов в явных координатах в серии 2.x.

Я бы не рекомендовал ни один из вариантов, которые вы упомянули. Если у вас есть Mathematica, и ваши потребности в ОТО достаточно базовые (вычисления связей, кривизны, геодезические), то я рекомендую использовать тетради из текста Хартла, находящиеся в свободном доступе здесь .


Если ваши потребности более продвинуты или вам нужно что-то более функциональное, я бы предложил использовать xAct и все его пакеты, которые включают такие функции, как:

  • Общие тензорные манипуляции
  • Теория гравитационных возмущений высокого порядка
  • Тензорные сферические гармоники
  • Спинорные вычисления в ОТО
  • Внешнее исчисление

Я использовал пакеты несколько раз для вычислений, и xAct не только способен на многие подвиги, но и довольно быстр. и очень хорошо документировано. В каждый пакет также входят примеры и блокноты, которые помогут вам начать работу. Единственный недостаток: есть немного кривой обучения. Однако авторы создали группу/форум Google, чтобы пользователи могли помогать друг другу.


Я могу подтвердить это, учитывая, что мне пришлось использовать его для вычислений в г "=" 26 .

ОП специально запросил пакеты с открытым исходным кодом.
@ m4r35n357 Для обоих пакетов доступен исходный код Mathematica. Если под открытым исходным кодом вы имеете в виду тот факт, что Mathematica сама по себе не является открытым исходным кодом, то вы правы, ну и что? Основная причина, по которой нужен открытый исходный код, — это настройка инструментов, а пакеты позволяют это делать, так что проблем нет. Конечно, есть и моральная причина желать открытого исходного кода, но это не должно влиять на решения при выборе инструментов для исследований в области теоретической физики.
ОП специально запросил пакеты с открытым исходным кодом. Не существует определения открытого исходного кода, подходящего для надстроек Mathematica. Я не могу их использовать, и, скорее всего, ОП тоже не может. Иначе зачем бы он просил пакет с открытым исходным кодом?
@ m4r35n357 Вы понимаете, что ответы SE предназначены не только для OP, но и для всех, кто может быть заинтересован в этой теме?
Да, я читал и комментировал тему, не относящуюся к теме.
«Открытый исходный код» становится синонимом «бесплатного». Основная причина, по которой они предпочитают это, заключается в том, что у большинства исследователей и университетов недостаточно денег, чтобы предоставить всем несвободное программное обеспечение, которое они могут запросить. Обратите внимание, что вся наука делается в сотрудничестве, и нет лучшего способа разозлить сотрудников, чем сказать им, что они должны тратить свои собственные деньги, чтобы использовать написанный вами код.

Недавно на arXiv вышла эта статья: Символьное тензорное исчисление на многообразиях: реализация SageMath .

В нем описывается, как классы дифференцируемых многообразий, векторных и тензорных полей реализованы в SageMath (через проект SageManifold) и как их можно использовать.

Я разрабатывал набор инструментов; spacetimeengine как исследовательский инструмент. Он чрезвычайно легкий, но полностью ориентирован на общую теорию относительности.

Мы разрабатываем и поддерживаем библиотеку Python для выполнения символьных вычислений для общей теории относительности, среди прочего. Ознакомьтесь с «символьным» модулем EinsteinPy , а также посмотрите на различные примеры .