Презентация «Вычисления в MATLAB»

Смотреть слайды в полном размере
Презентация «Вычисления в MATLAB»

Вы можете ознакомиться с презентацией онлайн, просмотреть текст и слайды к ней, а также, в случае, если она вам подходит - скачать файл для редактирования или печати. Документ содержит 66 слайдов и доступен в формате ppt. Размер файла: 325.50 KB

Просмотреть и скачать

Pic.1
ВЫЧИСЛЕНИЯ В MATLAB
ВЫЧИСЛЕНИЯ В MATLAB
Pic.2
MATLAB обладает большим набором встроенных функций реализующих различные численные методы: нахождени
MATLAB обладает большим набором встроенных функций реализующих различные численные методы: нахождение корней уравнений, интегрирование, интерполирование, решение обыкновеных дифференциальных …
Pic.3
Решение произвольных уравнений Функция x=fzero('myf', xo) позволяет вычислять приближенное
Решение произвольных уравнений Функция x=fzero('myf', xo) позволяет вычислять приближенное значение корня x уравнения myf(x)=0, (1) с начальным приближением к корню xo. Здесь myf – имя файл …
Pic.4
Перед нахождением корней полезно строить график функции входящей в левую часть уравнения, используя
Перед нахождением корней полезно строить график функции входящей в левую часть уравнения, используя plot, но все равно в подобных задачах удобно (нужно) создать М-файл левой части уравнений (то же …
Pic.5
Пример 1 Пример 1 Найти корни уравнения sin x-x2 cos x=0 на [-5,5]. Решение
Пример 1 Пример 1 Найти корни уравнения sin x-x2 cos x=0 на [-5,5]. Решение
Pic.6
Аналогично находятся еще два корня, около -2 и 5. Увидеть, большее число значащих цифр приближенного
Аналогично находятся еще два корня, около -2 и 5. Увидеть, большее число значащих цифр приближенного решения можно задав значение формата, например Аналогично находятся еще два корня, около -2 и 5. …
Pic.7
Замечание Замечание Важной особенностью fzero является то, что она вычисляет только те корни, в кото
Замечание Замечание Важной особенностью fzero является то, что она вычисляет только те корни, в которых функция меняет знак, а не касается оси абсцисс. Это происходит в связи с тем, что заложен метод …
Pic.8
Например, корень уравнения х2=0 функцией fzero найти не удается. Для нахождения корня х на интервале
Например, корень уравнения х2=0 функцией fzero найти не удается. Для нахождения корня х на интервале [a, b] уравнения (1) и значения функции myf в этом корне можно использовать следующий вид функции …
Pic.9
Пример 2 Пример 2 > fzero('sin', [2,4]) ans = 3. 1415…
Пример 2 Пример 2 > fzero('sin', [2,4]) ans = 3. 1415…
Pic.10
Замечание Замечание 1. Если функция имеет несколько нулей, то выдается ближайший к 0; 2. На границе
Замечание Замечание 1. Если функция имеет несколько нулей, то выдается ближайший к 0; 2. На границе интервал [a,b] функция должна принимать значения разных знаков, иначе будет сообщение об ошибке NaN.
Pic.11
Минимизация функций Для поиска локального минимума функции myf одной переменной на отрезке [a, b] ис
Минимизация функций Для поиска локального минимума функции myf одной переменной на отрезке [a, b] используют x= fminbnd ('myf', a, b) [x, f]= fminbnd (' myf', a, b)
Pic.12
Замечание Замечание 1) Для нахождения локального максимума нет специальной функции и поэтому следует
Замечание Замечание 1) Для нахождения локального максимума нет специальной функции и поэтому следует искать минимум функции с обратным знаком (менять знак нужно в М-функции); 2) Если есть несколько …
Pic.13
Для нахождения локального минимума функции myfm многих переменных вблизи точки (х1,…,хn) используют
Для нахождения локального минимума функции myfm многих переменных вблизи точки (х1,…,хn) используют Для нахождения локального минимума функции myfm многих переменных вблизи точки (х1,…,хn) используют …
Pic.14
Метод Нельдера-Мида Для нахождение минимума используют симплекс метод Нельдера-Мида. Он заключается
Метод Нельдера-Мида Для нахождение минимума используют симплекс метод Нельдера-Мида. Он заключается в следующем: берутся 3 вершины вокруг начального положения, сравниваются значения и выбираются 2 …
Pic.15
Замечание Замечание Для нахождения начального значения (x1,x2,…,xn), нужно получить представление о
Замечание Замечание Для нахождения начального значения (x1,x2,…,xn), нужно получить представление о поведении функции, например, построив линии уровня на плоскости с помощью функции contour.
Pic.16
Задание дополнительных параметров Функции fzero, fminbnd и fminsearch позволяют задать дополнительны
Задание дополнительных параметров Функции fzero, fminbnd и fminsearch позволяют задать дополнительный параметр options, контролирующий вычислительный процесс: options = optimset(…, вид контроля, …
Pic.17
Таблица 1 Значения дополнительных параметров
Таблица 1 Значения дополнительных параметров
Pic.18
«Вычисления в MATLAB», слайд 18
Pic.19
Замечание Замечание Ограничивать количество вызовов функции и число итераций имеет смысл, если есть
Замечание Замечание Ограничивать количество вызовов функции и число итераций имеет смысл, если есть опасение, что получить решение не удается из-за расхождения вычислительного процесса.
Pic.20
Пример 3 Пример 3 Найти минимум функции f(x, y)= sin(πx)*sin(πy) вблизи точки [1. 4, 0. 6] с точност
Пример 3 Пример 3 Найти минимум функции f(x, y)= sin(πx)*sin(πy) вблизи точки [1. 4, 0. 6] с точностью по функции до 1. 0е-09 и выводом итераций.
Pic.21
Решение В итоге, кроме результата, выведется таблица каждая строка, которой соответствует одной итер
Решение В итоге, кроме результата, выведется таблица каждая строка, которой соответствует одной итерации. В ней будет содержаться: количество вызовов функции, текущее приближение и значение функции …
Pic.22
Интегрирование функций Методы интегрирования Для вычисления определенного интеграла используются сле
Интегрирование функций Методы интегрирования Для вычисления определенного интеграла используются следующие функции:
Pic.23
1. quad('fint',a,b, Точность) 1. quad('fint',a,b, Точность) Алгоритм основан на
1. quad('fint',a,b, Точность) 1. quad('fint',a,b, Точность) Алгоритм основан на квадратурной формуле Симпсона с автоматическим подбором шага интегрирования для достижения нужной …
Pic.24
2. quad8('fint',a,b, Точность) 2. quad8('fint',a,b, Точность) Используется для д
2. quad8('fint',a,b, Точность) 2. quad8('fint',a,b, Точность) Используется для достаточно гладких функции и алгоритм основан на более точных квадратурных формулах Ньютона-Котеса. …
Pic.25
quadl('fint',a,b, Точность) quadl('fint',a,b, Точность) Применяется для функций
quadl('fint',a,b, Точность) quadl('fint',a,b, Точность) Применяется для функций с интегрируемыми особенностями (например: в нуле). Алгоритм основан на квадратурных формулах …
Pic.26
Пример 4 Пример 4 Вычислить по quad8 с точностью 10-12. Решение
Пример 4 Пример 4 Вычислить по quad8 с точностью 10-12. Решение
Pic.27
Вычисление интегралов зависящих от параметров Пример 5 Вычислить интеграл при значениях параметров р
Вычисление интегралов зависящих от параметров Пример 5 Вычислить интеграл при значениях параметров р1=0. 6, р2=0. 7 по квадратурным формулам Ньютона-Котеса с автоматическим выбором шага с точностью …
Pic.28
Решение Решение
Решение Решение
Pic.29
Интегралы с переменным верхним пределом Пример 6 Вычислить интеграл с точностью 10-6.
Интегралы с переменным верхним пределом Пример 6 Вычислить интеграл с точностью 10-6.
Pic.30
Решение Решение
Решение Решение
Pic.31
Численное решение дифференциальных уравнений Задача Коши для дифференциального уравнения произвольно
Численное решение дифференциальных уравнений Задача Коши для дифференциального уравнения произвольного порядка имеет вид:
Pic.32
Схема решения в MATLAB состоит из следующих этапов: Схема решения в MATLAB состоит из следующих этап
Схема решения в MATLAB состоит из следующих этапов: Схема решения в MATLAB состоит из следующих этапов: 1. Приведение дифференциального уравнения к системе дифференциального уравнений первого …
Pic.33
Пример 7 Пример 7 Задача о колебаниях под воздействием внешней силы в среде, оказывающей сопротивлен
Пример 7 Пример 7 Задача о колебаниях под воздействием внешней силы в среде, оказывающей сопротивление колебаниям: y''+2y'+10y=sin t - уравнение, описывающее движение. y(0)=1 – кордита …
Pic.34
Тогда система дифференциальных уравнений с начальными условиями принимает вид:
Тогда система дифференциальных уравнений с начальными условиями принимает вид:
Pic.35
Второй этап состоит в написании файл-функции имеющей два входных аргумента: переменную t и вектор, р
Второй этап состоит в написании файл-функции имеющей два входных аргумента: переменную t и вектор, размер которого равен числу неизвестных функций системы. Второй этап состоит в написании …
Pic.36
Третий шаг. Этот шаг состоит в решении задачи при помощи решателя или солвера (об их видах поговорим
Третий шаг. Этот шаг состоит в решении задачи при помощи решателя или солвера (об их видах поговорим позже). Например, при помощи солвера ode45.
Pic.37
Входными аргументами солверов являются: Входными аргументами солверов являются: Имя файл-функции в а
Входными аргументами солверов являются: Входными аргументами солверов являются: Имя файл-функции в апострофах; 2. Вектор-строка с начальным и конечным значением времени наблюдения (например, [0, t0], …
Pic.38
Выходных аргументов два: Выходных аргументов два: Вектор Т содержащий значение времени; 2. Матрица з
Выходных аргументов два: Выходных аргументов два: Вектор Т содержащий значение времени; 2. Матрица значений Y неизвестных функций в соответствующие моменты времени. В первом столбце - значения первой …
Pic.39
Итак, файл программа для 0≤ t≤ 15 имеет вид. Итак, файл программа для 0≤ t≤ 15 имеет вид. Y0= [1; 0]
Итак, файл программа для 0≤ t≤ 15 имеет вид. Итак, файл программа для 0≤ t≤ 15 имеет вид. Y0= [1; 0]; [T, Y]=ode45('oscil', [0 15], Y0); plot(T, Y(:, 1), 'r') - график решения …
Pic.40
Рис. 2 Решение дифференциального уравнения
Рис. 2 Решение дифференциального уравнения
Pic.41
Замечание Замечание Здесь использовался солвер ode45, который применяет метод Рунге-Кутта четвертого
Замечание Замечание Здесь использовался солвер ode45, который применяет метод Рунге-Кутта четвертого порядка. При применении солвера очень важно учитывать свойства системы дифференциальных уравнений, …
Pic.42
Жесткие дифференциальные системы Решение уравнений Лотка-Вольтерра Во многих приложениях встречаются
Жесткие дифференциальные системы Решение уравнений Лотка-Вольтерра Во многих приложениях встречаются так называемые «жесткие» системы дифференциальных уравнений. Строго общепринятого определение …
Pic.43
Например Например , причем, λ1, λ2>0 и >>1. Число s называют коэффициентом жесткости систем
Например Например , причем, λ1, λ2>0 и >>1. Число s называют коэффициентом жесткости системы. Решение имеет вид:
Pic.44
Отметим, что жесткость – это качество дифференциальной системы, а не разностного метода (обычно нели
Отметим, что жесткость – это качество дифференциальной системы, а не разностного метода (обычно нелинейные системы). Отметим, что жесткость – это качество дифференциальной системы, а не разностного …
Pic.45
Число хищников и жертв в течение времени t изменяется по закону Число хищников и жертв в течение вре
Число хищников и жертв в течение времени t изменяется по закону Число хищников и жертв в течение времени t изменяется по закону (2) где P – увеличение числа жертв в отсутствие хищников R – уменьшение …
Pic.46
Решением системы (2) является замкнутая кривая. Возьмем для примера P=3, R=2, p=r=1 y1(0)=3 – в нача
Решением системы (2) является замкнутая кривая. Возьмем для примера P=3, R=2, p=r=1 y1(0)=3 – в начальный момент 3 жертвы. y2(0)=4 – в начальный момент 4 хищника. t≤100 Решая эту систему солверами …
Pic.47
Рис. 3 Решения солверами ode45 и ode23s Рис. 3 Решения солверами ode45 и ode23s
Рис. 3 Решения солверами ode45 и ode23s Рис. 3 Решения солверами ode45 и ode23s
Pic.48
Вычисление, по умолчанию, в ode45 и ode23s происходит при одной точности, а приближенные решения сил
Вычисление, по умолчанию, в ode45 и ode23s происходит при одной точности, а приближенные решения сильно отличаются друг от друга, причем ode23s намного точнее. Более того, для уравнения Ван-дер-Поля …
Pic.49
Управление процессом решения Для эффективного решения дифференциальных уравнений необходимо выбрать
Управление процессом решения Для эффективного решения дифференциальных уравнений необходимо выбрать подходящий солвер в зависимости от свойств решаемой задачи, произвести необходимые установки, …
Pic.50
Стратегия применения солверов MATLAB (см. справку по MATLAB). ode45 – дает хорошие результаты и осно
Стратегия применения солверов MATLAB (см. справку по MATLAB). ode45 – дает хорошие результаты и основан на методе Рунге-Кутта четвертого и пятого порядков точности;
Pic.51
ode23 – используется в задачах содержащих небольшую жесткость, когда требуется получить решение с не
ode23 – используется в задачах содержащих небольшую жесткость, когда требуется получить решение с невысокой степенью точности. Формулы Рунге-Кутта 2 и 3 порядка точности; ode113 – эффективен для …
Pic.52
Если все попытки применения этих солверов не приводят к успеху, то возможно решаемая система являетс
Если все попытки применения этих солверов не приводят к успеху, то возможно решаемая система является жесткой и можно применить: Если все попытки применения этих солверов не приводят к успеху, то …
Pic.53
Все солверы пытаются найти решение с относительной точностью 10-3. Все солверы пытаются найти решени
Все солверы пытаются найти решение с относительной точностью 10-3. Все солверы пытаются найти решение с относительной точностью 10-3. Для задания другой точности используются дополнительный параметр …
Pic.54
«Вычисления в MATLAB», слайд 54
Pic.55
Точное решение нашей системы будет Точное решение нашей системы будет Если воспользуемся ode45, то д
Точное решение нашей системы будет Точное решение нашей системы будет Если воспользуемся ode45, то для 10-3 получим
Pic.56
«Вычисления в MATLAB», слайд 56
Pic.57
Замечание Замечание Существует отдельный пакет для уравнений в частных производных Partial Diffentia
Замечание Замечание Существует отдельный пакет для уравнений в частных производных Partial Diffential Equation ToolBOX.
Pic.58
Решение граничных задач Рассмотрим граничную задачу общего вида для обыкновенного дифференциального
Решение граничных задач Рассмотрим граничную задачу общего вида для обыкновенного дифференциального уравнения второго порядка: где - заданные числа
Pic.59
Решение задачи состоит из следующих этапов: Решение задачи состоит из следующих этапов: 1. Преобразо
Решение задачи состоит из следующих этапов: Решение задачи состоит из следующих этапов: 1. Преобразование дифференциального уравнения второго порядка к системе двух уравнений первого порядка; 2. …
Pic.60
Первые два этапа выполняются практически так же, как и при решении задачи Коши. Для выполнения 3-го
Первые два этапа выполняются практически так же, как и при решении задачи Коши. Для выполнения 3-го пункта граничные условия приводим к виду:
Pic.61
Файл-функция описывающая граничные условия должна зависеть от двух аргументов – векторов ya, yb и им
Файл-функция описывающая граничные условия должна зависеть от двух аргументов – векторов ya, yb и иметь структуру: Файл-функция описывающая граничные условия должна зависеть от двух аргументов – …
Pic.62
Выбор начального приближения может оказать влияние на решение солвером bvp4c. MATLAB находит приближ
Выбор начального приближения может оказать влияние на решение солвером bvp4c. MATLAB находит приближенное решение граничных задач методом конечных разностей, то есть получающиеся решение есть вектор …
Pic.63
Пример 8 Пусть [a, b]= [0, 2*pi] и начальное приближение y1=1, y2=0, тогда initsol=bvpinit ([0: pi/1
Пример 8 Пусть [a, b]= [0, 2*pi] и начальное приближение y1=1, y2=0, тогда initsol=bvpinit ([0: pi/10:2*pi], [1 0]);
Pic.64
Замечание Заданная сетка может быть изменена солвером в процессе решения, для обеспечения требуемой
Замечание Заданная сетка может быть изменена солвером в процессе решения, для обеспечения требуемой точности.
Pic.65
Следующим этапом мы должны вызвать солвер: sol=bvp4c('Функция правой части', 'bound&#
Следующим этапом мы должны вызвать солвер: sol=bvp4c('Функция правой части', 'bound', initsol); где структура sol имеет поля x, y, причем sol. x – координаты сетки полученной и …
Pic.66
Другими словами sol. x~T, sol. y~Y. Визуализация результата происходит аналогично задаче Коши.
Другими словами sol. x~T, sol. y~Y. Визуализация результата происходит аналогично задаче Коши.


Скачать презентацию

Если вам понравился сайт и размещенные на нем материалы, пожалуйста, не забывайте поделиться этой страничкой в социальных сетях и с друзьями! Спасибо!