Поскольку основной уровень, объекты sde принимают дрейф и объекты диффузии вместо функций, доступных (t, Xt), можно создать объекты sde с комбинациями индивидуально настраиваемого дрейфа или функций диффузии и объекты. drift и объекты уровня diffusion инкапсулируют детали входных параметров, чтобы оптимизировать эффективность во время выполнения для любой данной комбинации входных параметров.
Несмотря на то, что drift и объекты diffusion отличаются по деталям их представления, они идентичны в своем базовом внедрении и интерфейсе. Они смотрят, чувствуют себя подобно и оценены как функции:
Объект drift позволяет вам создавать объекты уровня дрейфа формы:
где:
A является NVARS-by-1 функциональное доступное использование с векторным знаком (t, Xt) интерфейс.
B является NVARS-by-NVARS функциональное доступное использование с матричным знаком (t, Xt) интерфейс.
Точно так же объект diffusion позволяет вам создавать объекты уровня диффузии:
где:
D является NVARS-by-NVARS диагональная функция с матричным знаком.
Каждый диагональный элемент D является соответствующим элементом вектора состояния, повышенного до соответствующего элемента экспоненты Alpha, который является NVARS-by-1 функция с векторным знаком.
V является NVARS-by-NBROWNS функция уровня энергозависимости с матричным знаком Sigma.
Alpha и Sigma являются также доступным использованием (t, Xt) интерфейс.
Можно выразить drift и объекты diffusion в самой общей форме, чтобы подчеркнуть функциональное (t, Xt) интерфейс. Однако можно задать компоненты A и B как функции, которые придерживаются общего (t, Xt) интерфейс, или как массивы MATLAB® соответствующей размерности.
В этом примере вы создаете drift, и уровень diffusion возражает, чтобы создать ту же модель как в Примере: Основывайте Модели SDE.
Создайте функцию уровня дрейфа F и функция уровня диффузии G:
F = drift(0, 0.1) % Drift rate function F(t,X)F =
Class DRIFT: Drift Rate Specification
-------------------------------------
Rate: drift rate function F(t,X(t))
A: 0
B: 0.1
G = diffusion(1, 0.3) % Diffusion rate function G(t,X)G =
Class DIFFUSION: Diffusion Rate Specification
---------------------------------------------
Rate: diffusion rate function G(t,X(t))
Alpha: 1
Sigma: 0.3
Каждый отображения объекта как структура MATLAB и содержит дополнительную информацию, а именно, класс объекта и краткое описание. Однако в отличие от представления SDE, сводные данные размерности модели не появляются, потому что drift и объекты diffusion создают компоненты модели, а не модели. Ни F, ни G не содержат достаточно информации, чтобы охарактеризовать размерность проблемы.
Отображенные параметры объекта drift:
Rate: функция уровня дрейфа, F(t,Xt)
A: термин прерывания, A(t,Xt), F(t,Xt)
B: термин первого порядка, B(t,Xt), F(t,Xt)
A и B позволяют вам запросить исходные входные параметры. Функция, сохраненная в Rate полностью, инкапсулирует совместное воздействие A и B.
Отображенные параметры объекта diffusion:
Rate: функция уровня диффузии, G(t,Xt).
\alpha: экспонента вектора состояния, которая определяет формат D(t,Xt) G(t,Xt).
\sigma: уровень энергозависимости, V(t,Xt), G(t,Xt).
Снова, Alpha и Sigma позволяют вам запросить исходные входные параметры. (Совместное воздействие отдельного Alpha и параметров Sigma полностью инкапсулируется функцией, сохраненной в Rate.) Функции Rate являются механизмами вычисления для drift и объектов diffusion, и являются единственными параметрами, требуемыми для симуляции.
Объект sdeddo выводит от объекта basesde. Чтобы использовать этот объект, необходимо передать дрейф, и уровень диффузии возражает против sdeddo.
Создайте drift и объекты уровня diffusion:
F = drift(0, 0.1); % Drift rate function F(t,X) G = diffusion(1, 0.3); % Diffusion rate function G(t,X)
Передайте эти объекты объекту sdeddo:
obj = sdeddo(F, G) % dX = F(t,X)dt + G(t,X)dWobj =
Class SDEDDO: SDE from Drift and Diffusion Objects
--------------------------------------------------
Dimensions: State = 1, Brownian = 1
--------------------------------------------------
StartTime: 0
StartState: 1
Correlation: 1
Drift: drift rate function F(t,X(t))
Diffusion: diffusion rate function G(t,X(t))
Simulation: simulation method/function simByEuler
A: 0
B: 0.1
Alpha: 1
Sigma: 0.3
В этом примере, отображения объекта дополнительные параметры, сопоставленные с входным дрейфом и объектами диффузии.
bm | cev | cir | diffusion | drift | gbm | heston | hwv | interpolate | sde | sdeddo | sdeld | sdemrd | simByEuler | simBySolution | simBySolution | simulate | ts2func