Вторая пачка часть 38


5*(V1-V3); IF MU=0 THEN OMEGA:=-1 ELSE OMEGA:=-SIGN(MU)* V2/SQRT(V2*V2+MU*MU); SINT:=OMEGA/SQRT(2*(1+ SQRT(1-OMEGA*OMEGA)); COST:=SQRT(1-SINT*SINT); FOR I:=1 TO N DO BEGIN IF I<>P AND I<>Q THEN BEGIN INT1:=A[I,P]; MU:=A[I,Q]; A[Q,I]:=INT1*SINT+MU*COST; A[I,Q]:=INT1*SINT+MU*COST; A[P,I]:=INT1*COST-MU*SINT; A[I,P]:=INT1*COST-MU*SINT; END; INT1:=S[I,P]; MU:=S[I,Q]; S[I,Q]:=INT1*SINT+MU*COST; S[I,P]:=INT1*COST-MU*SINT END {***I***}; MU:=SINT*SINT; OMEGA:=COST*COST; INT1:=SINT*COST; T:=2*V2*INT1; A[P,P]:=V1*OMEGA+V3*MU-T; A[P,P]:=V1*MU+V3*OMEGA+T; A[P,Q]:=(V1-V3)*INT1+V2*(OMEGA-MU); A[Q,P]:=(V1-V3)*INT1+V2*(OMEGA-MU); END ; {***ПРОВЕРКА ДОСТИЖЕНИЯ ЗАДАННОЙ ТОЧНОСТИ***}; IF IND=1 THEN BEGIN IND:=0; GO TO MAIN1 END; IF THR > NORM2 THEN GO TO MAIN; END. Процедура EIGJAC получена из процедуры JACOBI [Агеев, 1976] переводом последней с языка AL¬G¬OL на язык PAS¬CAL, при этом было сделано не¬сколь¬ко тож¬дественных пре¬образований, оп¬ти¬ми¬зи¬ру¬ю¬щих зат¬раты машинного вре¬мени. Прц嬬¬ду¬ра EIG¬JAC бы¬ла прве¬ре¬на для тех же ис¬¬ход¬ных данных, что и про¬цедура JACOBI [Агеев, 1976]: n = 4, eps=10-8 и . Вычисления, выполненные на IBM PC/AT-386 с час¬то¬той 40 МГц, дали следующие результаты, которые сов¬падают с ре¬зуль¬та¬та¬ми тес¬ти¬рования ; , при¬ве¬денными в ра¬бте Агеева [Аге¬ев и др., 1976], и име¬ют мак¬си¬маль¬ную по¬греш¬ность по от¬но¬ше¬нию к соб¬ст¬вен¬ным зна¬че¬ни¬ям ?i?и собственным веꬬ¬то¬рам X ис¬¬ход¬ной мат¬рицы [в сравнении с их в嬬¬ли¬чи¬на¬ми из ра¬бты Фадеева и др. (1963) ] max ri = 4*10-8, maxSi = 3*10-6. 4.4. ЗАДАЧА ОБРАЩЕНИЯ МАТРИЦ И ВЫЧИСЛЕНИЯ ГЛАВНОГО ОПРЕДЕЛИТЕЛЯ ПО СХЕМЕ ГАУССА Метод Гаусса, подробно рассмотренный в п. 3.1 и 3.2, с ус¬пехом может быть ис¬поль¬зо¬ван для вы¬чис¬ле¬ния оп¬ре¬де¬ли¬телей
Индекс
Элементарные функции    Линейные уравнения    Нелинейные уравнения    Случайные числа


Hosted by uCoz