Лабораторная работа 1 (Готовые лабы в ПАСКАЛЕ (описание внутри))
Описание файла
Файл "Лабораторная работа 1" внутри архива находится в следующих папках: f, Lab1 (1ая). Документ из архива "Готовые лабы в ПАСКАЛЕ (описание внутри)", который расположен в категории "". Всё это находится в предмете "численные методы" из 3 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "лабораторные работы", в предмете "численные методы" в общих файлах.
Онлайн просмотр документа "Лабораторная работа 1"
Текст из документа "Лабораторная работа 1"
йцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъфывапролджэячсмитьбюйцукенгшщзхъчсмитьбюйцукенгшщзхъфывапролджэячсукенгшщзхъфывапролджэячс
Лабораторная работа № 1 Решение системы линейных алгебраических уравнений с трехдиагональной матрицей методом прогонки Выполнен студенткой МГТУ им. Баумана Группы МТ1-31 Фроловой Д.С. |
Теоретическая часть
Ряд вычислительных задач сводится к решению СЛАУ специально вида:
(1)
Матрица системы (1) имеет ленточную структуру и называется трехдиагональной. Для удобства будем считать, что . (2)
Алгоритм решения таких систем носит название метода прогонки и является разновидностью метода последовательного исключения неизвестных. По методу прогонки решение будем искать в виде
. (3)
Подставляя формулу (3) в -e уравнение системы (1), после несложных преобразований имеем
Сравнив полученный результат с выражением (3) для ( , получим рекуррентные формулы для вычисления
Из первого уравнения системы (1) имеем:
, откуда следует, что .
Подставив формулу (3) при в последнее уравнение системы (1), найдем :
Используя формулу (3), найдем остальные неизвестные. Таким образом, расчетные формулы метода прогонки имеют вид: - прямой ход метода прогонки;
– обратный ход метода прогонки.
Задача
Написать программу для решения системы (1) с формальными параметрами n,a,b,c,s,x, где n – порядок системы; a,b,c,s,x – одномерные массивы элементов матрицы, правой части и неизвестных.
Самостоятельно составить модельную систему уравнений вида (1) для n=4. Значения коэффициентов матрицы подобрать так, чтобы были выполнены условия:
которые являются достаточными для реализуемости метода прогонки [1]. Решить модельную систему уравнений с помощью отлаженной программы.
Текст программы
program Progonka;
{$APPTYPE CONSOLE}
uses
SysUtils;
const
n = 4;
var
a:array[2..n] of real;
b,d:array[1..n] of real;
c:array[1..n-1] of real;
alpha, beta: array[1..n] of real;
i:integer;
x:array[1..n] of real;
begin
//Ввод исходной матрицы
a[2]:= 3;
a[3]:= 4;
a[4]:= 4;
b[1]:= 5;
b[2]:= 7;
b[3]:= 7;
b[4]:= 8;
c[1]:=-1;
c[2]:= 1;
c[3]:= 3;
//Ввод матрицы-результата
d[1]:=-2;
d[2]:=13;
d[3]:= 4;
d[4]:= 4;
//Метод прогонки – прямой ход
alpha[1] := -c[1]/b[1];
beta[1] := d[1]/b[1];
for i := 2 to n do
begin
alpha[i]:= -c[i]/(alpha[i-1]*a[i]+b[i]);
beta[i]:=(d[i]-beta[i-1]*a[i])/(alpha[i-1]*a[i]+b[i]);
end;
//Метод прогонки – обратный ход
x[n]:=beta[n];
for i:=n-1 downto 1 do x[i]:=alpha[i]*x[i+1]+beta[i];
Writeln('Laboratornaya rabota 1');
//Вывод матрицы
writeln;
writeln(chr(186),' ',b[1]:0:0,' ',c[1]:0:0,' 0 0 ',chr(186),' ',chr(186),' ',x[1]:0:0,' ',chr(186),' ',chr(186),' ',d[1]:0:0,' ',chr(186));
writeln(chr(186),' ',a[2]:0:0,' ',b[2]:0:0,' ',c[2]:0:0,' 0 ',chr(186),' x ',chr(186),' ',x[2]:0:0,' ',chr(186),' = ',chr(186),' ',d[2]:0:0,' ',chr(186));
writeln(chr(186),' ','0 ',a[3]:0:0,' ',b[3]:0:0,' ',c[3]:0:0,' ',chr(186),' ',chr(186),' ',x[3]:0:0,' ',chr(186),' ',chr(186),' ',d[3]:0:0,' ',chr(186));
writeln(chr(186),' ','0 0 ',a[4]:0:0,' ',b[4]:0:0,' ',chr(186),' ',chr(186),' ',x[4]:0:0,' ',chr(186),' ',chr(186),' ',d[4]:0:0,' ',chr(186));
readln;
end.
Результаты