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

Автор работы: Пользователь скрыл имя, 05 Мая 2015 в 21:46, курсовая работа

Описание работы

В данном курсовом проекте был разработан программный продукт, предназначенный для решения систем линейных алгебраических уравнений методом простой итерации и методом прогонки.
Решение систем линейных алгебраических уравнений (СЛАУ) является одной из основных задач линейной алгебры. Эта задача имеет важное прикладное значение при решении научных и технических проблем. Решение систем уравнений, содержит четко сформулированный алгоритм для проведения вычислений.

Содержание работы

Введение 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.

  1. А. А. Абрамов, В. Б. Андреев О применении метода прогонки к нахождению периодических решений дифференциальных и разностных уравнений // Ж. вычислительная  математика и математическая физика  — 1963. — Т. 3:2. — С. 377–381
  2. Вержбицкий В.М., Основы численных методов. М.: Высшая школа, 2002.840 с.
  3. Бахвалов Н., Жидков Н., Кобельков Г. Численные методы. М.: Лаборатория базовых знаний, 2001. 632 с.
  4. Воробьева Г.Н., Данилова А.Н. Практикум по численным методам. М.: Высшая школа, 2009. 184 с.

 

 

 


Информация о работе Решение системы линейных уравнений методами простых итераций и прогонки