मैं सामान्य रूप से बहुत लंबे और जटिल विश्लेषणात्मक भाव उत्पन्न:मेथेमेटिका
(...something not so complex...)(...ditto...)(...ditto...)...lots...
जब मैं Simplify
इस्तेमाल करने की कोशिश, मेथेमेटिका रोकने के लिए grinds, मैं तथ्य यह है कि यह कोशिश करता है की वजह से संभालने हूँ ब्रैकेट का विस्तार करने और विभिन्न ब्रैकेट में सरलीकृत करने के लिए। ब्रैकेट्स, जबकि लंबी अभिव्यक्तियां होती हैं, उन्हें गणित द्वारा आसानी से सरल किया जाता है। क्या कोई तरीका है कि मैं एक समय में एक ही ब्रैकेट में Simplify
के दायरे को सीमित कर सकता हूं?
संपादित करें: कुछ अतिरिक्त जानकारी और प्रगति।
तो सलाह तुम लोगों से मैं अब
In[1]:= trouble = Log[(x + I y) (x - I y) + Sqrt[(a + I b) (a - I b)]];
In[2]:= Replace[trouble, form_ /; (Head[form] == Times) :> Simplify[form],{3}]
Out[2]= Log[Sqrt[a^2 + b^2] + (x - I y) (x + I y)]
Plus
या Power
की तरह एक उचित सिर के Times
बदलने की नस में कुछ का उपयोग शुरू करने के लिए यह संभव काफी सही सरलीकरण लक्षित करने के लिए बनाता है का उपयोग कर। समस्या/प्रश्न जो बनी हुई है, निम्न है: Simplify
अभी भी Replace
पर निर्दिष्ट स्तर से गहराई से उतरेगा, उदा।
In[3]:= Replace[trouble, form_ /; (Head[form] == Plus) :> Simplify[form], {1}]
Out[3]= Log[Sqrt[a^2 + b^2] + x^2 + y^2]
वर्ग रूट को भी सरल बनाता है।
मेरे योजना iteratively एक समय में नीचे से ऊपर एक स्तर से Replace
उपयोग करने के लिए गया था, लेकिन यह स्पष्ट रूप से Simplify
द्वारा बार-बार काम के विशाल राशि में परिणाम होगा और अंत में ठीक उसी मेथेमेटिका के नीचे bogging में परिणाम मैं शुरू में अनुभवी । क्या Simplify
को किसी निश्चित स्तर पर प्रतिबंधित करने का कोई तरीका है?
मुझे लगता है कि प्रतिबंध की इस तरह इष्टतम परिणाम नहीं हो सकता है, लेकिन यह विचार यहाँ कुछ है कि है "पर्याप्त" हो रही है।
धन्यवाद यह (और अन्य उत्तरों भी) ने बहुत मदद की। – Timo