इन _12 सकारात्मक निश्चित सममित मैट्रिक्स के निर्माण के बारे में कुछ जानकारी के बिना , किए जाने वाले सुझाव आवश्यक रूप से सीमित हैं।१२ × १२
मैंने Sourceforge से आर्मडिलो पैकेज डाउनलोड किया और प्रलेखन पर एक नज़र डाली। अलग से कंप्यूटिंग और प्रदर्शन को बेहतर बनाने का प्रयास करें , जहां , उदाहरण के लिए सेट करके सभी का एक मैट्रिक्स है । दस्तावेज़ीकरण नोट करता है कि यह आकार के लिए डिफ़ॉल्ट के लिए डिफ़ॉल्ट है , इसलिए चूक से मुझे लगता है कि विकल्प मामले के लिए डिफ़ॉल्ट है।det ( 12 I - Q - J ) J 4 × 4 12 × 12det ( Q )हिरासत ( 12 मैं)- क्यू - जे)जेdet(Q,slow=false)
4 × 4slow=true
१२ × १२
slow=true
संभवतः ऐसा क्या है जो एक पंक्ति इक्वेलोन रूप पाने में आंशिक या पूर्ण धुरी है, जिसमें से निर्धारक आसानी से मिल जाता है। हालाँकि आप पहले से ही जानते हैं कि मैट्रिक्स सकारात्मक निश्चित है, इसलिए धुरी स्थिरता के लिए अनावश्यक है (कम से कम आपके संगणकों के थोक के लिए संभवतः)। यह स्पष्ट नहीं है कि यदि आर्मडिलो पैकेज एक अपवाद फेंकता है यदि पिवोट्स छोटे रूप से छोटे हैं, लेकिन यह एक होना चाहिए एक उचित संख्यात्मक लीनियर बीजगणित पैकेज की सुविधा। EDIT: मैंने पर्याप्त कार्यक्षमता के लिए C ++ टेम्प्लेट का उपयोग करते हुए, हेडर फ़ाइल में लागू होने वाले आर्मैडिलो कोड को पाया । सेटिंग को कैसे प्रभावित करती है, यह प्रकट नहीं होता है।12 × 12क्यूdet
include\armadillo_bits\auxlib_meat.hpp
slow=false
१२ × १२निर्धारक इसलिए किया जाएगा क्योंकि गणना उस बिंदु पर "दीवार पर फेंकी गई" LAPACK (या ATLAS) हो जाती है, जिसमें कोई संकेत नहीं है कि धुरी की आवश्यकता नहीं है; det_lapack
उस फ़ाइल में देखें और उसके चालान।
यदि आप वास्तव में उन का उपयोग कर रहे हैं, तो दूसरी बात यह होगी कि आप BLAS और LAPACK के लिए हाई स्पीड रिप्लेसमेंट से जुड़े आर्मडिलो पैकेज के निर्माण की उनकी सिफारिश का पालन करेंगे; सेक देखें। विवरण के लिए 5 Armadillo README.TXT फ़ाइल। [वर्तमान 64-बिट मशीनों पर गति के लिए BLAS या LAPACK के समर्पित 64-बिट संस्करण के उपयोग की भी सिफारिश की गई है।]
इकोनॉन रूप में पंक्ति में कमी अनिवार्य रूप से गाऊसी उन्मूलन है, और अंकगणित जटिलता । इसके बाद दोनों मेट्रिसेस के लिए यह काम दोगुना हो जाता है, या । ये प्रक्रियाएँ आपके प्रसंस्करण में अच्छी तरह से "अड़चन" हो सकती हैं, लेकिन इस बात की बहुत कम उम्मीद है कि में विशेष संरचना के बिना (या ट्रिलियन परीक्षण मामलों में कुछ ज्ञात संबंधों को परिशोधन की अनुमति देते हुए) काम को घटाकर किया जा सकता है ।423n3+ ओ ( एन2)क्यूओ(एन2)43n3+ ओ ( एन2)क्यूओ ( एन)2)
तुलना के लिए, सामान्य मैट्रिक्स के cofactors द्वारा विस्तार शामिल हैगुणन संचालन (और मोटे तौर पर कई परिवर्धन / घटाव के रूप में), इसलिए की तुलना के लिए ( बनाम ) स्पष्ट रूप से कोफ़ैक्टर्स को समाप्त करने का पक्षधर है।n ! n = 12 12 ! = 479001600 2n × nn !एन = 12१२ ! = 47900160023n3= 1152
एक और दृष्टिकोण की आवश्यकता होती है कार्य, को हाउसहोल्डर परिवर्तनों के साथ रूप में कम कर देगा , जो को रूप में रखता है । कम्प्यूटिंग और इसके बाद ऑपरेशन में किया जा सकता है । [ दूसरे निर्धारक में रैंक वन अपडेट का प्रभाव एक त्रिदलीय प्रणाली को हल करके दिए गए स्केलर कारक के रूप में व्यक्त किया जा सकता है।]43n3+ ओ ( एन2)12 I - Q det ( Q ) det ( 12 I - Q - J ) O ( n ) - जेक्यू12 मैं- क्यूdet ( Q )हिरासत ( 12 मैं)- क्यू - जे)ओ ( एन )- जे
ऐसी स्वतंत्र संगणना को लागू करना अर्माडिलो के det
फ़ंक्शन के सफल (या विफल) कॉल के परिणामों पर एक जाँच के रूप में सार्थक हो सकता है ।
विशेष मामला: जैसा कि जर्नजीज की एक टिप्पणी द्वारा सुझाया गया है, मान लीजिए कि जहां पहले की तरह है (रैंक 1) सभी का मैट्रिक्स और है नॉनसिंगुलर (पॉज़िटिव) विकर्ण मैट्रिक्स। दरअसल ग्राफ थ्योरी में प्रस्तावित आवेदन के लिए ये पूर्णांक मैट्रेस होंगे। तब लिए एक स्पष्ट सूत्र है:J D = डायग ( d 1 , … , d n ) det ( Q )क्यू = डी - जेजेडी = डायग ( डी)1, ... , घn)det ( Q )
det ( क्यू ) = ( Πमैं = १nघमैं) ( 1 - ∑मैं = १nघ- 1मैं)
इसके प्रमाण का एक स्केच व्यापक प्रयोज्यता को दर्शाने का अवसर देता है, अर्थात जब भी का एक ज्ञात निर्धारक और सिस्टम जल्दी हल हो जाता है। फैक्टरिंग द्वारा शुरू करें:डी वी = ( 1 ... 1 ) टीडीडी वी = ( 1 … 1 )टी
det ( डी - जम्मू) = Det ( डी ) ⋅ det ( मैं- डी- 1जे)
अब फिर से रैंक 1 है, । ध्यान दें कि दूसरा निर्धारक बस है:( d - 1 1 … d - 1 n ) T ( 1 … 1 )डी- 1जे( d)- 11… D- 1n)टी( 1 … 1 )
च( 1 ) = हिरासत ( मैं)- डी- 1जे)
जहाँ की विशेषता बहुपद है । एक रैंक 1 मैट्रिक्स के रूप में, पास अपने शून्य क्षेत्र के लिए कम से कम कारक होने चाहिए। "लापता" eigenvalue है , जैसा कि संगणना से देखा जा सकता है:च( x )च ( एक्स ) n - 1 एक्स Σ घ - 1 मैंडी- 1जेच( x )एन - 1एक्स∑ d- 1मैं
डी- 1जे( d)- 11… D- 1n)टी= ( ∑ डी- 1मैं) ( d )- 11… D- 1n)टी
यह इस प्रकार है कि विशेषता बहुपद , और ऊपर के रूप में लिए दिखाया गया है , ।च ( 1 ) det ( मैं - डी - 1 जे ) 1 - Σ घ - 1 मैंच( x ) = एक्सएन - 1( एक्स - Σ घ- 1मैं)च( 1 )हिरासत में ( मैं)- डी- 1जे)1 - ∑ डी- 1मैं
यह भी ध्यान दें कि यदि , तो , एक विकर्ण मैट्रिक्स है जिसका निर्धारक केवल इसके विकर्ण प्रविष्टियों का उत्पाद है।१२ आई - क्यू - जे = १२ आई - डी + जे - जे = १२ आई - डीक्यू = डी - जे12 मैं- क्यू - जे= 12 मैं- डी + जे- जे= 12 मैं- डी