Создайте или измените структуру опций краевой задачи
options = bvpset('name1',value1,'name2',value2,...)
options = bvpset(oldopts,'name1',value1,...)
options = bvpset(oldopts,newopts)
bvpset
options = bvpset('name1',value1,'name2',value2,...)
создает структуру options
то, что можно предоставить к решателю для краевой задачи bvp4c
, в котором именованные свойства имеют заданные значения. Любые незаданные свойства сохраняют свои значения по умолчанию. Для всех свойств достаточно ввести только начальные символы, которые однозначно определяют свойство. bvpset
игнорирует регистр для имен свойства.
options = bvpset(oldopts,'name1',value1,...)
изменяет существующую структуру опций oldopts
. Это перезаписывает любые значения в oldopts
это задано с помощью пар имя/значение, и возвращает модифицированную структуру как выходной аргумент.
options = bvpset(oldopts,newopts)
комбинирует существующую структуру опций oldopts
с новой структурой опций newopts
. Любые значения установлены в newopts
перезапишите соответствующие значения в oldopts
.
bvpset
без входных параметров отображает все имена свойства и их возможные значения, указывая на значения по умолчанию с фигурными скобками {}
.
Можно использовать функцию bvpget
запрашивать options
структура для значения определенного свойства.
bvpset
позволяет вам задать свойства для решателя для краевой задачи bvp4c
. Существует несколько категорий свойств, которые можно установить:
Поскольку bvp4c
использует формулу словосочетания, числовое решение основано на сетке точек, в которых удовлетворяют уравнениям словосочетания. Поймайте в сети выбор, и контроль ошибок основаны на невязке этого решения, такого, что вычисленное решение S (x) является точным решением встревоженной проблемы S ′ (x) = f (x, S (x)) + res (x). На каждом подынтервале mesh, норме невязки в i
компонент th решения, res(i)
, оценивается и требуется, чтобы быть меньше чем или равным допуску. Этот допуск является функцией относительных и абсолютных погрешностей, RelTol
и AbsTol
, заданный пользователем.
Следующая таблица описывает ошибочные свойства допуска.
Ошибочные свойства допуска BVP
Следующая таблица описывает свойство векторизации BVP. Векторизация функции ОДУ, используемой bvp4c
отличается от векторизации, используемой решателями ОДУ:
Для bvp4c
, функция ОДУ должна быть векторизована относительно первого аргумента, а также второго, так, чтобы F([x1 x2 ...],[y1 y2 ...])
возвращает [F(x1,y1) F(x2,y2)...]
.
bvp4c
преимущества от векторизации, даже когда аналитические Якобианы обеспечиваются. Для жестких решателей ОДУ проигнорирована векторизация, когда аналитические Якобианы используются.
Свойства векторизации
Свойство | Значение | Описание |
---|---|---|
|
| Установите на сообщить С MATLAB® обозначение массивов, это обычно - легкий вопрос, чтобы векторизовать функцию ОДУ. В function dydx = shockODE(x,y,e) pix = pi*x; dydx = [ y(2,:)... -x/e.*y(2,:)-pi^2*cos(pix)- pix/e.*sin(pix)]; |
По умолчанию, bvp4c
решатель аппроксимирует все частные производные конечными разностями. bvp4c
может быть более эффективным, если вы обеспечиваете аналитические частные производные ∂f / ∂ y дифференциальных уравнений и аналитические частные производные, ∂bc / ∂ ya и ∂bc / ∂ yb, граничных условий. Если проблема включает неизвестные параметры, необходимо также обеспечить частные производные, ∂f / ∂ p и ∂bc / ∂ p, относительно параметров.
Следующая таблица описывает аналитические свойства частных производных.
BVP аналитические свойства частной производной
Свойство | Значение | Описание |
---|---|---|
| Указатель на функцию | Указатель на функцию, который вычисляет аналитические частные производные f (x, y). При решении y ′ = f (x, y), устанавливает это свойство на |
| Указатель на функцию | Указатель на функцию, который вычисляет аналитические частные производные bc (ya, yb). Для граничных условий bc (ya, yb), устанавливает это свойство на |
bvp4c
может решить сингулярные задачи формы
изложенный на интервале [0, b], где b> 0. Для таких проблем задайте постоянный матричный S как значение SingularTerm
. Для уравнений этой формы, odefun
оценивает только f (x, y, p) термин, где p представляет неизвестные параметры, если таковые имеются.
Сингулярное свойство BVP
Свойство | Значение | Описание |
---|---|---|
| Постоянная матрица | Сингулярный термин сингулярного BVPs. Установите на постоянный матричный S для уравнений формы изложенный на интервале [0, b], где b> 0. |
bvp4c
решает систему алгебраических уравнений, чтобы определить числовое решение BVP в каждой из точек mesh. Размер алгебраической системы зависит от количества дифференциальных уравнений (n
) и количество mesh указывает в текущей mesh (N
). Когда позволенное количество точек mesh исчерпывается, остановки расчета, bvp4c
отображает предупреждающее сообщение и возвращает решение, которое оно нашло до сих пор. Это решение не удовлетворяет ошибочному допуску, но это может обеспечить превосходное исходное предположение для расчетов, перезапущенных с расслабленными ошибочными допусками или увеличенным значением NMax
.
Следующая таблица описывает свойство размера mesh.
Свойство размера Mesh BVP
Свойство | Значение | Описание |
---|---|---|
| положительное целое число { | Максимальное количество точек mesh позволило при решении BVP, где |
Stats
свойство позволяет вам просмотреть статистику решения.
Следующая таблица описывает свойство статистики решения.
Свойство статистической величины решения BVP
Свойство | Значение | Описание |
---|---|---|
|
| Задает, отображены ли статистические данные о расчетах. Если
|
Создать структуру опций, которая изменяет допуск относительной погрешности bvp4c
от значения по умолчанию 1e-3
к 1e-4
, войти
options = bvpset('RelTol',1e-4);
Восстановить значение 'RelTol'
от options
, войти
bvpget(options,'RelTol') ans = 1.0000e-004