Смекни!
smekni.com

Использование современной компьютерной техники и программного обеспечения для решения прикладных (стр. 6 из 6)

Определим теперь новые коэффициенты

.

Тогда второе уравнение системы приобретает вид

(4.2)

Заменим второе из первоначальных уравнений уравнением (4.2) и введем множитель для третьего уравнения

.

Умножим первое уравнение на этот множитель и вычтем его из третьего. Коэффициент при

снова становится нулевым, и третье уравнение приобретает вид

(4.3)

где


.

Если теперь в исходной системе уравнений (4.1) заменить третье уравнение на (4.3), то новая система выглядит так:

(4.4)

Эти новые уравнения полностью эквивалентны исходным уравнениям с тем преимуществом, что

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

Попытаемся теперь исключить

из двух последних уравнений. Если
, то снова мы переставим уравнения так, чтобы
было отлично от нуля (если
и
, то система вырождена и либо вовсе не имеет решения, либо имеет бесчисленное множество решений).

Введем новый множитель

.

Умножим второе уравнение полученной системы (4.4) на

и вычтем его из третьего. Результат вычитания равен

В силу выбора

.

Полагая, что

окончательно получим

(4.5)

Третье уравнение полученной системы (4.4) можно заменить уравнением (4.5), после чего система уравнений приобретает следующий вид:

(4.6)

Такая система уравнений (4.6) иногда называется треугольной из-за своего внешнего вида.

Для решения необходимо определить

из третьего уравнения системы (4.6), подставить этот результат во второе уравнение и определить
. Полученные значения
и
подставить в первое уравнение и определить
. Этот процесс, который обычно называется обратной подстановкой (обратный ход), определяется формулами:

(4.7)

.

Необходимо отметить, если

, то система уравнений вырождена.

Теперь можно обобщить этот метод на случай системы из n – уравнений с n-неизвестными. Ниже записана система уравнений, приведенная к треугольному виду (4.8).

(4.8)

Формулы для вычисления неизвестных (обратный ход) будут иметь вид:

(4.9)

4.2 Постановка задачи

Решение системы линейных алгебраических уравнений методом Гаусса.

4.3 Исходные данные

4.4 Блок-схема алгоритма


Процедура для решения СЛАУ методом Гаусса

4.5 Текст программы

Program Zadacha6;

Uses CRT;

Type matrix=array [1..10,1..10] of real;

vector=array [1..10] of real;

Var

i,j:integer;

a:matrix;

x,b:vector;

t1,t:text;

Procedure Gaus (Var a:matrix; Var b:vector; x:vector);

Var k,i,j,q:integer;

d:real;

t:text;

Begin

For i:=1 to 4 do

a[i,5]:=B[i];

Assign(t,'reshenie.txt');

Rewrite(t);

Writeln('Reshenie sistemu lineinix algebraicheskix yravnenii');

Writeln('(kolichestvo yravnenii 4)');

Writeln('sistema yravnenii:');

Writeln(t,'Решение системы линейных алгебраических уравнений');

Writeln(t,'(количество уравнений 4)');

Writeln(t,'Система уравнений:');

For i:=1 to 4 do

Begin

For j:=1 to 4 do

Write(t,a[i,j]:6:1);

Writeln(t,b[i]:6:1);

End;

For i:=1 to 4 do

Begin

For j:=1 to 4 do

Write(a[i,j]:6:1);

Writeln(b[i]:6:1);

End;

For i:=1 to 4 do Begin

d:=a[i,i];{Поиск максимума в столбце}

q:=i;

For j:=i to 4 do

If abs(a[j,i])>abs(d) then

Begin

D:=a[j,i];

q:=j;

End;

{Обмен строк}

If i<>q Then

Begin

For j:=i to 5 do

Begin

D:=a[i,j];

a[i,j]:=a[q,j];

a[q,j]:=d;

End;

End;

{Создание строки}

For j:=5 downto i do

a[i,j]:=a[i,j]/a[i,i];

{зануление столбцов, вычисление А}

For k:=i+1 to 4 do

For j:=5 downto i do

a[k,j]:=a[k,j]-a[i,j]*a[k,i];

End;{Обратный ход}

x[4]:=a[4,5];

For i:=4-1 downto 1 do begin

D:=0;

For j:=4 downto i+1 do

d:=d+a[i,j]*x[j];

x[i]:=a[i,5]-d;

end;

Writeln(t,'Вектор Х:');

Writeln('Vector X:');

For i:=1 to 4 do

Write(t, x[i]:5:3,' ');

Writeln(t);

close(t);

Begin

For i:=1 to 4 do

Write(x[i]:5:3,' ');

Writeln;

End;

End;

Begin

Clrscr;

assign(t1,'clay.txt');

reset(t1);

For i:=1 to 4 do

For j:=1 to 4 do

Read(t1,a[i,j]);

For i:=1 to 4 do read(t1,b[i]);

Gaus(a,b,x);

Readkey; End.

4.6 Содержание фаила «clay.txt»

1 -2 2 0

0 2 5 5

7 5 4 9

3 2 1 3

13 29 50 17

{Вводятся коэффициенты ("а" 4х4)}

{Вводятся результаты уравнений ("b" 1х4)}

4.7 Результаты решения

Рис. 4.2 Результаты в Turbo Pascal.

Содержание фаила «reshenie.txt»

Решение системы линейных алгебраических уравнений

(количество уравнений 4)

Система уравнений:

1.0 -2.0 2.0 0.0 13.0

0.0 2.0 5.0 5.0 29.0

7.0 5.0 4.0 9.0 50.0

3.0 2.0 1.0 3.0 17.0

Вектор Х:

3.000 -0.500 4.500 1.500

4.8 Табличные вычисления MS Excel

Рис. 4.3Проверка в MS Excel

Рис. 4.4 Проверка в MS Excel в режиме отображения формул

4.9 Вычисления в MathCad

Рис. 4.5 Проверка в MathCad 14.

4.10 Анализ

Задача №6 (решение системы линейных алгебраических уравнений методом гаусса) была решена с помощью языка программирования Turbo Pascal и затем была проверена с помощью табличного процессора Microsoft Excel 2007 и MathCad. Результаты решений совпали, что говорит о правильности выбранного алгоритма решения задачи.

Вывод

Таким образом, в данной курсовой работе было решено и оформлено 4 типовые геодезические и одна математическая задачи с помощью языка программирования Turbo Pascal, табличного процессора Excel и MathCad 14.

Библиографический список

1) Информатика: Программа и методические указания по выполнению курсовой работы для студентов специальности "Маркшейдерское дело" дневной формы обучения / Санкт-Петербургский горный ин-т. Сост.: А.П. Кондрашов, Т.Р. Косовцева, В.В. Петров, – СПб, 2004 . 51 с.

2) Информатика. Учебник. Под редакцией Н.В. Макаровой. М., 2001.

3) Правила оформления курсовых и квалификационных работ / Санкт-Петербургский горный ин-т. Сост. И.О. Онушкина, П.Г. Талалай, - СПб, 2004, 50 стр.

4) Информатика. Работа в пакете MathCad. / СПГГИ(ТУ), Сост. О.Г. Быкова, СПб, 2005, 46 стр.

5) Ян Белицкий Turbo Pascal с графикой для персональных компьютеров. М.:1991г.