Название: Метод квадратных корней
Вид работы: контрольная работа
Рубрика: Математика
Размер файла: 118.71 Kb
Скачать файл: referat.me-215987.docx
Краткое описание работы: Система линейных алгебраических уравнений. Основные формулы Крамера. Точные, приближенные методы решения линейных систем. Алгоритм реализации метода квадратных корней на языке программирования в среде Matlab 6.5. Влияние мерности, обусловленности матрицы.
Метод квадратных корней
Введение
Система линейных алгебраических уравнений – математическая модель, которая описывает состояние равновесия экономического объекта, которое называется установившимся режимом или статикой объекта. Экономическая статика изучает допустимые и рациональные состояния экономического объекта.
Пусть дана система n линейных алгебраических уравнений с n неизвестными
|

или в матричной форме
Ax = b,
где
- матрица коэффициентов,
- столбец свободных членов и столбец неизвестных соответственно.
Если матрица А неособенная, т.е.
то система (1.1) имеет единственное решение. В этом случае решение системы (1.1) с теоретической точки зрения не представляет труда. Значения неизвестных xi (i=1,2,…n) могут быть получены по известным формулам Крамера
крамер квадратный корень матрица
где матрица Ai получается из матрицы А заменой ее i-го столбца столбцом свободных членов.
Но такой способ решения линейной системы с n неизвестными приводит к вычислению n + 1 определителей порядка n, что представляет собой весьма трудоемкую операцию при сколько-нибудь большом числе n.
Применяемые в настоящее время методы решения линейных систем можно разбить на две группы: точные и приближенные.
Точными методами называются такие методы, которые в предположении, что вычисления ведутся точно (без округлений), приводят к точным значениям неизвестных xi . Так как на практике все вычисления ведутся с округлениями, то и значения неизвестных, полученные точным методом, неизбежно будут содержать погрешности. К точным методам относятся, например, метод Гаусса, метод квадратных корней.
Приближенными методами называются такие методы, которые даже в предположении, что вычисления ведутся без округлений, позволяют получить решение системы (x1 , x2 , …, xn ) лишь с заданной точностью. Точное решение системы в этих случаях может быть получено теоретически как результат бесконечного процесса. К приближенным методам относятся метод простой итерации, метод Зейделя и др. Каждый из этих методов не всегда является сходящимся в применении к конкретному классу систем линейных уравнений.
Данная контрольная работа имеет следующую структуру: в начале рассматривается математическая постановка задачи для метода квадратных корней при решении систем линейных алгебраических уравнений. Затем производится реализация данного метода с помощью вычислительных средств ЭВМ, а именно прикладной программой Matlab 6.5. На примере реализации нескольких тестовых задач проводится анализ точности данного метода, а именно когда наиболее эффективно применять метод квадратных корней при решении систем линейных алгебраических уравнений. Анализ проводится на основе матрицы А (ее мерности, разреженности, обусловленности. Результаты, полученные на основе метода квадратных корней, приведены в конце данной работы. Также в работе представлен графический материал. По окончании проведения исследования работа завершается логическим заключением.
Математическая постановка задачи
Метод квадратных корней используется для решения линейной системы
Ax = b,
|
у которой матрица А симметрическая, т.е.
aij = aji (i, j = 1, 2, …, n).
Метод является более экономным и удобным по сравнению с решением систем общего вида.
Решение системы осуществляется в два этапа.
Прямой ход. Представим матрицу А в виде произведения двух взаимно транспонированных треугольных матриц:
|
где
.
Перемножая матрицы T¢ и T и приравнивая матрице A, получим следующие формулы для определения tij :
|
|
T¢y = b, Tx = y.
Обратный ход. Записываем в развернутом виде системы (1.5):
Отсюда последовательно находим
При вычислениях применяется обычный контроль с помощью сумм, причем при составлении суммы учитываются все коэффициенты соответствующей строки.
Заметим, что при действительных aij могут получиться чисто мнимые tij . Метод применим и в этом случае.
Описание программного обеспечения (согласно стандартам на ИТ)
Для изучения данного метода было выбрано программное обеспечение: Matlab 6.5, в операционной системе WindowsXPProfessional. На этапе проектирования была создана программа Square (‘квадрат’). Входными переменными для данной программы является матрица A и соответствующая ей матрица B. Результатом выполнения данной программы является матрица X (выходная переменная), которая является решением системы линейных алгебраических уравнений.
Ниже описан алгоритм реализации метода квадратных корней на языке программирования в среде Matlab 6.5:
A=input('Введите матрицу A=');
B=input('Введите B=');
if A==A'
if det(A)~=0
s=size(A,1);
if size(B',1) == s
T=zeros(s);
T(1,1)=sqrt(A(1,1));
for k=2:s
T(1,k)=A(1,k)/T(1,1)
end
for j=2:s
for i=2:s
if i==j
sm=0
for k=1:(i-1)
sm=sm+T(k,i)^2
end
T(i,i)=sqrt(A(i,i)-sm)
else
if i<j
sm=0
for k=1:(i-1)
sm=sm+T(k,i)*T(k,j)
end
T(i,j)=(A(i,j)-sm)/T(i,i)
end
end
end
end
Y=zeros(s,1)
Y(1)=B(1)/T(1,1)
for i=2:s
sm=0
for k=1:(i-1)
sm=sm+T(k,i)*Y(k)
end
sm
Y(i)=(B(i)-sm)/T(i,i)
end
X=zeros(s,1)
X(s)=Y(s)/T(s,s)
for m=1:(s-1)
i=s-m
sm=0
for k=(i+1):s
sm=sm+T(i,k)*X(k)
sm
end
X(i)=(Y(i)-sm)/T(i,i)
E=A*X-B'
end
else
error('B не соответствует матрице А')
end
else
error('det А = 0')
end
else
B = B*A'
A = A*A'
if det(A)~=0
s=size(A,1);
if size(B',1) == s
T=zeros(s);
T(1,1)=sqrt(A(1,1));
for k=2:s
T(1,k)=A(1,k)/T(1,1)
end
for j=2:s
for i=2:s
if i==j
sm=0
for k=1:(i-1)
sm=sm+T(k,i)^2
end
T(i,i)=sqrt(A(i,i)-sm)
else
if i<j
sm=0
for k=1:(i-1)
sm=sm+T(k,i)*T(k,j)
end
T(i,j)=(A(i,j)-sm)/T(i,i)
end
end
end
end
Y=zeros(s,1)
Y(1)=B(1)/T(1,1)
for i=2:s
sm=0
for k=1:(i-1)
sm=sm+T(k,i)*Y(k)
end
sm
Y(i)=(B(i)-sm)/T(i,i)
end
X=zeros(s,1)
X(s)=Y(s)/T(s,s)
for m=1:(s-1)
i=s-m
sm=0
for k=(i+1):s
sm=sm+T(i,k)*X(k)
sm
end
X(i)=(Y(i)-sm)/T(i,i)
end
else
error('B не соответствует матрице А')
end
else
error('det А = 0')
end
end
Описание тестовых задач
Результатом разработки программы является этап реализации и тестирования метода квадратных корней. На этапе выполнения программы может появляться неточность полученного решения из-за ошибки вычисления (например, ошибки округления ЭВМ). Исследуем влияние мерности матрицы A, ее обусловленности, разреженности на точность полученного решения. Результат будем оценивать по невязке ε = Ax* - b (x* - полученное решение). Для этого рассмотрим разного рода матрицы:
- влияние мерности матрицы А;
Рассмотрим матрицы мерности 2´2, 3´3, 4´4 и 5´5. Зададим матрицу мерностью 2´2:
, ей соответственно зададим
, в результате выполнения программы получим решение:
X =
ε =
Зададим матрицу размерностью 3´3:
, ей соответственно зададим
, в результате выполнения программы получим решение:
X =
ε =
Зададим матрицу размерностью 4´4:
, ей соответственно зададим
, в результате выполнения программы получим решение:
X =
ε =
Зададим матрицу размерностью 5´5:
, ей соответственно зададим
, в результате выполнения программы получим решение:
X =
ε =
Сравним полученные результаты, для этого проанализируем точность полученного решения. Результат мы можем оценить двумя способами и
, где E – матрица, полученная в результате подстановки найденного решения в систему линейных алгебраических уравнений: Е=A*x-b. Проиллюстрируем результаты графически. Для этого была разработана программа в среде Matlab 6.5.
E2=input('Введите матрицу Е2=');
E3=input('Введите матрицу Е3=');
E4=input('Введите матрицу Е4=');
E5=input('Введите матрицу Е5=');
Q1=sqrt(sum(power(E2,2)));
Q2=sqrt(sum(power(E3,2)));
Q3=sqrt(sum(power(E4,2)));
Q4=sqrt(sum(power(E5,2)));
Q = [Q1 Q2 Q3 Q4];
abs(E2);
abs(E3);
abs(E4);
abs(E5);
a1=max(abs(E2));
a2=max(abs(E3));
a3=max(abs(E4));
a4=max(abs(E5));
A = [a1 a2 a3 a4];
E = [2 3 4 5];
plot (Q,E)
pause
plot (A,E)
На основе проведенного анализа и иллюстрации графиков можно сделать вывод, что с увеличением мерности матрицы увеличивается неточность решения.
- влияние обусловленности матрицы А;
Для исследования возьмем матрицу следующего вида, которую в последствии будем заполнять нулями, прослеживая результат изменения ошибки:
, ей соответственно зададим
X =
-6.1000
-2.2000
-6.8000
-0.9000
0.2000
E =
-0.0389
-0.7994
0.2665
-0.0888
0.0888
, ей соответственно зададим
X =
-0.7869
-1.3706
-2.1805
-0.0204
1.5371
E =
0
0
0.2665
0
0
, ей соответственно зададим
X =
-0.4950
0.1575
5.0050
4.7700
-5.5025
E =
0
0
0
-0.7105
0.4441
, ей соответственно зададим
X =
-4.1125
1.0263
-1.0750
1.2947
-1.2313
E =
-0.0444
0
0.0888
-0.0888
0.1776
, ей соответственно зададим
X =
0.5000
1.0263
1.6667
1.2947
0.8250
E =
0
0
0.8882
-0.8882
0
Четкой тенденции проследить невозможно, хотя видно на основе предложенной матрицы А, что с увеличение числа нулей, присутствующих в матрице, точность решения увеличивается, т.к. уменьшается число элементов задействованных в вычислении, то и снижается ошибка вычислений.
- обусловленность матрицы А;
Зададим матрицу с практически равными элементами. В последствии будем увеличивать ее размерность.
, ей соответствует
X =
-1.6499
-1.6501
E =
0
-0.9313
, ей соответствует
X =
-1.6522
0.7500
2.3978
E =
0
0.1863
0
, ей соответствует
X =
0.0018
2.4041
2.3978
0.0033
E =
-0.0167
0.0371
-0.0371
-0.3558
Обусловленность матрицы снижает ошибку вычислений у матриц с более высокой размерностью, т.е. с увеличением размерности разряженной матрицы ее точность увеличивается (ошибка вычислений снижается).
Анализ результатов
Подводя итоги можно сделать следующий вывод. Точность решения зависит как от обусловленности, разреженности и мерности матрицы, так и в целом комбинация этих составляющих влияет на точность полученного решения. Хотя в некоторых случаях однозначного ответа дать невозможно, так как точность зависит еще и от того, насколько громоздки были вычисления, и как много требовалось округлений, а также все ли были учтены недочеты. А также если корни будут близки к целым корням, то и точность решения будет выше.
Заключение
В данной контрольной работе был проанализирован один из методов решения систем линейных алгебраических уравнений: метод квадратных корней. Метод был предложен для решения системы Ax=b, где матрица A – симметрическая, хотя не исключено, что метод может использоваться и не для симметрических матриц, тогда исходную систему можно привести к виду AA¢x=bA¢, полученную систему легко можно решить методом квадратных корней.
Также в данной системе были проанализированы разного рода матрицы, и их влияние на точность полученного решения. Основываясь на полученных выводах, можно контролировать в каких конкретно моментах удобно решать систему линейных алгебраических уравнений методом квадратных, а когда лучше использовать другой метод.
Литература
1. Государственные стандарты. ИТ. комплекс стандартов и руководящих документов на АС. Издание официальное. Комплект стандартизации и метрологии СССР. М. – 1991.
2. Копченова Н.В., Марон И.А. Вычислительная математика в примерах и задачах. М.: «Наука», 1972.
3. Писсанецки С. Технология разряженных матриц. – М.: Мир, 1988.
4. Сарычева О.М. Численные методы в экономике: Конспект лекций. Новосибирск: НГТУ, 1995.
5. Численные методы. Методические указания. НГТУ, 2002.
Похожие работы
-
Системы линейных уравнений и неравенств
Основные понятия теории систем уравнений. Метод Гаусса — метод последовательного исключения переменных. Формулы Крамера. Решение систем линейных уравнений методом обратной матрицы. Теорема Кронекер–Капелли. Совместность систем однородных уравнений.
-
Решение систем линейных алгебраических уравнений 2
Нижегородский Технический Университет Институт Радиотехники и Информационных Технологий Кафедра «Прикладная Математика и Информатика» Отчёт по лабораторной работе №2
-
Алгебра матриц. Системы линейных уравнений
Выполнение действий над матрицами. Определение обратной матрицы. Решение матричных уравнений и системы уравнений матричным способом, используя алгебраические дополнения. Исследование и решение системы линейных уравнений методом Крамера и Гаусса.
-
Метод Крамера
Министерство рыбного хозяйства Владивостокский морской колледж ТЕМА: “ Системы 2-х , 3-х линейных уравнений. Правило Крамера. ” г. Владивосток
-
Метод квадратных корней для симметричной матрицы при решении систем линейных алгебраических уравнений
Исследование метода квадратных корней для симметричной матрицы как одного из методов решения систем линейных алгебраических уравнений. Анализ различных параметров матрицы и их влияния на точность решения: мерность, обусловленность и разряженность.
-
Решение произвольных систем линейных уравнений
Рассмотрение систем линейных алгебраических уравнений общего вида. Сущность теорем и их доказательство. Особенность трапецеидальной матрицы. Решение однородных и неоднородных линейных алгебраических уравнений, их отличия и применение метода Гаусса.
-
Исследования и теории Габриеля Крамера
Преподавательская работа швейцарского математика Габриэля Крамера, введение в анализ алгебраических кривых. Система произвольного количества линейных уравнений с квадратной матрицей Крамера. Классификация и порядок математических и алгебраических кривых.
-
Точные методы численного решения систем линейных алгебраических уравнений
Метод главных элементов, расширенная матрица, состоящая из коэффициентов системы и свободных членов. Метод квадратных корней для решения систем с симметричной матрицей коэффициентов. Практическая реализация метода Халецкого: программа на языке Pascal.
-
Точные методы решения систем линейных алгебраических уравнений (СЛАУ)
Методы решения систем линейных алгебраических уравнений (СЛАУ): Гаусса и Холецкого, их применение к конкретной задаче. Код программы решения перечисленных методов на языке программирования Borland C++ Builder 6. Понятие точного метода решения СЛАУ.
-
Системы линейных уравнений
Критерий совместности. Метод Гаусса. Формулы Крамера. Матричный метод.