On the construction of explicit exponential-based
schemes for sti¤ SDEs
Hugo de la Cruz
Escola de Matemática Aplicada (FGV-EMAp)
Rio de Janeiro
dx
(
t
) =
f
(
t
,
x
(
t
))
dt
+
m
∑
j
=
1
g
j
(
t
,
x
(
t
))
dw
j
t
x
2
R
dwt
= (
w
1t
,
. . .,
w
tm)
m
dimensional Brownian Motion,
f
:
[
0,T
]
R
d!
R
dgj
:
[
0,T
]
R
d!
R
dsemi-linear SDE
dx
(
t
) = (
Ax
(
t
) +
f
(
x
(
t
)))
dt
+
m
∑
j
=
1
g
j
(
x
(
t
))
dw
t
j
Y. Komori, K. Burrage, A stochastic
Exponential Euler scheme
for simulation of sti¤
biochemical reaction system, BIT, 10.1007/s10543-014-0485-1 (2014)
C. Shi, Y. Xiao, C. Zhang, The convergence and MS stability of
Exponential Euler
By Ito formula to
f
,L
0f
,
L
jf
:
f
(
t,
x
(
t
))
=
f
(
tn,x
(
tn
)) +
t
Z
n+1tn
L
0f
(
s,
x
(
s
))
ds
+
m
∑
j=1t
Z
n+1tn
L
jf
(
s,
x
(
s
))
dw
j tBy Ito formula to
f
,L
0f
,
L
jf
:
f
(
t,
x
(
t
))
=
f
(
tn,x
(
tn
)) +
t
Z
n+1tn
L
0f
(
s,
x
(
s
))
ds
+
m
∑
j=1t
Z
n+1tn
L
jf
(
s,
x
(
s
))
dw
j t=
f
(
tn
,x
(
tn
)) +
L
0f
(
tn
,
x
(
tn
))
tZ
n+1tn
ds
+
m
∑
j=1L
jf
(
tn
,x
(
tn
))
t
Z
n+1tn
By Ito formula to
f
,L
0f
,
L
jf
:
f
(
t,
x
(
t
))
=
f
(
tn,x
(
tn
)) +
t
Z
n+1tn
L
0f
(
s,
x
(
s
))
ds
+
m
∑
j=1t
Z
n+1tn
L
jf
(
s,
x
(
s
))
dw
j t=
f
(
tn
,x
(
tn
)) +
L
0f
(
tn
,
x
(
tn
))
tZ
n+1tn
ds
+
m
∑
j=1L
jf
(
tn
,x
(
tn
))
t
Z
n+1tn
dw
tj+
R
where
L
0f
=
∂f
∂t
+
Jf
f
+
1
2
m
∑
j=1(
I
g
|j
)
fxx
gj
L
jf
=
Jf
gj
,
Then
:
f
(
t,
x
(
t
))
=
f
(
tn
,x
(
tn
)) +
"
∂f
∂t
+
Jf
f
+
1
2
m
∑
j=1(
I
g
|j
)
fxx
gj
#
(tn,x(tn))
(
t
tn
)
+
m
∑
j=1[
Jf
gj
]
(t n,x(tn))(
w
j t
w
Then
:
f
(
t,
x
(
t
))
=
f
(
tn
,x
(
tn
)) +
"
∂f
∂t
+
Jf
f
+
1
2
m
∑
j=1(
I
g
|j
)
fxx
gj
#
(tn,x(tn))
(
t
tn
)
+
m
∑
j=1[
Jf
gj
]
(t n,x(tn))(
w
j t
w
j tn
) +
R
1Also
x
(
t
) =
x
(
tn
) +
f
(
tn
,x
(
tn
))(
t
tn
) +
m
∑
j=1gj
(
tn
,x
(
tn
))(
w
tjw
j tn) +
R
2thus
,
Jf
(
x
(
t
)
x
(
tn
)) =
Jf
f
(
tn
,
x
(
tn
))(
t
tn
) +
m∑
j=1[
Jf
gj
]
(t n,x(tn))(
w
j t
w
j tn
) +
¯
R
2Then
:
f
(
t
,x
(
t
))
f
(
tn,x
(
tn
)) +
J
f(
x
(
t
)
x
(
tn
)) +
"
∂f
∂t
+
1
2
m
∑
j=1(
I
g
|j
)
fxx
gj
#
dx
(
t
)
=
0
@
Jf
(
x
(
t
)
xn
) +
"
∂f
∂t
+
1
2
m
∑
j=1(
I
g
|j
)
fxx
gj
#
(tn,xn)
(
t
tn
) +
f
(
tn,
xn
)
1
A
dt
+
m
∑
j=1gj
(
t,
xn
)
dw
tjdx
(
t
)
=
0
@
Jf
(
x
(
t
)
xn
) +
"
∂f
∂t
+
1
2
m
∑
j=1(
I
g
|j
)
fxx
gj
#
(tn,xn)
(
t
tn
) +
f
(
tn,
xn
)
1
A
dt
+
m
∑
j=1gj
(
t,
xn
)
dw
tjLet
Z
(
t
) = (
x
(
t
)
xn
,
t
tn
,
f
(
tn
,xn
)
,
1
)
>2
R
2d+2then
d
Z
(
t
) =
M Z
(
t
)
dt
+
0
@
G
(
t
,xn
)
0
0
1
A
dWt
Z
(
tn
) = [
01
d0
f
(
tn,
xn
)
1
]
>,
where
M
=
0
B
B
@
A
nb
nI
d d0
d 101
d0
01
d1
0
d d0
d 10
d d0
d 101
d0
01
d0
1
C
C
A
.
Solution:
Z
(
t
) =
e
M(t tn)Z
(
tn
) +
t
R
tn
e
M(t s)0
@
G
(
t,
xn
)
0
0
Solution:
Z
(
t
) =
e
M(t tn)Z
(
tn
) +
t
R
tn
e
M(t s)0
@
G
(
t,
xn
)
0
0
1
A
dWs
-Looking at the …rst component of
Z
(
t
)
, it follows that
x
(
t
)
, can be computed by
x
(
t
) =
xn
+
h
I
d d0
d (d+2)i
e
M(t tn)[
0
d d
0
f
(
tn
,xn
)
1
]
>+
h
I
d d0
d (d+2)i
R
ttn
e
M(t s)0
@
G
(
t,
0
xn
)
0
1
A
dWs
=
xn
+
h
I
d d0
d (d+2)i
e
M(t tn)[
0
d d
0
f
(
tn
,xn
)
1
]
>+
tR
tn
e
An(t s)G
(
t
,xn
)
dWs
Solution:
Z
(
t
) =
e
M(t tn)Z
(
tn
) +
t
R
tn
e
M(t s)0
@
G
(
t,
xn
)
0
0
1
A
dWs
-Looking at the …rst component of
Z
(
t
)
, it follows that
x
(
t
)
, can be computed by
x
(
t
) =
xn
+
h
I
d d0
d (d+2)i
e
M(t tn)[
0
d d
0
f
(
tn
,xn
)
1
]
>+
h
I
d d0
d (d+2)i
R
ttn
e
M(t s)0
@
G
(
t,
0
xn
)
0
1
A
dWs
=
xn
+
h
I
d d0
d (d+2)i
e
M(t tn)[
0
d d
0
f
(
tn
,xn
)
1
]
>+
tR
tn
e
An(t s)G
(
t
,xn
)
dWs
Thus, in particular
x
(
tn
+1) =
xn
+
h
I
d d0
d (d+2)i
e
Mh[
0
d d0
f
(
tn
,xn
)
1
]
>+
tnR
+1tn
Let
t
R
tn
e
An(t s)G
(
s,
xn
)
dWs
=
e
Antη
(
t
)
where
η
(
t
) =
m
∑
i=1Z
ttn
e
Anugi
(
u,
xn
)
dw
iu
is the solution of the SDE
d
η
(
t
) =
m
∑
i=1e
Antgi
(
t,
xn
)
dw
i tη
(
tn
) =
0
- We need to compute
e
Antn+1η
(
tn
+1)
- The application of the Ito formula to
U
(
t,
η
) =
ρ
(
t
) =
e
Antn+1η
(
t
)
yields
d
ρ
(
t
) =
m
∑
i=1e
An(tn+1 t)gi
(
t
,xn
)
dw
i(
t
)
ρ
(
tn
) =
0
- We need to compute
e
Antn+1η
(
tn
+1)
- The application of the Ito formula to
U
(
t,
η
) =
ρ
(
t
) =
e
Antn+1η
(
t
)
yields
d
ρ
(
t
) =
m
∑
i=1e
An(tn+1 t)gi
(
t
,xn
)
dw
i(
t
)
ρ
(
tn
) =
0
- By the order-1.5 strong Taylor scheme we have the approximation
ρ
(
tn
+1) =
e
Anhm
∑
i=1gi
(
tn
,
xn
)
∆
w
ni+ (
A
ngi(
tn
,
xn
)
∆
z
ni+
dgi
(
tn
,
xn
)
dt
)(
∆
w
i n
h
∆
z
in)
where
∆
w
in
=
w
tin+1w
i tn
=
p
hu
i1
and
∆
z
ni=
R
tn+1tn
R
s2tn
dw
i s1
ds
2=
1 2
h
2 3
(
u
ixn
+1=
xn
+
h
I
d d0
d (d+2)i
e
Mh[
0
d d0
f
(
tn
,
xn
)
1
]
>+
e
Anh∑
m i=1gi
(
tn
,xn
)
∆
w
ni+ (
A
ngi(
tn
,
xn
)
∆
z
ni+
dgi
(
tn
,xn
)
dt
)(
∆
w
i
n
h
∆
z
in)
,
Implementation
The
Padé algorithm with scaling-squaring strategy
for computing
e
C[Golub-Van Loan]:
1
Determine the minimum integer
k
such that
2Ck<
122
Compute
N
q(
C
2
k)
=
q
∑
j=0(
2q
j
)
!q!
(
2q
)
!j!
(
q
j
)
!
C
jD
q(
C
2
k)
=
q
∑
j=0(
2q
j
)
!q!
(
2q
)
!j!
(
q
j
)
!
(
C
)
j.
3
Compute
P
q(
2Ck) =
[D
q(
2Ck)]
1N
q(
2Ck)
, (solving the system
D
q(
2Ck)P
q(
2Ck) =
N
q(
2Ck)
)
4
Compute
[
P
q(
2Ck)]
2 kThe Adapted Padé algorithm for computing exp(Mh)
C
=
M
h. Denote
A
=
A
nh
and
b
=
b
nh, then
C
2
k=
0
B
B
@
A
b
I
d d0
d 101
d0
01
d1
0
d d0
d 10
d d0
d 101
d0
01
d0
1
C
C
A
h
2
kand, for any
j
2
C
2
k j=
0
B
B
@
A
jA
j 1b
A
j 1A
j 2b
0
1 d0
0
1 d0
0
d d0
d 10
d d0
d 101
d0
01
d0
1
C
C
A
h
2
kj
.
The Adapted Padé algorithm for computing exp(Mh)
N
q(
C
2
k)
=
0
B
B
@
I
+
A
(
α
1I
+
AS
)
(
α
1I
+
AS
)
b
(
α
1I+
AS
)
Sb
0
1 d1
0
1 dα
10
d d0
d 1I
d d0
d 101
d0
01
d1
1
C
C
A
,
and
D
q(
C
2
k)
=
0
B
B
B
@
I
+
A
α
1I
+
A^
S
α
1I
+
A^
S b
α
1I
+
A^
S
^
Sb
01
d1
01
dα
10
d d0
d 1I
d d0
d 10
1 d0
0
1 d1
1
C
C
C
A
,
where
S
=
α
2I
+
α
3A
+
...
+
αq
(
A
)
q 2,
^
S
=
α
2I
α
3A
+
...
+ (
1
)
q 2αq
(
A
)
q 2,
The Adapted Padé algorithm for computing exp(Mh)
Padé Approximation
D
q(
C
2
k)P
q(
C
2
k) =
N
q(
C
2
k)
P
q(
2Ck)
has the form:
P
q(
C
2
k) =
0
B
B
@
U1
U
2
U3
U
4
0
1 d1
0
1 dα
10
d d0
d 1I
d d0
d 101
d0
01
d1
1
C
C
A
The Adapted Padé algorithm for computing exp(Mh)
Padé Approximation
D
q(
C
2
k)P
q(
C
2
k) =
N
q(
C
2
k)
P
q(
2Ck)
has the form:
P
q(
C
2
k) =
0
B
B
@
U1
U
2
U3
U
4
0
1 d1
0
1 dα
10
d d0
d 1I
d d0
d 101
d0
01
d1
1
C
C
A
and
U
1,
U
2,
U
3,
U
4
satisfy:
h
I
+
A
α
1I
+
A^
S
i
U
1
= [
I
+
A
(
α
1I
+
AS
)]
h
I
+
A
α
1I
+
A^
S
i
U
3
= (
α
1I
+
AS
)
α
1I
+
A^
S
h
I
+
A
α
1I
+
A^
S
i
U
4
=
h
S
2α
1α
1I
+
A^
S
^
S
i
Squaring the scaled Padé Approx.
Once we haveU1,U2,U3,U4, we can compute Pq(2Ck)
2k
:
Pq(C
2k)
2k = 0 B B B B B @
(U1)2k 2
k 1
∑
i=0 (U1)i
!
U2 2
k 1
∑
i=0 (U1)i
!
U3 2
k 1
∑
i=0 (U1)i
! U4+α1
2k 2
∑
i=0
(m 1 i)(U1)i !
U2
01 d 1 01 d 2kα1
0d d 0d 1 Id d 0d 1
01 d 0 01 d 1
1 C C C C C A .
Squaring the scaled Padé Approx.
Once we haveU1,U2,U3,U4, we can compute Pq(2Ck)
2k
:
Pq(C
2k)
2k = 0 B B B B B @
(U1)2k 2
k 1
∑
i=0 (U1)i
!
U2 2
k 1
∑
i=0 (U1)i
!
U3 2
k 1
∑
i=0 (U1)i
! U4+α1
2k 2
∑
i=0
(m 1 i)(U1)i !
U2
01 d 1 01 d 2kα1
0d d 0d 1 Id d 0d 1
01 d 0 01 d 1
1 C C C C C A . Thus,
xn+1 = xn+
h
Id d 0d (d+2)
i Pq(M
h
2k)
2k
[0d d0f(tn,xn)1]>
+ Pq(Anh
2k )
2k m
∑
i=1
gi(tn,xn)∆wni+ ( Angi(tn,xn)∆zni+
dgi(tn,xn)
dt )(∆w
Squaring the scaled Padé Approx.
Once we haveU1,U2,U3,U4, we can compute Pq(2Ck)
2k
:
Pq(C
2k)
2k = 0 B B B B B @
(U1)2k 2
k 1
∑
i=0 (U1)i
!
U2 2
k 1
∑
i=0 (U1)i
!
U3 2
k 1
∑
i=0 (U1)i
! U4+α1
2k 2
∑
i=0
(m 1 i)(U1)i !
U2
01 d 1 01 d 2kα1
0d d 0d 1 Id d 0d 1
01 d 0 01 d 1
1 C C C C C A . Thus,
xn+1 = xn+
h
Id d 0d (d+2)
i Pq(M
h
2k)
2k
[0d d0f(tn,xn)1]>
+ Pq(Anh
2k )
2k m
∑
i=1
gi(tn,xn)∆wni+ ( Angi(tn,xn)∆zni+
dgi(tn,xn)
dt )(∆w
i nh ∆zin)
= xn+Lf(tn,xn)+Q
+R
m
∑
i=1
gi(tn,xn)∆wni+ ( Angi(tn,xn)∆zni+
dgi(tn,xn)
dt )(∆w
i nh ∆zin)
The Proposed Integrator
xn
+1=
xn
+
L
f
(
tn
,xn
)+
Q
+
R
m
∑
i=1gi
(
tn
,xn
)
∆
w
ni+ (
A
ngi(
tn
,
xn
)
∆
z
ni+
dgi
(
tn
,
xn
)
dt
)(
∆
w
i n
h
∆
z
in)
where
L
=
2k 1
∑
i=0
(U1)
i!
U3
,
Q
=
2k 1
∑
i=0
(U1)
i!
U
4
+
α
12k 2
∑
i=0
(
m
1
i
)
(U1)
i!
(U
3
)
b
Convergence and Stability
Let
xn+1=xn+φ(tn,xn;h) +ξ(tn,xn;h)
the order-γmethod, and
e
xn+1=exn+φ(etn,xen;h) +eξ(tn,exn;h)
anumerical implementationofxn+1, whereφeandeξdenotenumerical algorithms to computeφandξ. And suppose that
E
0 B
@φ(tn,exn;h) φ(etn,exn;h)
j
Ftn1 C
A K1(1+jexnj2)1/2hk1
(E
0 B
@φ(tn,exn;h) φ(etn,exn;h)2
j
Ftn 1 C A)1/2 K1(1+jexnj2)1/2hk2+1/2
E
0 B
@ξ(tn,exn;h) ξ(etn,exn;h)
j
Ftn1 C
A K2(1+jexnj2)1/2hp1
(E
0 B
@ξ(tn,xen;h) eξ(tn,exn;h)2
j
Ftn1 C A)1/2 K
2(1+jexnj2)1/2hp2+1/2
for some positive numbersk2,p2 1/2,k1 k2+1,p1 p2+1,then
0 B @E
0 B
@jx(tn) xenj2
j
Ft0 1 C A 1 C A 1 2Note that we have
e
φ(tn,exn;h) = h
Id d 0d (d+2)
i Pq(M
h
2k)
2k
[0d d0f(tn,xn)1]>
eξ(tn,eyn;h) = Pq(Anh
2k )
2k m
∑
i=1
gi(tn,xn)∆wni+ ( Angi(tn,xn)∆zni+
dgi(tn,xn)
dt )(∆w
i nh ∆zin)
Note that we have
e
φ(tn,exn;h) = h
Id d 0d (d+2)
i Pq(M
h
2k)
2k
[0d d0f(tn,xn)1]>
eξ(tn,eyn;h) = Pq(Anh
2k )
2k m
∑
i=1
gi(tn,xn)∆wni+ ( Angi(tn,xn)∆zni+
dgi(tn,xn)
dt )(∆w
i nh ∆zin)
and by using that
eX (Pq(2 kX))2 k
cq(k,jXj)jXjp+q+1,
Note that we have
e
φ(tn,exn;h) = h
Id d 0d (d+2)
i Pq(M
h
2k)
2k
[0d d0f(tn,xn)1]>
eξ(tn,eyn;h) = Pq(Anh
2k )
2k m
∑
i=1
gi(tn,xn)∆wni+ ( Angi(tn,xn)∆zni+
dgi(tn,xn)
dt )(∆w
i nh ∆zin)
and by using that
eX (Pq(2 kX))2 k
cq(k,jXj)jXjp+q+1,
wherecq(k,jXj) =α2 k(2q)+3e(1+ǫp,q)jXjandα=(2q)(!q(2!)q2+1)!,ǫq=α(12)2q 3
The scheme
e
xn+1=exn+φ(etn,xen;h) +eξ(tn,exn;h)
satis…es 0 B @E 0 B
@jx(tn) exnj2
j
Ft01 C A 1 C A 1 2
=O(hminf12,q 1g)
Numerical Experiments
Example
Two connected oscillatorsdx1=x2
dx2= (12x2(1 x12) x1+0.1x3)dt+10 3x1dw1
dx3=x4
dx4=(5x4(1 x32) x3+0.1x1)dt+10 3x 3dw2
phase space second V. der Pol oscillator
Click me!
Numerical Experiments
Example
Stochastic Van der Pol equat.
dx1 = x2dt,
dx2 = E 1 x1 2 x2 x1 dt+σdWt
σ
=
200
- 10 - 5 0 5 10 0
1000 2000 3000
LL
- 10 - 5 0 5 10 - 200 - 100 0 100 L L R Kb
- 10 - 5 0 5 10 - 500
0 500 1000
- 10 - 5 0 5 10 - 200
- 100 0 100
- 10 - 5 0 5 10 - 200
- 100 0 100
- 10 - 5 0 5 10 - 200
- 100 0 100 - 30 - 20 - 10 0 10
0 1000 2000 3000 R Kb
- 10 - 5 0 5 10 - 500
0 500
- 10 - 5 0 5 10 - 200
- 100 0 100 h = 2-6 h = 2-7 h = 2-11
H. de la Cruz (FGV-EMAp) Sept/2015 25 / 27
RK1
LL
σ
1
=
100
,
σ
2
=
200
,
σ
3
=
400
- 5 0 5 - 100 0 100 S ol uc ió n E x ac ta
- 5 0 5 - 100
0 100
LL
- 5 0 5 - 100 0 100 L L R Kb
- 10 - 5 0 5 10 - 200
- 100 0 100
- 10 - 5 0 5 10 - 500
0 500 1000
- 10 - 5 0 5 10 - 200
- 100 0 100
- 10 - 5 0 5 10 - 200
0 200
0 200 400 600 800 0
2 4 6 8x 10
5
- 10 - 5 0 5 10 - 200
0 200 - 5 0 5
- 100 0 100
R
Kb
- 10 - 5 0 5 10 - 200
- 100 0 100