Интегральный калькулятор

  1. Как работает интегральный калькулятор

Выше, введите функцию для интеграции. Переменные интеграции , границы интеграции и многое другое можно изменить в « Настройках ». Нажмите « Go! », Чтобы начать интегральный / антидеривативный расчет. Результат будет показан ниже.

Как работает интегральный калькулятор

Для тех, кто имеет техническое образование, в следующем разделе объясняется, как работает интегральный калькулятор.

Первый синтаксический анализатор анализирует математическую функцию. Он преобразует его в форму, более понятную для компьютера, а именно в дерево (см. Рисунок ниже). При этом Интегральный калькулятор должен соблюдать Порядок операций , Особенностью математических выражений является то, что знак умножения иногда можно не указывать, например, мы пишем «5x» вместо «5 * x». Интегральный калькулятор должен обнаружить эти случаи и вставить знак умножения.

Парсер реализован в JavaScript , на основе Алгоритм маневрового двора и может работать непосредственно в браузере. Это обеспечивает быструю обратную связь при наборе текста путем преобразования дерева в Латекс код. MathJax заботится о его отображении в браузере.

Когда "Иди!" При нажатии этой кнопки Интегральный калькулятор отправляет математическую функцию и настройки (переменные интегрирования и границы интегрирования) на сервер, где они снова анализируются. На этот раз функция преобразуется в форму, которая может быть понята система компьютерной алгебры максима ,

На этот раз функция преобразуется в форму, которая может быть понята   система компьютерной алгебры   максима   ,

Максима заботится о фактическом вычислении интеграла математической функции. Выход Maxima снова преобразуется в LaTeX, а затем представляется пользователю. Антидериватив вычисляется с использованием Алгоритм Риш , что трудно понять людям. Вот почему показ шагов вычисления очень сложен для интегралов.

Чтобы показать шаги, калькулятор применяет те же методы интеграции, что и человек. Программа, которая делает это, была разработана в течение нескольких лет и написана на собственном языке программирования Maxima. Он состоит из более чем 17000 строк кода. Когда подынтегральное выражение совпадает с известной формой, оно применяет фиксированные правила для решения интеграла (например, разложение по частичной дроби для рациональных функций, тригонометрическое замещение для подынтегральных выражений, включающих квадратные корни квадратичного полинома, или интегрирование по частям для произведений определенных функций). В противном случае он пробует разные замены и преобразования, пока либо не будет решен интеграл, не истечет время или не останется ничего попробовать. В калькуляторе отсутствует математическая интуиция, которая очень полезна для поиска антипроизводных, но, с другой стороны, он может использовать большое количество возможностей за короткий промежуток времени. Пошаговые антидеривативы часто намного короче и элегантнее, чем у Maxima.

Функция «Проверить ответ» должна решить сложную задачу определения эквивалентности двух математических выражений. Их разница вычисляется и упрощается, насколько это возможно, с помощью Maxima. Например, это включает в себя написание тригонометрических / гиперболических функций в их экспоненциальных формах. Если можно показать, что разница упрощается до нуля, задача решена. В противном случае применяется вероятностный алгоритм, который оценивает и сравнивает обе функции в случайно выбранных местах. В случае антидеривативов вся процедура повторяется с производной каждой функции, поскольку антидеривативам разрешено различаться на постоянную.

Графики интерактивных функций вычисляются в браузере и отображаются в элемент canvas (HTML5) , Для каждой графической функции калькулятор создает функцию JavaScript, которая затем оценивается небольшими шагами для построения графика. Во время построения графиков особенности (например, полюсы) обнаруживаются и обрабатываются специально. Управление жестами реализовано с использованием Hammer.js ,

Если у вас есть какие-либо вопросы или идеи по улучшению встроенного калькулятора, не стесняйтесь напиши мне письмо ,