2012-01-31 11 views
5

अब मेरे पास एक विचार है, कि मैं फ़ंक्शन को स्ट्रिंग के रूप में उपयोग करता हूं, और मैं हाथ से वास्तविक अभिन्न गणना करता हूं, और उपयोगकर्ता को एक प्रश्न पूछता हूं कि निश्चित अभिन्न अंग क्या है, लेकिन यह वास्तविक समाधान नहीं है।जावा में इनपुट किए गए कार्यों के इंटीग्रल/डेरिवेटिव की गणना करने का सबसे प्रभावी तरीका?

मैं सोच रहा था कि कोई फ़ंक्शन इनपुट करने और एक अभिन्न/व्युत्पन्न (उपयोगकर्ता पसंद के आधार पर) आउटपुट करने का कोई तरीका था या नहीं। मेरा प्रारंभिक कदम इसे किसी भी तरह से सरणी में रखना था, लेकिन कई प्रकार के कार्यों को देखते हुए, यह नहीं हो रहा था।

मैंने हर जगह शोध किया, और मुझे कोई विधि नहीं मिली है जो वास्तव में कोई अतिरिक्त कोड नहीं है, न ही कोई कोड जो वास्तव में करता है, अवधि।

इसके अलावा, मैं यह देखना चाहता हूं कि जीयूआई इंटरफ़ेस बनाने और साजिश इनपुट किए गए कार्यों को करने का कोई तरीका था, यदि यह भी संभव है।

धन्यवाद :)

उत्तर

1

क्या आप का वर्णन कर रहे हैं प्रतीकात्मक एकीकरण के रूप में जाना जाता है। वर्तमान में इसे लागू करने का कोई सामान्य तरीका नहीं है, लेकिन कुछ तकनीकें उपलब्ध हैं। ऐसा एक Risch algorithm है।

वैकल्पिक रूप से, प्रतीकात्मक एकीकरण से एक आसान समस्या [है प्रतीकात्मक भेदभाव - और, यदि उपयोगकर्ता की इनपुट के अंतर अभिव्यक्ति जो वे एकीकृत करने के लिए कहा गया था, के बराबर * है तो उनके अभिन्न शायद सही है।

आप इसे लागू करने के लिए मौजूदा सीएएस **, जैसे मैथमैटिका का उपयोग करने पर भी विचार करना चाहेंगे। वे पहले से ही आपके द्वारा किए जाने वाले अधिकांश टूल लागू कर चुके हैं।

*: ध्यान रखें, कि दो गणितीय अभिव्यक्ति समान होने के बराबर हो सकती हैं, या तो छोटे तरीकों से (उदाहरण के लिए, एक अलग क्रम में शर्तें), अधिक जटिल वाले (उदाहरण के लिए, बड़े अभिव्यक्ति अलग-अलग होते हैं), या मौलिक रूप से (उदाहरण के लिए, ट्रिग फ़ंक्शन जटिल घातीय या इसके विपरीत के साथ प्रतिस्थापित)।

**: कंप्यूटर बीजगणित प्रणाली

+0

मेरा मानना ​​है कि मैटलैब में जावा एपीआई वास्तव में है, यह सुनिश्चित नहीं है कि यह इस प्रकार की समस्या का समाधान कर सकता है क्योंकि मैं उपयोगकर्ता नहीं हूं, लेकिन जब मैं विश्वविद्यालय में था तो यह गणित विभाग में बहुत लोकप्रिय था। – haskovec

संबंधित मुद्दे

 संबंधित मुद्दे