Автоматизация инженерных задач

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    113,05 Кб
  • Опубликовано:
    2013-11-20
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Автоматизация инженерных задач

Введение


Системы линейных уравнений используются во многих областях науки и техники и являются, пожалуй, наиболее часто встречающимися типами математических задач.

Целью данной курсовой работы является изучение систем линейных алгебраических уравнений (СЛАУ) с использованием табличного процессора MS Excel 2007, а также пример решения системы линейных алгебраических уравнений методом Крамера.

Курсовая работа состоит из трех частей. В первой части документации будут представлены понятие СЛАУ, характеристика метода Крамера. Во второй будет информация относительно программных средств, применяемых для решения СЛАУ. А в третьей части будет рассмотрено решение СЛАУ методом Крамера традиционным способом решения, а также с помощью MS Excel.

1.     Описание численных методов решения СЛАУ

1.1.  Метод Крамера

Система m линейных алгебраических уравнений с n неизвестными (СЛА́У) в линейной алгебре - это система уравнений вида


Здесь - количество уравнений, а - количество неизвестных. x1, x2, …, xn - неизвестные, которые надо определить. a11, a12, …, amn - коэффициенты системы - и b1, b2, …bm - свободные члены - предполагаются известными. Индексы коэффициентов (aij) системы обозначают номера уравнения (i) и неизвестного (j), при котором стоит этот коэффициент.

Система линейных уравнений может быть представлена в матричной форме как

или:


Здесь - это матрица системы, - столбец неизвестных, а - столбец свободных членов. Если к матрице приписать справа столбец свободных членов, то получившаяся матрица называется расширенной.

Решением системы линейных алгебраических уравнений называют набор значений неизвестных переменных , обращающий все уравнения системы в тождества. Матричное уравнение при данных значениях неизвестных переменных также обращается в тождество .

Система называется однородной, если все её свободные члены равны нулю (b1 = b2 = … = bm = 0), иначе - неоднородной.

Система называется квадратной, если число m уравнений равно числу n неизвестных.

Решение системы - совокупность n чисел c1, c2, …, cn, таких что подстановка каждого ci вместо xi в систему обращает все её уравнения в тождества.

Система называется совместной, если она имеет хотя бы одно решение, и несовместной, если у неё нет ни одного решения.

Совместная система вида может иметь одно или более решений.

Решения c1, c2, …, cn и c1, c2, …, cn совместной системы вида называются различными, если нарушается хотя бы одно из равенств:

= c1, c2 = c2, …, cn = cn.

Совместная система вида называется определенной, если она имеет единственное решение; если же у неё есть хотя бы два различных решения, то она называется неопределённой. Если уравнений больше, чем неизвестных, она называется переопределенной.

Если число уравнений системы равно числу неизвестных переменных и определитель основной ее основной матрицы не равен нулю, то такие СЛАУ будем называть элементарными. Такие системы уравнений имеют единственное решение, причем в случае однородной системы все неизвестные переменные равны нулю.

Методы решения систем линейных алгебраических уравнений делятся на две группы:

·  Прямые (точные) методы - позволяют найти решение за определенное количество шагов. К этой группе методов относятся метод Гаусса, Гаусса - Жордана, метод Крамера, матричный метод.

·        Итерационные методы - основаны на использовании повторяющегося процесса и позволяют получить решение в результате последовательных приближений. К этой группе методов относятся метод итерации, метод Якоби, метод простой итерации, метод Гаусса -Зельделя.

Метод Крамера (правило Крамера) - способ решения квадратных СЛАУ с ненулевым определителем основной матрицы (причём для таких уравнений решение существует и единственно). Назван по имени Габриэля Крамера (1704-1752), придумавшего метод.

Метод Крамера - это один из точных методов решения систем линейных алгебраических уравнений (СЛАУ). Точность его обусловлена использованием определителей матрицы системы, а также некоторыми ограничениями, накладываемыми в ходе доказательства теоремы. Необходимо помнить, что для того, чтобы найти решение систем линейных алгебраических уравнений, используя метод Крамера, матрицы систем должны быть квадратными, что по сути означает одинаковое количество неизвестных и уравнений в системе. Существуют системы линейных уравнений, которые целесообразно решать именно по правилу Крамера.

·        Рассмотрим систему уравнений

На первом шаге вычислим определитель , его называют главным определителем системы.

Если , то система имеет бесконечно много решений или несовместна (не имеет решений). В этом случае правило Крамера не поможет, нужно использовать метод Гаусса. Если , то система имеет единственное решение, и для нахождения корней мы должны вычислить еще два определителя

 и

Корни уравнения находим по формулам

,

·        Система линейных уравнений:

Определители:


Решение:


Так находится решение системы линейных алгебраических уравнений методом Крамера.

2.   Прикладное ПО, применяемое для решения СЛАУ

Персональный компьютер, как известно, является универсальным устройством для обработки информации. Персональные компьютеры могут выполнять любые действия по обработке информации. Для этого необходимо составить для компьютера на понятном ему языке точную и подробную последовательность инструкций - программу, как надо обрабатывать информацию.

Меняя программы для компьютера, можно превратить его в рабочее место бухгалтера или конструктора, дизайнера или ученого, писателя или агронома. Кроме того, тенденция понижения стоимости компьютерной техники при одновременном росте ее производительности привела к тому, что компьютеры становятся предметом домашнего обихода, как, например, телевизор или холодильник, что расширяет сферу применения ПК еще больше. Соответственно, требуется все более разнообразное программное обеспечение для решения задач в новых областях применения ПК. Непрерывное повышение мощности персональных компьютеров, периферийных устройств, а также развитие средств связи дает разработчикам программного обеспечения все больше возможностей для максимально полного удовлетворения запросов конечных потребителей. Это и ставший стандартом графический интерфейс для любого ПО, и внедренные возможности для отправки документов и данных с помощью Интернет непосредственно из прикладной программы (Microsoft Word , Excel , Access и др.), и возможность использования компьютера как хранилища информации благодаря появлению новых видов накопителей большой емкости и малым временем доступа к данным, а также многие другие возможности и сервисные функции. При своем выполнении программы могут использовать различные устройства для ввода и вывода данных, подобно тому, как человеческий мозг пользуется органами чувств для получения и передачи информации. Сам по себе ПК не обладает знаниями ни в одной области своего применения, все эти знания сосредоточены в выполняемых на нем программах. Поэтому часто употребляемое выражение «компьютер сделал» означает ровно то, что на ПК была выполнена программа, которая позволила выполнить соответствующее действие. В настоящее время весь комплекс ПО делится на системные и пользовательские программы. Системное программное обеспечение выполняет функции «организатора» всех частей ПК, а также подключенных к нему внешних устройств. Программы для пользователей служат для выполнения каких - либо конкретных задач во всех сферах человеческой деятельности.

Во все времена инженерам, исследователям (т.е. специалистам в своих областях) был необходим удобный и достаточно эффективный (для своего времени) инструмент для решения своих задач. В этот «инструментальный» ряд можно включить логарифмическую линейку, арифмометр, калькулятор, универсальную ЭВМ, персональный компьютер. При использовании вычислительной техники встала проблема реализации алгоритмов решения в виде так называемых программ. Для решения этой проблемы в различные годы использовались следующие средства:

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

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

системы компьютерной математики.

Разработка программы требует и соответствующей подготовки (назовем ее «программистской»), и достаточно большего количества времени (и то и другое часто отсутствует у «обычного пользователя»). Поэтому, начиная с 90-х годов прошлого века, широкую известность и заслуженную популярность приобрели так называемые системы компьютерной математики или, проще, математические пакеты.

Для решения СЛАУ существует множество программных средств: MathCad, Mathematica, MatLab и др.- математически ориентированные универсальные системы. Помимо собственно вычислений они позволяют с блеском решать задачи, которые с трудом поддаются популярным текстовым редакторам или электронным таблицам. С их помощью можно не только качественно подготовить тексты статей, книг, диссертаций, научных отчетов, дипломных и курсовых проектов, они, кроме того, облегчают набор самых сложных математических формул и дают возможность представления результатов, в изысканном графическом виде.

С момента своего появления системы класса MathCAD имели удобный пользовательский интерфейс - совокупность средств общения с пользователем в виде масштабируемых и перемещаемых окон, клавиш и иных элементов. У этой системы есть и эффективные средства типовой научной графики, они просты в применении и интуитивно понятны. Словом, системы MathCAD ориентированы на массового пользователя - от ученика начальных классов до академика.Lab - язык программирования и система научных и инженерных расчетов, построенная на основе интерпретатора этого языка. Matlab, сокращение от «Matrix Laboratory», предназначен, в первую очередь, для выполнения алгоритмов, использующих векторы и матрицы.имеет большое число пакетов (toolboxes) - как собственных, так и распространяемых независимыми разработчиками часто на условиях открытого кода. В Matlab включен Simulink - визуальный редактор для моделирования динамических систем.

В конце прошлого века получила широкое распространение и сейчас быстро развивается система Mathematica. Ее успех в значительной степени объясняется ее широкими графическими возможностями, а также электронной документацией, которую можно рассматривать как электронную библиотеку, посвященную различным разделам математики и информатики. Mathematica имеет высокую скорость и практически не ограниченную точность вычислений, что позволяет ей работать как на очень мощных компьютерах, так и не очень сильных персональных компьютерах. Огромным достоинством программы Mathematica является справочная система. Она включает в себя не только очень качественное описание функций с примерами, а также учебник. В ней есть все материалы для тех, кто только начинает работу с приложением, и для тех кто работает с ней очень давно.Excel - программа для работы с электронными таблицы , созданная корпорацией Microsoft для Microsoft Windows, Windows NT и Mac OS. Она предоставляет возможности экономико-статистических расчетов, графические инструменты и, за исключением Excel 2008 под Mac OS X, язык макропрограммирования VBA (Visual Basic for Application). Microsoft Excel входит в состав Microsoft Office и на сегодняшний день Excel является одним из наиболее популярных приложений в мире. Excel был первым табличным процессором, позволявшим пользователю менять внешний вид таблицы на экране: шрифты, символы и внешний вид ячеек. Он также первым представил метод умного пересчёта ячеек - обновления только ячеек, зависящих от изменённых ячеек: раньше табличные процессоры пересчитывали все ячейки; это делалось либо после каждого изменения (что на больших таблицах долго), либо по команде пользователя (что могло вводить пользователя в заблуждение непересчитанными значениями).

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

Пакет Delphi - продолжение линии компиляторов языка Pascal корпорации Borland. Pascal как язык очень прост, а строгий контроль типов данных способствует раннему обнаружению ошибок и позволяет быстро создавать надежные и эффективные программы.

Как язык Turbo Pascal естественно сравнивать с его ближайшими конкурентами - многочисленными вариациями на тему языка Basic и с C++. Turbo Pascal существенно превосходит Basic за счет полноценного объектного подхода, включающего в себя развитые механизмы инкапсуляции, наследование и полиморфизм. Последняя версия языка, применяемая в Delphi, по своим возможностям приближается к C++. Из основных механизмов, присущих C++, отсутствует только множественное наследование. Плюсы применения языка Pascal очевидны: с одной стороны, в отличие от Visual Basic, основанного на интерпретации промежуточного кода, для него имеется компилятор, генерирующий машинный код, что позволяет получать значительно более быстрые программы. С другой - в отличие от C++ синтаксис языка Pascal способствует построению очень быстрых компиляторов.

система алгебраический уравнение крамер

3.     Автоматизация решения СЛАУ

3.1   Постановка задачи

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

Целью данной задачи является решение системы линейных уравнений, т.е. нахождение её неизвестных методом Крамера традиционным способом решения, а также с помощью MS Excel. Начальными данными являются коэффициенты при неизвестных  и свободные члены. Свободные члены и коэффициенты при неизвестных являются главными данными.

Решение систем линейных уравнений является одной из важных вычислительных задач. Большинство задач вычислительной практики сводятся к решению систем линейных уравнений. Это задачи из области электротехники, радиоэлектроники, механики, статистики. Серьезные практические задачи часто приводят к таким системам, которые содержат сотни и даже тысячи линейных уравнений. Без помощи компьютера, эти системы решить невозможно.

Данная задача используется в математической сфере. Целесообразность решения задачи автоматизированным способом позволяет сократить время, затраченное на её решение по сравнению с ручным способом, снижается вероятность допущения ошибок, повышается точность полученных результатов.

3.2.     Вычисление СЛАУ методом Крамера

3.2.1.  Традиционный способ решения СЛАУ

Задача: решить систему уравнений

 

.        Запишем исходную матрицу системы.

 


∆ =  = 2  - 1  + 4  = 2*(-4*1 - 6*(-1)) - 1*(5*1 - 6*1) + 4*(5*(-1) - (-4)*1) = 2*(-4 + 6) - 1*(5 - 6) + 4*(-5 +4) = 1

3.      Найдем определители дополнительных матриц.

 = -2  - 1  + 4  =

= -2*(-4*1 - 6*(-1) - 1*(-1*1 - 6*0) + 4*(-1*(-1) - (-4)*0) = -2*(-4+6) - 1*(-1-0) + 4*(1-0) = 1

 =  = 2  + 2  + 4  = 2*(-1*1 - 6*0) + 2*(5*1 - 6*1) + 4*(5*0 - (-1)*1) = 2*(-1-0) + 2*(5-6) + 4(0+1) = 0

 =  = 2  - 1  - 2  =

= 2*(-4*0 - (-1)*(-1)) - 1*(5*0 - (-1)*1) - 2*(5*(-1) - (-4)*1) =

= 2*(0-1) - 1*(0+1) - 2*(-5 + 4) = -1

4.      Найдем решения системы алгебраических уравнений.

 =  =  = 1

 =  =  = 0

 =  =  = -1

5.      Проверим решение.

2*1 + 0 + 4*(-1) = -2

= -2

*1 - 4*0 +6*(-1) = -1

= -1

         - 0 + (-1) = 0

0       = 0

3.2.2. Решение СЛАУ с помощью MS Excel

Задача: решить систему уравнений:

2x + y + 4z = -2

x - 4y + 6z = -1- y + z = 0

.        Переименуем Лист 2 в Метод Крамера

.        Введем коэффициенты  и свободные члены системы ()

)        коэффициенты и свободные члены         a1      a2      a3      bi

         1       4       -2

         -4      6       -1

         -1      1       0

.        С помощью функции ЕСЛИ проанализируем значение определителя основной матрицы

) определитель основной матрицы         ∆=   1

.        Введем дополнительные матрицы системы

) дополнительные матрицы  bi      a2      a3

         1       4

         -4      6

         -1      1       bi      a3

         -2      4

         -1      6

         0       1       a2      bi

         1       -2

         -4      -1

         -1      0

.        Вычислим определители дополнительных матриц системы с помощью функции МОПРЕД()

) определители дополнительных матриц

        

        

        

.        Вычислим решения системы

) решение системы       x1=   1=     -0=    -1

Заключение

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

В ходе выполнения курсовой работы на тему «Автоматизация инженерных задач» было рассмотрено понятие систем линейных алгебраических уравнений (СЛАУ), методов решения СЛАУ, дана информация относительно программных средств, применяемых для решения СЛАУ. В работе представлена характеристика метода Крамера, а также выполнено решение системы уравнений методом Крамера традиционным способом и с помощью MS Excel.

 


Список литературы


1.     Бидасюк Ю.М. Mathsoft MathCAD: самоучитель / Ю.М. Бидасюк. - М.: Диалектика, 2009.

2.      Ваулин А.С. Языки программирования / А.С. Ваулин. - М.: Мир, 2003.

.        Вержбицкий В.М. Численные методы (линейная алгебра и нелинейные уравнения) / В.М. Вержбицкий. - М.: Высш. шк., 2000.

.        Глушаков С.В. Программирование на Delphi / С.В. Глушаков. -Харьков: Фолио, 2002.

.        Жоголев Е.А. Введение в технологию программирования (конспект лекций) / Е.А. Жоголев. - М.: «ДИАЛОГ-МГУ», 2004.

.        Калиткин В.Г. Численные методы / В.Г. Калиткин. - М.: Наука, 1998.

7.     Кэнту М. Delphi 4 для профессионалов. - СПб: «Питер», 1999.

.       Д. Мак-Кракен. Численные методы и программирование на Фортране / Д. Мак-Кракен, У.Дорн. - М.: Мир, 1997.

.       Мудров А.Е. Численные методы для ПЭВМ на языках БЕЙСИК, ФОРТРАН и ПАСКАЛЬ. - Томск, МП "Раско", 2004

.       Ракитин В.И. Практическое руководство по методам вычислений с приложением программ для персональных компьютеров / В.И. Ракитин, В.Е. Первушин. - М.: Высшая школа, 2008.

.       Самарский А.А., Гулин А.В. Численные методы. - М.: Наука, 2009.

Похожие работы на - Автоматизация инженерных задач

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!