Самый эффективный способ вычисления интегралов / производных введенных функций в Java? - PullRequest
5 голосов
/ 31 января 2012

Теперь у меня есть идея, что я использую функцию как строку и вычисляю реальный интеграл вручную и задаю вопрос пользователю, что такое определенный интеграл, но это не реальное решение.

Мне было интересно, есть ли способ ввести функцию и вывести интеграл / производную (в зависимости от выбора пользователя). Моим начальным шагом было как-то поместить его в массив, но, учитывая множество типов функций, этого не произошло.

Я исследовал всюду, и я не нашел метод, который фактически делает это без дополнительного кода или кода, который фактически делает это, точка.

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

Спасибо:)

Ответы [ 2 ]

1 голос
/ 31 января 2012

То, что вы описываете, известно как символическая интеграция .В настоящее время нет полностью общего способа его реализации, но есть некоторые доступные методы.Одним из таких алгоритмов является алгоритм Риша .

. Альтернативно, более простая проблема, чем символьная интеграция, заключается в [символическом дифференцировании - и, если дифференциал ввода пользователя эквивалентен* к выражению, которое им было предложено интегрировать, тогда их интеграл, вероятно, правильный.

Вы также можете рассмотреть возможность использования существующего CAS **, такого как Mathematica, для реализации этого.Они уже реализовали большинство инструментов, которые вам нужны.

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

**: Система компьютерной алгебры

0 голосов
/ 31 января 2012

Javacalculus - это то, что вы ищете.

Удачи!

...