Решение системы линейных уравнений методами простых итераций и прогонки
Курсовая работа, 05 Мая 2015, автор: пользователь скрыл имя
Описание работы
В данном курсовом проекте был разработан программный продукт, предназначенный для решения систем линейных алгебраических уравнений методом простой итерации и методом прогонки.
Решение систем линейных алгебраических уравнений (СЛАУ) является одной из основных задач линейной алгебры. Эта задача имеет важное прикладное значение при решении научных и технических проблем. Решение систем уравнений, содержит четко сформулированный алгоритм для проведения вычислений.
Содержание работы
Введение 3
Глава 1. Теоретическая часть 5
1.1. Постановка задачи 5
1.2. Система линейных алгебраических уравнений 5
1.3. Метод простой итерации решения СЛАУ 7
1.4. Метод прогонки 9
1.5. Алгоритм решения 12
Глава 2. Практическая часть 13
2.1. Реализация алгоритма решения 13
2.2. Результат выполнения программы 23
Заключение 25
Список использованных источников 26
Файлы: 1 файл
курсовая по мв.docx
— 748.74 Кб (Скачать файл){
public Form1() // название формы
{
InitializeComponent();
}
private void textBox2_TextChanged(object sender, EventArgs e)// создание textBox2
{
dataGridView1.Columns.Clear();
dataGridView1.Rows.Clear();
if (textBox2.Text == "")
{
dataGridView1.Columns.Clear();
dataGridView1.Rows.Clear();
}
Else// условие
{
for (int i = 0; i < int.Parse(textBox2.Text) + 1; i++)
{
if (i == int.Parse(textBox2.Text)) dataGridView1.Columns.Add("jh",
"=");
else dataGridView1.Columns.Add("x" + (i + 1), "x" + (i + 1));
}
dataGridView1.Rows.Add(int.Parse(textBox2.Text));
}
}
private void button1_Click(object sender, EventArgs e)
{
СЛАУ slau = new СЛАУ(int.Parse(textBox2.Text), int.Parse(textBox2.Text) + 1);
for (int i = 0; i < int.Parse(textBox2.Text); i++)
{
for (int j = 0; j < int.Parse(textBox2.Text) + 1; j++)
{
if (dataGridView1[j, i].Value != null)
slau.matrix[i, j] =Convert.ToDouble(dataGridView1[j, i].Value);
else slau.matrix[i, j] = 0;
}
}
slau.eps = double.Parse(textBox1.Text);
if (radioButton1.Checked)
{
double[] otv = slau.метод_простых_итераций();
string[] otv1 = new string[otv.Length];
for (int i = 0; i < int.Parse(textBox2.Text); i++)
{
listView1.Columns.Add(new ColumnHeader().Text = "x" + (i + 1));
otv1[i] = otv[i].ToString();
}
listView1.Items.Add(new ListViewItem(otv1));
}
if (radioButton2.Checked)
{
double[] otv=slau.Метод_прогонки();
string[] otv1 = new string[otv.Length];
for (int i = 0; i < int.Parse(textBox2.Text); i++)
{
listView2.Columns.Add(new ColumnHeader().Text = "x" + (i + 1));
otv1[i] = otv[i].ToString();
}
listView2.Items.Add(new ListViewItem(otv1));
}
} } }
2.2. Результат выполнения программы
Для того чтобы было наглядно видно как работает программа приведем пример:
Решить систему линейных алгебраических уравнений методом простых итераций с точностью е=0.001.
Решить систему линейных алгебраических уравнений методом прогонки с точностью е=0.0001.
Программа решила систему линейных алгебраических уравнений. Показала ответы.
Заключение
Огромное количество численных методов ставит актуальной задачей не столько создание новых, сколько исследование и классификацию старых, выявление лучших.
В MathCAD и Excel численные методы представляют собой те же самые общепринятые ручные расчёты, но выполняемые не человеком, а компьютером, что понижает возможность ошибки до нуля. Программа на VisualStudio намного упрощает задачу. С помощью единожды созданной программы можно решать системы линейных уравнений, вводя минимум значений. Также эта программа может быть использована не только вами, но и простыми пользователями.
В ходе выполнения курсовой была создана автоматизированная программа которая решает СЛАУ методами простой итерации и прогонки. В результате все поставленные задачи были выполнены, цели достигнуты. Мы приобрели навыки в применении различных численных методов на практике. А также были исследованы различные методы.
Список использованных источников
Математический энциклопедический словарь. — М.: «Сов. энциклопедия », 1988. — С. 847.
- А. А. Абрамов, В. Б. Андреев О применении метода прогонки к нахождению периодических решений дифференциальных и разностных уравнений // Ж. вычислительная математика и математическая физика — 1963. — Т. 3:2. — С. 377–381
- Вержбицкий В.М., Основы численных методов. М.: Высшая школа, 2002.840 с.
- Бахвалов Н., Жидков Н., Кобельков Г. Численные методы. М.: Лаборатория базовых знаний, 2001. 632 с.
- Воробьева Г.Н., Данилова А.Н. Практикум по численным методам. М.: Высшая школа, 2009. 184 с.