2010-02-25 10 views
61

के लिए सिफारिश मैट्रिक्स से निपटने के लिए मुझे सी # लाइब्रेरी चाहिए। इसे एकवचन मूल्य अपघटन, मैट्रिक्स उलटा, आदि लागू करना चाहिएसी # मैट्रिक्स लाइब्रेरी

मैंने CSML पहले उपयोग किया है, लेकिन यह मुझे आवश्यक कुछ सुविधाओं को लागू नहीं करता है।

सुविधाओं में से कुछ हैं:
एकवचन मूल्य अपघटन
मैट्रिक्स उलट
ट्रेस
निर्धारकों

सुझाए गए (उत्तर से) पुस्तकालय

(उनमें से ज्यादातर ऊपर कहा गया है सुविधाओं को लागू)

+4

यह उन सुविधाओं का उल्लेख करने में मदद कर सकता है जो CSML की आवश्यकता नहीं है। – Nick

+2

http://accord-framework.net/ मैट्रिक्स ऑपरेशंस को 'डबल [,]' प्रकार के एक्सटेंशन विधियों के रूप में लागू करता है। –

उत्तर

27

Math.NET Numerics बहुत अच्छा है, अगर यह आपके इच्छित कार्यों का समर्थन करता है। पुराना Math.Net Iridium अभी भी अधिक विकल्पों का समर्थन करता है। इसके अलावा, dnAnalytics काफी अच्छा है, लेकिन अब विकसित नहीं किया जा रहा है। (यह, साथ ही इरिडियम, को Math.NET न्यूमेरिक्स में विलय किया जा रहा है।)

वाणिज्यिक पक्ष पर, कुछ बहुत अच्छे, मजबूत विकल्प हैं। Extreme Optimization Numerical Libraries बहुत अच्छी तरह से काम करते हैं। Visual Numerics लाइब्रेरी भी बहुत अच्छी तरह से काम करती है (हालांकि रॉयल्टी आधारित वितरण के साथ ...)।

+0

इरिडियम चाल करेगा। मैं Math.NET से मैट्रिक्स क्लास का उपयोग नहीं कर सकता क्योंकि यह सार है, इसलिए मुझे इसे प्राप्त करने की आवश्यकता है। सही ? – jose

+1

वे ठोस कार्यान्वयन प्रदान करते हैं, लेकिन चूंकि Math.NET न्यूमेरिक्स पूरा नहीं हुआ है, इसलिए कुछ कार्यान्वयन पूर्ण नहीं हुए हैं (अभी तक)। –

+0

दो ठोस वर्ग हैं: मैट्रिक्स एम = नया डेंसमैट्रिक्स (...) या नई स्पैर्समैट्रिक्स (...) आपकी आवश्यकताओं के आधार पर। –

6

मेरा मानना ​​है कि Math.NET में आपके द्वारा उल्लेख की जाने वाली अधिकांश सुविधाएं हैं। Yuu इसे देखना और देखना चाहिए कि यह आपकी आवश्यकताओं के अनुरूप है या नहीं।

आप वाक्यविन्यास और उदाहरण कोड देखने के लिए Iridium samples पर एक नज़र डाल सकते हैं।

2

अन्य पदों में उल्लिखित पुस्तकालयों के अतिरिक्त मैं FinMath लाइब्रेरी के बारे में कुछ गर्म शब्द कह सकता हूं। यह बल्कि नई पुस्तकालय है, लेकिन मेरे अनुभव के अनुसार इसमें कई फायदे हैं। इस पुस्तकालय का उपयोग करना बहुत आसान है। सबसे पहले, इसमें 32-बिट और 64-बिट ऑपरेटिंग सिस्टम दोनों के लिए केवल एक निष्पादन योग्य फ़ाइल (* .dll) है। दूसरा, यह प्रसिद्ध इंटेल मैथ कर्नेल लाइब्रेरी के शीर्ष पर बनाया गया है और इसलिए यह बहुत अच्छा प्रदर्शन प्रदान करता है। इस पुस्तकालय द्वारा प्रदान किया गया प्रबंधित .NET API भी बहुत व्यापक और लचीला है। लेकिन, यह मालिकाना सॉफ्टवेयर है और काफी धनराशि खर्च करता है। इसमें कुछ कार्यक्षमता भी नहीं है (उदा। सेंटरस्पेस सॉफ्टवेयर से NMath की तुलना में)। वैसे भी, यह कोशिश करने के लिए समय लायक है।

5

मैं ILNumerics का उपयोग कर रहा हूं। परियोजना में कुछ योगदान भी किया। यह जानकर एकमात्र पुस्तकालय है जिसे मैं जानता हूं, जो serious computations के लिए जीसी में आधा CPU समय खर्च नहीं करता है। यह तेज़ और परिपक्व है। पूरा feature list देखें।

+1

+1 ILNumerics में अन्य libs की सभी सुविधाएं हैं। लेकिन यह बहुत तेज है। –

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