Курсовая: Решение функциональных и вычислительных задач средствами пакета прикладных программ MathCAD2000 и электронных таблиц MS Excel
Курсовая: Решение функциональных и вычислительных задач средствами пакета прикладных программ MathCAD2000 и электронных таблиц MS Excel
Министерство образования РФ
ХТИ – филиал ГОУ ВПО КГТУ
Кафедра информатики и компьютерных технологий
Расчетно-пояснительная записка
к курсовой работе по дисциплине «информатика»
Тема: «Решение функциональных и вычислительных задач средствами пакета
прикладных программ MathCAD2000 и электронных таблиц MS Excel»
Выполнил студент группы 93-1
Руденко Н. А.
Научный руководитель
ст. преподаватель
Кокова В. И.
Оценка______
Подпись________
Абакан 2004
Содержание
Введение...........................................................................................................
3
Часть I. Решение функциональных и вычислительных задач средствами пакета
прикладных программ MathCAD2000
................................................ 4
1. Решение нелинейных уравнений.............................................6
1.1. Решение нелинейного уравнения графически с точностью до 0.001......... 6
1.2. Решения нелинейного уравнения с помощью Solve и Root .....................7
1.3. Анализ полученных результатов ............................................8
2. Решение системы нелинейных уравнений ..............................8
2.1. Решение СНУ графически с точностью до 0.001 ............................8
2.2. Решение СНУ с помощью Given и Find или Given и Minerr ..................9
2.3. Анализ полученных результатов .........................................10
3. Решение системы линейных алгебраических уравнений ................10
3.1. Решение СЛАУ с помощью Given и Find .....................................10
3.2. Решение СЛАУ с помощью функции lsolve ...................................11
3.3. Решение СЛАУ с помощью обратной матрицы .................................12
3.4. Решение СЛАУ с помощью по формулам Краммера .............................13
3.5. Решение СЛАУ с помощью методом Гаусса ...................................15
3.6. Анализ полученных результатов ...........................................16
4. Интерполирование. Аппроксимация ........................................16
4.1. Решение с помощью линейной интерполяции .................................17
4.2. Решение с помощью параболического сплайна ...............................18
4.3. Решение с помощью линейной аппроксимации ................................18
4.4. Решение с помощью метода наименьших квадратов ...........................20
4.5. Решение с помощью полиноминальной регрессии .............................22
4.6. Графики таблично заданной функции в одних осях координат ............. 24
4.7. Анализ полученных результатов ...........................................24
5. Дифференциальные уравнения .............................................25
5.1. Решение дифференциального уравнения методом Рунге-Кутта ............. 25
6. Линейное программирование ..............................................27
6.1. Решение задачи линейного программирования с помощью функции maximize или
minimize.
.............................................................................
....................... 27
Часть II. Решение функциональных и вычислительных задач средствами
электронной таблицы MS Excel.
............................................................................ 29
1. Линейное программирование ..............................................30
1.1. Решение задачи линейного программирования с «поиск решения» ...... 30
1.2. Анализ полученных результатов ...........................................31
2. Трендовый анализ .......................................................31
2.1. Построение линии тренда .................................................31
2.2. Поиск приближенного значения функции ....................................33
2.3. Анализ полученных результатов ...........................................34
Заключение
...................................................................................................
35 Список литературы
......................................................................................
36
Введение
Миллионы людей занимаются математическими расчетами, иногда в силу влечения к
таинствам математики и ее внутренней красоте, а чаще в силу профессиональной
или иной необходимости, не говоря уже об учебе. Ни одна серьезная разработка
в любой отрасли науки и производства не обходится без трудоемких
математических расчетов. Система Mathcad пользуется огромной популярностью
во всем мире, позволяя готовить вполне профессиональные документы, имеющие
вид статей и книг по математике.
Программа Microsoft Excel входит в офисный пакет Microsoft Office и
предназначена для подготовки и обработки электронных таблиц под управлением
операционной системой Windows. Microsoft Excel – это многофункциональный,
мощный редактор электронных таблиц. Он представляет возможность производить
различные расчеты, составлять списки, сметы и что немаловажно, строить
наглядные графики и диаграммы.
Об этом и многом другом подробнее рассказано в разделах:
В части I представлены решения нелинейного уравнения, системы
нелинейных уравнений, системы линейных алгебраических уравнений, задачи
линейной оптимизации и дифференциального уравнения в MathCAD.
В части II представлено решение задачи линейной оптимизации и
построение линии тренда в Excel.
Часть I. Решение функциональных и вычислительных задач средствами пакета
прикладных программ MathCAD2000
MathCAD – это мощная и в то же время простая универсальная среда для
решения задач в различных отраслях науки и техники, финансов и экономики,
физики и астрономии, строительства и архитектуры, математики и статистики,
организации производства и управления. Она располагает широким набором
инструментальных, информационных и графических средств. Сегодня MathCAD – одна
из самых популярных математических систем. Она пользуется большим спросом у
студентов, инженеров, экономистов, менеджеров, научных работников и всех тех,
чья деятельность связана с количественными методами расчета.
В настоящее время разработано и функционирует множество различных
математических систем: Maple, Mathlab, Mathematica, Reduce, Derive, Theorist,
Macsyma и др. Каждая из них имеет свои преимущества и недостатки, а также
свои области применения.
В чем же отличие системы MathCAD от аналогичных?
Во-первых, в математических системах Reduce, Macsyma, Derive, Maple,
Mathematica, Theorist в основном используются целочисленное представление и
символьная обработка данных, а в Matlab преимущественно ориентированна на
работу с массивами. MathCAD же изначально создавалась для численного решения
математических задач (1988 г.), и только в 1994 г. в нее были добавлены
инструменты символьной математики из системы Maple, что постепенно превратило
MathCAD в универсальную систему.
Во-вторых, запись задач в MathCAD наиболее приближена к записи их без
использования компьютера, что существенно упрощает применение системы.
В-третьих, система MathCAD более доступна для массового пользователя: она в
несколько раз дешевле своих аналогов (речь идет о лицензионных продуктах).
В-четвертых, система MathCAD – это, скорее, универсальная, чем
специализированная математическая система. Так, для решения сложных задач в
аналитическом виде лучше применять Maple, а для решения сложных задач
линейной алгебры – Matlab и т.д.
В-пятых, MathCAD имеет встроенную систему автоматического пересчета и
контроля единиц измерений в процессе вычислений. Допустим, мы определяем
расстояние от одного объекта до другого как сумму отдельных расстояний с
использованием различных единиц измерения (мили, футы, ярды, сантиметры).
Система MathCAD автоматически произведет перерасчет всех расстояний и выдаст
результат с заренее установленной единицей измерения.
В-шестых, MathCAD имеет достаточно мощную, но простую систему наглядного
представления результатов расчета в виде различного рода графиков.
В-седьмых, MathCAD может взаимодействовать с другими приложениями. Например,
данные программ Excel или Matlab могут непосредственно включаться в
вычислительный поток системы MathCAD: здесь допускается управлять чертежами,
выполненными в AutoCAD, использовать Visual Basic и OLE Automation для
создания коммерческих приложений и многое другое.
С помощью MathCAD 2000 Professional можно вводить исходные данные (как в
обычном текстовом редакторе), традиционно описывать решение задачи и получать
результаты вычислений в аналитическом и численном виде с возможностью
использования средств графического представления результатов. Запись
математических выражений производится с применением общепринятых знаков
(квадратный корень, знак деления в виде горизонтальной черты, знаки
интеграла, дифференциала, сумму и т.д.).
В MathCAD 2000 Pro встроены хорошо организованные текстовый, формульный и
графический редакторы. Они оснащены удобным пользовательским интерфейсом и
разнообразными математическими возможностями.
В последних версиях MathCAD допускается импортировать любые графические
изображения (от простых графиков функций до специализированных чертежей
системы AutoCAD) и использовать средства анимации, звуковые и
стереофонические эффекты.
Программа MathCAD 2000 Professional оснащена приложениями SmartSketch, Axum
LE, Autodesk’s Volo View, MathCAD add-in for Excel.
SmartSketch позволяет аннотировать рабочие документы с рисунками,
диаграммами, изображениями. Данное приложение обеспечивает параметрическое
управление, как рисунками, так и вычислениями.
Axum LE дает более полный контроль над двумерными графиками.
Autodesk’s Volo View обеспечивает просмотр изображений AutoCAD в MathCAD.
C помощью MathCAD add-in for Excel можно работать в Excel.
Задание 1. Решение нелинейных уравнений
1. Решить нелинейное уравнение графически с точностью до 0.001
2. Решить нелинейное уравнение с помощью solve и root.
Решение:
Записываем данную функцию в рабочем окне документа
1.1. Решение нелинейного уравнения графически с точностью до 0.001
Для построения декартова графика нужно:
· Установить визир в пустом месте рабочего листа;
· Щелкнуть по пункту Вставить главного меню, по пункту График
падающего меню или нажатием комбинации клавиш Shift+2. Появится шаблон
декартова графика. Ввести в средней метке под осью X независимую
переменную.
· Ввести в средней метке слева от вертикальной оси Y зависимую
переменную. Каждой независимой переменной должна соответствовать своя зависимая
переменная – свое выражение. Если эти зависимости определены до построения
графика, то они будут изображены на нем.
Ниже, на рис. 1.1, изображен график функции
рис. 1.1 График функции
При графическом решении корнями уравнения будут являться точки пересечения
графика функции с осью ОХ.
Для определения координат точек пересечения графика с осью воспользуемся
трассировкой. Для этого нужно:
· Щелкнуть по графику правой клавишей мыши;
· Во всплывающем меню выбрать Трассировка.. Появится окно X-Y
Trace (Трассировка декартова графика), отображенное на рис. 1.3;
· Расположить указатель мыши на кривой. Нажать левую кнопку и, не
отпуская ее, перемещать указатель вдоль кривой. В диалоговом окне X-Y Trace
будут определяться координаты положения указателя на кривой (см. рис. 1.2).
· Найдя значение по оси х при котором значение по оси у удовлетворяет
заданной точности, скопировать в буфер обмена данных, щелкнув по
соответствующим кнопкам.
рис. 1.2 рис. 1.3 Окно X-Y Trace
Аналогично поступим со второй точкой пересечения графика функции с осью ОХ,
как показано на рис. 1.4 и рис. 1.5.
рис. 1.4 рис. 1.5
Корни найдены с заданной точностью.
1.2. Решения нелинейного уравнения с помощью Solve и Root
С помощью оператора solve система находит только один корень уравнения:
Для нахождения остальных корней уравнения решим его с помощью функции
root(f(x), x).
Функция root(f(x), x) – находит корень уравнения с одним неизвестным.
Возвращает значение x, при котором функция f(x) равна нулю.
Использование функции root требует предварительного задания начального
значения. Если исследуемая функция имеет много корней, то найденный корень
будет зависеть от начального приближения. Если оно расположено близко к
локальному экстремуму функции f(x), функция root может не найти
корня, либо найденный корень будет далеко от начального приближения.
Зададим приближенное значение независимой переменной и воспользуемся функцией
root(f(x), x):
1.3. Анализ полученных результатов
Произведем проверку значений, полученных графическим методом, и сравним их с
результатами вычисления функции root(f(x), x)
Проверка показала, что решения найденные всеми методами совпадают. Это
говорит о том, что решения найдены верно.
Задание 2. Решение системы нелинейных уравнений
1. Решить систему нелинейных уравнений графически с точностью до 0.001.
2. Решить систему нелинейных уравнений с помощью Given и find()
или Given и minerr().
Решение:
2.1 Решение СНУ графически с точностью до 0.001
Чтобы решить систему уравнений графически, записываем зависимость одной
переменной от другой в каждом из уравнений в системе:
Строим графики функций, пользуясь правилами построения графиков описанными в
задании 1:
рис. 2.1 Графики функций f(y) и F(y) в одних координатных осях
Корнями системы уравнений будут являться координаты точки пересечения двух
графиков.
Найдем эту точку с помощью трассировки, пользуясь правилами трассировки,
описанными в задании 1:
рис. 2.2 рис. 2.3
2.2. Решение СНУ с помощью Given и Find или Given и Minerr
Функция minerr(x, y, .) – возвращает значения x, y, . решения уравнений,
наиболее близкие к решению системы уравнений. x, y, . - скалярные переменные,
значение которых ищутся в системе уравнений. Если определяется одна неизвестная
то функция minerr(x, y, .) возвращает скаляр. В ином случае она
возвращает вектор, первым элементом которого является искомое значение
неизвестной x, вторым – y и т.д. Перед использованием этой функции необходимо
задать начальное приближение для каждой неизвестной и ключевое слово Given.
Если система имеет несколько решений, то нужное определяется заданным начальным
приближением.
Для этого зададим начальные приближённые значения переменных, данных в
уравнениях:
Произведём проверку графического решения:
2.3. Анализ полученных результатов
Решая систему нелинейных уравнений графически и символьно, получили
одинаковый корень. Проверка показала, что решение найдено верно.
Задание 3. Решение системы линейных алгебраических уравнений
Решить СЛАУ следующими способами:
1. С помощью given и find.
2. С помощью функции lsolve.
3. С помощью обратной матрицы.
4. По формулам Крамера.
5. Методом Гаусса.
Решение:
3.1. Решение СЛАУ с помощью Given и Find
Функция find(x, y, .) – возвращает значения x, y, ., удовлетворяющие
ограничениям: равенствам и неравенствам, заданным в блоке решения уравнений
Given. Число уравнений должно равняться количеству неизвестных x, y, . Когда
блок решения уравнений ищет одну неизвестную, функция find возвращает
скаляр. В ином случае она возвращает вектор, первым элементом которого является
искомое значение неизвестной x, вторым – y и т.д. Перед использованием этой
функции необходимо задать начальное приближение для каждой неизвестной. Если
система имеет несколько решений, то нужное определяется заданным начальным
приближением.
Запишем в рабочей области программы систему уравнений (ограничения) и,
воспользовавшись функцией find(x, y, .) найдем корни этой системы. Так
как система имеет более одной неизвестной ответ получим виде вектора, элементы
которого есть искомые значения х1, х2, х3, х4 соответственно.
3.2. Решение СЛАУ с помощью функции lsolve(M, v)
lsolve(M, v) – возвращает вектор х решения линейной системы уравнений
. Вектор v – это вектор правых частей линейной системы уравнений.
Записываем матрицу А, которая будет состоять из коэффициентов стоящих перед
неизвестными х1, х2, х3, x4:
Аналогично записываем матрицу В, которая будет состоять из столбца свободных
членов:
Решаем систему с помощью lsolve(M, v):
Проверка:
Подсчитывая выражение , получаем нулевую матрицу, значит x найден верно.
3.3. Решение СЛАУ с помощью обратной матрицы
Записываем матрицы А и В:
Решаем систему с помощью обратной матрицы:
Производим проверку по формуле :
В результате проверки находим, что результат вычисления выражения
равен столбцу из свободных членов, следовательно, решение найдено верно
3.4. Решение СЛАУ с помощью по формулам Краммера
Задаём матрицы А и В:
Решаем определитель, составленный из элементов матрицы A:
так как определитель матрицы A не равен нулю, то существует единственное
решение.
Находим :
Заменяем элементы первого столбца матрицы A на элементы матрицы B и решаем
полученный определитель:
Находим :
Заменяем элементы второго столбца матрицы A на элементы матрицы B и решаем
полученный определитель:
Находим :
Заменяем элементы третьего столбца матрицы A на элементы матрицы B и решаем
полученный определитель:
Находим :
Заменяем элементы четвертого столбца матрицы A на элементы матрицы B и решаем
полученный определитель:
Находим x1, x2, x3, x4 по формуле
3.5. Решение СЛАУ с помощью методом Гаусса
Задаём матрицы А и В:
Сформируем расширенную матрицу:
Обращаемся к методу Гаусса, сформировав единичную матрицу из расширенной:
С помощью функции submatrix выделяем блок из матрицы D:
Где D - название матрицы, из которой находится выделяемый блок,
0 – начальный номер строки, выделяемого блока,
3 – конечный номер строки, выделяемого блока,
4 – начальный номер столбца выделяемого блока,
4 – конечный номер столбца, выделяемого блока.
3.6. Анализ полученных результатов
Решая систему линейных алгебраических уравнений пятью способами, получили
один и тот же ответ, что говорит о правильности полученного результата.
Проверкой это подтвердили.
Задание 4. Интерполирование. Аппроксимация
Найти приближенное значение функции при заданном значении аргумента
1. с помощью линейной интерполяции
2. с помощью кубического сплайна
3. с помощью линейной аппроксимации
4. методом наименьших квадратов при m=2 и при m=3, где m- порядок
полинома. Вычислить среднеквадратичное отклонение
5. с помощью полиномиальной регрессии
6. построить графики таблично заданной функции, интерполяционного
полинома и аппроксимирующей функции в одних осях координат.
0.150 6.616 0.162
0.155 7.399
0.160 6.196
0.165 6.005
0.170 7.825
0.175 5.655
Решение:
В MathCAD есть несколько способов интерполяции и предсказывания:
· линейная интерполяция – соединение точек прямой линией;
· кубическая сплайновая интерполяция – соединение точек с
использованием кубических линий;
· интерполяция В-сплайн – соединение точек с использованием
многочленов определенной степени в данных узлах;
· многомерная кубическая сплайновая интерполяция – создание
поверхности, проходящей через сетку точек;
· линейное предсказание (экстраполяция) – определение значений вне
набора данных.
Далее будут приведены примеры интерполирования функции с использованием лишь
некоторых способов интерполирования.
4.1. Решение с помощью линейной интерполяции
Для решения с помощью линейной интерполяции используется функция линейного
интерполирования linterp(x, y, xd)
Функция linterp(vx, vy, xd) – возвращает оценку значения в точке x,
вычисленную методом линейной интерполяции на основе значений из векторов x и
y;
· vx – вещественный вектор, элементы которого должны идти в порядке
возрастания и соответствовать значениям х;
· vy – вещественный вектор одного размера с vх. Его элементы
соответствуют значениям y;
· xd – значение переменной x, в которой нужно проинтерполировать
величину y. Предполагается, что х лежит в интервале изменения элементов vx.
Задаем значения х и у в виде матриц:
Находим функцию f(x):
Строим график функции:
рис. 4.1
График проходит через узлы интерполяции, значит функция задана верно.
4.2. Решение с помощью параболического сплайна
Сплайн – это математическая модель гибкого, тонкого стержня из упругого
материала. Стержень закрепляется в двух соседних узлах с заданными углами
наклона. Стержень длиннее, чем расстояние между двумя точками. Линия, которую
описывает сплайн-функция, напоминает по форме гибкую линейку, закреплённую в
узловых точках (откуда и название: spline – гибкая линейка).
Функция cspline(vx, vy) – возвращает вектор коэффициентов кубического
сплайна vs, который используется функцией interp для построения
кубического сплайна, интерполирующего данные, представленные в векторах vx и
vy. На поведение сплайна на концах условий не налагается. Вектор vs становится
первым параметром функции interp.
Функция interp(vs, vx, vy, x) – возвращает интерполированное значение в
точке х, полученное с помощью кубических сплайнов на основе данных,
представленных в векторах vx и vy.
рис. 4.2
4.3. Решение с помощью линейной аппроксимации
Найдем коэффициенты аппроксимирующего полинома с помощью функций intercept
и slope.
Функция intercept(vx, vy) – свободный член уравнения регрессии. Равен
отрезку, отсекаемому линией регрессии на оси ординат, и определяется по
формуле:
Функция slope(vx, vy) – коэффициент линейного уравнения регрессии. Определяет
тангенс угла наклона линии регрессии к оси х, используя формулу:
Применим эти функции для получения свободного члена и коэффициента регрессии
Записываем аппроксимирующий полином и получаем приближенное значение функции
в заданной точке.
Построим график аппроксимирующего полинома и таблично заданной функции.
рис. 4.3
4.4. Решение с помощью метода наименьших квадратов
Суть метода: сумма квадрата разности между аппроксимирующей функцией и
функцией заданной таблично должна быть минимальной.
Задаем степень аппроксимирующего полинома.
при m=2
рис. 4.4
при m=3
рис. 4.5
4.5. Решение с помощью полиноминальной регрессии
Задача регрессии заключается в получении параметра приближённой функции
таким, чтобы функция отличалась от таблично заданной функции с наименьшей
среднеквадратичной погрешностью.
при m=2
Функция regress(vx, vy, m) – вектор, требующий interp для
нахождения полинома порядка m, наилучшим образом приближающего данные из vx и
vy.
submatrix(A, ir, jr, ic, jc,) – субматрица, состоящая из элементов
матрицы А, содержащихся в строках от ir по jr и столбцах с ic по jc.
рис. 4.6
при m=3
рис. 4.7
4.6. Графики таблично заданной функции в одних осях координат
Для сравнения всех функций и полученных вычислений построим общий график:
рис. 4.8
7. Анализ полученных результатов
Проведя исследование функции различными методами, мы получили примерно
одинаковые результаты, так как при исследовании разными методами таблично
заданная функция ведет себе по разному. Но, исследуя функцию с помощью метода
наименьших квадратов и полиномиальной регрессии при одинаковых значениях
порядка полинома графики функций совпадают, что говорит о правильности всех
вычислений. Так же на это указывает тот факт, что среднеквадратичное
отклонение получилось меньше единицы.
Задание 5. Решение дифференциальных уравнений
1. Решить дифференциальное уравнение методом Рунге-Кутта.
При решении дифференциального уравнения искомой величиной является функция. Для
обыкновенных дифференциальных уравнений неизвестная функция – функция одной
переменной. Дифференциальные уравнения в частных производных – это
дифференциальные уравнения, в которых неизвестной является функция двух или
большего числа переменных. MathCAD имеет ряд встроенных функций,
предназначенных для решения дифференциального уравнения. Каждая из этих функций
предназначена для численного решения обыкновенного дифференциального уравнения.
В результате решения получается матрица, содержащая значения функции,
вычисленные на некотором множестве точек (на некоторой сетке значений). Для
каждого алгоритма, который используется при решении дифференциальных уравнений,
MathCAD имеет различные встроенные функции. При решении поставленной задачи
будем использовать метод Рунге-Кутта, применяя функцию rkfixed(y, x1, x2,
n, F)
Функция rkfixed(y, x1, x2, n, F) – выдает таблицу результатов решения
системы обыкновенных дифференциальных уравнений методом Рунге-Кутта четвертого
порядка с фиксированным шагом интегрирования. Эта функция имеет пять
аргументов:
· y – вектор начальных значений искомых функций;
· x1 – начальное значение независимой переменной;
· x2 – конечное значение независимой переменной;
· n – фиксированное число шагов интегрирования;
· F – правые части системы уравнений, записанные в векторе в
символьном виде.
Решение:
Функция rkfixed(y, x1, x2, n, F) выдает таблицу результатов решений с
(m + 1) столбцами и n строками (m – число уравнений в
системе). Нулевой столбец таблицы – это текущее значение независимой переменной
(аргумента) x. Они определяются через x1, x2 и n
. Последующие столбцы решения определяют значения искомых функций y1
(x), y2(x), . для соответствующих значений аргумента
x.
Таблица 1
Зная значение независимой переменной и соответствующие значения искомой
функции, можно построить графическую зависимость, что и показано на рис 5.1
рис. 5.1
- столбец координат узлов сетки
- столбец значений решения в узлах сетки
Задание 6. Линейное программирование
6.1. Решение задачи линейного программирования с помощью функции
maximize или minimize.
Задача:
Для перевозок груза на трех линиях могут быть использованы суда трех типов.
Производительность судов при использовании их на различных линиях
характеризуется данными, приведенными в таблице. В ней же общее время, в
течение которого суда каждого типа находятся в эксплуатации, и минимально
необходимые объемы перевозок на каждой из линий. Определите, какие суда, на
какой линии и в течение какого времени следует использовать, чтобы обеспечить
максимальную загрузку судов с учетом возможного времени их эксплуатации.
Таблица 2
Тип судна | Производительность судов (млн. тонно-миль в сутки) на линии | Общее время эксплуатации судов (сутки) | 1 | 2 | 3 | I | 8 | 14 | 11 | 300 | II | 6 | 15 | 13 | 300 | III | 12 | 12 | 4 | 300 | Заданный объем перевозок (млн. тонно-миль) | 3000 | 5400 | 3300 | |
За x1 возьмем, сколько времени (суток) нужно использовать первое судно на
первой линии, за x2 сколько времени нужно использовать первое судно на
второй линии и т.д., получаем целевую функцию:
Зададим начальные значения, присваивая каждому из x значение 0:
Затем с помощью Given зададим ограничения и найдем решение этой функции,
оптимизируя ее, применяя функцию maximize(), так же поставим ограничение на
то, что значения не отрицательны, т.к. это противоречит заданному нами
определению.
Ответ получен в виде матрицы, содержащей значения x1, x2, x3, x4, x5, x6, x7,
x8, x9. Чтобы удостовериться в правильности найденных значений, производится
проверка:
Проверка показала, что найденные значения отвечают требованиям заданных
ограничений.
Ответ:
Для того чтобы обеспечить максимальную загрузку судов с учетом возможного
времени их эксплуатации, нужно использовать первое судно только на второй
линии в течение трехсот суток. Второе судна на второй и на третьей линии в
течение сорока шести и двухсот пятидесяти четырех суток соответственно.
Третье судно на первой и на второй в течение двухсот пятидесяти и пятисот
суток соответственно.
Часть II. Решение функциональных и вычислительных задач средствами
электронной таблицы MS Excel
Табличные редакторы (иногда их называют также электронные таблицы) на
сегодняшний день, одни из самых распространенных программных продуктов,
используемые во всем мире. Они без специальных навыков позволяют создавать
достаточно сложные приложения, которые удовлетворяют до 90% запросов средних
пользователей.
Табличные редакторы появились практически одновременно с появлением
персональных компьютеров, когда появилось много простых пользователей не
знакомых с основами программирования. Первым табличным редактором, получившим
широкое распространение, стал Lotus 1-2-3, ставший стандартом де-факто для
табличных редакторов:
· Структура таблицы (пересечения строк и столбцов создают ячейки, куда
заносятся данные);
· Стандартный набор математических и бухгалтерских функций;
· Возможности сортировки данных;
· Наличие средств визуального отображения данных (диаграмм).
В СССР получили широкое распространение два табличных редактора SuperCalc и
Quattro Pro. С появлением Microsoft® Windows и его приложений
стандартом де-факто стал табличный редактор Microsoft® Excel.
Microsoft Excel ‑ средство для работы с электронными таблицами,
намного превышающее по своим возможностям существующие редакторы таблиц, первая
версия данного продукта была разработана фирмой Microsoft в 1985 году.
Microsoft Excel ‑ это простое и удобное средство, позволяющее
проанализировать данные и, при необходимости, проинформировать о результате
заинтересованную аудиторию, используя Internet. Microsoft® Excel
разработан фирмой Microsoft, и является на сегодняшний день самым популярным
табличным редактором в мире. Кроме стандартных возможностей его отличает
следующие возможности, он выводит на поверхность центральные функции
электронных таблиц и делает их более доступными для всех пользователей. Для
облегчения работы пользователя упрощены основные функции, создание формул,
форматирование, печать и построение графиков.
Задание 1. Линейное программирование
1. Решение задачи линейного программирования с помощь «поиск решения»
Также как и в примере решения в MathCAD, возьмем x1 за то, сколько времени
(суток) нужно использовать первое судно на первой лини и т.д. В MS Excel
решение будем искать с помощью встроенного макроса «Поиск решения».
Первоначально составим таблицу с исходными данными (рис. 1.1). Затем присвоим
x-ам первоначальные значения равные нулю и зададим ограничения.
рис. 1.1
В окне «Поиск решения» (рис. 1.2) устанавливаем ссылки на ячейки с целевой
функцией, изменяемыми значениями иксов и ограничениями.
рис. 1.2
После выполнения макроса «Поиск решения» мы получаем следующие значения:
рис. 1.3
2. Анализ полученных результатов
Из рис. 1.3 видно, что в решениях полученных с помощью MS Excel и MathCAD
есть небольшие расхождения, но так как они не превышают допустимых
отклонений, то можно считать, что решения совпадают, что и требовалось
доказать.
Задание 2. Трендовый анализ
Построить линию тренда и найти приближенную функцию при заданном значении
аргумента
0.150 6.616 0.162
0.155 7.399
0.160 6.196
0.165 6.005
0.170 7.825
0.175 5.655
Решение:
1. Построение линии тренда
Вводим исходные данные в виде таблицы в среду MS Excel
Далее выделяем значения x и y и с помощью мастера диаграмм (Вставка ®
Диаграмма.) создаем точечную диаграмму, на которой значения соединены
отрезками.
Щелчком правой кнопкой мыши по линии графика вызываем контекстное меню и
выбираем добавить линию тренда. Далее в открывшемся окне выбираем тип линии
«полиномиальная» и выставляем степень «2»
В том же окне щелкаем по вкладке «Параметры» и ставим галочку напротив
«показывать уравнение на диаграмме», нажимаем «OK». В итоге получается
диаграмма с линией тренда второй степени и уравнением.
Аналогично построим полином третьего порядка
2. Поиск приближенного значения функции
Подставим в уравнение линии тренда для полинома 2-го порядка заданное
значение аргумента
:
=-1832,1*C2^2+574,35*C2-38,208
получаем 6,755068
Также подставляем значение аргумента в уравнение линии тренда для
полинома 3-го порядка
=-528222*C2^3 + 255676*C2^2 - 41204*C2 + 2217,6
получаем 6,762321
3. Анализ полученных результатов
После построения диаграмм и линий тренда для полиномов второго и третьего, по
средствам подстановки значения аргумента в уравнения полиномов были найдены
значения функций при заданном значении аргумента. Найденные значения
совпадают со значениями, найденными по средствам MathCAD. Значит значения
найдены верно.
Заключение
Данная курсовая работа позволила мне более близко познакомится с пакетом
прикладных программ MathCAD и Microsoft Excel. Мной было рассмотрено
множество способов решения, как простых нелинейных уравнений, так и систем
линейных алгебраических уравнений, кроме того, было рассмотрено решение
производственной задачи с использованием программ, приведённых выше.
В данной курсовой работе было рассмотрено использование следующих функций:
1. Solve
2. Root
3. Given-Find
4. Given-Minerr
5. lsolve
6. Minimize
Помимо этого были рассмотрены следующие методы решения уравнений:
1. Графический – при решении нелинейных уравнений, систем нелинейных уравнений
2. Метод Гаусса- при решении систем линейных алгебраических уравнений
3. По формулам Крамера - при решении систем линейных алгебраических уравнений
4. Метод обратной матрицы
5. Метод Рунге-Кутта – решение дифференциального уравнения
Также различными способами было найдено приближённое значение функции при
заданном значении аргумента:
1. С помощью линейной интерполяции
2. С помощью линейного сплайна
3. С помощью линейной аппроксимации
4. Методом наименьших квадратов
5. С помощью полиномиальной регрессии
Всё это позволило в полном объеме усвоить лекционный материал и понять
перспективы использования вычислительной техники при решении различных задач
практического характера.
Список литературы
1. | Индейкин В. В. Табличный редактор Microsoft Excel. Учебное пособие. – Казань, 1999. – 75с. | 2. | Кудрявцев Е. М. MathCAD 2000 Pro. – М.: ДМК Пресс, 2001. – 571с. | 3. | Руководство пользователя Mathcad 6.0 и Mathcad PLUS 6.0. – Компания SoftLine. http://www.exponenta.ru/soft/Mathcad/UsersGuide/0.asp |
|