22
33f = (t,u) -> 1.01 * u
44σ = (t,u) -> 0.87 * u
5- analytic = ( t,u0,W) -> u0.* exp .(0.63155 * t+ 0.87 * W)
5+ (p :: typeof (f))( :: Type{Val{:analytic}} , t,u0,W) = u0.* exp .(0.63155 * t+ 0.87 * W)
66"""
77```math
88du_t = βudt + αudW_t
@@ -14,7 +14,7 @@ u(t,u0,W_t)=u0\\exp((α-\\frac{β^2}{2})t+βW_t)
1414```
1515
1616"""
17- prob_sde_linear = SDETestProblem (f,σ,1 / 2 ,analytic )
17+ prob_sde_linear = SDEProblem (f,σ,1 / 2 ,( 0.0 , 1.0 ) )
1818
1919f = (t,u,du) -> begin
2020 for i = 1 : length (u)
2626 du[i] = .87 * u[i]
2727 end
2828end
29+ (p:: typeof (f))(:: Type{Val{:analytic}} ,t,u0,W) = u0.* exp .(0.63155 * t+ 0.87 * W)
2930"""
30318 linear SDEs (as a 4x2 matrix):
3132
@@ -38,12 +39,12 @@ where β=1.01, α=0.87, and initial condtion u0=1/2 with solution
3839u(t,u0,W_t)=u0\\ exp((α-\\ frac{β^2}{2})t+βW_t)
3940```
4041"""
41- prob_sde_2Dlinear = SDETestProblem (f,σ,ones (4 ,2 )/ 2 ,analytic )
42+ prob_sde_2Dlinear = SDEProblem (f,σ,ones (4 ,2 )/ 2 ,( 0.0 , 1.0 ) )
4243
4344
4445f = (t,u) -> - .25 * u* (1 - u^ 2 )
4546σ = (t,u) -> .5 * (1 - u^ 2 )
46- analytic = ( t,u0,W) -> ((1 + u0). * exp .(W)+ u0- 1 ). / ((1 + u0). * exp .(W)+ 1 - u0)
47+ (p :: typeof (f))( :: Type{Val{:analytic}} , t,u0,W) = ((1 + u0). * exp .(W)+ u0- 1 ). / ((1 + u0). * exp .(W)+ 1 - u0)
4748"""
4849```math
4950du_t = \\ frac{1}{4}u(1-u^2)dt + \\ frac{1}{2}(1-u^2)dW_t
@@ -55,11 +56,11 @@ and initial condtion u0=1/2, with solution
5556u(t,u0,W_t)=\\ frac{(1+u0)\\ exp(W_t)+u0-1}{(1+u0)\\ exp(W_t)+1-u0}
5657```
5758"""
58- prob_sde_cubic = SDETestProblem (f,σ,1 / 2 ,analytic )
59+ prob_sde_cubic = SDEProblem (f,σ,1 / 2 ,( 0.0 , 1.0 ) )
5960
6061f = (t,u) -> - 0.01 * sin .(u).* cos .(u).^ 3
6162σ = (t,u) -> 0.1 * cos .(u).^ 2
62- analytic = ( t,u0,W) -> atan .(0.1 * W + tan .(u0))
63+ (p :: typeof (f))( :: Type{Val{:analytic}} , t,u0,W) = atan .(0.1 * W + tan .(u0))
6364"""
6465```math
6566du_t = -\\ frac{1}{100}\s in(u)\c os^3(u)dt + \\ frac{1}{10}\c os^{2}(u_t) dW_t
@@ -71,13 +72,13 @@ and initial condition `u0=1.0` with solution
7172u(t,u0,W_t)=\\ arctan(\\ frac{W_t}{10} + \\ tan(u0))
7273```
7374"""
74- prob_sde_wave = SDETestProblem (f,σ,1. ,analytic )
75+ prob_sde_wave = SDEProblem (f,σ,1. ,( 0.0 , 1.0 ) )
7576
7677const sde_wave_α = 0.1
7778const sde_wave_β = 0.05
7879f = (t,u) -> sde_wave_β./ sqrt .(1 + t) - u./ (2 * (1 + t))
7980σ = (t,u) -> sde_wave_α* sde_wave_β./ sqrt .(1 + t)
80- analytic = ( t,u0,W) -> u0./ sqrt .(1 + t) + sde_wave_β* (t+ sde_wave_α* W). / sqrt .(1 + t)
81+ (p :: typeof (f))( :: Type{Val{:analytic}} , t,u0,W) = u0./ sqrt .(1 + t) + sde_wave_β* (t+ sde_wave_α* W). / sqrt .(1 + t)
8182
8283"""
8384Additive noise problem
@@ -92,7 +93,7 @@ and initial condition u0=1.0 with α=0.1 and β=0.05, with solution
9293u(t,u0,W_t)=\\ frac{u0}{\\ sqrt{1+t}} + \\ frac{β(t+αW_t)}{\\ sqrt{1+t}}
9394```
9495"""
95- prob_sde_additive = SDETestProblem (f,σ,1. ,analytic )
96+ prob_sde_additive = SDEProblem (f,σ,1. ,( 0.0 , 1.0 ) )
9697
9798const sde_wave_αvec = [0.1 ;0.1 ;0.1 ;0.1 ]
9899const sde_wave_βvec = [0.5 ;0.25 ;0.125 ;0.1115 ]
@@ -107,13 +108,13 @@ end
107108 du[i] = sde_wave_αvec[i]* sde_wave_βvec[i]/ sqrt (1 + t)
108109 end
109110end
110- analytic = ( t,u0,W) -> u0./ sqrt (1 + t) + sde_wave_βvec.* (t+ sde_wave_αvec.* W). / sqrt (1 + t)
111+ (p :: typeof (f))( :: Type{Val{:analytic}} , t,u0,W) = u0./ sqrt (1 + t) + sde_wave_βvec.* (t+ sde_wave_αvec.* W). / sqrt (1 + t)
111112
112113"""
113114A multiple dimension extension of `additiveSDEExample`
114115
115116"""
116- prob_sde_additivesystem = SDETestProblem (f,σ,[1. ;1. ;1. ;1. ],analytic )
117+ prob_sde_additivesystem = SDEProblem (f,σ,[1. ;1. ;1. ;1. ],( 0.0 , 1.0 ) )
117118
118119f = @ode_def_nohes LorenzSDE begin
119120 dx = σ* (y- x)
0 commit comments