Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Met_p2 (2).DOC
Скачиваний:
4
Добавлен:
20.11.2018
Размер:
1.16 Mб
Скачать

Лабораторная работа № 11

В ходе выполнения работы студенты должны найти решение системы линейных уравнений с n неизвестными, заданной матрицей коэффициентов и вектором свободных членов , методом Гаусса. Выполнение работы состоит из следующих этапов:

1) с помощью преподавателя определить систему уравнений, которую нужно решить;

2) для решения системы уравнений разработать программу на языке C, использующую подпрограмму-функцию GAUSS из файла GAUSS.CPP. Данная функция имеет следующие параметры:

- a - матрица коэффициентов системы уравнений размера , тип ;

- - вектор свободных членов размера , тип ;

- - выходной вектор результата решения размера , тип ;

- - размер системы (матрицы a и вектора свободных членов ), тип .

В разрабатываемой программе должна быть описана константа nmax, равная максимальным размерам используемых матриц и векторов. Функция GAUSS в качестве значения типа возвращает:

а) 0 - в случае нормального завершения процесса вычисления;

б) 1 - в случае вырожденности матрицы а;

в) 2 - если ;

г) 3 - если .

Провести вычисления с использованием разработанной программы и исследовать обусловленность задачи с использованием пакета Matlab, при этом для определения числа обусловленности матрицы A рекомендуется использовать функцию cond(A) [14]. Кроме того, для проверки получаемых результатов можно провести вычисления с помощью пакетов Matlab и Derive [15].

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

Рассматривается система уравнений вида

, (2.3)

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

, (2.4)

где k =1, 2, …

Доказана теорема, что если норма , то система уравнений (2.3) имеет единственное решение и итерации (2.4) сходятся к решению со скоростью геометрической прогрессии [13]. Для оценки погрешности k-го приближения широко применяется неравенство

, (2.5)

которое может быть использовано для принятия решения об останове итерационного процесса при выполнении условия

,

где - некоторая заданная погрешность вычислений.

Лабораторная работа № 12

В работе студенты должны найти решение системы линейных уравнений с n неизвестными, заданной матрицей коэффициентов и вектором свободных членов b, методом простых итераций. Выполнение работы включает следующие этапы:

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

2) задать необходимую точность получения результата (количество знаков мантиссы числа);

3) разработать программу решения задачи на языке С с использованием подпрограммы-функции MITER из файла MITER.CPP. Функция MITER имеет следующие параметры:

- - матрица коэффициентов преобразованной к виду (2.3) системы уравнений размера , тип ;

- - вектор свободных членов преобразованной системы размера , тип ;

- - полученный в результате проведения итераций вектор решения размера , тип ;

- - размер системы уравнений, тип ;

- - количество знаков после запятой в мантиссе результата, остающихся после округления, тип , ;

- it - выходной параметр, равный количеству произведенных итераций, тип int.

В качестве значения функции типа возвращается одно из следующих значений:

а) 0 - все нормально, получено решение ;

б) 1 - не выполняются условия сходимости итерационного процесса;

в) 2 - размер ;

г) 3 - значение .

Константа должна быть задана при разработке головной программы аналогично тому, как это делается при выполнении лабораторной работы № 11;

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]