Вы находитесь на странице: 1из 16

2 - IVP Theory and Basic Numerical Methods

Per-Olof Persson
persson@berkeley.edu
Department of Mathematics
University of California, Berkeley
Math 228A Numerical Solutions of Dierential Equations
Reduction to First Order and Autonomous Systems
Consider the initial value problem
u

= f(u, t), u(t


0
) = u
0
In general,
u : [t
0
, t
0
+ a] R
n
,
f : R
n
[t
0
, t
0
+ a] R
n
An mth order system of s equations can be reduced to a system of
ms rst order equations, by introducing new variables
v
1
= u

, v
2
= u

, . . . , v
m1
= u
(m1)
.
The explicit time-dependency can be removed by introducing a
new variable w = t with the trivial equation w

= 1, to obtain a
new autonomous system of equations
[u, w]

= [f(u, w), 1], [u, w](t


0
) = [u
0
, t
0
]
Linear ODEs
A linear system of ODEs has the form
u

= A(t)u + g(t), A(t) R


ss
, g(t) R
s
If A does not depend on t, the system is a constant coecient
linear system
u

= Au + g(t)
for a constant matrix A R
ss
. For g(t) = 0 the equation is
homogeneous with solution u(t) = e
A(tt
0
)
u
0
where the matrix
exponential for diagonalizable A = V V
1
is
e
At
= V e
t
V
1
, e
t
=
_

_
e

1
t
0 0
0 e

2
t
0
.
.
.
.
.
.
.
.
.
0 0 e

s
t
_

_
Duhamels Principle
For general constant coecient linear systems u

= Au + g(t), the
solution is given by Duhamels principle
u(t) = e
A(tt
0
)
u
0
+
_
t
t
0
e
A(t)
g() d
This is similar to the concept of Greens functions for boundary
value problems The eect at time t of g() at time is
e
A(t)
g().
Lipschitz Condition
Denition
A function f(u, t) is said to be Lipschitz continuous in a region S if
there exists a Lipschitz constant 0 such that
f(x, t) f(y, t) x y, x, y S
If f is smoothly dierentiable in S we may set
= max
(x,t)S
_
_
_
_
f(x, t)
x
_
_
_
_
Denition
Commonly used vector norms
x
1
=
m

i=1
|x
i
| , x
2
=
_
m

i=1
|x
i
|
2
_
1/2
, x

= max
1im
|x
i
|
Well-Posedness
Denition
The initial-value problem
u

= f(u, t), t
0
t t
0
+ a, u(t
0
) = u
0
is said to be a well-posed problem if:
A unique solution, u(t), to the problem exists, and
There exist constants
0
> 0 and k > 0 such that for any ,
with
0
> > 0, whenever (t) is continuous with (t) <
for all t in [a, b], and when
0
< , the initial-value problem
z

= f(z, t) + (t), t
0
t t
0
+ a, z(t
0
) = u
0
+
0
,
has a unique solution z(t) that satises
z(t) u(t) < k for all t in [t
0
, t
0
+ a].
Existence and Uniqueness
Theorem
Suppose f(u, t) is continuous in u, t on the cylinder
S = {(u, t) : u R
d
, u u
0
b, t [t
0
, t
0
+ a]}
with a, b > 0 and a given vector norm. Then the IVP
u

= f(u, t), u(t


0
) = u
0
(1)
has at least one solution for t
0
t t
0
+ , where
= min
_
a,
b

_
, = sup
(u,t)S
f(u, t)
Existence and Uniqueness
Theorem (Picard-Lindelof)
Subject to both continuity and Lipschitz continuity of f in S, (1)
has a unique solution in [t
0
, t
0
+ ] and is well-posed.
Theorem
If f is C
r
for some r 1, the solution u(u
0
, t) is also C
r
as a
function of t and the initial condition u
0
.
Basic Schemes for IVPs
Consider the initial value problem
u

= f(t, u), 0 t T, u(0) = u


0
Distribute mesh points equally throughout [0, T]:
t
n
= nh, for each n = 0, 1, 2, . . . , N
The step size h = T/N = t
n+1
t
n
Standard One-Step Methods
Forward Euler
u
n+1
= u
n
+ hf(t
n
, u
n
)
with error bound at time t
n
= nh T
u
n
u(t
n
) e
LT
u
0
u(0) +
e
LT
1
2L
Mh
where L is a Lipschitz constant for f and M u

.
Backward Euler
u
n+1
= u
n
+ hf(t
n+1
, u
n+1
)
Taylor series method of order k
u
n+1
= u
n
+ hf(t
n
, u
n
) +
h
2
2
f

(t
n
, u
n
) + +
h
k
k!
f
(k1)
(t
n
, u
n
)
Multistep Methods
Denition
An m-step multistep method for solving the initial-value problem
u

= f(t, u), 0 t T, u(0) = u


0
,
has a dierence equation for approximating u
n+1
:
u
n+1
= a
m1
u
n
+ a
m2
u
n1
+ + a
0
u
n+1m
+ h[b
m
f(t
n+1
, u
n+1
) + b
m1
f(t
n
, u
n
) +
+ b
0
f(t
n+1m
, u
n+1m
)],
Explicit method if b
m
= 0, implicit method if b
m
= 0.
Multistep Methods
Fourth-Order Adams-Bashforth Technique
u
n+1
= u
n
+
h
24
[55f(t
n
, u
n
) 59f(t
n1
, u
n1
)
+ 37f(t
n2
, u
n2
) 9f(t
n3
, u
n3
)]
Fourth-Order Adams-Moulton Technique
u
n+1
= u
n
+
h
24
[9f(t
n+1
, u
n+1
) + 19f(t
n
, u
n
)
5f(t
n1
, u
n1
) + f(t
n2
, u
n2
)]
Runge-Kutta Methods
Runge-Kutta Order Four
k
1
= f(t
n
, u
n
)
k
2
= f
_
t
n
+
h
2
, u
n
+
h
2
k
1
_
k
3
= f
_
t
n
+
h
2
, u
n
+
h
2
k
2
_
k
4
= f(t
n
+ h, u
n
+ hk
3
)
u
n+1
= u
n
+
h
6
(k
1
+ 2k
2
+ 2k
3
+ k
4
)
Runge-Kutta Methods
General form of Runge-Kutta methods
k
i
= f
_
_
t
n
+ c
i
h, u
n
+ h
s

j=1
a
ij
k
j
_
_
, i = 1, . . . , s
u
n+1
= u
n
+ h
s

j=1
b
j
k
j
Runge-Kutta tableaux or Butcher array
c A
b
T
Explicit Runge-Kutta method if a
i,j
= 0 when j i
Explicit Runge-Kutta Methods
Forward/Backward Euler
0 0
1
1 1
1
The explicit midpoint method
0
1
2
1
2
0 1
Four-stage fourth-order method
0
1
2
1
2
1
2
0
1
2
1 0 0 1
1
6
1
3
1
3
1
6
Implicit Runge-Kutta Methods
Implicit midpoint method
1
2
1
2
1
Hammer-Hollingsworth
1
2

3
6
1
4
1
4

3
6
1
2
+

3
6
1
4
+

3
6
1
4
1
2
1
2

Вам также может понравиться