
- •Лабораторная работа №5 Точные и численные решения систем линейных алгебраических уравнений
- •Упражнение 1.
- •Упражнение 2.
- •Упражнение 3. Решение системы линейных алгебраических уравнений методом Гаусса.
- •Упражнение 4.
- •Упражнение 5.
- •Упраженение 6.
- •Упражнение 7.
- •Упражнение 8.
- •Упражнение 9.
- •Упражнение 10.
- •Упражнение 11.
Упражнение 3. Решение системы линейных алгебраических уравнений методом Гаусса.
Написать М-функцию, решающую системы уравнений методом Гаусса с произвольным числом неизвестных, осуществляющую «прямой» и «обратный» ход. Входящими данными являются матрица системы и столбец свободных членов. Решить системы:
;
;
;
Проверить решение подстановкой.
function [z] = lab_2_1_u_3(A, B)
format rational;
s = size(A);
n = s(1);
z = zeros(n, 1);
if (det(A) ~= 0)
for j = [1 : n]
B(j) = B(j)/(A(j, j));
A(j, :) = A(j, :)/(A(j, j));
for i = [j+1 : n]
if (j ~= n)
B(i) = B(i)+B(j)*(-A(i, j));
A(i, :) = A(i, :)+A(j, :)*(-A(i, j));
end
end
end
end
for k = [n : -1 : 1]
for i = [1 : n]
if (i ~= k)
B(k) = B(k) - A(k, i)*z(i);
end
end
z(k) = B(k)/A(k, k);
end
>> A = [1, -2; 2, 1];
>> B = [-2; 2];
>> lab_2_1_u_3(A, B)
ans =
2/5
6/5
>> 2/5-2*6/5
ans = -2
>> 2*2/5+6/5
ans = 2
>> A = [1/2, 1/4; -1/4, 1/2];
>> B = [1/2; 1/2];
>> lab_2_1_u_3(A, B)
ans =
2/5
6/5
>> 1/2*2/5+1/4*6/5
ans = 1/2
>> -1/4*2/5+1/2*6/5
ans = 1/2
>> A = [7, 2, 3; 5, -3, 2; 10, -11, 5];
>> B = [15; 15; 36];
>> lab_2_1_u_3(A, B)
ans =
2
-1
1
>> 7*2+2*(-1)+3*1
ans = 15
>> 5*2+3+2
ans = 15
>> 10*2+11+5
ans = 36
>> A = [1, 1, -6, -4; 3, -1, -6, -4; 2, 3, 9, 2; 3, 2, 3, 8];
>> B = [6; 2; 6; -7];
>> lab_2_1_u_3(A, B)
ans =
0
2
1/3
-3/2
>> 0+2-6*(1/3)-4*(-3/2)
ans = 6
>> 0-2-6*1/3-4*(-3/2)
ans = 2
>> 2*0+3*2+9*1/3+2*(-3/2)
ans = 6
>> 3*0+2*2+3*1/3+8*(-3/2)
ans = -7
Упражнение 4.
Создайте матрицы
,
и произвольную квадратную матрицуAтретьего порядка. Найдите произведения
и
.
Сравните матрицы
и
,
и
.
>> syms a;
>> D2 = [1, 0, 0; 0, a, 0; 0, 0, 1];
>> D3 = [1, 0, 0; 0, 1, 0; 0, 0, a];
>> A = [1, 2, 3; 4, 5, 6; 7, 8, 9];
>> D2*A
ans =
[ 1 2 3 ]
[ ]
[4 a 5 a 6 a]
[ ]
[ 7 8 9 ]
>> D3*A
ans =
[ 1 2 3 ]
[ ]
[ 4 5 6 ]
[ ]
[7 a 8 a 9 a]
Упражнение 5.
Создайте матрицу.
Найдите произведение
,
сравните результат с матрицейA.
Создайте матрицу
.
Найдите произведение
,
сравните результат с матрицейA.
Найдите связь между M1 иL1, проверьте, что матрицы взаимно обратные.
Найдите транспонированную к
матрицу
.
Найдите произведение
сравните результат с матрицейA.
Найдите транспонированную к
матрицу
.
Найдите произведение
,
сравните результат с матрицейA.
>> syms a;
>> A = [1, 2, 3; 4, 5, 6; 7, 8, 9];
>> M1 = [1, 0, 0; -a, 1, 0; 0, 0, 1];
>> U1 = M1*A
U1 =
[ 1 2 3 ]
[ ]
[-a + 4 -2 a + 5 -3 a + 6]
[ ]
[ 7 8 9 ]
>> L1 = [1, 0, 0; a, 1, 0; 0, 0, 1];
>> L1U1 = L1*U1
L1U1 =
[1 2 3]
[ ]
[4 5 6]
[ ]
[7 8 9]
>> M1
M1 =
[1 0 0]
[ ]
[-a 1 0]
[ ]
[0 0 1]
>> inv(L1)
ans =
[1 0 0]
[ ]
[-a 1 0]
[ ]
[0 0 1]
>> M1T = M1'
M1T =
[1 -conj(a) 0]
[ ]
[0 1 0]
[ ]
[0 0 1]
>> L1T = L1'
L1T =
[1 conj(a) 0]
[ ]
[0 1 0]
[ ]
[0 0 1]
>> U_1 = A*M1T
U_1 =
[1 -conj(a) + 2 3]
[ ]
[4 -4 conj(a) + 5 6]
[ ]
[7 -7 conj(a) + 8 9]
>> U_L1_L1T = U_1*L1T
U_L1_L1T =
[1 2 3]
[ ]
[4 5 6]
[ ]
[7 8 9]