मैं MATLAB के लिए एक विकल्प खोजने की कोशिश कर रहा हूँ और अब तक पाया है:
- GNU ऑक्टेव
- स्पाइडर
- FreeMat
- साइलैब
मैं यह जानने की कोशिश कर रहा हूं कि MATLAB का सबसे अच्छा विकल्प कौन सा है। मैं विशेष रूप से प्रदर्शन और परिणामों की अखंडता से चिंतित हूं।
मैं MATLAB के लिए एक विकल्प खोजने की कोशिश कर रहा हूँ और अब तक पाया है:
मैं यह जानने की कोशिश कर रहा हूं कि MATLAB का सबसे अच्छा विकल्प कौन सा है। मैं विशेष रूप से प्रदर्शन और परिणामों की अखंडता से चिंतित हूं।
जवाबों:
वैसे आप एक इलाज के लिए हैं, मैंने आपके द्वारा उल्लिखित सभी प्रोग्रामिंग भाषाओं / सॉफ़्टवेयर का उपयोग किया है। FreeMat और Spyder मेरे पास बहुत अधिक अनुभव नहीं है, लेकिन मेरे पास कुछ है। जिन दूसरों में मैं अनुभवी हूं।
GNU ऑक्टेव ने प्रतियोगिता में प्रवेश किया। इसके सिंटैक्स में MATLAB के साथ एक अत्यधिक संगतता है । एकमात्र अंतर, मुझे कम से कम पता है, एक तरफ से अजीब टूलबॉक्स, जिसे आप यहां संकुल द्वारा प्रतिस्थापित करने का प्रयास कर सकते हैं , यह है कि GNU ऑक्टेव कमांड लाइन से कार्यों को परिभाषित कर सकता है।
मुझे नहीं पता कि क्या आप QtOctave के बारे में जानते हैं । QtOctave GNU ऑक्टेव प्रोग्रामिंग भाषा के लिए एक दृश्यपटल (GUI) है। QtOctave एक संपादक के साथ भी आता है।
साइलैब भी MATLAB के लिए एक पर्याप्त प्रतिस्थापन है। सिंटैक्स के संदर्भ में इसके कुछ अंतर हैं, लेकिन कुछ भी नहीं जो आप अपने साथ आने वाले डॉक्यूमेंट को खोजते हैं, तो आप अपना सिर इधर-उधर नहीं कर सकते।
फ्रीमैट सबसे खराब है, मेरी राय में, कम से कम, सॉफ्टवेयर का जो वाक्यविन्यास है वह MATLAB पर आधारित है। इसके लिए मेरा सबूत तीन भाग है: सबसे पहले, सॉफ्टवेयर सेंटर में यह प्रश्न में चार सॉफ्टवेयर की सबसे कम स्टार रेटिंग प्राप्त करता है। दूसरा, यह अक्सर अपडेट नहीं किया जाता है, सॉफ़्टवेयर सेंटर का नवीनतम संस्करण, आखिरी बार 2008 में अपडेट किया गया था। मेरे दूसरे टुकड़े के सबूत के परिणामस्वरूप तीसरा इसके कार्यों में कुछ कमी है। हालाँकि, इसका दूसरा पहलू यह है कि इसका सिंटेक्स MATLAB के साथ अत्यधिक संगत है।
मैंने स्पाइडर का उपयोग किया है , लेकिन केवल संक्षेप में मुझे डर है। यह शीर्ष-गुणवत्ता लगता है। इसके साथ समस्या यह है कि इसमें केवल MATLAB, वाक्यविन्यास के साथ सीमित संगतता है । इसके लिए जरूरी है कि आप पायथन प्रोग्रामिंग भाषा सीखें, यानी अगर आप इसे अच्छी तरह से करना चाहते हैं।
मैं सैजमैथ की सिफारिश भी करूंगा क्योंकि इसमें जीएनयू ऑक्टेव, (यदि आपके सिस्टम पर पहले से इंस्टॉल है) स्किलैब, (यदि आप पहले से ही इसे इंस्टॉल कर चुके हैं) तो नम्पी, [नेम्पी और बाकी का उल्लेख किया गया है जब तक कि निर्दिष्ट नहीं किया गया है और ऋषि के साथ आते हैं और इसलिए कोई स्थापना आवश्यक नहीं है ] कई अन्य लोगों के बीच घबराहट, मैटलोट्लिब, मैक्सिमा, फोरट्रान। SageMath को वेबसाइट http://www.sagemath.org/download-linux.html पर जाकर एक उपयुक्त दर्पण का चयन करके डाउनलोड किया जा सकता है , जहाँ आप हैं और फिर संबंधित .tar.lzma फ़ाइल स्थापित कर रहे हैं। इसके बाद टर्मिनल में निम्नलिखित कमांड को कॉपी और पेस्ट करें (ctrl + alt + T):
cd ~/Downloads
sudo mv sage-linux-xbit-ubuntu_y-z-Linux.tar.lzma /home/username
cd ~
tar --lzma -xvf sage-linux-xbit-ubuntu_y-z-Linux.tar.lzma
cd ~/sage-linux-xbit-ubuntu_y-z-Linux
make
sudo ln -s /home/username/sage-linux-xbit-ubuntu_y-z-Linux/sage /usr/local/bin/sage
जहां 'x' आपके OS के बिट्स को संदर्भित करता है; 'y' उबंटू के संस्करण को संदर्भित करता है ऋषि के लिए डिज़ाइन किया गया है (जैसे 10.04_lts; 12.04_lts ('y' में _lts आवश्यक है), आदि); 'z' आपके OS की वास्तुकला को दर्शाता है। (i386, amd64, आदि)
उन सभी में से जिन्हें आपने सूचीबद्ध किया है, ऑक्टेव सबसे अधिक वाक्यविन्यास संगत है। वास्तव में, कुछ महंगे मैटलैब टूलबॉक्स के अलावा, ऑक्टेव को आपके कोड का 98% (एक नंबर जिसे मैंने अभी बनाया है) चलाना चाहिए। मैं घर पर काम और ऑक्टेव में मतलाब का उपयोग करता हूं।
ऑक्टेव (मूल रूप से) कुछ इनबिल्ट GUI जैसे इनपुटड्लग आदि नहीं चलेंगे, यदि आप Qtoctave (ऑक्टेव के लिए एक IDE, sudo apt-get install qtoctave ) स्थापित करते हैं , तो आप उस कार्यक्षमता को प्राप्त करने के लिए xvidget और एक रैपर का उपयोग कर सकते हैं (यदि मैं कोड पोस्ट कर सकता हूं तो) आप इसमे रुचि रखते हैं)।
जहां तक प्रदर्शन की बात है, तो ऑक्टेव (बेंचमार्क के लिए गूगल) उतना तेज नहीं है। हालाँकि, आप लिनक्स पर (यदि आपके पास लाइसेंस है) चल रहे मटलब के सभी आधुनिक संस्करण प्राप्त कर सकते हैं और उन्हें डिफ़ॉल्ट रूप से इंस्टॉल डिस्क पर शामिल किया गया है, और माटलैब के लिनक्स संस्करण का प्रदर्शन तुलनात्मक रूप से अच्छा और अक्सर लिनक्स पर बेहतर होता है जब इसकी तुलना में खिड़कियाँ।
यदि आप प्रदर्शन चाहते हैं और आप स्कैपी को देखने के लिए मुफ्त सॉफ्टवेयर का उपयोग नहीं करना चाहते हैं। लेकिन सिंटैक्स कम संगत है। आपको फिर से कोड लिखना होगा। स्पाइडर एक विचारक है जो अजगर और चीर का उपयोग करता है, स्किलैब ओक्टेव और मैक्सिमा और कुछ अन्य लोगों का एक मैश है। फ़्रीमैट के प्रदर्शन के बारे में निश्चित नहीं है, लेकिन मुझे नहीं लगता कि यह ऑक्टेव के रूप में विकसित किया गया है।
सौभाग्य।
कुछ बेंचमार्क
गति
http://www.osc.edu/research/cse/projects/octave_python.pdf
http://www.wseas.us/e-library/conferences/2010/Corfu/COMPUTERS/COMPUTERS2-56.pdf
याद रखें मानदंड व्यक्तिपरक हैं। कई चर हैं। यह जानने का एकमात्र सही तरीका है कि आप अपने प्रसंस्करण कोड का उपयोग करके उन सभी को अपने रिग पर परीक्षण करें।
स्पष्टीकरण के लिए: आप मतलूब के लिए एक विकल्प क्यों चाहते हैं? Prasadkumar013 के उत्तर से पता चलता है कि आप उबंटू पर मतलूब का उपयोग नहीं कर सकते हैं, लेकिन आप (कम से कम मैं इसे उबंटू पर रख रहा हूं;))। Https://help.ubuntu.com/community/MATLAB पृष्ठ पर एक सामुदायिक प्रलेखन है ।
यदि आप ऑक्टेव के साथ एक मुफ्त विकल्प चाहते हैं, तो अधिकांश मैटलैब कोड सीधे ऑक्टेव में काम करेंगे। हालांकि टर्मिनल में काम करने की कोशिश करें, क्यूक्वेक्टवे जीयूआई मेरी राय में उपयोगकर्ता के अनुकूल नहीं था।
पीडीएल ("पर्ल डेटा लैंग्वेज") मानक पर्ल को बड़े एन-डायमेंशनल डेटा एरे को जो वैज्ञानिक कंप्यूटिंग की ब्रेड और बटर हैं, को कॉम्पैक्ट रूप से स्टोर करने और तेजी से हेरफेर करने की क्षमता देता है।
क्या आपने पहले ही ऋषि ( www.sagemath.org ) की कोशिश की है ? यह विभिन्न गणित सॉफ्टवेयर के लिए एक कंटेनर है और यह प्रतीकात्मक और संख्यात्मक गणना कर सकता है। उत्तरार्द्ध सुन्न और डरावना का उपयोग करके किया जाता है। इसका एक बहुत सक्रिय समुदाय है और यह एक खुला स्रोत परियोजना है जिसे अजगर में लिखा गया है।
चूंकि आप प्रदर्शन में रुचि रखते हैं, इसलिए यहां कुछ बेंचमार्क हैं (पृष्ठ के अंत में भी Matlab के साथ तुलना की जाती है)।
मैंने वास्तविक तुलना नहीं की है, लेकिन मेरे अनुभव में विशुद्ध रूप से एक प्रदर्शन परिप्रेक्ष्य ऑक्टेव MATLAB से बेहतर है।
आपको ध्यान देना चाहिए कि "यह सभी सापेक्ष है" विभिन्न टूलबॉक्स में अलग-अलग प्रदर्शन होते हैं।
यदि आपके पास अपनी मशीन पर रैम सीमित है, तो मैं कहूंगा कि MATLAB से बेहतर कुछ भी काम करेगा।
मेरा कॉलेज अपने विंडोज पीसी पर MATLAB का उपयोग करता है। लेकिन Ubuntu पर MATLAB का उपयोग करने के लिए मुझे दो विकल्पों के साथ छोड़ दिया गया था
चूंकि वर्चुअलाइजेशन मेरे लैपटॉप पर बहुत भारी है, इसलिए मैंने एक विकल्प की तलाश की। कई सॉफ्टवेयर परीक्षणों के बाद, मैं आखिरकार OCTAVE के लिए बस गया। यह अधिकांश मानक MATLAB कोड चला सकता है। GNU ऑक्टेव के बजाय, क्यूटी ऑक्टेव के लिए जाना बेहतर है। जबकि पूर्व टर्मिनल आधारित है, बाद में जीयूआई आधारित है। मेरी पसंद क्यूटी ऑक्टेव के लिए जाना है
sudo apt-get install qtoctave