ВІКІСТОРІНКА
Навигация:
Інформатика
Історія
Автоматизація
Адміністрування
Антропологія
Архітектура
Біологія
Будівництво
Бухгалтерія
Військова наука
Виробництво
Географія
Геологія
Господарство
Демографія
Екологія
Економіка
Електроніка
Енергетика
Журналістика
Кінематографія
Комп'ютеризація
Креслення
Кулінарія
Культура
Культура
Лінгвістика
Література
Лексикологія
Логіка
Маркетинг
Математика
Медицина
Менеджмент
Металургія
Метрологія
Мистецтво
Музика
Наукознавство
Освіта
Охорона Праці
Підприємництво
Педагогіка
Поліграфія
Право
Приладобудування
Програмування
Психологія
Радіозв'язок
Релігія
Риторика
Соціологія
Спорт
Стандартизація
Статистика
Технології
Торгівля
Транспорт
Фізіологія
Фізика
Філософія
Фінанси
Фармакологія


Методичні вказівки до лабораторних робіт

Загрузка...

Методичні вказівки до лабораторних робіт

Частина 1

 

 

Затверджено

на засіданні кафедри

Інформаційних технологій

проектування

протокол № ___ від _____ 200 р.

 

 

КИЇВ КНУТД 2007

Математичні моделі в САПР. Методичні вказівки до лабораторних робіт. Частина 1. Для студентів 2-го курсу очного та заочного навчання напрямку «Комп’ютерні науки». Укладачі: ст.викл. Чумак О.О., асист. Федотова Л.Л., к.т.н. доц. Резанова В.Г. – К.: КНУТД, 2007.- 98с.

 

 

Навчальне видання

 

Методичні вказівки до курсу:

„Математичні моделі в САПР ”

Частина 1

 

 

Укладачі: ст.викл. Чумак О.О.,

асист. Федотова Л.Л.,

к.т.н., доц. Резанова В.Г.

 

Відповідальний за випуск: д.т.н., проф. Щербань В.Ю.

 

 

Таблиця 1

Розрахункова таблиця обчислень виразу з урахуванням абсолютних і відносних похибок кожної дії.

N/N Дія Значення Абс.п. Відн.п.
Стала
А
Стала
B
Стала

Отже, , ,

Запис знайденої похибки. Записуємо відповідь у трьох формах:

а) Оцінка типу "плюс-мінус":

б) Інтервальна оцінка:

в) Оцінка з вірними цифрами: тому що

Програма на мові Turbo Pascal.

Зауваження. Імена вхідного та вихідного файлів (без розширення) зручно складати таким чином:

[ім'я_файла]:=[G+група] + [V+варіант]+[L+вомер_лаб_роботи].

Наприклад, у наведеному прикладі файл з текстом програми і файл результатів можуть мати імена G3V33L1.pas і G3V33L1.out(тут G3-група 3, V33-варіант 33 і L1-лабораторна робота 1).

Текст програми

Program G3V33L1; {: G3V33L1.inp - вихідний текстовий файл

з рядком з трьох чисел через прогалини:

a b e,

де а, b - значення аргументiв, е - точність підрахунків.

G3V33L1.out --- текстовий файл з результатами}

const Ngraf=13; {загальне число рядкiв таблицi}

var all,dec,i: integer; {номер рядка таблицi}

a,b, {значення аргументів х, y}

e, {гранична абсолютна похибка аргументiв}

fplus,fminus, {iнтервал накриття точного значення}

a3: real; {корiнь кубiчнiй з числа а}

Z,AP,VP {поточнi значення виразiв, абсолютних та вiдносних похибок}

: array[1..Ngraf] of real;

finp,fout: Text; {вихідний файл та файл з результатами}

begin {G3V33L}

Assign(fout,'G3V33L1.out'); rewrite(fout); write(fout,'Start G3V33L1');

writeln(fout);write(fout,'Groop БIТ-3-09', ' Yablonska Olena');

writeln(fout);write(fout,'Variant 33 05.09.2009 ');

Assign(finp,'G3V33L1.inp'); reset(finp); readln(finp,a,b,e); Close(finp);

{ form input table}

i:=1; Z[i]:=3; AP[i]:=0; VP[i] :=AP[i]/abs(Z[i] ) ;

i:=2; Z[i] := a; AP[i] := e; VP[i] := AP[i]/abs(Z[i]) ;

i:=3; Z[i] := 2; AP[i]:= 0; VP[i] := AP[i]/abs(Z[i]);

i:=4; Z[i] := b; AP[i] := e; VP[i] := AP[i]/abs(Z[i] );

i:=5; Z[i] := 5; AP[i]:= 0; VP[i] := AP[i]/abs(Z[i] );

i:=6; if Z[2]>0 then Z[i] := exp(ln(Z[2])/3) else if Z[2]=0 then Z[i]:=0

else Z[i] := -exp(ln(-Z[2] )/3) ; VP[i]:=VP[2]/3; AP[i] := VP[i]*abs(Z [i]);

i:=7; Z[i] := sqr(Z[4]); VP[i] := 2*VP [4]; AP[i] := VP[i]*abs(Z[i]);

i:=8; Z[i] := sin(Z[4]); AP[i] := abs(cos(Z[4]))*AP[4] ; VP[i]:= AP[i]/abs(Z[i]);

i:=9; Z[i] := Z[6] *Z [3] ; VP[i] := VP[6]+VP [3] ; AP[i]:= VP[i]*abs(Z[i]);

i:=10; Z[i] := Z[5]-Z[8]; AP[i] := AP[5]+AP[8] ; VP[i]:= AP[i]/abs(Z[i]);

i:=11; Z[i] := Z[9]*Z[7] ;VP[i] := VP[9]+VP[7] ; AP[i] := VP[i]*abs(Z[i]);

i:=12; Z[i] := Z[1]+Z[11]; AP[i] := AP[i]+AP[11]; VP[i]:=AP[i]/abs(Z[i]);

if Z[10]=0

then begin {Z[10]=0} writeln(fout);

write(fout,'i=',i:3,' ERROR: ZERODIVIDE');

end {Z[10]=0}

else begin {Z[10]<>0}

i:=13; Z[i] := Z[12]/Z[10]; VP[i] := VP[12]+VP[10] ; AP[i]:=VP[i]*abs(Z[i]);

{ out table }

for i:=1 to Ngraf do begin

writeln(fout);write(fout,i:3,' ',Z[i],' ',AP[i],' ',VP[i]); end;

{ form "plus-minus"}

writeln(fout);write(fout,'f =',Z[Ngraf],' p/m ',AP[Ngraf]);

{ interval }

fminus := Z[Ngraf]-AP[Ngraf]; fplus := Z[Ngraf]+AP[Ngraf] ;

writeln(fout); write(fout,'f in [',fminus,',',fplus,']');

{ true digits}

a3 := 2*AP[Ngraf]; writeln(fout); write(fout,' 2 Delta =',a3);

end; {Z[10]<>0}

writeln(fout);write(fout,'Finish G3V33L1'); Close(fout);

end.{G3V33L1}

Вихідний файл

33.333 3.003 0.5e-3

Файл результатів

Start G3V33L1

Groop БIТ-3-09 Yablonska Olena

Variant 33 05.09.2009

1 3.0000000000E+00 0.0000000000E+00 0.0000000000E+00

2 3.3333000000E+01 5.0000000000E-04 1.5000150002E-05

3 2.0000000000E+00 0.0000000000E+00 0.0000000000E+00

4 3.0030000000E+00 5.0000000000E-04 1.6650016650E-04

5 5.0000000000E+00 0.0000000000E+00 0.0000000000E+00

6 3.2182872210E+00 1.6091597021E-05 5.0000500005E-06

7 9.0180090000E+00 3.0030000000E-03 3.3300033300E-04

8 1.3814939998E-01 4.9520570051E-04 3.5845664228E-03

9 6.4365744420E+00 3.2183194042E-05 5.0000500005E-06

10 4.8618506000E+00 4.9520570051E-04 1.0185539237E-04

11 5.8045086247E+01 1.9619261383E-02 3.3800038300E-04

12 6.1045086247E+01 1.9619261383E-02 3.2138969062E-04

13 1.2555936262E+01 5.3142382850E-03 4.2324508299E-04

f = 1.2555936262E+01 p/m 5.3142382850E-03

f in [ 1.2550622023E+01, 1.2561250500E+01]

2 Delta = 1.0628476570E-02

Finish G3V33L1

Висновки до лабораторної роботи. Аналізуючи одержані у лабораторній роботі результати бачимо, що

1) підрахунки з використанням похибки кожної дії та результати роботи програми співпадають з точністю до одного процента;

2) значення виразу може мати будь-який знак але відповідні абсолютні та відносні похибки знаходження значення функції завжди невід'ємні;

3) оцінка абсолютних та відносних похибок при знаходженні значень функції та її відповідних підвиразів будуть найліпшими оцінками зверху абсолютних та відносних похибок тому, що ураховуються похибки проміжних дій.

Варіанти індивідуальних завдань до роботи EvalExpr

1.

2.

3.

4.

5.

6.

7.

8.

9.

10.

11.

12.

13.

14.

15.

16.

17.

18.

19.

20.

21.

22.

23.

24.

25.

26.

27.

28.

29.

30.

31. .

32.

33.

34.

35.

36.

37.

38.

39.

40.

41.

42.

43.

44.

45.

46.

47.

48.

49.

50.

51.

52.

53.

54.

55.

56.

57.

58.

59.

60.

61.

62.

63.

64.

65.

66.

67.

68.

69.

70.

71.

72.

73.

74.

75.

76.

77.

78.

79.

80.

81.

82.

83.

84.

85.

86.

87.

88.

89.

90.

91.

92.

93.

94.

95.

96.

97.

98.

99.

100.

2. Лабораторна робота DetKram на тему “Розв’язання СЛР за формулами Крамера”

Завдання. Для даної системи лінійних рівнянь (СЛР) знайти розв’язок за допомогою формул Крамера. Провести перевірку знайденого розв’язку.

Хід виконання. Для заданої системи лінійних рівнянь:

1) Записати СЛР у вигляді розширеної матриці системи.

2) Знайти головний та допоміжні визначники і знайти розв’язок СЛР за допомогою формул Крамера. Виконати перевірку знайденого розв’язку.

3) Знайти розв’язок СЛР з цілими коефіцієнтами за допомогою стандартної програми на ЕОМ або написати власну програму розв’язання.

4) Оформити звіт та захистити лабораторну роботу.

Теоретичні питання

1. Лінійний векторний простір. Аксіоми лінійного векторного простору.

2. Лінійна оболонка, лінійна залежність і незалежність системи векторів.

3. Базис системи векторів. Базис лінійного простору. Розмірність лінійної оболонки і розмірність векторного простору.

4. Зв'язок між матрицями змін базисів і матрицями змін координат.

5. Ранг системи векторів. Методи знаходження рангу системи векторів.

6. Рядковий і стовпцевий ранги матриць. Ранг матриці. Знаходження рангу матриці за методом обвідних (рос. окаймляющих) визначників.

7. Система лінійних рівнянь. Головна та розширена матриці системи. Сумісність і несумісність СЛР. Теорема Кронекера-Капелі.

8. Однорідна і неоднорідна СЛР. Лінійний простір розв’язків одорідної системи. Структура множини розв’язків неоднорідної СЛР.

9. Головний і допоміжні визначники квадратної СЛР. Формули Крамера. Необхідні та достатні умови використання формул Крамера.

Приклад виконання роботи DetKram

Лабораторна робота DetKram на тему “Знаходження точних розв’язків СЛР за формулами Крамера”

Варіант 33. Виконав студент групи БІТ-3-05 Петров Олексій Васильович. Дата виконання: 05.10.2005.

Завдання. Розв’язати систему лінійних рівнянь

(1.2.1)

За допомогою формул Крамера. Провести перевірку знайденого розв’язку.

Виконання роботи. Систему (1.2.1) можна записати у матричному вигляді:

(1.2.2)

або , де вектор-рядок невідомих, вектор-рядок правої частини, - головна матриця системи. Тут через позначаємо операцію побудови транспонованої матриці ( ).

1.Знаходження головного та допоміжних визначників.

, ,

, ,

, .

Використовуючи додаток Windows InteractiveDet, одержуємо:

, , , , ,

2. Знаходження вектора розв'язку за формулами Крамера.Головний визначник . Тому система (1.2.1) сумісна і існує єдиний її розв'язок. За формулами Крамера маємо:

, , , , .

3. Перевірка знайденого вектора розв'язку. Перевірку знайденого вектора розв'язку здійснюємо підстановко знайдених значень невідомих у ліві частини рівнянь системи і одержання значень правих частин. При маємо:

1) ;

2) ;

3) ;

4) ;

5) .

Отже, праві частини рівнянь системи дорівнюють лівим частинам. Тому дійсно є розв'язком системи (1.2.1). Перевірка здійснена.

Висновки до лабораторної роботи.Точні розв'язні CЛP з цілими коефіцієнтами мо­жуть бути числами не цілими, але, як це бачимо з формул Крамера, є завжди дробові числа. При перевірці одержаного розв'язку потрібно вести точні (без заокруглювань) підрахунки з дробами (у вигляді чисельник/знаменник), щоб одержати при підстановці точні рівності правих і лівих частин СЛР.

Варіанти індивідуальних завдань до роботи DetKram

Для кожного варіанта наведено розширену матрицю СЛР.

1. 2.
3. 4.
5. 6.
7. 8.
9. 10.
11. 12.
13. 14.
15. 16.
17. 18.
19. 20.
21. 22.
23. 24.
25. 26.
27. 28.
29. 30.
31. 32.
33. 34.
35. 36.
37. 38.
39. 40.
41. 42.
43. 44.
45. 46.
47. 48.
49. 50.
51. 52.
53. 54.
55. 56.
57. 58.
59. 60.
61. 62.
63. 64.
65. 66.
67. 68.
69. 70.
71. 72.
73. 74.
75. 76.
77. 78.
79. 80.
81. 82.
83. 84.
85. 86.
87. 88.
89. 90.
91. 92.
93. 94.
95. 96.
97. 98.
99. 100.

Вихідні файли програми.

Якщо додаток обробляє матрицю, яка завантажена, наприклад з файлу Name.inp, то наслідком роботи додатку буде файл Name.out, у якому відображено процес інтерактивного знаходження визначника.

Процедура G3V33L4

Program G3V33L4;{$M 65520,0,645500}{$N+}{$E+}

{ВХIД: G3V33L4.inp - текстовий вихідний файл

з розширеною матрицею СЛР:

n m All Dec

a11 a12 ... a1n b11 b12 ... b1m

... ... ... ... ... ... ... ...

an1 an2 ... ann bn1 bn2 ... bnm

де n - число рiвнянь (= невiдомих) СЛР

m - число компонент векторiв у правих частинах СЛР

All - загальне число позицій для виведення числа,

Dec - кількість знаків після коми. Наприклад,

________ початок __________

5 1 3 0

0 8 1 2 -3 -1

-8 -9 9 0 9 -1

-5 -2 3 -1 0 -3

-9 5 -8 7 -6 33

1 -7 2 2 0 -1

_________ кінець ___________

ВИХIД: G3V33L4.out --- текстовий результуючий файл. Наприклад,

Start G3V33L4

Groop БIТ-3-09 Yablonska Olena

Variant 33 02.10.2009

n=5 m=1 All=3 Dec=0

0 8 1 2 -3 | -1

-8 -9 9 0 9 | -1

-5 -2 3 -1 0 | -3

-9 5 -8 7 -6 | 33

1 -7 2 2 0 | -1

det=28557

Answer:

x1=[ -1]

x2=[ 0]

x3=[ -2]

x4=[ 2]

x5=[ 1]

Finish G3V33L4}

uses GausRows;

var i,j,k,

n, {число рiвнянь (= невiдомих) СЛР}

m, {число компонент векторiв у правих частинах СЛР}

d {промiжнi заокруглення -- до d знакiв пiсля коми}

: integer;

A, {головна матриця СЛР}

B, {матриця з компонентами векторiв правих частин}

X {(векторна) вiдповiдь СЛР (при det<>0)}

: TMatr;

det {визначник головноi матрицi СЛР}

: extended;

S

: string;

finp, {вихiдний файл}

fout {результуючий файл}

: Text;

begin {G3V33L4}

Assign(fout,'G3V33L4.out'); rewrite(fout);

write(fout,'Start G3V33L4');

writeln(fout);write(fout,'Groop БIТ-3-09', ' Yablonska Olena');

writeln(fout);write(fout,'Variant 33 02.10.2009 ');

Assign(finp,'G3V33L4.inp'); reset(finp);

read(finp,n,m,All,Dec);

for j:=1 to n do

begin {введення коефiцiентiв j-го рIвняння СЛР}

readln(finp);

for k:=1 to n do read(finp,a[j,k]);

for k:=1 to m do read(finp,b[j,k]);

end; {введення коефiцiентiв j-го рIвняння СЛР}

Close(finp);

GaussRow(n,m,d,A,B,X,det); S:='';

printSLY(fout,n,m,A,B,X,det,All,Dec,S);

writeln(fout);write(fout,'Finish G3V33L4'); Close(fout);

end.{G3V33L4}

Модуль GaussRow

unit GausRows;{$M 65520,0,645500}{$N+}{$E+}

{Розв'язання СЛР (метод Гауса з використанням головного елемента у стовпцi}

INTERFACE {GausRows}

const

_n = 10; {Максiмальне число рiвнянь (невiдомих)}

type

TMatr = array[1.._n,1.._n] of Extended; {квадратна матрiця}

var d, {заокруглення до d знакiв пiсля коми}

All,Dec{формат виведення элементiв матрицi}

: integer;

{виведення СЛР у результуючий файл}

procedure printSLY(

var f:text; {результуючий файл}

n:integer; {число рiвнянь (=число невiдомих)}

m:integer; {розмiрнiсть векторiв правiй частинi системи}

A:TMatr; {головна матриця системи лiнiйних рiвнянь}

B:TMatr; {матриця з компонентами векторiв правих частей}

X:TMatr; {матриця з компонентами векторiв правих частей}

var det:extended; {визначник головноi матрицi СЛР}

All,Dec:integer;{формат виведення элементiв матрицi}

S:string {рядок з назвою для виведення}

);

{метод Гауса розв'язання СЛР з виделенням головного елемента у стовпцi}

procedure GaussRow(

n:integer; {число рiвнянь (= невiдомих) СЛР}

m:integer; {число компонент векторiв у правих частинах СЛР}

d:integer; {промiжнi заокруглення -- до d знакiв пiсля коми}

A:TMatr; {головна матриця СЛР}

B:TMatr; {матриця з компонентами векторiв правих частин}

var X:TMatr; {(векторна) вiдповiдь СЛР (при det<>0)}

var det:extended {визначник головноi матрицi СЛР}

);

IMPLEMENTATION {GausRows}

{заокруглення чисел до d десяткових знакiв пiсля коми}

function RoundDec(X:extended;d:integer):extended;

var i:integer; y:extended;

begin {RoundDec}

Y:=X;

if d>0

then begin

for i:=1 to d do Y:=Y*10; Y:=Round(Y); for i:=1 to d do Y:=Y/10;

end;

RoundDec:=Y;

end; {RoundDec}

{виведення СЛР у результуючий файл}

procedure printSLY(

var f:text; {результуючий файл}

n:integer; {число рiвнянь (=число невiдомих)}

m:integer; {розмiрнiсть векторiв правiй частинi системи}

A:TMatr; {головна матриця системи лiнiйних рiвнянь}

B:TMatr; {матриця з компонентами векторiв правих частей}

X:TMatr; {матриця з компонентами векторiв правих частей}

var det:extended; {визначник головноi матрицi СЛР}

All,Dec:integer;{формат виведення элементiв матрицi}

S:string {рядок з назвою для виведення}

);

var j,k:integer;

begin {printSLY}

if S<>'' then begin writeln(f);write(f,S); end;

writeln(f);write(f,' n=',n:1,' m=',m:1,' All=',All:1,' Dec=',Dec:1);

for k:=1 to n do

begin {виведення коефiцiентiв k-го рiвняння СЛР}

writeln(f);

{вывод k-го рядка матрицы A}

for j:=1 to n do write(f,' ',a[k,j]:All:Dec); write(f,' | ');

{вывод k-го рядка матрицы B}

for j:=1 to m do write(f,' ',b[k,j]:All:Dec);

end; {виведення коефiцiентiв k-го рiвняння СЛР}

writeln(f);write(f,'det=',det:All:Dec);

if det<>0

then begin {det<>0}

writeln(f);write(f,' Answer:');

for k:=1 to n do

begin {виведення k-го компонента розвязку СЛР}

writeln(f);;write(f,' x',k:1,'=[');

for j:=1 to m do write(f,' ',x[k,j]:All:Dec);write(f,']');

end; {виведення k-го компонента розвязку СЛР}

end; {det<>0}

end; {printSLY}

{метод Гауса розв'язання СЛР з виделенням головного елемента у стовпцi}

procedure GaussRow(

n:integer; {число рiвнянь (= невiдомих) СЛЗР}

m:integer; {число компонент векторiв у правих частинах СЛР}

d:integer; {промiжнi заокруглення -- до d знакiв пiсля коми}

A:TMatr; {головна матриця СЛР}

B:TMatr; {матриця з компонентами векторiв правих частин}

var X:TMatr; {(векторна) вiдповiдь СЛР (при det<>0)}

var det:extended {визначник головноi матрицi СЛР});

var

OK:boolean; {ознака знаходження ро'звязку СЛР}

j,k,j1,j2:integer;

b1:extended;

begin {GaussRow} det:=1;

if (n<1)or(n>_n)or(m>_n) then OK:=false else OK:=true;

if not OK then begin

writeln;write('GaussRow>ОШ: n=',n:1,' m=',m:1,' Max_n=',_n);

end;

{ п р я м и й х i д }

j:=0;

while ((j<n)and OK) do

begin {обробка j-го рядка, який е замороженим}

j:=j+1;

{пошук головного елемента з iндексами j1,j}

j1:=0; b1:=0;

for j2:=j to n do

if abs(a[j2,j])>abs(b1) then begin j1:=j2;b1:=a[j1,j]; end;

if j1=0 then begin OK:=false;end;

if OK then begin {if OK}

{переставлення рядків j1 та j}

for k:=1 to n do begin b1:=a[j,k];a[j,k]:=a[j1,k];a[j1,k]:=b1; end;

for k:=1 to m do begin b1:=b[j,k];b[j,k]:=b[j1,k];b[j1,k]:=b1; end;

if (j1<>j) then det:=-det;

{ділення на a[j,j]}

b1:=a[j,j]; det:=det*b1;

for k:=1 to n do a[j,k]:=RoundDec(a[j,k]/b1,d);

for k:=1 to m do b[j,k]:=RoundDec(b[j,k]/b1,d);

{ занесення нулів до елементів "під" в j стовпці}

for j1:=j+1 to n do

begin { занесення нулів в рядку j1}

b1:=a[j1,j];

for k:=1 to n do a[j1,k]:=RoundDec(a[j1,k]-b1*a[j,k],d);

for k:=1 to m do b[j1,k]:=RoundDec(b[j1,k]-b1*b[j,k],d);

end; { занесення нулів в рядку j1}

end; {if OK}

end; {обробка j-го рядка, який е замороженим}

if OK then begin {if OK}

{ о б е р н е н и й х і д }

for j:=n downto 1 do begin

{ занесення нулів до елементів "над" в j рядку}

for j1:=j-1 downto 1 do

begin { занесення нулів в рядку j1}

b1:=a[j1,j];

for k:=1 to n do a[j1,k]:=RoundDec(a[j1,k]-b1*a[j,k],d);

for k:=1 to m do b[j1,k]:=RoundDec(b[j1,k]-b1*b[j,k],d);

end; {занесення нулів в рядку j1}

end;

{формування розв'язку}

for j:=1 to n do for k:=1 to m do x[j,k]:=b[j,k];

end; {if OK}

if not OK then det:=0;

end; {GaussRow}

END. {GaussRows}

Виконання роботи.

1. Перетворення системи до нормального вигляду.Для кожного ді-лимо j рядок системи на діагональний елемнт

(1.5.15)

Звідси одержуємо СЛР у нормальному вигляді

(1.5.16)

Або, у матричній формі

(1.5.17)

де ,

(1.5.18)

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

3. Побудова ітераційної схеми.Система (1.5.16) дає можливістьлегко ввести насту­пну ітераційну схему метода простих ітерацій.

(1.5.19)

4. Вибір початкового наближення. Як початкове наближення можна вибрати будь-який вектор. Виберемо, як початковий, нульовий вектор . При цьому (вектор правої частини СЛР). Скориставшись програмою NormVect, одержуємо

5. Вибір моменту зупинки.Виберемо зупинку обчислень за кількістю ітерацій, яку знайдемо з оцінки

(1.5.20)

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

.

Тому для обчислень використовуємо ар

Загрузка...

© 2013 wikipage.com.ua - Дякуємо за посилання на wikipage.com.ua | Контакти