36852

Численные методы решения задач линейной алгебры

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

Математика и математический анализ

Численные методы решения задач линейной алгебры specM вычисляет собственные значения и собственные векторы квадратной матрицы M. specM Собственные числа матрицы ns = 1. Х собственные векторы соответствующие собственным значениям из матрицы Y. Использование функции inv Пример вычисления обратной матрицы.

Русский

2013-09-23

44.5 KB

6 чел.

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

Численные методы решения задач линейной алгебры

spec(M) - вычисляет собственные значения и собственные векторы  квадратной матрицы M.

Листинг 3.34. Использование функции spec

-->M=[3 -2;-4 1]

M =

3. - 2.

- 4. 1.

-->spec(M) //Собственные числа матрицы

ans =

- 1.

5.

//Х - собственные векторы,

-->соответствующие собственным значениям из матрицы Y.

-->[X,Y]=spec(M)

Y =

! - 1. 0 !

! 0 5. !

X =

! 0.4472136 - 0.7071068 !

! 0.8944272 0.7071068 !

inv(A) - вычисляет матрицу, обратную к A;

Листинг 3.35. Использование функции inv

-->//Пример вычисления обратной матрицы.

-->A=[1 2 3 5;0 1 3 2;4 2 1 1;2 3 0 1];

-->inv(A)

ans =

! 0.0285714 - 0.1428571 0.3428571 - 0.2 !

! - 0.1428571 0.2142857 - 0.2142857 0.5 !

! - 0.2 0.5 0.1 - 0.1 !

! 0.3714286 - 0.3571429 - 0.0428571 - 0.1 !

-->//При умножении обратной матрицы на исходную,

-->//получилась матрица, близкая к единичной.

-->inv(A)*A

ans =

1. - 1.110D-16 0. 0.

0. 1. - 5.551D-17 5.551D-17

0. 0. 1. 1.388D-17

0. 0. 6.939D-17 1.

-->//При попытке обратить вырожденную матрицу

-->//(определитель равен или близок к нулю)

-->//пользователь получит сообщение об ошибке.

-->B=[1 2 3;1 4 5;1 6 7];

-->inv(B)

!--error 19

Problem is singular

pinv(A[,tol]) - вычисляет псевдообратную матрицу для матрицы A с точностью tol (необязательный параметр);

Листинг 3.36. Использование функции pinv

-->pinv(A)

ans =

0.0285714 - 0.1428571 0.3428571 - 0.2

- 0.1428571 0.2142857 - 0.2142857 0.5

- 0.2 0.5 0.1 - 0.1

0.3714286 - 0.3571429 - 0.0428571 - 0.1

linsolve(A,b) - решает систему линейных алгебраических уравнений вида

.

Листинг 3.37. Пример использования функции linsolve

-->//Решение системы линейных уравнений

-->//{x1+2x2-7=0; x1+x2-6=0}.

-->//Свободные коэффициенты вводятся как вектор-столбец

-->//и с учетом знаков.

-->A=[1 2;1 1];b=[-7;-6];

-->x=linsolve(A,b)

x =

5.

1.

-->//Результатом операции A*x+b является вектор, достаточно

-->//близкий к нулю, это значит, что система решена верно.

-->A*x+b

ans =

1.0D-14 *

- 0.6217249

0.0888178

-->//Решение системы {x1+x2-1=0; x1+x2-3=0}

-->A=[1 1;1 1]; b=[-1;-3];

-->//Система не имеет решений:

-->linsolve(A,b)

WARNING:Conflicting linear constraints!

ans =

[]

-->//Решение системы {3x1-x2-1=0; 6x1-2x2-2=0}.

-->//В случае, когда система имеет бесконечное

-->//множество решений, SCILAB выдаст одно из них.

-->A=[3 -1;6 -2];

-->b=[-1;-2];

-->x=linsolve(A,b)

x =

0.3

- 0.1

-->//Проверка неверна

-->A*x+b

ans =

1.0D-15 *

- 0.1110223

- 0.2220446

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

Листинг 3.38. Пример использования функции rref

--> A=[3 -2 1 5;6 -4 2 7;9 -6 3 12]

A =

3 -2 1 5

6 -4 2 7

9 -6 3 12

--> rref(A)

ans =

1.0000 -0.6667 0.3333 0

0 0 0 1.0000

0 0 0 0

lu(М) - выполняет треугольное разложение матрицы M;

M = C · L · U, где L и U - соответственно нижняя и верхняя треугольные матрицы, все четыре матрицы квадратные и одного порядка. Такие вычисления называют LU-разложением.

Листинг 3.39. Использование функции lu

-->A=[2 -1 5;3 2 -5;1 1 -2]

A =

2. - 1. 5.

3. 2. - 5.

1. 1. - 2.

-->[L,U]=lu(A)

U =

3. 2. - 5.

0. - 2.3333333 8.3333333 !

0. 0. 0.8571429 !

L =

0.6666667 1. 0.

1. 0. 0.

0.3333333 - 0.1428571 1.

-->LU=L*U

LU =

2. - 1. 5.

3. 2. - 5.

1. 1. - 2.

qr(М) - выполняет разложение матрицы М на ортогональную и верхнюю треугольную матрицы;

M = Q · R, где Q - ортогональная матрица, а R - верхняя треугольная матрица. Этот

процесс называют QR-разложением.

Листинг 3.40. Использование функции qr

-->[Q,R]=qr(A)

R =

- 3.7416574 - 1.3363062 1.8708287

0. - 2.0528726 7.0632734

0. 0. 0.7811335

Q =

- 0.5345225 0.8350668 0.1301889

- 0.8017837 - 0.4523279 - 0.3905667

0.2672612 - 0.3131501 0.9113224

-->Q*R

ans =

2. - 1. 5.

3. 2. - 5.

1. 1. - 2.

svd(М) - выполняет сингулярное разложение размером n×m; результатом работы функции может быть либо сингулярное разложение, либо вектор, содержащий сингулярные значения матрицы.

M = U · S · VT, где U и V-ортогональные матрицы размером m × m и n × n соответственно, а S-диагональная матрица, на диагонали которой расположены сингулярные числа матрицы M

Листинг 3.41. Использование функции svd

-->[U,S,V]=svd(A)

V =

- 0.1725618 0.9641403 - 0.2016333

- 0.3059444 0.1421160 0.9413825

0.9362801 0.2241352 0.2704496

S =

7.8003308 0. 0.

0. 3.6207331 0.

0. 0. 0.2124427

U =

0.5951314 0.8028320 0.0357682

- 0.7449652 0.5678344 - 0.3501300

- 0.3014060 0.1817273 0.9360180

-->U*S*V’

ans =

2. - 1. 5.

3. 2. - 5.

1. 1. - 2.

-->s=svd(A)

s =

7.8003308

3.6207331

0.2124427

kernel(М[,tol[,fl]]) - определение ядра матрицы М, параметры tol и fl являются необязательными. Первый задает точность вычислений, второйиспользуемый при вычислении алгоритм и принимает значения ’qr’ или ’svd’.

Ядро матрицы - это множество векторов X. Поиск ядра матрицы сводится к решению однородной системы линейных уравнений AX = 0. Если при вызове функции X=kernel(A) матрица X окажется непустой, то действительно AX = 0.

Листинг 3.42. Использование функции kernel

-->A=[4 1 -3 -1;2 3 1 -5;1 -2 -2 3]

A =

4. 1. - 3. - 1.

2. 3. 1. - 5.

1. - 2. - 2. 3.

-->X=kernel(A)

X =

0.3464102

0.5773503

0.4618802

0.5773503


 

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

361. Выполнение работ по профессии Контролер (Сберегательного банка) 660.5 KB
  Порядок совершения операций по приему денежной наличности в кассу кредитной организации от юридических и физических лиц. Выполнение и оформление кассовых операций. Операции с поврежденными и сомнительными денежными знаками иностранных государств.
362. Особенности развития гибкости при занятиях гимнастикой у девочек 7-8 лет 303.5 KB
  Художественная гимнастика как вид спорта. Гибкость как физическое качество. Возрастные особенности развития девочек 7-8 лет. Тренировочный процесс на занятиях по художественной гимнастике в СДЮСШОР №1 Калининского района.
363. Модель промислового верстата з ЧПУ 1.84 MB
  Промисловий верстат з ЧПУ використовується для обробки різного роду матеріалів, нанесення зображень на різні види поверхонь, отримання різного роду фігурних елементів, фрезерних робіт.
364. Экономический расчет работы предприятия 473.5 KB
  Расчет численности младшего обслуживающего персонала. Определение средней тарифной ставки по видам воздействий. Расчет сдельного расценка за 1 автомобиле-день работы автомобиля. Затраты на расходные материалы и запасные части для ремонтной.
365. Основы программирования 110 KB
  Описание процесса компиляции и запуска программы. Программа для вычислений над матрицами. Microsoft Visual Studio Express. Стандартная библиотека шаблонов (STL). Создание динамического класса для работы с матрицами.
366. Создание транспортной сети SDH в городе Темиртау. 517.5 KB
  Разработка схемы включения станций в проектируемую сеть SDH города Темиртау. Выбор топологии включения станций проектируемой сети. Возможность интеграции с каналами PDH. Развитие магистральных телекоммуникаций казахстанских операторов связи.
367. Трансформация образа трикстера в современной культуре 843 KB
  Основные характеристики трикстера как мифологического персонажа в архаической традиции. Исходная парадигма образа героя-трикстера: этиологические мифы. Трикстериада и ее взаимоотношения с институтом шаманизма и волшебной сказкой.
368. Смарт-карты известных мировых производителей 139.5 KB
  Основные сведения о смарт-картах. Чтение/запись смарт-карты через параллельный порт. Основные управляющие команды карты. Назначение областей данных. Принципиальная схема источника питания.
369. Решение вопросов теории вероятности на уроках математики 583 KB
  Выделить основные цели и задачи изучения теории вероятностей в курсе школьной математики. Изучение и анализ научной учебно-методической литературы, программ по математике для общеобразовательных учреждений. Наблюдение за деятельностью учащихся, ее анализ.