Сделай Сам Свою Работу на 5

Система А совместна и является определенной





МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

Государственное образовательное учреждение высшего профессионального образования

Санкт-Петербургский государственный университет технологии и дизайна

СЕВЕРО-ЗАПАДНЫЙ ИНСТИТУТ ПЕЧАТИ

 

Факультет: Полиграфических технологий и оборудования

Специальность:Информационные технологии в медиаиндустрии

Форма обучения:очная

Кафедра:Информационных и управляющих систем

 

 

Отчет

Дисциплина: Математика

Тема: Линейная алгебра. Решение СЛАУ

Выполнил:

Студент группы ИМ2 __________ Котикова К. В.

(подпись) (Ф.И.О.)

Руководитель:

________________ __________ Жихарева А. А.

(уч.степень, звание) (подпись) (Ф.И.О.)

Дата защиты работы ____________

Оценка _________________________

 


Санкт-Петербург

Даны СЛАУ (B-4):A= ,B= ,C=

 

Задание

 

Проверить совместность системы линейных алгебраических уравнений по теореме Кронекера-Капелли

Примечание. Для проверки совместности системы рекомендуется воспользоваться операцией конкатенации массивов (для формирования расширенной матрицы системы) и функциями rank (для определения рангов матрицы, коэффициентов системы и расширенной матрицы) и size (для определения числа неизвестных системы)



В случае совместности выяснить является ли она определенной.

1. Если система – определенная, то решить её

a) средствами пакета: с помощью оператора деления матриц, с помощью функции linsolve;

b) с помощью обратной матрицы;

c) методом Крамера;

d) методом Гаусса (привести расширенную матрицу системы к треугольному виду с помощью функции rref, после чего из приведенной матрицы выделить вектор решения)

Выполнить проверку в одном из случаев

2. Если система является неопределенной, то решить систему

a) с помощью оператора деления матриц;

b) с помощью функции linsolve;

c) с помощью функции solve;

d) методом Гаусса.

Объяснить результаты, полученные после применения каждой из функций. В каждом случаепо полученным результатам построить

· общее решение системы; если это невозможно, объяснить почему;

· одно или несколько частных решений системы.

Показать, что частные решения одной системы, найденные разными способами, совпадают.



 

Решение:

Скрипт

disp('Задание СЛАУ')

disp('Вводим СЛАУ')

Заглавными буквами обозначены матрицы составленные из коэффициентов левой части системы, а маленькими — вектор-столбцы из правой части СЛАУ

A=[2 -1 3; 1 3 -1; 1 -2 2], a=[-4; 11; -7]

B=[3 -3 2; 4 -5 2; 1 -2 0], b=[2; 1; 5]

C=[2 -3 -4; 7 -9 -1; 5 -6 3], c=[2; 3; 1]

disp('Проверка совместности СЛАУ')

disp('Вычисляем ранги основной матрицы СЛАУ; создаем расширенные матрицы путем горизонтальной конкатенации, вычисляем их ранги; вычисляем размерность матриц (второе число — это количество неизвестных переменных в системе )')

rnA=rank(A);

rnB=rank(B);

rnC=rank(C);

rA=[A a];

rB=[B b];

rC=[C c];

rnrA=rank(rA);

rnrB=rank(rB);

rnrC=rank(rC);

sА=size(A);

sB=size(B);

sC=size(C);

disp('Сравниваем ранги основных, расширенных матриц СЛАУ и количество неизвестных')

 

if rnA==rnrA

if rnA==sА(1,2) disp('Система А совместна и является определенной')

 

disp('Решение средствами пакета: с помощью оператора деления матриц, с помощью функции linsolve')

OtvetA1=A\a

OtvetA1_lins=linsolve(A,a)

disp('Проверка:')

if A*OtvetA1==a disp('Решение найдено верно')

else disp('Решение найдено неверно')

end

disp('Решение с помощью обратной матрицы')

if det(A)==0 disp('Метод не применим, тк определитель равен 0')

else OtvetA2=inv(A)*a

end

disp('Решение методом Крамера')

if det(A)==0 disp('Метод не применим, тк определитель равен 0')

else Matr1=[a A(:,2:3)] ;

OprMatr1=det(Matr1);

Matr2=[A(:,1) a A(:,3)];

OprMatr2=det(Matr2);

Matr3=[A(:,1:2) a ];

OprMatr3=det(Matr3);

OtvetA3=[OprMatr1; OprMatr2; OprMatr3]/det(A)

end

disp('Решение методом Гаусса')

rA_priv=rref(rA);

sizerA_priv=size(rA_priv);

Otvet4=rA_priv(:,sizerA_priv(1, 2))

 

else disp('Система А совместна и является неопределенной')

 

disp('Решение с помощью оператора деления матриц')

OtvetA1=A\a

disp('Решение с помощью функции linsolve')



OtvetA2_lins=linsolve(A,a)

disp('Решение с помощью функции solve')

disp('OtvetA3=')

syms x y z; [x y z]=solve('2*x-y+3*z=-4','x+3*y-z=11','x-2*y+2*z=-7')

disp('Решение методом Гаусса')

rA_priv=rref(rA);

sizerA_priv=size(rA_priv);

OtvetA4=rA_priv(:,sizerA_priv(1, 2))

end

else disp('Система А несовместна и не имеет решения')

end;

if rnB==rnrB

if rnB==sB(1,2) disp('Система B совместна и является определенной')

 

disp('Решение средствами пакета: с помощью оператора деления матриц, с помощью функции linsolve')

OtvetB1=B\b

OtvetB1_lins=linsolve(B,b)

 

disp('Проверка:')

if B*OtvetB1==b disp('Решение найдено верно')

else disp('Решение найдено неверно')

end

 

disp('Решение с помощью обратной матрицы')

if det(B)==0 disp('Метод не применим, тк определитель равен 0')

else OtvetB2=inv(B)*b

end

 

disp('Решение методом Крамера')

if det(B)==0 disp('Метод не применим, тк определитель равен 0')

else Matr1=[b B(:,2:3)];

OprMatr1=det(Matr1);

Matr2=[B(:,1) b B(:,3)];

OprMatr2=det(Matr2);

Matr3=[B(:,1:2) b];

OprMatr3=det(Matr3);

OtvetB3=[OprMatr1; OprMatr2; OprMatr3]/det(B)

end

 

disp('Решение методом Гаусса')

rB_priv=rref(rB);

sizerB_priv=size(rB_priv);

Otvet4=rB_priv(:,sizerB_priv(1, 2))

 

else ('Система B совместна и является неопределенной')

disp('Решение с помощью оператора деления матриц')

OtvetB1=B\b

 

disp('Решение с помощью функции linsolve')

OtvetB2_lins=linsolve(B,b)

 

disp('Решение с помощью функции solve')

disp('OtvetB3=')

syms x y z; [x y z]=solve('3*x-3*y+2*z=2','4*x-5*y+2*z=1','x-2*y=5')

 

disp('Решение методом Гаусса')

rB_priv=rref(rB);

sizerB_priv=size(rB_priv);

OtvetB4=rB_priv(:,sizerB_priv(1, 2))

end

else disp('Система B несовместна и не имеет решения')

end;

if rnC==rnrC

if (rnC==sC(1,2)) disp('Система C совместна и является определенной')

 

disp('Решение средствами пакета: с помощью оператора деления матриц, с помощью функции linsolve')

OtvetC1=C\c

OtvetC1_lins=linsolve(C,c)

 

disp('Проверка:')

if C*OtvetC1==c disp('Решение найдено верно')

else disp('Решение найдено неверно')

end

 

disp('Решение с помощью обратной матрицы')

if det(C)==0 disp('Метод не применим, тк определитель равен 0')

else OtvetC2=inv(C)*c

end

 

disp('Решение методом Крамера')

if det(C)==0 disp('Метод не применим, тк определитель равен 0')

else Matr1=[c C(:,2:3)];

OprMatr1=det(Matr1);

Matr2=[C(:,1) c C(:,3)];

OprMatr2=det(Matr2);

Matr3=[C(:,1:2) c ];

OprMatr3=det(Matr3);

OtvetC3=[OprMatr1; OprMatr2; OprMatr3]/det(C)

end

 

disp('Решение методом Гаусса')

rC_priv=rref(rC);

sizerC_priv=size(rC_priv);

Otvet4=rC_priv(:,sizerC_priv(1, 2))

 

else ('Система C совместна и является неопределенной')

disp('Решение с помощью оператора деления матриц')

OtvetC1=C\c

 

disp('Решение с помощью функции linsolve')

OtvetC2_lins=linsolve(C,c)

 

disp('Решение с помощью функции solve')

disp('OtvetC3=')

syms x y z; [x y z]=solve('2*x-3*y-4*z=2','7*x-9*y-z=3','5*x-6*y+3*z=1')

 

disp('Решение методом Гаусса')

rC_priv=rref(rC);

sizerC_priv=size(rC_priv);

OtvetC4=rC_priv(:,sizerC_priv(1, 2))

end

else disp('Система C несовместна и не имеет решения')

end

Command window

>> Задание по СЛАУ

Вводим СЛАУ

A = 2.00 -1.00 3.00

1.00 3.00 -1.00

1.00 -2.00 2.00

a =

-4.00

11.00

-7.00

B =

3.00 -3.00 2.00

4.00 -5.00 2.00

1.00 -2.00 0

b =

2.00

1.00

5.00

C =

2.00 -3.00 -4.00

7.00 -9.00 -1.00

5.00 -6.00 3.00

c =

2.00

3.00

1.00

Проверка совместности СЛАУ

Вычисляем ранги основной матрицы СЛАУ; создаем расширенные матрицы путем горизонтальной конкатенации, вычисляем их ранги; вычисляем размерность матриц (второе число — это количество неизвестных переменных в системе )

Сравниваем ранги основных, расширенных матриц СЛАУ и количество неизвестных

Система А совместна и является определенной

Решение средствами пакета: с помощью оператора деления матриц, с помощью функции linsolve

OtvetA1=

1.00

3.00

-1.00

OtvetA1_lins=

[ 1]

[ 3]

[ -1]

Проверка: Решение найдено верно

Решение с помощью обратной матрицы

OtvetA2=

1.00

3.00

-1.00

Решение методом Крамера

OtvetA3=

1.00

3.00

-1.00

Решение методом Гаусса

Otvet4=

1.00

3.00

-1.00

 








Не нашли, что искали? Воспользуйтесь поиском по сайту:



©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.