वहाँ किसी भी खुले स्रोत या आसान पहुँच सॉफ्टवेयर है कि जैसे बीजीय भाव को आसान बनाने में कर सकते हैं


17

मैं हमेशा हाथ से चीजों की गणना करता हूं, लेकिन अब मेरे साथियों को बुरा लग रहा है और उपरोक्त अभिव्यक्ति की तरह सिर्फ चीजों को शामिल करने से कई दोहराए जाने वाले अभ्यास हो रहे हैं। मैं विशेष रूप से इस तरह के समीकरणों को सरल बनाने के लिए पायथन या आर जैसे ओपन-सोर्स सॉफ़्टवेयर में दिलचस्पी रखता हूं। मैंने वुल्फराम अल्फा का उपयोग करने की कोशिश की , लेकिन मैं असफल रहा। क्या ओपन-सोर्स सॉफ़्टवेयर पैकेज एक्सप्रेशन को समीकरण में बदलने और परिणाम को सरल बनाने में सक्षम हैं? विशेष रूप से, मैं एक सॉफ्टवेयर पैकेज की तलाश कर रहा हूं जिसमें कमांड जैसी कोई चीज हो ।एक्स=2टी-1एक्स2+2एक्स+3simplify

जवाबों:


28

आप सिम्पी में देखना चाह सकते हैं , जो कि आपकी इच्छित सरलीकृत कमांड के साथ एक पायथन लाइब्रेरी है ।

>>> from sympy.abc import t
>>> import sympy
>>> x = t*2**(1/2) - 1
>>> x**2 + 2*x + 3
2*t + (t - 1)**2 + 1
>>> sympy.simplify(x**2 + 2*x + 3)
t**2 + 2

2
मैं ऋषि को सुझाव देने जा रहा था , लेकिन यह प्रतीकात्मक क्षमताओं के लिए अभी तक प्रकट नहीं हुआ है, हालांकि किसी को लगता है कि यह अंततः एक प्रतीकात्मक क्षमता को शामिल करेगा क्योंकि इसका उद्देश्य मेपल और गणितज्ञ के लिए एक ओपन-सोर्स विकल्प बनना है।
जियोफ ऑक्सबेरी

1
ऋषि की प्रतीकात्मक क्षमताएं हैं (मैंने इसका उपयोग प्रतीकात्मक अभिन्न अंग बनाने के लिए किया है), लेकिन यह विशेष रूप से स्पष्ट नहीं है कि ऐसा कैसे करें जब तक आप इसे नहीं देखते। यदि आप एक प्रतीक के रूप में उपयोग करना चाहते हैं, तो आपको इसे पहले से घोषित करना होगा, जैसे कि var('a')। कम से कम यह सच था जब मैं 3 या 4 साल पहले अक्सर ऋषि का उपयोग कर रहा था। सामान्य तौर पर, गणितज्ञ यह मानता है कि आप एक प्रतीकात्मक परिणाम चाहते हैं और ऋषि मानते हैं कि आप एक संख्यात्मक परिणाम चाहते हैं।
दान

1
@hhh: जब तक मैं गलत नहीं हूँ, आपका कोड टुकड़ा उस अभिव्यक्ति के अनुरूप नहीं है जिसका आप मूल्यांकन और सरलीकरण करना चाहते हैं।
19off पर ज्योफ ऑक्सीबेरी

@GeoffOxberry: मैंने उस समस्या को ठीक करने की कोशिश की, साथ ही मूल प्रश्न में LaTeX में से एक।
जैक पॉल्सन

1
मेरी समझ यह है कि ऋषि वास्तव में सिम्पी कोडबेस के बहुत कुछ शामिल करता है।
MRocklin

9

ऋषि ऐसा कर सकते हैं (आप सरलीकरण भाग को प्राप्त करने के लिए पृष्ठ को बहुत नीचे स्क्रॉल करने जा रहे हैं)।

इसके अलावा, सुनिश्चित करें कि आपने ऋषि में प्रतीकात्मक गणित के सामान्य परिचय को पढ़ा है। यह शब्दार्थ है और वाक्यविन्यास , गणितज्ञ से काफी अलग है , जो कि ज्यादातर लोग परिचित हैं।

इस दस्तावेज़ से एक उदाहरण मैंने आपको यहां दिया है:

sage: var('x,y,z,a,b,c,d,e,f')
(x, y, z, a, b, c, d, e, f)
sage: t = a^2 + b^2 + (x+y)^3
# substitute with keyword arguments (works only with symbols)
sage: t.subs(a=c)
(x + y)^3 + b^2 + c^2

आपके मामले के लिए, यह काम करना चाहिए:

var(f,x,t)
f=x^2+2*x+3
f.subs(x=(sqrt(2)*t-1))
f.simplify()

उनके प्रलेखन खोज इंजन में सुधार करने की आवश्यकता है, फिर। मैंने "सरलीकृत" में टाइप किया और उस पृष्ठ को बिल्कुल नहीं मिला । अच्छा लगा!
ज्यॉफ ऑक्सीबेरी

मैंने Google में बस "ऋषि सरल" टाइप किया।
दान

8

आपको उच्च गुणवत्ता वाले उन्नत ओपन सोर्स पैकेज के साथ पहले ही कई अच्छे उत्तर मिल गए।

मैं http://www.mathics.net/ (http://mathics.org/ यदि आप इसे डाउनलोड करना चाहते हैं) को इंगित करना चाहते हैं, जो कि मैथमेटिका सिंटैक्स का उपयोग करके एक खुला स्रोत कैस है (जो आप परिचित हो सकते हैं) थोड़े से अगर आप वल्लमअल्फा का उपयोग कर रहे हैं)। यह लगभग उतना नहीं है जितना किसी अन्य सुझाव को मिला है। लेकिन यह आपके द्वारा आपके प्रश्न में किए गए (बहुत ही सरल) संचालन कर सकता है।

आप अपने प्रश्न के बारे में जो बात कर रहे हैं वह वास्तव में सरलीकरण नहीं है, लेकिन प्रतिस्थापन और विस्तार (जो कि अधिक जटिल सरलीकरण के विपरीत, सबसे बुनियादी सीएएस में भी उपलब्ध संचालन को लागू करना बहुत आसान है):

गणित में यह इस तरह दिखेगा:

eq = x^2 + 2x + 3

eq /. x -> Sqrt[2] t - 1

Expand[%]

यदि आपको एक सरलीकरण फ़ंक्शन की आवश्यकता है, तो इसे कॉल किया जाता है Simplify[], और Expand[]ऊपर दिए गए उदाहरण में भी काम करेगा ।


8

के रूप में akid का सुझाव दिया, wxMaxima सम्मानित करने के लिए एक महान चित्रमय सामने अंत है तुतलाना आधारित कंप्यूटर बीजगणित प्रणाली कहा जाता मैक्सिमा

अपने उदाहरण का उपयोग करके, आपको कुछ ऐसा मिलेगा:

eq1: x=t*2**(1/2)-1;
एक्स=2टी-1
eq2: x**2+2*x+3;
एक्स2+2एक्स+3
eq3: subst(eq1, eq2);
(2टी-1)2+2(2टी-1)+3
ratsimp(eq3);
2टी2+2

या आप इसे सीधे कर सकते हैं:

ratsimp(subst(x=t*2**(1/2)-1, x**2+2*x+3));
2टी2+2

मैक्सिमा के सरलीकरण के विभिन्न तरीके हैं, लेकिन ratsimpयह एक अच्छा पहला कदम है।





हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.