/1_lab_vichmat

Primary LanguageJavaMIT LicenseMIT

Вычислительная математика

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

Условия задания:

  • В программе численный метод должен быть реализован в виде отдельной подпрограммы или класса, в который исходные данные передаются в качестве параметров, выходные — тоже (либо возвращаемое значение).
  • Размерность матрицы n<=20 (задается из файла или с клавиатуры — по выбору конечного пользователя).
  • Должна быть реализована возможность ввода коэффициентов матрицы, как с клавиатуры, так и из файла (по выбору конечного пользователя).
  • Обязательно: Тестовые данные на матрице большого размера (5*5 / 6*6...) + в отчёт с решением.

Должно быть реализовано:

  • Точность задаётся с клавиатуры/файла
  • Проверка диагонального преобладания (в случае, если диагональное преобладание в исходной матрице отсутствует, сделать перестановку строк/столбцов до тех пор, пока преобладание не будет достигнуто). В случае невозможности достижения диагонального преобладания — выводить соответствующее сообщение.
  • Вывод вектора неизвестных: x1, x2, …, xn
  • Вывод количества итераций, за которое было найдено решение
  • Вывод вектора погрешностей: |xi^(k)-xi^(k-1)|

Содержание отчета:

  • Цель работы,
  • Описание метода, расчетные формулы,
  • Листинг программы (по крайне мере, где реализован сам метод)
  • Блок-схема численного метода
  • Примеры и результаты работы программы,
  • Выводы.