2012-01-31 174 views
5

이제는 함수를 문자열로 사용하고 손으로 실제 적분을 계산하고 사용자에게 확실한 적분이 무엇인지 질문을하지만 실제 해결책은 아닙니다.Java에서 입력 함수의 적분/미분을 계산하는 가장 효율적인 방법은 무엇입니까?

사용자 입력에 따라 함수를 입력하고 정수/미분을 출력하는 방법이 있는지 궁금합니다. 필자의 첫 번째 단계는 어떻게 든 배열에 넣는 것이었지만 여러 유형의 함수를 사용하는 경우에는 발생하지 않았습니다.

나는 모든 곳에서 연구를했으며 실제로 추가 코드없이이 작업을 실제로 수행하는 코드를 찾지 못했습니다.

또한 GUI 인터페이스를 만들고 입력 된 기능을 그릴 수있는 방법이 있는지 알고 싶습니다.

감사합니다 :)

답변

1

당신이 상징적 통합로 알려져 있습니다 설명하고 있습니다. 현재 구현할 수있는 일반적인 방법은 없지만 사용할 수있는 몇 가지 기술이 있습니다. 하나는 Risch algorithm입니다.

상징적 통합보다 쉬운 문제는 [기호 의 차별화입니다. 사용자 입력의 미분이 적분 된 식과 일치하는 경우 해당 통합이 맞을 수도 있습니다.

Mathematica와 같은 기존 CAS **를 사용하여이를 구현할 수도 있습니다. 이미 대부분의 도구를 구현했습니다.

* : 두 가지 수학 표현식이 사소한 방식 (예 : 다른 순서의 용어), 더 복잡한 표현식 (예 : 큰 표현식이 다르게 인용 됨) 또는 동일하지 않고 동일 할 수 있음을 명심하십시오. 근본적으로 (예 : 삼각 함수가 복잡한 지수로 대체되거나 그 반대의 경우). **

: 컴퓨터 대수 시스템

+0

저는 Matlab이 Java API를 실제로 가지고 있다고 믿습니다. 실제로 사용자가 아니기 때문에 이러한 유형의 문제를 해결할 수 있는지 확신 할 수 없지만, 내가 대학에있을 때 수학 부서에서 매우 인기가있었습니다. – haskovec