37689

Вибір векторної норми і знаходження коефіцієнта стиску

Лабораторная работа

Информатика, кибернетика и программирование

Вибір векторної норми і знаходження коефіцієнта стиску. Скористаємось програмою NormMatr. Після її виконання маємо. Всі ці норми менше одиниці. Тому можна вибрати будь-яку векторну норму з цих норм. Але зручно вибрати ту векторну норму, для якої відповідна підлегла норма матриці буде найменшою. Тому виберемо векторну m-норму , для якої коефіцієнт стиску дорівнює

Украинкский

2013-09-25

41 KB

4 чел.

  1.  Вибір векторної норми і знаходження коефіцієнта стиску. Скористаємось програмою NormMatr. Після її виконання маємо: , , . Всі ці норми менше одиниці. Тому можна вибрати будь-яку векторну норму з цих норм. Але зручно вибрати ту векторну норму, для якої відповідна підлегла норма матриці буде найменшою. Тому виберемо векторну m-норму , для якої коефіцієнт стиску дорівнює .
  2.  Вибір початкового наближення. Як початкове наближення  можна вибрати будь-який вектор. Виберемо, як початковий, нульовий вектор . При цьому  (вектор правої частини СЛР). Скориставшись програмою NormVect, одержуємо  
  3.  Вибір моменту зупинки. Виберемо зупинку обчислень за кількістю ітерацій, яку знайдемо з оцінки

        (1.5.20)

звідси знаходимо число N ітерацій, що забезпечують задану точність є = 0.001:

.

Тому для обчислень використовуємо  арифметичний цикл for і здійснимо зупинку обчислень за числом ітерацій .


BEGIN {VectNorms}

norm[1] :=abs (v[1]) ; {m - норма}

for i :=1 to n do

if norm[1]<abs ( v [ i ] ) then norm [1] :=abs ( v [ i ] );

norm [2]=0;                   {k - норма}

for i :=1 to n do norm[2] :=norm[2] + sqr(v[i]);

norm[2] :=sqrt(norm [2] );

norm[3]:=0;                       {l - норма}

for i :=1 to n do norm [3] :=[3] + abs (v[i]) ;

END; {VectNorms}

procedure MatrNorms (n,m : integer ; A : TMatr ; var norm :  TNorm) ;

var j , k : integer ; sum : extendet ;

BEGIN {MatrNorms}

norm[1] :=0;                       {m - норма}

for i :=1 to n do

begin sum:=0; for j:=1 to m do sum:=sum + abs( a [ i , j ] ) ;

if norm[1]<sum then norm[1] : =sum;

end ;

norm[2] :=0 ;                     {k - норма}

for i:=1 to n do for j:= to m do

norm[2] : =norm [2] + sqr( a[ i , j ]);

norm[2] : =sqrt (norm[2]) ;

norm[3] : =0 ;                    {l - норма}

for j : = to m do

begin sum : = 0 ; for i : = to n do sum := sum + abs ( a [ i , j ] ) ;

if norm[3]<sum then norm[3] : =sum ;

end;

END; {MatrNorms}


 

А также другие работы, которые могут Вас заинтересовать

70390. А что вы будете делать, когда сотрудник перестанет вам нравиться? 76.76 KB
  А что вы будете делать когда сотрудник перестанет вам нравиться Начнем с фильтров которые ставит на момент собеседования специалист по персоналу. И наоборот: слишком строгий отсев может привести к тому что вы не увидите в массе песка золотую песчинку.
70392. Деловое общение 52 KB
  Дисциплина «Социально-психологические основы общения», развивающая искусство делового общения, основанного на знании психологических особенностей и применении психологических методов, необходима специалистам, работа которых предполагает постоянные контакты типа «человек— человек»...