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

,

,
. C++,

.


.


, , , .
.
,
.
,
.



y = Ay, A = (aij ), i, j = 1,m ,
y (0 ) = y0 , y0 = (y ), i, j = 1,m,
i
0

(1)

..

..

A.
(1), (2)
m

y(t) = Ci ei t ei .

(3)

i =1


i. (3) t .
,
,

const .
max j

(4)

1 j m

A (1) ,
max j >> 1 ,

1 j m

(5)

(2)

A m . i, ei

(4)
,
-

, - , . : .
62 , .
, - , ().
: . 59 ,
.

1 2008

57

, . A
, , |1|>>|2|, ()

y(t) = C1e1t e1 + C2e2t e2


, ()
. y(t)
, ,
.
.
.
, .
, , ,
. , (4), , , (4),
yn .
, .
,
[1] [8].
1. (1) m m A , k,
(k= 1,m) A :
Re k < 0 k = 1,m ;
1)
2)

g =

max {Re k }

min{Re k }

A(t)y, t>0 (0,T), t (0,T) Rek<0


2. y =
k= 1,m sup g (t) .
x(0,T )

y = F (t, y)
, A(t)
fi
yi

(i, j = 1,m) , f y F y .
i



y
= f (t, y), t > t0 , y(t) = (y1 (t),, ym (t) ), f (t) = ( f 1 (t),, f m (t) ) ,
t

(6)


y(0) = y0 = (y01 ,, y0m ) .

h={tn=t0+nh, n=0,1,...} h. yn=(y1n,...,ymn), fn=(f1n,...,fmn),


, h tn, y(tn) tn .

k

y
i =0

i n i

= h i f (tn i , yn i ) ,
i =0

(7)

i, i , n, i=0,k , 0 0 , k--

58

.. , ..
,

. yn , ,
0 0 , , .
i i , (7) (6) s. ,
n, y(t) (6)
(7):
k

i =0

i =0

i y (tni ) h i y(tn i ) = n ,

(8)

O(hs+1). , , s- . s ,
(7).
rn =

n
h

(6) (7).
, n rn
(7) ,
, . ,
0 =1 ,

(9)

(7)
k

i =0

i =0

yn = i y (tn i ) + h i f (tn i , yn i ) .

(10)

n (8) (10) [1].


0 0, 1=...=k=0,
k

y (t ) = h f (t , y ), =1.
i =0

n i

(11)

yn
k

yn + i y (tn i ) h0 f (tn , yn ) = 0 ,

(12)

i =1

. s k- k. s=k k.
(12)
n =

0 k +1 (k +1)
h y
(tn ) + O (hk+2 ) .
k +1

(13)

(12) n=k
k

yk + i y (tk i ) h0 f (tk , yk ) = 0
i =1

k y0,...,yk1 .
(12)
F(tn, yn)=0 ,

1 2008

(14)

59

F (tn , yn ) = yn + i y (tn i ) h0 f (tn , yn ) = 0 .


i =1

(14) -. , v- yn(v) , (v+1)-

yn(+1) = yn( ) F tn , yn( ) F tn , yn( ) ,

(15)

F1 (tn , yn )
F1 (tn , yn )

1
yn
ynm

.
F (tn , yn ) =

Fm (tn , yn )
Fm (tn , yn )

y1n
ynm

ynf(v) n tn , j yn,
. (15) :

F1 tn , yn( )
y

1
n

)y (

1 +1)
n

Fi tn , yn( )

j =1

ynj

gi =

+ +

Fi tn , yn( )
y

)y ( ) F
f
n

m
n

)y (

m +1)
n

= gi ,
(16)

(t , y( ) ), i = 1,m.
n

.
y j:
1
j 1
j
j
j +1
m
Fi Fi (tn , yn ,, yn , yn + y , yn ,, yn )
=

ynj
2y j

Fi (tn , yn1 ,, ynj 1, ynj y j , ynj +1,, ynm )

.
2y j

(17)

yn(0) , (7), 1=B 10, 1=2=...=k=0, 1=A1,...,k=Ak:


k

yn = Ai yn i + hB1 f (tn 1, yn 1 ) .
i =1

(18)

y0,...,yk1 (k1) y0,...,yk2 , ,


(k1)- . y1 1- ,
. y0 y0=y(t0) . [1] [3].


. , h. ,
Yn = (yn , hyn , yn 1,, yn k +1 ) ,
T

(19)

t=tn, yn,yn1,...,ynk+1 y(t)


t=tn, t=tnh,..., t=tn(k1)h, yn t=tn. y t=tn+1

h = h ,
(20)

60

.. , ..
,

, y(t) t=tn, t = tn h,..., t = tn (k 1)h


yn' t=tn.

Yn = yn , hyn , yn 1,, yn k +1
,
(21)

yn = yn yn = yn , ,
. , Yn Zn.
,
T

h2 yn
hk yn(k) .
Zn = yn ,hyn ,
,,

2!
k!

T
h 2 yn
h k yn(k)
,,
Zn = yn ,hyn ,
= ( )Zn ,
k!
2!

(22)

(23)

() [2], [3]:
0

0
0.


0 k

1 0 0

0 0
( ) = 0 0 2


0 0 0

(24)


(18):
k

yn(0) = Ai yn i + hB1 f (tn 1, yn 1 ) .


i =1

(25)

(15):
, (19),
.
Yn(0) Yn1 D:
Yn(0)=DYn1 .

(26)

( )

Yn(+1) = Yn + cy Fy Yn( ) ,

(27)

( ) .

cy = (0 ,1,0,,0 ) , Fy Yn( )

k +1

.
, h. , , ,
y(t) k y(t) k , (19) (22):
(26), (27) :
Zn(0)=PZn1 ,

1 2008

(28)

61

Zn(v+1)=Zn(v)+czFy(Zn(v)), v=0,1,...

(29)

1
1 1 1 1 1

0
1
2
3
4

k (k 1)
0 0 1 3 6

2!

1
2

k
k
k
( )( ) ;
P = 0 0 0 1 4
3!

k (k 1)(k 2 )(k 3 )
0 0 0 0 1

4!

1
0 0 0 0 0

cz=(c1, c2,..., ck+1)T=(0,1,...)T , .


, ,
(v)
Yn Zn(v) .
(29)
Zn(v+1)=Zn(v)czWFy(Zn(v))

(30)

Fz(Zn(v))=WFy(Zn(v)),

( )

1
Fy Zn( )

Fy Fy
Fy

cz
=
W=
,
,,
cz =
Z Z

Z
Zk +1
1
2

Fy
Fy
Fy
Fy
= c1
+ + ck +1
+ c2
= c1
=
Zk +1
Zk +1
Z1
Z1
f1
1
y

= hc1
m
f
y1

( )
J f tn , yn

f 1 tn , yn( )

y1

=
f m t , y( )
n
n

f1

m
y

c2 E = hc1 J f tn , yn( ) c2 E

fm

m
y

).
1

f 1 tn , yn( )

ym

;
f m tn , yn( )

ym

E mm .
Fz(Zn(v))

( )

c2 E hc1 J f (tn , yn() )Fz Zn( ) = hf (tn , yn() ) hyn( )

(31)

cz=(c1,..., ck+1)T . 1. [2].

62

.. , ..
,

1(=0)

2
3

6
11

12
25

60
137

20
49

2(=1)

1
3

6
11

7
10

225
274

58
63

1
11

1
5

85
274

5
12

1
50

15
274

25
252

1
274

1
84

1
1764


k
m

(C
i =1

i
k +1Zn,k +1 k!) = (Ck +1 k!)
2

(Z
i =1

),

2
i
n,k +1

(33)

Ck +1 = 0 (12), Zin,k+1 i-
k +1
[2].
2

m

i
E =
, V = (Zn,k +1 ) , .
i =1
Ck k!
,

(34)

V>E

, Zn
tn .
:
h*=h ,

(35)

, h* . :
1

E 2(k +1)
=
.
V
(36) :

1 2008

(36)

63

1 E 2(k +1)
=
.

1.2 V

(37)

(28), (30), tn1 .


Zn1. Z*n1 :

Zn*1, j = j 1Zn 1, j , j = 1, k + 1 ,

(38)

(34) , , yn tn . ,
tn h*, (35).
(33) k1 :
m

(C Z
i =1

i
n,k +1

k!) = (Ck k!) (Zni ,k +1 ) .


2

i =1

2

m i
.
E =
,
V
=
Z
(
)

n,k +1
i =1
Ck k!

, k- ,
k1:
1
E 2k
= .
V

(39)

(39) :
1
1 E 2k
=
.
1.3 V

(40)

(33) k+1 :
m

(C
i =1

k+2

(Zni ,k +1 )k! = (Ck + 2 k!) (Zni ,k +1 ) .


2

i =1


m
i
E =
, V = (Zn,k +1 ) .
i =1
Ck + 2 k!

k+1:

1
E 2(k + 2)
=
.
V

(41)

(41) :
1
1 E 2(k + 2)
=
.

1.4 V

(42)

(40), (42) k k1.



, , , .

64

.. , ..
,

C++
C++ Nordsik,
, , .
Nordsik , ,
, 1.
setInitialValues ,
.
step 1 .
.
, .
, (),

. , 1
1 , .
(35), (37), (40), (42) :
h* , 1,1
h, .
k+1 ,
. ,
.
k+1 ,
k+1 .
,
(38).

.
.
, Z0=(y0,hy'0)T.
y0 , hy' hy'0=hf(t0,y0). Zn,k+1 Z(tn),
hk y(k) (tn )

.
k!
Z(tn),
hk +1y(k +1) (tn )

(k + 1)!

hk+1y(k+1)(tn) hky(k)(tn):

hk +1y(k +1) (tn ) hk y(k) (tn ) .


Zn,k+2 Zn

Zn,k + 2 =

Zn,k +1
k +1

, 1 ,
, 2
. Nordsik 3 3 .
getSolution y(t)=(y1(t),..., ym(t)) .
getTime .
jakob .
gauss .

1 2008

65

1. . . , . . . .: , 1989.
2. . . , . .
. .: - , 1990.
3. . . , - . . .: , 1980.
4. C . . , . . . .: , 1989.
5. . . :
..: , 2001.
6. . . , . . , . . , . .
// , 2001. .37. 1.
.65-76.
7. . . , . . // -2004:
. - . . 40-44.
8. . . , . .
// . .. . , 2005. . 13.

66

Оценить