Обработка данных в MathCad и Matlab

Решение задачи интерполяции и аппроксимации функции. Способы решения дифференциального уравнения. Методы обработки звуковых и графических файлов. Особенности решения системы линейных уравнений методом Гаусса. Разложение сигнала в комплексный ряд Фурье.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 21.02.2019
Размер файла 2,2 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

ПЕНЗЕНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

Кафедра «Автоматика и телемеханика»

Курсовая работа

по дисциплине «Информационные технологии»

на тему «Обработка данных в MathCad и Matlab»

Выполнил студент: Джалолов С.Н.

Группа: 15ПА2

Руководитель:

к.т.н., доцент Долгих Л.А.

2016

Содержание

уравнение аппроксимация функция интерполяция

Введение

1. Решение задачи интерполяции и аппроксимации функции

2. Решение дифференциального уравнения

3. Обработка звукового файла

4. Обработка графического файла

5. Решение системы линейных уравнений методом Гаусса

6. Разложение сигнала в комплексный ряд Фурье

Заключение

Список использованных источников

Введение

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

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

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

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

1. Решение задачи интерполяции и аппроксимации функции

Происходит загрузка начальных данных и выполняется линейная сплайн-интерполяция, а также линейная интерполяция.

Используем функцию lspline(X,Y) для создания вектора коэффициентов S, чтобы выполнить линейную сплайн-интерполяцию с помощью функции interp(s,X,Y,x). Далее строятся графики, полученных функций.

Interp(s,X,Y,x). - Возвращает значение аргумента x, интерполированное по коэффициентам в векторе s и исходным данным в X и Y. Вектор коэффициентов x -- это результат применения функции: lspline.

lspline(X,Y) - Возвращает вектор коэффициентов кубического сплайна с линейными конечными точками, соответствующий независимым данным в векторе или матрице X и зависимым данным в Y. Этот вектор становится первым аргументом функции interp.

На рисунке 1 задаётся функция (в данном случае, таблица значений).

Рисунок 1 Таблица значений функции

Графики выводятся в одном окне и представлены на рисунке 2.

Рисунок 2 Сравнение линейной и сплайн-интерполяции

Чтобы экстраполировать функцию за пределы интервала, на котором она определена, на 50% его длины используем функцию predict. Она проводит предсказание поведения функции в экстраполируемых точках. Функцию reverse используем для перестановки элементов вектора в обратном порядке. (Рисунок 3)

Рисунок 3 Экстраполяция функции

Далее строим графики первой производной и интеграла заданной функции. (Рисунок 4)

Рисунок 4 Первая производная и интеграл функции

Чтобы выполнить аппроксимацию этой же функции полиномом, воспользуемся функцией regress, задающей вектор коэффициентов полинома на основе дискретных значений исходной функции. Вычислим погрешность, которую даёт аппроксимирующая функция полинома относительно исходной функции по формуле: , где y - коэффициенты полинома; - массив значений исходной функции, n - количество значений (Рисунок 5)

Рисунок 5 Нахождение вектора коэффициентов полинома и погрешности аппроксимации

Результат исследования изменения аппроксимации при уменьшении (увеличении) порядка аппроксимирующего полинома на единицу отобразим на графике. (Рисунок 6)

Рисунок 6 График аппроксимации функции полиномом 1,2,3,4 степени

Текст программы в приложении 1.

2. Решение дифференциального уравнения

Для решения заданного дифференциального уравнения используем функцию odesolve. Затем строим график y(x) и выводим результаты. (Рисунок 7)

Odesolve(x,b) - используется для решения обыкновенного дифференциального уравнения, заданного как в виде задачи Коши, так и в виде краевой задачи. Начальные условия и дифференциальное уравнение должны быть определены в блоке given. Параметры функции: х -переменная, по которой производится интегрирование; b - конечное значение промежутка решения.

Рисунок 7 Решение дифференциального уравнения

Текст программы в приложении 2.

3. Обработка звукового файла

Для редактирования звука в Mathcad необходимо его прочитать в матрицу. Используем для этого функцию READWAV(). Вычислим последний элемент и создадим вектор с информацией о звуковом файле. Постоим график. (Рисунок 8)

Рисунок 8 Информацией о звуковом файле

Процесс удаления источника звука представляет собой равномерное уменьшение амплитуды сигнала с течением времени. (Рисунок 9)

Рисунок 9 Эффект удаления звука

Приближение звука представляет собой обратную функцию удаления звукового сигнала. Необходимо создать массив, чтобы амплитуда увеличивалась с течением времени. (Рисунок 10)

Рисунок 10 Эффект приближения звука

Зашумление сигнала осуществлено с помощью функции gaussn, которая генерирует выборку шумового сигнала (Гауссов шум). (Рисунок 11)

Рисунок 11 Эффект зашумления звука

Эффект «эхо». (Рисунок 12)

Рисунок 12 Эффект эхо

Текст программы в приложении 3.

4. Обработка графического файла

Вначале осуществляется чтение рисунка из файла в матрицу Matrix_RGB.

Далее происходит определение размерности матрицы и выделение подматриц, соответствующим трём основным цветам (красному, зелёному и синему соответственно). (Рисунок 13)

Рисунок 13 Выделение подматриц

Чтобы повернуть рисунок, например, на 90 градусов по часовой стрелке, необходимо каждый из выделенных под массивов повернуть так же по часовой стрелке на 90 градусов. Для этого напишем функцию поворота матрицы на 90 градусов по часовой стрелке и вызовем её нужное число раз. (Рисунок 14,15)

Рисунок 14 Функция поворота матрицы

Рисунок 14 Вывод на экран изображений

Далее «повернутые» массивы нужно соединить в один, который будет представлять собой повёрнутый рисунок. Для этого воспользуемся функцией augument и сохраним, полученный результат.

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

Для этого введём два вектора случайных чисел, которые будут содержать количество чисел, равное количеству строк и столбцов подматрицы SubMatrix_G. (Рисунок 15)

Рисунок 16 Изображение с шумом

Текст программы в приложении 4.

5. Решение системы линейных уравнений методом Гаусса

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

При решении методом Гаусса систем линейных уравнений с любым числом уравнений и неизвестных в системе уравнений и в расширенной матрице системы можно:

1. переставлять местами строки;

2. если в результате других преобразований появились равные или пропорциональные строки, их можно удалить, кроме одной;

3. удалять "нулевые" строки, где все коэффициенты равны нулю;

4. любую строку умножать или делить на некоторое число;

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

В результате преобразований получаем систему линейных уравнений, эквивалентную данной.

Решение систем линейных уравнений методом Гаусса в пакете Mathcad. (Рисунок 17)

Текст программы в приложении 5.

6. Разложение сигнала в комплексный ряд Фурье

Основные понятия и соотношения

Условие периодичности -- x(t) = x(t+mT), где T -- период, m - натуральное число, m= 1, 2,....

Любой периодический сигнал x(t) может быть представлен тригонометрическим рядом Фурье

(1.1)

где -- угловая частота 1-й или основной гармоники; -- коэффициенты разложения, вычисляемые по формулам:

; ; ;

; ,

где -- амплитуда k-й гармоники; -- фаза k-й гармоники; -- среднее значение сигнала (постоянная составляющая); -- угловая частота k-й гармоники; -- момент времени, соответствующий началу периода.

Зависимости и от частоты -- это спектры амплитуд и фаз соответственно.

В некоторых случаях более удобна комплексная форма ряда Фурье

. (1.2)

Коэффициенты ряда (1.2) вычисляются по формуле

. (1.3)

Формулы (1.2) и (1.3) -- пара преобразований Фурье. Совокупность коэффициентов -- комплексный спектр периодического сигнала x(t). Совокупность действительных величин в зависимости от частоты -- спектр амплитуд. Совокупность величин в зависимости от частоты -- спектр фаз.

Ряд (1.2) удобно представлять в форме

, (1.4)

где .

Составление математической модели и построение графика сигнала в пакете Mathcad.

Построим график импульсного сигнала. (Рисунок 18)

Рисунок 18 График импульсного сигнала

Вычисляем коэффициенты и представляем сигнал тригонометрическим рядом Фурье, затем считаем амплитуду и фазу колебаний. (Рисунок 19)

Рисунок 9 Тригонометрический ряд Фурье

Синтезируем сигнал и сравниваем его с исходным, строим графики амплитудного и фазового спектров сигнала. (Рисунок 20)

Рисунок 20 Графики синтезируемого, амплитудного и фазового спектров сигнала

Текст программы в приложении 6.

Заключение

В результате выполнения курсовой работы решена задача интерполяции и аппроксимации таблично заданной функции, задача интегрирования обыкновенного дифференциального уравнения. Осуществлена обработка звукового и графического файла с реализацией требуемых эффектов, разработана подпрограмма для решения нелинейного уравнения методом дихотомии, а также осуществлена обработка импульсного сигнала. Все задачи решены с использованием программ и MathCAD.

Список использованных источников

1. http://ime.tpu.ru/study/discypliny/MathCAD-lections.pdf.

2. http://www.allmathcad.com/ru/interpolyatsiya-i-ekstrapolyatsiya.html.

3. http://www.allmathcad.com/ru/funktsii-prednaznachennye-dlya-resheniya-obyknovennykh-differentsialnykh-uravnenij.html.

4. http://function-x.ru/systems_gauss.html.

5. Кавчук С.В. Сборник примеров и задач по теории сигналов: Руководство для практических занятий на базе Mathcad 6.0 Plus. Таганрог, Изд-во ТРТУ, 2001.

6. Зольникова Н.Н., Воробьева Л.Л. Работа с файлами в прикладных программах: Методические указания к лабораторным работам по дисциплине «Информатика». М.: МИИТ, 2008. 28 с.

7. Воскобойников Ю.Е. Фильтрации сигналов и изображений: фурье и вейвлет алгоритмы(с примерами в Mathcad): монография/ Ю. Е. Воскобойников, А. В. Гочаков, А.Б. Колкер; Новосиб. гос. архитектур.-строит. ун-т(Сибстрин). Новосибирск: НГАСУ(Сибстрин), 2010. 188 с.

Приложение 1

Приложение 2

Приложение 3

Приложение 4

Приложение 5

Приложение 6

Размещено на Allbest.ru

...

Подобные документы

  • Постановка задачи, математические и алгоритмические основы решения системы линейных алгебраических уравнений. Решение системы данных уравнений методом Гаусса с выбором главного элемента по столбцу. Функциональные модели и блок-схемы решения задачи.

    курсовая работа [428,9 K], добавлен 25.01.2010

  • Матричная форма записи системы линейных уравнений, последовательность ее решения методом исключений Гаусса. Алгоритмы прямого хода и запоминания коэффициентов. Решение задачи о сглаживании экспериментальных данных с помощью метода наименьших квадратов.

    курсовая работа [610,7 K], добавлен 25.06.2012

  • Применение итерационных методов численного решения системы линейных алгебраических уравнений при вычислении на ЭВМ. Математические и алгоритмические основы решения задачи, метод Гаусса. Функциональные модели и блок-схемы, программная реализация решения.

    курсовая работа [527,5 K], добавлен 25.01.2010

  • Возможности математического пакета MathCad в среде Windows 98 для использования матричной алгебры и решения системы линейных алгебраических уравнений. Методы решения систем линейных алгебраических уравнений. Сравнение метода Гаусса с методом MathCad.

    практическая работа [62,6 K], добавлен 05.12.2009

  • Численный метод для решения однородного дифференциального уравнения первого порядка методом Эйлера. Решение систем дифференциальных уравнений методом Рунге–Кутта. Решение краевой задачи. Уравнения параболического типа, а также Лапласа и Пуассона.

    курсовая работа [163,5 K], добавлен 27.05.2013

  • Системы линейных алгебраических уравнений. Код программы для решения систем линейных алгебраических уравнений. Математические и алгоритмические основы решения задачи методом Гаусса. Программная реализация решения. Алгоритмы запоминания коэффициентов.

    лабораторная работа [23,5 K], добавлен 23.09.2014

  • Сущность и особенности языка программирования Си. Основные этапы алгоритма решения системы линейных алгебраических уравнений методом Гаусса, реализация программы для их расчета. Инструкции пользователя и программиста. Тестирование функции решения.

    курсовая работа [153,9 K], добавлен 18.02.2013

  • Автоматизация решения системы уравнения методом Гаусса (классического метода решения системы линейных алгебраических уравнений, остоящего в постепенном понижении порядка системы и исключении неизвестных) и решения уравнения методами хорд и Ньютона.

    курсовая работа [578,2 K], добавлен 10.02.2011

  • Решение уравнения методом половинного деления. Программа в Matlab для уравнения (x-2)cos(x)=1. Решение нелинейных уравнений методом Ньютона. Интерполяция заданной функции. Решение системы линейных алгебраических и обыкновенных дифференциальных уравнений.

    курсовая работа [1,4 M], добавлен 15.08.2012

  • Приведение системы линейных алгебраических уравнений к треугольному виду прямым ходом метода Гаусса. Применение обратного хода метода вращений. Создание алгоритма, блок-схемы и кода программы. Тестовый пример решения уравнения и его проверка в MathCad.

    лабораторная работа [164,3 K], добавлен 02.10.2013

  • Объектно-ориентированное программирование: основная идея, сопровождение, модификация, термины и положения. Понятие объекта как логической единицы, правила (методы) обработки данных. Метод Гаусса для решения систем линейных алгебраических уравнений.

    курсовая работа [125,1 K], добавлен 22.04.2009

  • Метод Гаусса-Зейделя как модификация метода Якоби, его сущность и применение. Разработка программы решения системы линейных алгебраических уравнений на языке VB, проверка правильности работы программы в MS Excel и математических пакетах MathCad и MatLab.

    курсовая работа [325,5 K], добавлен 27.10.2013

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

    контрольная работа [460,8 K], добавлен 15.06.2015

  • Понятия систем линейных уравнений и матриц. Решение общей системы линейных уравнений по методу Гаусса. Системные требования, методы установки, удаления и работы с программой. Методы защиты от неверного ввода данных. Тестирование и опытная эксплуатация.

    курсовая работа [751,0 K], добавлен 25.02.2011

  • Разработка программного продукта для решения систем линейных алгебраических уравнений методом Гаусса с помощью ЭВМ. Математическое описание объекта моделирования, начальные и граничные условия. Алгоритм реализации задачи. Использование модуля CRT.

    курсовая работа [269,6 K], добавлен 07.01.2016

  • Численные методы решения задач. Решение алгебраических и трансцендентных уравнений. Уточнение корня по методу половинного деления. Решение систем линейных уравнений методом итераций. Методы решения дифференциальных уравнений. Решение транспортной задачи.

    курсовая работа [149,7 K], добавлен 16.11.2008

  • Решение дифференциального уравнения N-го порядка методом интегрирования при помощи характеристического уравнения, методом интегрирования и операторным методом для значений аргументов при заданных начальных условиях и нулевых уравнения 4–го порядка.

    практическая работа [806,9 K], добавлен 05.12.2009

  • Преобразование матрицы системы линейных алгебраических уравнений (СЛАУ) с помощью алгоритма Гаусса. Решение задачи методом простой итерации. Создание блок-схемы и текста программы для решения СЛАУ, реализованной на языке программирования Turbo Pascal.

    курсовая работа [1,2 M], добавлен 15.06.2013

  • Системы линейных алгебраических уравнений. Матричный метод решения систем линейных уравнений. Решение задачи математическим методом. Блок-схема алгоритма и листинг программы. Расчет трудоемкости разработки программы. Расчет себестоимости и цены программы.

    дипломная работа [144,8 K], добавлен 25.04.2012

  • Математическое описание алгоритмов схемы и операций для уравнения Лапласа. Изучение разностной схемы "крест" для нахождения численного решения эллиптического уравнения, задача Дирихле. Использование указателей в среде Matlab для решений методом Гаусса.

    дипломная работа [859,3 K], добавлен 23.10.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.