Кіріспе

Матрицаның өзіндік мәнін есептеуге арналған сандық әдістер. Сандық талдаудағы маңызды мәселелердің бірі – матрицаның өзіндік мәндерін табу үшін тиімді және тұрақты алгоритмдерді жасау. Бұл өзіндік мәнді есептеу алгоритмдері өзіндік векторларды да анықтай алады.

Нормалды, Гермиттік және нақты симметриялық матрицалар

М комплекстік матрицаның M^(*) – M-нің түйіндес конъюгатының транспозыциясы: A квадраттық матрицасы, егер ол өзінің косымшасымен коммутацияласа, қалыпты деп аталады: 1=A^(*) A = AA^(*). Егер ол өзінің косымшасына тең болса, онда ол гермиттік деп аталады: 1=A^(*) = A. Барлық гермиттік матрицалар қалыпты. Егер А тек нақты элементтерден тұрса, онда косымша тек транспоза болып табылады, ал А гермиттік, егер және тек қана ол симметриялық болса. Бағандық векторларға қолданғанда, косымша 'C'^(n) бойынша канондық ішкі көбейтіндіні анықтау үшін қолданылуы мүмкін: 1='w' ⋅ 'v' = 'w'^(*) 'v'. Қалыпты, гермиттік және нақты симметриялық матрицалардың бірнеше пайдалы қасиеттері бар: Қалыпты матрицаның кез келген жалпыланған өзіндік векторы – қарапайым өзіндік вектор. Кез келген қалыпты матрица диагональды матрицаға ұқсас, өйткені оның Джордан қалыпты түрі диагональды. Қалыпты матрицаның әртүрлі өзіндік мәндерінің өзіндік векторлары ортогональды. Нөлдік кеңістік және қалыпты матрицаның бейнесі (немесе бағандық кеңістік) бір-біріне ортогональды. Кез келген қалыпты матрица үшін 'C'^(n) А-ның өзіндік векторларынан тұратын ортонормалдық базаға ие. Өзіндік векторлардың сәйкес матрицасы унитарлы болады. Гермиттік матрицаның өзіндік мәндері нақты, өйткені нөлдік емес өзіндік вектор 'v' үшін. Егер A нақты болса, онда A симметриялы болса ғана және тек қана A-ның өзіндік векторларынан тұратын 'R'^(n) ортонормалдық базасы бар. Нақты немесе күрделі матрицаның гермиттік болмай-ақ барлық нақты өзіндік мәндері болуы мүмкін. Мысалы, нақты үшбұрышты матрицаның өзіндік мәндері оның диагоналі бойынша орналасқан, бірақ жалпы жағдайда симметриялық емес.

Шарт нөмірі

Кез келген сандық есептеу мәселесін белгілі бір кіріс x үшін белгілі бір f функциясын бағалау ретінде қарастыруға болады. Мәселенің шарт саны κ(f, x) – функцияның нәтижесіндегігі салыстырмалы қателік пен кірістегігі салыстырмалы қателіктің қатынасы болып табылады және функцияға да, кіріске де байланысты өзгереді. Шарт саны есептеу барысында қате қалай өсетінін сипаттайды. Оның 10-дық логарифмі нәтижедегі дәлдік кірістегіден қанша тамыздықпен кем екенін көрсетеді. Шарт саны – ең жақсы жағдайды көрсетеді. Ол проблеманың ішкі тұрақсыздығын көрсетеді, оны қалай шешуге тырысқаныңызға қарамастан. Кездейсоқ оқиғаларды есептемегенде, ешбір алгоритм шарт саны көрсеткеннен дәл нәтиже бере алмайды. Дегенмен, дұрыс емес құрылған алгоритм одан да нашар нәтижелерді тудыруы мүмкін. Мысалы, төменде айтылғандай, нормальды матрицалар үшін өзіндік мәндерді табу мәселесі әрқашан жақсы шартталған. Бірақ, полиномның түбірлерін табу мәселесі өте нашар шартталған болуы мүмкін. Сондықтан, сипаттамалық полиномның түбірлерін тауып жұмыс істейтін өзіндік мән алгоритмдері, проблема нашар шартталмаған жағдайда да нашар шартталған болуы мүмкін. A кері айналдырылатын жағдайдағы сызықтық теңдеуді шешу мәселесі үшін 1=A'v' = 'b', матрицаның шарт саны 1=κ(A^(−1), 'b') келесідей беріледі, мұндағы оператор нормасы 'C'^(n) нормалық Евклид нормасына бағынышты. Бұл сан 'b'-ге тәуелді емес және A мен A^(−1) үшін бірдей болғандықтан, оны әдетте матрицаның шарт саны κ(A) деп атайды. Бұл κ(A) мәні сонымен қатар A матрицасының ең үлкен өзіндік мәнінің ең кіші өзіндік мәніне қатынасының абсолюттік мәні болып табылады. Егер A бірлік матрица болса, онда , сондықтан 1=κ(A) = 1. Жалпы матрицалар үшін оператор нормасын есептеу көбінесе қиынға соғады. Сондықтан, шарт санын бағалау үшін басқа матрицалық нормалар жиі қолданылады. Өзіндік мән мәселесі үшін Бауэр мен Файк, егер λ диагональдық n × n матрицасы A-ның өзіндік мәні болса және V – өзіндік векторлар матрицасы болса, онда λ-ны есептеудегі абсолютті қателік κ(V) пен A-дағы абсолютті қателіктің көбейтіндісімен шектеледі екенін дәлездеді. Нәтижесінде, λ-ны табудың шарт саны: Егер A нормальды болса, онда V бірлік матрица болады, ал 1=κ(λ, A) = 1. Осылайша, барлық нормальды матрицалар үшін өзіндік мән мәселесі жақсы шартталған. λ өзіндік мәніне сәйкес келетін нормальды матрица A-ның өзіндік кеңістігін табу мәселесінің шарт саны λ және A-ның басқа өзіндік мәндері арасындағы ең аз қашықтыққа кері пропорционалды екені көрсетілді. Атап айтқанда, нормальды матрицалар үшін өзіндік кеңістік мәселесі оқшауланған өзіндік мәндер үшін жақсы шартталған. Өзіндік мәндер оқшауланбаған жағдайда, ең жақсысы жақын маңдағы өзіндік мәндердің барлық өзіндік векторларының кеңеюін анықтау.

Итерациялық алгоритмдер

Итеративті алгоритмдер өзіндік мәндер мәселесін өзіндік мәндерге жақындасатын тізбектерді құру арқылы шешеді. Кейбір алгоритмдер векторлардың өзіндік векторларға жақындасатын тізбектерін де құрайды. Көбінесе, өзіндік мәндер тізбектері үшбұрышты немесе диагональды түрге жақындасатын ұқсас матрицалар тізбектері түрінде беріледі, бұл өзіндік мәндерді оңай оқуға мүмкіндік береді. Өзіндік векторлар тізбегі сәйкес ұқсастық матрицалары түрінде беріледі. Әдіс Қолданылатын объектілер Бір қадамға кететін шығын Жақындасу Сипаттамасы Ланчос алгоритмі Гермиттік m ең үлкен/ең кіші өзіндік жұптар Күш итерациясы ең үлкен мәні бар өзіндік жұп O(n^(2)) сызықтық Матрицаны кездейсоқ бастапқы векторға қайта-қайта қолданып, нормалайды. Кері итерация μ-ге ең жақын мәні бар өзіндік жұп сызықтық (A − μI)^(−1) үшін күш итерациясы Рейлидің коэффициенті итерациясы Гермиттік кез келген өзіндік жұп кубикалық (A − μiI)^(−1) үшін күш итерациясы, мұнда μi әр итерация үшін алдыңғы итерацияның Рейлидің коэффициенті болып табылады. Алдын ала шартталған кері итерация немесе LOBPCG алгоритмі μ-ге ең жақын мәні бар оң, нақты симметриялық өзіндік жұп A-ға жуық кері шартты кері итерация. Бисекция әдісі нақты симметриялық тридиагональды кез келген өзіндік мән сызықтық Штурм тізбегімен қолдау көрсетілетін сипаттамалық полиномның түбірлерін табу үшін бисекция әдісін қолданады. Лагерр итерациясы нақты симметриялық тридиагональды кез келген өзіндік мән кубикалық Лагерр әдісін қолданады. QR алгоритмі Гессенберг барлық өзіндік мәндер O(n^(2)) кубикалық A = QR түрінде жіктейді, мұнда Q ортогональды және R үшбұрышты, содан кейін RQ-ға келесі итерацияны қолданады. барлық өзіндік жұптар 6n^(3) + O(n^(2)) Якоби өзіндік мән алгоритмі нақты симметриялық барлық өзіндік мәндер O(n^(3)) квадратық Диагональдық емес элементтерді жоюға тырысу үшін Гивенс айналымдарын қолданады. Бұл сәтсіз аяқталады, бірақ диагональды нығайтады. Бөліп жеңу Гермиттік тридиагональды барлық өзіндік мәндер O(n^(2)) Матрицаны диагональдандырылып, содан кейін қайта құрастырылатын кіші матрицаларға бөледі. барлық өзіндік жұптар Гомотопия әдісі нақты симметриялық тридиагональды барлық өзіндік жұптар O(n^(2)) Диагональдық өзіндік мәндер мәселесінен есептелетін гомотопия жолын құрастырады. Жалғанды спектр әдісі нақты симметриялық μ-ге ең жақын мәні бар өзіндік жұп (A − μI)^(2) үшін алдын ала шартталған кері итерация қолданылады. MRRR алгоритмі нақты симметриялық тридиагональды кейбір немесе барлық өзіндік жұптар O(n^(2)) "Көптеген салыстырмалы берік өкілдіктер" – ауыстырылған матрицаның LDLT жіктелуінде кері итерацияны орындайды. Грамм итерациясы жалпы ең үлкен өзіндік мәні бар өзіндік жұп суперсызықтық Грамм көбейтіндісін есептеп, қайта масштабтайды.

Тікелей есептеу

Жалпы матрицалар үшін өзіндік мәндерді тікелей есептеуге арналған қарапайым алгоритм жоқ болса да, өзіндік мәндерді тікелей есептеуге болатын көптеген арнайы матрицалар кластары бар. Оларға мыналар кіреді:

Үшбұрышты матрицалар

Үшбұрышты матрицаның детерминанты оның диагональдық элементтерінің көбейтіндісі болғандықтан, егер T үшбұрышты матрица болса, онда T матрицасының өзіндік мәндері оның диагональдық элементтерімен тең болады.

Қалыпты 3×3 матрицалардың өз векторлары

Егер 3×3 матрицасы қалыпты болса, онда векторларды табу үшін векторлық көбейтінді қолданылуы мүмкін. Егер λ матрицаның өзіндік мәні болса, онда матрицаның нөлдік кеңістігі оның баған кеңістігіне перпендикуляр болады. Матрицаның екі тәуелсіз бағанының векторлық көбейтіндісі нөлдік кеңістікте жатады. Яғни, ол λ өзіндік мәніне сәйкес келетін өз векторы болады. Бұл жағдайда баған кеңістігі екі өлшемді болғандықтан, өзіндік кеңістік бір өлшемді болуы керек, сондықтан кез келген басқа өз векторы оған параллель болады. Егер матрицада екі тәуелсіз баған болмаса, бірақ ол нөлдік матрица болмаса, векторлық көбейтіндіні қолдануға болады. Бұл жағдайда λ өзіндік мәнінің көптігі 2-ге тең, сондықтан баған кеңістігіне перпендикуляр кез келген вектор өз векторы болады. Матрицаның нөлдік емес бағаны деп есептейік. Одан параллель емес кез келген векторды таңдаңыз. Онда және векторлары бағанға перпендикуляр болады, демек, олар матрицаның өз векторлары болады. Бұл матрица қалыпты болмаған жағдайда жұмыс істемейді, себебі мұндай матрицалар үшін нөлдік кеңістік пен баған кеңістігінің перпендикуляр болуы міндетті емес.