Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1-й курс / МатЛаб - Алгебра / Задание Лаб_2_3.doc
Скачиваний:
152
Добавлен:
18.12.2017
Размер:
665.09 Кб
Скачать
  1. Методы приведения квадратичной формы к каноническому виду.

    1. Метод Лагранжа

Данный метод состоит в последовательном выделении в квадратичной форме полных квадратов.

Пусть дана квадратичная форма

Напомним, что, ввиду симметричности матрицы

,

Возможны два случая:

1.Хотя бы один из коэффициентовпри квадратах отличен от нуля. Не нарушая общности, будем считать(этого всегда можно добиться соответствующей перенумерацией переменных);

2.Все коэффициенты,

но есть коэффициент , отличный от нуля (для определённости пусть будет).

В первом случаепреобразуем квадратичную форму следующим образом:

,

где ,

а через обозначены все остальные слагаемые.

представляет собой квадратичную форму от (n—1) переменных .

С ней поступают аналогичным образом и так далее.

Заметим, что

Второй случайзаменой переменных

сводится к первому.

Пример 1:Квадратичную форму привести к каноническому виду посредством невырожденного линейного преобразования.

Решение. Соберём все слагаемые, содержащие неизвестное , и дополним их до полного квадрата

.

(Так как .)

Положим

или (3)

или (4)

и от неизвестных формапримет вид. Далее полагаем

или

и от неизвестных формапримет уже канонический вид

. (4)

Разрешим равенства (3) относительно :

или

Последовательное выполнение линейных преобразований и, где

,

имеет матрицей

.

Линейное преобразование неизвестных приводит квадратичную форму к каноническому виду (4). Переменные связаны с новыми переменнымисоотношениями

См также ссылку http://mathhelpplanet.com/static.php?p=privedenie-kvadratichnoi-formy-k-kanonicheskomu-vidu

С LU - разложением мы познакомились в практикуме 2_1

Вспомним утверждения из практикума 2_1

Утверждения(см.Л.5, стр. 176)

  1. Пусть A - квадратная матрица порядка n и все главные миноры матрицы A отличны от нуля. Тогда существуют единственная нижняя треугольная матрица L=(lij), где lii =1 для всех i, j =1,2,…,n (т.е. с единицами на главной диагонали) и единственная верхняя треугольная матрица U=(uij), такие что A=LU и .

  2. В тех же предположениях можно доказать единственность разложения матрицы A в произведение , гдеL – нижняя, S - верхняя треугольные матрицы с единицами на главной диагонали, а D – диагональная матрица.

  3. Если A- симметричная матрица, то из следует, что

Данный скрипт призван понять роль LU в методе Лагранжа, с ним нужно работать в блокноте EDITOR с помощью кнопки F9.

А в прилагаемых ниже заданиях лучше создать свои М-функции, помогающие вычислению и осознанию задач линейной алгебры (в рамках данной работы)

syms x1x2x3

X=[x1;x2;x3]

A=[4 -2 2;-2 1 -3/2;2 -3/2 1]

Ax=X.'*A*X % получаем квадратичную форму

Ax=simple(Ax) % упрощаем ее

Ax =

4*x1^2 - 4*x1*x2 + 4*x1*x3 + x2^2 - 3*x2*x3 + x3^2

% найдем LU разложение без перестановки строк матрицы A

% При преобразовании матрицы к ступенчатому виду

%без перестановок строк, мы получим матрицу M1 и U3

% U получается из A U3=M1*A,

M1=[1 0 0;0.5 1 0;-0.5 0 1]

% вот такой матрицей элементарных преобразований

M1 =

1.0000 0 0

0.5000 1.0000 0

-0.5000 0 1.0000

%мы получим U3=M1*A, где

U=M1*A

U =

4.0000 -2.0000 2.0000

0 0 -0.5000

0 -0.5000 0

% из M1 легко получить L1, поменяв знаки

% в первом столбце во всех строках кроме первой.

L1=[1 0 0;-0.5 1 0;0.5 0 1]

L1 =

1.0000 0 0

-0.5000 1.0000 0

0.5000 0 1.0000

% L1 такое, что

A_=L1*U % вот это и есть нужное нам LU разложение

isequal(A,A_) % должно совпасть с исходной A

% Элементы, стоящие на главной диагонали U -

% это коэффициенты при квадратах yi^2

% в преобразованной квадратичной форме

% в нашем случае, есть один только коэффициент

% значит, в новых координатах будет только 4y12 в квадрате ,

% при остальных 0y22 и 0y32 коэффициенты равны нулю

% столбцы матрицы L1 - это разложение Y по X

% по первому столбцу видим y1=x1-0.5x2+0.5x3

% по второму видим y2=x2; по третьему y3=x3.

% если транспонировать L1,

% то есть T=L1.'

% T - матрица перехода от {X} к {Y}: Y=TX

T=L1.'

L1 =

1.0000 0 0

-0.5000 1.0000 0

0.5000 0 1.0000

T =

1.0000 -0.5000 0.5000

0 1.0000 0

0 0 1.0000

% A2 – матрица преобразованной квадратичной формы

% Заметим U=A2*L1.' и A=L1* A2*L1.'

A2=[4 0 0;0 0 -0.5;0 -0.5 0]

A2=

4.0000 0 0

0 0 -0.5000

0 -0.5000 0

U=A2*L1.'

U =

4.0000 -2.0000 2.0000

0 0 -0.5000

0 -0.5000 0

A2=

4.0000 0 0

0 0 -0.5000

0 -0.5000 0

T =

1.0000 -0.5000 0.5000

0 1.0000 0

0 0 1.0000

% Итак, мы получили разложение A_=L1* A2*L1.' или A_=T.'* A2*T

% показывающее замену переменных

% y1=x1-0.5x2+0.5x3

% y2=x2;

% y3=x3.

% и представление квадратичной формы в новых координатах

A_=T.'*A2*T % T=L1.' матрица перехода от {X} к {Y}: Y=TX

isequal(A,A_) % должно совпасть с исходной A

A_=T.'*U*T

A_ =

4.0000 -2.0000 2.0000

-2.0000 1.0000 -1.5000

2.0000 -1.5000 1.0000

Q1=inv(T) % находим матрицу перехода от {Y} к {X}

% X=Q1Y

% Найдем преобразование,

% приводящее квадратичную форму Ax=X.'*A*X

% к новому виду Ay=(Q1Y).'*A*Q1Y=Y.' (Q1.'*A*Q1)*Y=Y.' (U)*Y

A2=Q1.'*A*Q1

syms y1y2y3

Y=[y1;y2;y3]

Ay=Y.'*A2*Y

Ay =4*y1^2 - y2*y3

Yx= T*X

Yx =

x1 - x2/2 + x3/2

x2

x3

Ax_=Yx.'*A2*Yx

Ax_=simple(Ax_)

Ax_=factor(Ax_)

% Y=Q2Z

Q2=[1 0 0;0 1 -1;0 1 1]

% матрица второго преобразования,

% которая составляется значительно проще.

Q2 =

1 0 0

0 1 -1

0 1 1

syms z1z2z3

Z=[z1;z2;z3]

Zy=Q2*Z

Zy =

z1

z2 - z3

z2 + z3

Az=Zy.'*U*Zy

Az=simple(Az)

Az =

4*z1^2 - z2^2 + z3^2

Uz=[4 0 0;0 -1 0;0 0 1]

Az_=Z.'*Uz*Z

isequal(Az,Az_)

% R=Q1*Q2, X=R*Z

R=Q1*Q2 % невырожденное линейное преобразование

% приводящее матрицу оператора к каноническому виду.

R =

1 0 -1

0 1 -1

0 1 1

R.'*A*R

ans =

4 0 0

0 -1 0

0 0 1

det(R) % определитель не равен нулю - преобразование невырожденное

ans =

2

Xz=R*Z

Xz =

z1 - z3

z2 - z3

z2 + z3

Ax=X.'*A*X

Ax=simple(Ax)

x1= z1 - z3

x2= z2 - z3

x3=z2 + z3

ans =

4*z1^2 - z2^2 + z3^2 ok

Uz=[4 0 0;0 -1 0;0 0 1]

Az_=Xz.'*A*Xz

Az_=simple(Az_)

Az_=factor(Az_)

Az_ =

4*z1^2 - z2^2 + z3^2

    1. Алгоритм приведения квадратичной формы к каноническому виду ортогональным преобразованием

      Определение: Будем называть линейное преобразование переменных ортогональным, если матрица ортогональная, т.е.

Сформулируем алгоритм приведения квадратичной формы к каноническому виду ортогональным преобразованием:

  1. Находим собственные значения линейного оператора, решая характеристическое уравнение

  2. Для каждого собственного значения находим собственные векторы, решая систему линейных уравнений (У этой системы мы должны найти фундаментальную систему решений).

  3. Если собственное значение имеет кратность, большую 1 (в характеристическом уравнении), то векторы из ф.с.р. могут оказаться не ортогональными друг другу – в этом случае к ним надо применитьпроцесс ортогонализации Шмидта (изучите самостоятельно, читайте: Ржавинская Е. В., Олейник Т. А., Соколова Т. В. Лекции по линейной алгебре и аналитической геометрии, М., МИЭТ. 2007. )

  4. Нормируем найденные собственные векторы, т.е. каждый вектор делим на его длину.

  5. Записываем канонический вид квадратичной формы и преобразование координат, приводящее её к этому виду.