рефераты
Главная

Рефераты по рекламе

Рефераты по физике

Рефераты по философии

Рефераты по финансам

Рефераты по химии

Рефераты по хозяйственному праву

Рефераты по цифровым устройствам

Рефераты по экологическому праву

Рефераты по экономико-математическому моделированию

Рефераты по экономической географии

Рефераты по экономической теории

Рефераты по этике

Рефераты по юриспруденции

Рефераты по языковедению

Рефераты по юридическим наукам

Рефераты по истории

Рефераты по компьютерным наукам

Рефераты по медицинским наукам

Рефераты по финансовым наукам

Рефераты по управленческим наукам

Психология и педагогика

Промышленность производство

Биология и химия

Языкознание филология

Издательское дело и полиграфия

Рефераты по краеведению и этнографии

Рефераты по религии и мифологии

Рефераты по медицине

Рефераты по сексологии

Рефераты по информатике программированию

Краткое содержание произведений

Контрольная работа: Метод квадратных корней

Контрольная работа: Метод квадратных корней

Введение

Система линейных алгебраических уравнений – математическая модель, которая описывает состояние равновесия экономического объекта, которое называется установившимся режимом или статикой объекта. Экономическая статика изучает допустимые и рациональные состояния экономического объекта.

Пусть дана система n линейных алгебраических уравнений с n неизвестными

(1.1)

 

или в матричной форме

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,

(1.2)

 


у которой матрица А симметрическая, т.е.

aij = aji (i, j = 1, 2, …, n).

Метод является более экономным и удобным по сравнению с решением систем общего вида.

Решение системы осуществляется в два этапа.

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

(1.3)

 
А = Т¢ Т,

где

.


Перемножая матрицы T¢ и T и приравнивая матрице A, получим следующие формулы для определения tij:

(1.4)

 
После того, как матрица Т найдена, систему (1.2) заменяем двумя эквивалентными ей системами с треугольными матрицами

(1.5)

 


T¢y = b, Tx = y.

Обратный ход. Записываем в развернутом виде системы (1.5):

Отсюда последовательно находим


При вычислениях применяется обычный контроль с помощью сумм, причем при составлении суммы учитываются все коэффициенты соответствующей строки.

Заметим, что при действительных aij могут получиться чисто мнимые tij. Метод применим и в этом случае.

Описание программного обеспечения (согласно стандартам на ИТ)

Для изучения данного метода было выбрано программное обеспечение: Matlab 6.5, в операционной системе Windows XP Professional. На этапе проектирования была создана программа 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=b A¢, полученную систему легко можно решить методом квадратных корней.

Также в данной системе были проанализированы разного рода матрицы, и их влияние на точность полученного решения. Основываясь на полученных выводах, можно контролировать в каких конкретно моментах удобно решать систему линейных алгебраических уравнений методом квадратных, а когда лучше использовать другой метод.


Литература

1.  Государственные стандарты. ИТ. комплекс стандартов и руководящих документов на АС. Издание официальное. Комплект стандартизации и метрологии СССР. М. – 1991.

2.  Копченова Н.В., Марон И.А. Вычислительная математика в примерах и задачах. М.: «Наука», 1972.

3.  Писсанецки С. Технология разряженных матриц. – М.: Мир, 1988.

4.  Сарычева О.М. Численные методы в экономике: Конспект лекций. Новосибирск: НГТУ, 1995.

5.  Численные методы. Методические указания. НГТУ, 2002.


© 2012 Рефераты, курсовые и дипломные работы.