Студопедия — Лабораторная работа № 6. Символьные вычисления в MATLAB.
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Лабораторная работа № 6. Символьные вычисления в MATLAB.






Символьные вычисления в MATLAB.

Решение дифференциальных уравнений и их систем в MATLAB. Решение нелинейных уравнений и их систем. Численное дифференцирование и интегрирование.

В MATLAB для решения систем дифференциальных уравнений численными методами предназначены функции ode45, ode23, ode113, ode15s, ode23s, ode23t, ode23tb. Функции используют различные численные методы, например ode45 - метод Рунге-Кутта 4-го и 5-го порядков, ode23 - метод Рунге-Кутта 2-го и 3-го порядков. Функции ode15s, ode23s, ode23t, ode23tb предназначены для решения жестких систем дифференциальных уравнений. Жесткие – это системы дифференциальных уравнений, решения которых на различных интервалах изменения независимых переменных ведут себя по-разному: на одних участках наблюдается очень быстрое их изменение, на других – очень медленное.

Для применения функции решения системы дифференциальных уравнений необходимо составить специальную m-функцию, вычисляющую правую часть системы уравнений . Вызов функции записывается следующим образом: [t,Y]=ode45(‘имя функции’,ts,Y0).

Функция ode45 интегрирует систему дифференциальных уравнений на интервале времени ts=[tn, tk] с начальными условиями Y0. Первый параметр – имя m-функции, вычисляющей правые части системы дифференциальных уравнений. Каждая строка возвращаемого массива Y – решение в моменты времени, определяемые вектором t (в первом столбце – , во втором - и так далее).

Для определения корня уравнения вида используется функция fzero(fun, x0, tol), где fun – функция, корень которой следует определить, x0 начальное приближение корня. Функция fzero возвращает приближенное значение корня; tol – погрешность определения значения корня (если погрешность не задана, она принимается равной eps).

Функция fun задается как формула, записанная по правилам MATLAB, заключенная в апострофы или как имя m-функции (в апострофах), вычисляющей левую часть уравнения. Начальное приближение может быть задано скалярным значением или интервалом, на концах которого функция имеет разные знаки (в виде вектора координат начала и конца интервала).

Функция fzero определяет только точки пересечения заданной функцией оси абсцисс. Точки, в которых функция только касается оси абсцисс, нулями не считаются.

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

Поиск минимума функции одной переменной осуществляется функцией fmin, вызов которой записывается следующим образом:

xmin=fmin(‘имя функции’, x1,x2)

xmin=fmin(‘имя функции’, x1,x2, options)

xmin=fmin(‘имя функции’, x1,x2, options, p1, p2, …, p10)

где имя функции – имя встроенной или m-функции, минимум которой необходимо найти; x1, x2 - начало и конец интервала, в котором необходимо определить минимум функции; options – вектор управляющих параметров, предназначенных для настройки алгоритма оптимизации, если используются опции по умолчанию, вместо этого аргумента следует задать пустой массив; p1, p2,…p10 – параметры оптимизируемой функции.

Минимизация функции нескольких переменных осуществляется функцией xmin=fmins(‘имя функции’,x0).

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

Функция diff(x) вычисляет конечные разности. Если ее аргумент x – одномерный массив, состоящий из n элементов, функция возвращает одномерный массив [x(2)-x(1) x(3)-x(2) … x(n)-x(n-1)]. Количество элементов в возвращаемом массиве n-1.

Функция diff(x,n) вычисляет конечные разности порядка n согласно соотношению: diff(x,n)=diff(diff(x,n-1)).

Приближенное значение первой производной функции y(x), заданной таблично, вычисляется согласно выражению: diff(y)./diff(x).

В примере в первом подокне построены график функции sin(x) и ее первая производная, рассчитанные аналитически, а во втором – приближенно, с использованием функции diff.

Функция trapz(x,y) возвращает значение интеграла от функции y по переменной x, вычисленного методом трапеций.

Если функция вызывается с одним аргументом trapz(y), вычисляется значение интеграла при постоянном шаге, равном 1 (очевидно, чтобы перейти к произвольному значению шага, надо умножить полученное значение интеграла на величину шага интегрирования).

Функция cumtraps (x,y) (cumtraps (y)) дополнительно вычисляет значение промежуточных результатов. Для функции, представляющей собой прямоугольные импульсы (на графике утолщенная линия красного цвета), функция cumtraps позволила построить функцию, отражающую процесс накопления искомого интеграла. Ее значение в произвольный момент времени t1 равно значению интеграла на интервале от 0 до t1.

Функции quad и quad8 реализуют вычисление интеграла методом квадратур (функция quad с использованием формул Ньютона-Котеса 2-го порядка (метод Симпсона), функция quad8 использует формулы 8-го порядка).

 

 

Вызов этих функций записывается однотипно

функция quad: функция quad8:
quad(‘имя функции’, a, b) quad(‘имя функции’, a, b, tol) quad(‘имя функции’, a, b, tol, trace) quad(‘имя функции’, a, b, tol, trace, p1, p2, …) quad8(‘имя функции’, a, b) quad8(…)

где имя функции имя m-функции для вычисления значения подынтегрального выражения; a, b – нижний и верхний пределы интегрирования; tol – относительная погрешность интегрирования, по умолчанию 1е-3; если trace 0 – дополнительно выполнять построение точечного графика подынтегральной функции; p1, p2, … - параметры подинтегральной функции.

Вычисление двойных интегралов вида реализует функция dblquad:

dblquad(‘имя функции’, x1, x2, y1, y2)

dblquad(‘имя функции’, x1, x2, y1, y2, tol)

dblquad(‘имя функции’, x1, x2, y1, y2, tol, metod)

где ‘имя функции’- имя М-функции, выисляющей подынтегральное выражение. Эта функция должна иметь два параметра, причем первый из них – вектор значений переменной внутреннего интеграла, второй - скалярное значение переменной внешнего интеграла. Интегрируемая функция должна возвращать вектор; x1, x2 – нижний и верхний пределы внутреннего интеграла; y1, y2 - нижний и верхний пределы внешнего интеграла; metod – имя одной из функций quad, quad8 или функции пользователя, которая имеет такой же вызов и имеет такое же возвращаемое значение, как и функции quad, quad8

Цель работы:

1. Знакомство с основными положениями пакета символьных вычислений.

2. Работа с символьными переменными, матрицами, математическими выражениями.

3. Освоение символьных аналитических вычислений – упрощение выражений, решение алгебраических уравнений, решение системы линейных уравнений, вычисление суммы ряда.

4. Освоение символьного интегрирования и символьного дифференцирования.

5. Получение практических навыков работы в диалоговом режиме.

Задания к работе

Задача 1. Развертка/свертка.

§ Вводим выражение f1(x) и разворавчиваем его.

§ Полученное выражение сворачиваем. Сравниваем результат с f1(x).

Задача 2. Дифференцируем/интегрируем.

§ Вводим выражение f1(x) и находим производную по х.

§ Для полученного выражения находим неопределенный интеграл. Сравниваем с f1(x).

Варианты заданий

f1(x) f2(x)
1 (1+x)2 ax3+bx2+cx+d

 

Задача 1:

 

 

Рисунок 1 – Выполнение задачи 1

 

Задача 2:

 

 

Рисунок 2 – Выполнение задачи 2







Дата добавления: 2015-09-19; просмотров: 1668. Нарушение авторских прав; Мы поможем в написании вашей работы!



Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...

Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

Примеры задач для самостоятельного решения. 1.Спрос и предложение на обеды в студенческой столовой описываются уравнениями: QD = 2400 – 100P; QS = 1000 + 250P   1.Спрос и предложение на обеды в студенческой столовой описываются уравнениями: QD = 2400 – 100P; QS = 1000 + 250P...

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

Педагогическая структура процесса социализации Характеризуя социализацию как педагогический процессе, следует рассмотреть ее основные компоненты: цель, содержание, средства, функции субъекта и объекта...

Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит...

Кран машиниста усл. № 394 – назначение и устройство Кран машиниста условный номер 394 предназначен для управления тормозами поезда...

Приложение Г: Особенности заполнение справки формы ву-45   После выполнения полного опробования тормозов, а так же после сокращенного, если предварительно на станции было произведено полное опробование тормозов состава от стационарной установки с автоматической регистрацией параметров или без...

Studopedia.info - Студопедия - 2014-2024 год . (0.008 сек.) русская версия | украинская версия