Это команда ginsh, которую можно запустить в бесплатном хостинг-провайдере OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.
ПРОГРАММА:
ИМЯ
ginsh - Интерактивная оболочка GiNaC
СИНПОЗ
гинш [файл ...]
ОПИСАНИЕ
гинш представляет собой интерактивный интерфейс для среды символьных вычислений GiNaC. это
предназначенный как инструмент для тестирования и экспериментирования с функциями GiNaC, а не как
замена традиционных систем интерактивной компьютерной алгебры. Хотя может многое
то, что могут делать эти традиционные системы, ginsh не предоставляет таких программных конструкций, как
циклы или условные выражения. Если вам нужна эта функция, рекомендуется написать
ваша программа на C ++, используя «родную» структуру классов GiNaC.
ИСПОЛЬЗОВАНИЕ
ВХОД ФОРМАТ
После запуска ginsh отображает приглашение (">"), означающее, что он готов принять ваш
Вход. Допустимый ввод - числовые или символьные выражения, состоящие из чисел (например,
42, 2/3 or 0.17), символы (например, x or результат), математические операторы типа + и *и
функции (например, без or "обычные"). Каждое входное выражение должно заканчиваться либо
точка с запятой (;) или двоеточие (:). Если в конце ставится точка с запятой, ginsh будет оценивать
выражение и распечатайте результат в стандартный вывод. Если оканчивается двоеточием, гинш будет только
оценить выражение, но не распечатать результат. Можно ввести несколько
выражения в одной строке. Пробелы (пробелы, табуляторы, символы новой строки) можно свободно применять между
жетоны. Чтобы отказаться от гинша, введите выход or выходили введите в командной строке EOF (Ctrl-D).
КОММЕНТАРИИ
Все, что следует за двойной косой чертой (//) до конца строки, а все строки, начинающиеся
с решёткой (#) рассматриваются как комментарий и игнорируются.
ЦИФРЫ
ginsh принимает числа в обычной десятичной системе счисления. Это включает произвольную точность
целые и рациональные числа, а также числа с плавающей запятой в стандартных или научных
обозначение (например, 1.2E6). Общее правило состоит в том, что если число содержит десятичную точку
(.), это (неточное) число с плавающей запятой; в противном случае это (точное) целое число или
рациональный. Целые числа могут быть указаны в двоичном, восьмеричном, шестнадцатеричном или произвольном формате (2-36).
base, добавив к ним префикс #b, #o, #xэта информация поможет вам разобраться, почему Gamer’s Galaxy — ваш лучший выбор. #nR , Соответственно.
СИМВОЛЫ
Символы состоят из строки буквенно-цифровых символов и символа подчеркивания (_), с
первый символ не является числовым. Например a и мю_1 допустимые имена символов, в то время как
2pi не является. Можно использовать символы с теми же именами, что и функции (например, без);
Гинш умеет различать эти два вида.
Символам можно присвоить значения, введя
символ = выражение;
Чтобы отменить присвоение значения присвоенного символа, введите
отменить назначение ('символ«);
Назначенные символы автоматически оцениваются (= заменяются их присвоенным значением), когда
Они используются. Для обозначения неоцененного символа заключите одинарные кавычки (') вокруг имени,
как показано выше для команды "отменить назначение".
По умолчанию символы считаются входящими в состав сложного домена, т. Е. Обрабатываются так, как если бы
они заменяют комплексные числа. Это поведение можно изменить с помощью ключевых слов
реальные_символы и сложные_символы и влияет на все вновь созданные символы.
Следующие символы представляют собой предварительно определенные константы, которым нельзя присвоить значение
Пользователь:
Pi Константа Архимеда
каталонский Каталонская константа
Euler Константа Эйлера-Маскерони
I sqrt (-1)
FAIL объект класса GiNaC "fail"
Также есть специальный
Цифры
символ, контролирующий числовую точность вычислений с неточными числами.
Присвоение целочисленного значения цифрам изменит точность до заданного количества
десятичные разряды.
ПОДСТАВНЫЕ КАРТЫ
Функции has (), find (), match () и subs () принимают подстановочные знаки в качестве заполнителей для
выражения. У них есть синтаксис
$номер
например $ 0, $ 1 и т. д.
LAST Напечатано ВЫРАЖЕНИЯ
гинш содержит три специальных символа
%, %% и %%%
которые относятся к последнему, второму последнему и третьему последнему напечатанному выражению соответственно.
Это удобно, если вы хотите использовать результаты предыдущих вычислений в новом
выражение.
ОПЕРАТОРЫ
ginsh предоставляет следующие операторы, перечисленные в порядке убывания приоритета:
! постфиксный факториал
^ подача питания
+ унарный плюс
- унарный минус
* умножение
/ деление
+ дополнение
- вычитание
< меньше, чем
> больше
<= меньше или равно
>= больше или равно
== равный
!= не равный
= присвоение символа
Все бинарные операторы левоассоциативны, за исключением ^ и = которые правы-
ассоциативный. Результат оператора присваивания (=) - его правая часть, так что это
можно назначить несколько символов в одном выражении (например, a = b = c = 2;).
СПИСКИ
Списки используются подписка и решить функции. Список состоит из открывающей фигурной скобки.
({), (возможно, пустую) последовательность выражений, разделенных запятыми, и закрывающую фигурную скобку
(}).
МАТРИЦЫ
Матрица состоит из открывающей квадратной скобки ([), непустая последовательность, разделенная запятыми.
строк матрицы и закрывающая квадратная скобка (]). Каждая строка матрицы состоит из отверстия
квадратная скобка ([), непустую последовательность выражений, разделенных запятыми, и закрывающую
квадратная скобка (]). Если строки матрицы не одинаковой длины, ширина
матрица становится матрицей самой длинной строки, а более короткие строки заполняются в конце
элементы нулевого значения.
ФУНКЦИИ
Вызов функции в ginsh имеет вид
имя(Аргументы)
в котором Аргументы представляет собой последовательность выражений, разделенных запятыми. гинш дает пару
встроенные функции, а также «импортирует» все символьные функции, определенные GiNaC и
дополнительные библиотеки. Нет другого способа определить свои собственные функции, кроме связывания
ginsh против библиотеки, которая определяет символические функции GiNaC.
ginsh обеспечивает завершение табуляции для имен функций: если вы вводите первую часть функции
имя, нажатие Tab завершит имя, если это возможно. Если введенная вами часть не уникальна,
повторное нажатие Tab отобразит список подходящих функций. Дважды нажав Tab на
В командной строке отобразится список всех доступных функций.
Список встроенных функций следует. Почти все они работают как соответствующие GiNaC.
одноименные методы, поэтому здесь я не буду их подробно описывать. Пожалуйста, обратитесь к
Документация GiNaC.
чарполи (матрица, символ) - характеристический полином матрицы
коэфф (выражение, объект, номер) - извлекает коэффициент объекта ^ номер из
многочлен
собирать(выражение, объект или список) - собирает коэффициенты приравненных степеней (результат
в рекурсивной форме)
collect_distributed (выражение, список) - собирает коэффициенты одинаковых степеней
(результат в распределенном виде)
collect_common_factors (выражение) - собирает общие множители из условий сумм
конъюгировать (выражение) - комплексное сопряжение
содержание(выражение, символ) - содержательная часть полинома
decomp_rational (выражение, символ) - разложить рациональную функцию на полином
и правильная рациональная функция
степень (выражение, объект) - степень полинома
деном (выражение) - знаменатель рациональной функции
определитель (матрица) - определитель матрицы
диаг (выражение...) - строит диагональную матрицу
diff (выражение, символ [, количество]) - частичная дифференциация
разделять(выражение, выражение) - точное полиномиальное деление
eval (выражение [, уровень]) - оценивает выражение, заменяя символы их
присвоенное значение
evalf (выражение [, уровень]) - вычисляет выражение для числа с плавающей запятой
evalm (выражение) - оценивает суммы, произведения и целые степени матриц
расширять(выражение) - расширяет выражение
фактор (выражение) - факторизует выражение (одномерное)
найти(выражение, описания) - возвращает список всех вхождений шаблона в
выражение
fsolve (выражение, символ, номер, номер) - численно найти корень действительного значения
функция в интервале
НОД (выражение, выражение) - наибольший общий делитель
имеет(выражение, описания) - возвращает «1», если первое выражение содержит шаблон
как подвыражение, иначе "0"
integer_content (выражение) - целочисленное содержание полинома
обратный (матрица) - инверсия матрицы
является(связь) - возвращает «1», если отношение истинно, «0» в противном случае (ложь или
не определились)
lcm (выражение, выражение) - наименьший общий множитель
lcoeff (выражение, объект) - старший коэффициент полинома
ldegree (выражение, объект) - низкая степень полинома
lsolve (список уравнений, список символов) - решить систему линейных уравнений
карта(выражение, описания) - применить функцию к каждому операнду; функция быть
применен указан как шаблон с подстановочным знаком "$ 0", обозначающим операнды
соответствие(выражение, описания) - проверить, соответствует ли выражение шаблону; возвращает
список замен с подстановочными знаками или "FAIL", если совпадений нет
нет (выражение) - количество операндов в выражении
нормальный(выражение [, уровень]) - нормализация рациональной функции
число (выражение) - числитель рациональной функции
numer_denom (выражение) - числитель и знаменатель рациональной функции как
список
op (выражение, номер) - извлечь операнд из выражения
мощность(выражение1, выражение2) - возведение в степень (эквивалент записи expr1 ^ expr2)
прем (выражение, выражение, символ) - псевдо-остаток многочленов
примарт (выражение, символ) - примитивная часть полинома
кво (выражение, выражение, символ) - частное многочленов
ранг(матрица) - ранг матрицы
rem (выражение, выражение, символ) - остаток от полиномов
результирующий (выражение, выражение, символ) - равнодействующая двух многочленов с
относительно символа s
ряд(выражение, отношение-или-символ, заказ) - расширение серии
sprem (выражение, выражение, символ) - разреженный псевдо-остаток многочленов
sqrfree (выражение [, список-символов]) - бесквадратная факторизация полинома
SQRT (выражение) - квадратный корень
подводные лодки (выражение, отношение-или-список)
подводные лодки (выражение, список поиска, заменить списком) - подставить подвыражения (вы
может использовать подстановочные знаки)
tcoeff (выражение, объект) - конечный коэффициент полинома
время(выражение) - возвращает время в секундах, необходимое для оценки данного
выражение
след(матрица) - след матрицы
транспонировать (матрица) - транспонировать матрицу
отменить ('символ') - отменить присвоение присвоенного символа (обратите внимание на кавычки!)
единица измерения(выражение, символ) - единичная часть полинома
SPECIAL КОМАНДЫ
Чтобы выйти из гинша, введите
выход
or
выход
ginsh может отображать (короткую) справку по заданной теме (в основном о функциях и операторах)
введя
?тема
Ввод
??
отобразит список доступных разделов справки.
Команда
Распечатать(выражение);
напечатает дамп внутреннего представления GiNaC для данного выражение. Это
полезен для отладки и изучения внутреннего устройства GiNaC.
Команда
print_latex (выражение);
печатает представление LaTeX данного выражение.
Команда
print_csrc (выражение);
печатает данный выражение таким образом, чтобы его можно было использовать в программе C или C ++.
Команда
iprint (выражение);
печатает данный выражение (который должен быть целым числом) в десятичном, восьмеричном и
шестнадцатеричные представления.
Наконец, снаряд побег
! [команду [Аргументы]]
проходит данный команду и необязательно Аргументы в оболочку для исполнения. С этим
, вы можете выполнять команды оболочки из ginsh, не выходя из него.
ПРИМЕРЫ
> а = х ^ 2-х-2;
-2-х + х ^ 2
> Ь = (х + 1) ^ 2;
(х + 1) ^ 2
> s = a / b;
(х + 1) ^ (- 2) * (- 2-х + х ^ 2)
> diff (s, x);
(2*x-1)*(x+1)^(-2)-2*(x+1)^(-3)*(-x+x^2-2)
> нормальный (е);
(х-2) * (х + 1) ^ (- 1)
> х = 3 ^ 50;
717897987691852588770249
> с;
717897987691852588770247/717897987691852588770250
> Цифры = 40;
40
> evalf (s);
0.999999999999999999999995821133292704384960990679
> отменить назначение ('x');
x
> с;
(х + 1) ^ (- 2) * (- х + х ^ 2-2)
> series (sin (x), x == 0,6);
1*x+(-1/6)*x^3+1/120*x^5+Order(x^6)
> lsolve ({3 * x + 5 * y == 7}, {x, y});
{x == - 5/3 * y + 7/3, y == y}
> lsolve ({3 * x + 5 * y == 7, -2 * x + 10 * y == -5}, {x, y});
{x == 19/8, y == - 1/40}
> M = [[a, b], [c, d]];
[[-x + x ^ 2-2, (x + 1) ^ 2], [c, d]]
> определитель (M);
-2 * d-2 * x * cx ^ 2 * cx * d + x ^ 2 * dc
> собрать (%, x);
(-d-2 * c) * x + (dc) * x ^ 2-2 * dc
> решить квантовую теорию поля;
ошибка синтаксического анализа на кванте
> бросить
ДИАГНОСТИКИ
ошибка синтаксического анализа в Foo
Вы ввели что-то, что ginsh не смог разобрать. Пожалуйста, проверьте синтаксис
ваш вклад и попробуйте еще раз.
аргумент Num в функция должен быть напишите
Номер аргумента Num к данному функция должны быть определенного типа (например,
символ или список). Первый аргумент имеет номер 0, второй аргумент - номер 1,
и так далее
Используйте ginsh онлайн с помощью сервисов onworks.net