You are on page 1of 122

HC VIN CNG NGH BU CHNH VIN THNG

------- -------

BI GING

PHNG PHP S
Bin son : Ths. PHAN TH H
Ts. PHAN NG CU

Lu hnh ni b

H NI - 2006

Gii thiu mn hc

GII THIU MN HC
I. GII THIU CHUNG
Phng php s l mt lnh vc ca ton hc chuyn nghin cu cc phng php gii cc
bi ton (ch yu l gn ng) bng cch da trn nhng d liu s c th v cho kt qu cng
di dng s. Ni gn hn, phng php s nh bn thn tn gi ca n, c ngha l phng
php gii cc bi ton bng nhng con s c th.
Ngy nay phn ln cc cng vic tnh ton u c thc hin trn my tnh. Tuy vy thc
t chng t rng, vic p dng cc thut ton v phng php tnh ton khc nhau c th cho tc
tnh ton v chnh xc rt khc nhau. Ly v d n gin nh tnh nh thc ca ma trn
chng hn, nu tnh trc tip theo nh ngha th vic tnh nh thc ca mt ma trn vung cp 25
cng mt hng triu nm (ngay c vi my tnh hin i nht hin nay); trong khi nu s dng
phng php kh Gauss th kt qu nhn c gn nh tc thi.
Nh vy, phng php s l cng c khng th thiu trong cc cng vic cn thc hin
nhiu tnh ton vi tc tnh ton nhanh v chnh xc cao nh vt l, in t vin thng, ...
v d nhin l tt c cc ngnh v mt lnh vc u cn n l cng ngh thng tin.
Phng php s c nghin cu t rt lu v cho n nay nhng thnh tu t c l mt
khi lng kin thc s c in trong nhiu ti liu sch, bo... Tuy nhin, mn hc "Phng
php s" ch nhm cung cp nhng kin thc cn bn nht v phng php s. Vi lng kin
thc ny sinh vin c th p dng vo gii quyt nhng bi ton thng thng trong thc t v c
kh nng t tm hiu nng cao kin thc cho mnh khi gp cc vn phc tp hn.
II. MC CH
Mn hc phng php s cung cp cho sinh vin kin thc cn bn nht v mt s phng
php gii gn ng trn d liu s .
To c s hc tt v nghin cu cc nghnh khoa hc k thut ni chung v Cng ngh
thng tin ni ring.
Gp phn rn luyn phng php suy lun khoa hc, t duy logic, phng php nghin cu
thc nghim
Gp phn xy dng th gii quan khoa hc v tc phong khoa hc cn thit cho ngi k s
tng lai.
III. PHM VI NGHIN CU
Nghin cu mt s phng php c bn nht ca phng php s, c ng dng nhiu
trong thc t nh cc phng php s trong i s tuyn tnh, bi ton ni suy, tm nghim gn
ng cc phng trnh phi tuyn, tnh gn ng o hm v tch phn, gii gn ng mt s dng
ca phng trnh vi phn...
Tm hiu cc lnh vc ng dng ca cc phng php trong thc t.
Nghin cu cch ci t cc thut ton trn my tnh.
3

Gii thiu mn hc

IV. PHNG PHP NGHIN CU:


hc tt mn hc ny, sinh vin cn lu nhng vn sau:
1. Kin thc cn trc:
- Sinh vin phi c kin thc c bn v ton hc cao cp.
- Thnh tho t nht mt ngn ng lp trnh. c bit trong cun sch ny s dng ngn
ng lp trnh C m t thut ton, v vy sinh vin phi nm c ngn ng lp trnh C.
2. Thu thp y cc ti liu:
Gio trnh Phng php s. Phan ng Cu, Phan Th H, Hc vin Cng ngh BCVT, 2002.
Nu cn sinh vin nn tham kho thm:
- Gii tch s. Phm K Anh, nh xut bn i hc Quc Gia H Ni, 1966.
- Phng php tnh. T Vn nh, Nh xut bn Gio dc - 1995.
- Phng Php tnh. Dng Thu V, Nh xut bn Khoa hc v K thut, 2001.
3. t ra mc tiu, thi hn cho bn thn:
t ra cc mc tiu tm thi v thi hn cho bn thn v c gng thc hin chng
Xy dng mc tiu trong chng trnh nghin cu.
4 Nghin cu v nm nhng kin thc ct li:
Sinh vin nn c qua sch hng dn hc tp trc khi nghin cu bi ging mn hc v
cc ti liu tham kho khc.
5. Tham gia y cc bui hng dn hc tp:
Thng qua cc bui hng dn hc tp, ging vin s gip sinh vin nm c ni dung
tng th ca mn hc v gii p thc mc, ng thi sinh vin cng c th trao i, tho lun vi
nhng sinh vin khc v ni dung bi hc.
6. Ch ng lin h vi bn hc v ging vin:
Cch n gin nht l tham d cc din dn hc tp trn mng Internet, qua c th trao
i trc tip cc vn vng mc vi ging vin hoc cc bn hc khc ang online.
7. T ghi chp li nhng chnh:
Vic ghi chp li nhng chnh l mt hot ng ti hin kin thc, kinh nghim cho thy
n gip ch rt nhiu cho vic hnh thnh thi quen t hc v t duy nghin cu.
8. Hc i i vi hnh
Hc l thuyt n u thc hnh lm bi tp ngay n hiu v nm chc l thuyt.
Ni chung cui mi chng, sinh vin cn t tr li cc cu hi, bi tp. Hy c gng vch ra
nhng tr li chnh, tng bc pht trin thnh cu tr li hon thin.
Lin h vi cc mn hc khc v cc vn thc t c lin quan hiu su hn ngha
ca cc phng php.
Ci t cc thut ton bng nhiu cch khc nhau, c s dng ha lm ni bt cc c
trng v kt qu ca cc thut ton. Dng th so snh cc phng php khc nhau cng gii
quyt mt bi ton, phn tch nhng im yu im mnh ca cc thut ton. Khi ci t thut
ton nu c g vng mc th sinh vin c th tham kho thm phn code ca ton b chng
trnh tng ng c vit bng ngn ng lp trnh C trong ti liu: Phng php s. Phan
ng Cu, Phan Th H, Hc vin Cng ngh BCVT, 2002.
4

Chng 1: S xp x v sai s

CHNG 1

S XP X V SAI S

MC CH, YU CU
Sau khi nghin cu chng 1, yu cu sinh vin:
1. Hiu c Phng Php S l g, vai tr v tm quan trng ca Phng php s.
2. Hiu c sai s tuyt i v sai s tng i.
3. Nm c cch vit s xp x.
4. Nm c cc qui tc tnh sai s.
5. Hiu v bit cch nh gi sai s tnh ton v sai s phng php .

1.1. TNG QUAN V PHNG PHP S


1.1.1. Phng php s l g?
Phng php s (numerical method) hay i khi cn c gi l Phng php tnh
(Computational method), Ton hc tnh ton (Computational mathematics) hoc Gii tch s
(Numerical analysis) l mt lnh vc ca ton hc chuyn nghin cu cc phng php gii gn
ng cc bi ton bng cch da trn nhng d liu s c th v cho kt qu cng di dng s.
Ni gn hn, phng php s nh bn thn tn gi ca n, c ngha l phng php gii cc bi
ton bng nhng con s c th.
Trong phng php s chng ta thng quan tm n hai vn :

Phng php gii bi ton.

Mi lin h gia li gii s gn ng v li gii ng, hay vn sai s ca li gii.

1.1.2. Nhng dng sai s thng gp


Khi thc hin mt bi ton bng phng php s ta thng gp nhng loi sai s sau y:

Sai s trong vic m hnh ha bi ton

Sai s phng php

Sai s ca s liu

Sai s tnh ton

Nhng sai s trn y tng hp li nhiu khi dn n nhng li gii qu cch xa so vi li


gii ng v v vy khng th dng c. Chnh v vy vic tm ra nhng thut ton hu hiu
gii cc bi ton thc t l iu rt cn thit.
5

Chng 1: S xp x v sai s

1.2. SAI S TUYT I V SAI S TNG I


1.2.1. Sai s tuyt i
Trong tnh gn ng ta lm vic vi cc gi tr gn ng ca cc i lng. Cho nn vn
u tin cn nghin cu l vn sai s.Xt i lng ng A v i lng gn ng ca n l
a. Ta ni a xp x A v vit a A.
Tr tuyt i a = | a-A |

(1.1)

c gi l sai s tuyt i ca a (khi dng a xp x A).


Trong thc t ta khng bit c s ng A, do ni chung sai s tuyt i khng tnh
c. V vy ta tm cch c lng sai s tuyt i ca a bng s Ea>0 sao cho
| a - A | Ea

(1.2)

S dng Ea c gi l sai s tuyt i gii hn ca a. R rng nu Ea l sai s tuyt


i gii hn ca a th mi E > Ea u l sai s tuyt i gii hn ca a. Nu sai s tuyt i
gii hn qu ln so vi sai s tuyt i th n khng cn c ngha v phng din sai s na.
Trong nhng iu kin c th ngi ta c gng chn Ea l s dng b nht c th c tho
mn (1.1). Nu Ea l sai s tuyt i gii hn ca a khi xp x A th ta quy c vit:
A = a Ea

(1.3)

vi ngha ca (1.1), tc l
a - Ea A a + Ea

(1.4)

1.2.2. Sai s tng i


Gi a l sai s tuyt i ca a khi dng a xp x A, khi i lng
a =

a
|a|

(1.5)

c gi l sai s tng i ca a. Tuy nhin mt ln na ta thy rng A thng khng


bit, v vy ngi ta nh ngha i lng
a =

Ea
|a|

(1.6)

l sai s tng i gii hn ca a. T y ta c


Ea = | a| a

(1.7)

T y ngi ta thng vit


A = a(1 a)

(1.8)

V trong thc t chng ta ch c th thao tc vi cc sai s gii hn, do ngi ta thng


gi mt cch n gin Ea l sai s tuyt i, a l sai s tng i. i khi ngi ta biu din
sai s tng i di dng %. V d vi a =10, Ea = 0.05, khi ta c a = 0.05/10 = 0.5 %.
1.2.3. Ch thch:
Sai s tuyt i khng ni ln y "cht lng" ca mt s xp x, cht lng y cn
c phn nh qua sai s tng i.
6

Chng 1: S xp x v sai s

1.3. CCH VIT S XP X


1.3.1. Ch s c ngha
Mt s vit di dng thp phn c th gm nhiu ch s, nhng ta ch k cc ch s t
ch s khc khng u tin tnh t tri n ch s cui cng khc khng pha bn phi l cc ch
s c ngha. Chng hn s 2.740 c 3 ch s c ngha, s 0.02078 c 4 ch s c ngha.
1.3.2. Ch s ng tin
Mi s thp phn u c dng
a = n n 1...1 0 . 1 2 ... m = s10s
Trong s l nhng s nguyn t 0 n 9. Gi s a l xp x ca s A vi sai s tuyt i
l a. Nu a 0.5*10s th ta ni rng ch s s l ng tin (v nh vy cc ch s c ngha bn
tri s u l ng tin). Nu a > 0.5*10s th ta ni rng ch s s l ng nghi (v nh vy cc
ch s bn phi s u l ng nghi).
V d. S xp x a = 4.67329
vi a = 0.004726. Ta c | a | 0.5 *10-2 do cc ch s ng tin l: 4,6,7; cc ch
s ng ng l 3,2, 9.
vi a = 0.005726. Ta c | a | 0.5 *10-1 (nhng | a | > 0.5 *10-2 ) do cc ch s
ng tin l: 4,6; cc ch s ng ng l 7, 3, 2, 9.
1.3.3. Cch vit s xp x
a. Km theo sai s
Cch th nht l vit km theo sai s nh cng thc (1.3)

A = a Ea

b. Mi ch s c ngha u ng tin
Cch th hai l vit theo quy c: mi ch s c ngha u ng tin; c ngha l sai s
tuyt i gii hn khng ln hn mt na n v hng cui cng.
1.3.4. Sai s quy trn
Trong tnh ton vi cc con s ta thng lm trn cc s theo quy c sau: nu ch s b
i u tin 5 th thm vo ch s gi li cui cng mt n v, cn nu ch s b i u tin < 5
th nguyn ch s gi li cui cng.
Gi s a l xp x ca A vi sai s tuyt i gii hn l E . Gi s ta quy trn a thnh a'
vi sai s quy trn tuyt i gii hn l , tc l:
| a' - a| .
Ta c
| a' - A| = | a' - a + a -A| | a' - a| + | a -A| + E
Vy c th ly +E lm sai s tuyt i gii hn ca a'. Nh vy vic quy trn lm tng
sai s tuyt i gii hn.
7

Chng 1: S xp x v sai s

1.4. CC QUY TC TNH SAI S


1.4.1. M u
Ta xt bi ton tng qut hn nh sau:
Xt hm s u ca 2 bin s x v y:
u = f(x,y)
Gi s x l xp x ca gi tr ng X, y l xp x ca gi tr ng Y v ta coi u l xp x
ca gi tr ng U = f (X,Y).
Cho bit sai s v x v y, hy lp cng thc tnh sai s v u.
Cho bin x ta s k hiu x = x - X l s gia ca x, cn dx l vi phn ca x.
Theo nh ngha v sai s tuyt i, ta c | x | x
Theo cng thc vi phn ca hm nhiu bin ta c:
du =

u
u
dx +
dy
x
y

T y
u

u
u
x +
y
x
y

Suy ra

u = |

u
u
| x +|
| y
x
y

(1.9)

1.4.2. Sai s ca tng


Cho u = x + y
Ta c

u u
=
=1
x y
T (1.9) suy ra

u = x + y

(1.10)

Ta c quy tc sau:
Sai s tuyt i gii hn ca mt tng bng tng cc sai s tuyt i gii hn ca cc s hng.
Ghi ch. Xt trng hp u = x - y v x, y cng du. Lc ta c
u = u/|u| = ( x + y)/ |x-y|
Ta thy rng nu | x -y | rt b th sai s tng i gii hn rt ln. Do trong tnh ton
ngi ta tm cch trnh tr nhng s gn nhau.
1.4.3. Sai s ca tch
Cho u = xy
8

Chng 1: S xp x v sai s
Ta c

u
u
= y,
=x
y
x
T (1.9) suy ra

u = |y| x + |x| y
Do u = u/|u| = x/|x| + y/|y| = x + y
Vy
u = x + y

(1.11)

Ta c quy tc sau:
Sai s tng i gii hn ca mt tch bng tng cc sai s tng i gii hn ca cc s
hng ca tch.
Xt trng hp c bit u = xn ta c
xn = n x

(1.12)

1.4.4. Sai s ca thng


Cho u = x/y
Ta c

x
u 1 u
= ,
= 2
x y y
y
T (1.9) suy ra

u = |

x
1
|x + | 2 |y
y
y

Ta c

u / |u| = u . |

x
y
y
1
1
1
| = | | ( | | x + | 2 | y) = | | x + | | y =
x
x
y
x
y
y

Suy ra:
xy = x + y

(1.13)

Ta c quy tc sau:
Sai s tng i gii hn ca mt thng bng tng cc sai s tng i gii hn ca cc
s hng ca thng.
1.4.5. Sai s ca hm bt k
Cho u = f(x1, x2,..., xn)
Theo cng thc vi phn ca hm nhiu bin ta c:
du =

u
u
u
dx1 +
dx2 + ... +
dxn
x1
x 2
x n
9

Chng 1: S xp x v sai s
T y ta c
u

u
u
u
x1 +
x2 + ... +
xn
x1
x 2
x n

Suy ra

u = |

u
|
x1

x1

+|

u
|
x 2

x2

+ ... + |

u
|
x n

xn

(1.14)

V d. Tnh sai s tuyt i gii hn v sai s tng i gii hn ca th tch hnh cu:
V = (1/6)d3
nu cho ng knh d = 3.7 0.05 cm v = 3.14 0.0016.
Gii.
Xem v d l i s ca hm V, p dng (1.12) v (1.13) ta c
V = + 3d (H s 1/6 khng nh hng n sai s tng i)
= 0.0016/3.14 = 0.0005
d = 0.05/3.7 = 0.0135
Suy ra V = 0.0005 + 3 * 0.0135 = 0.04
Mt khc V = (1/6)d3 = 26.5 cm3
Ta c V = |V|*V = 26.5*0.04 = 1.06 1.1 cm3
V = 26.5 1.1 cm3

1.5. SAI S TNH TON V SAI S PHNG PHP


Nh chng ti nhc n trn, khi gii mt bi ton phc tp ta phi thay bi ton
bng bi ton n gin hn c th tnh ton bng tay hoc bng my. Phng php thay bi
ton phc tp bng mt phng php n gin tnh c nh vy gi l phng php gn ng.
Sai s do phng php gn ng to ra gi l sai s phng php. Mc du bi ton dng
n gin, c th tnh ton c bng tay hoc trn my tnh, nhng trong qu trnh tnh ton ta
thng xuyn phi lm trn cc kt qu trung gian. Sai s to ra bi tt c nhng ln quy trn nh
vy c gi l sai s tnh ton. Trong thc t vic nh gi cc loi sai s, nht l sai s tnh
ton nhiu khi l bi ton rt kh thc hin. hiu r hn bn cht ca sai s phng php v
sai s tnh ton ta xt v d sau:
Ta bit rng vi s x bt k ta c

x2
xn
x
+
+ ... +
+...
1!
2!
n!
Cng thc ny c th dng tnh gi tr ex . Tuy nhin y l tng v hn, nn trong thc
x2
xn
x
t ta ch tnh c tng Sn = 1+
+
+ ... +
, ngha l chng ta dng phng php gn
1!
2!
n!
ng. Khi tnh tng Sn ta li thng xuyn phi lm trn, do ta li gp sai s khi tnh ton Sn .
Vic a ra mt nh gi v sai s tng hp ca c hai loi sai s trn l bi ton rt phc tp.
ex = 1+

10

Chng 1: S xp x v sai s

1.6. S N NH CA MT QU TRNH TNH TON


Xt mt qu trnh tnh ton v l thuyt c v hn bc tnh ra mt i lng no . Ta
ni rng qu trnh tnh l n nh nu sai s tnh ton tc l sai s quy trn tch ly li khng tng
v hn. Nu sai s tng v hn th ta ni qu trnh tnh l khng n nh.
R rng nu qu trnh tnh khng n nh th khng c hy vng tnh c i lng cn
tnh vi sai s nh hn sai s cho php.
kim tra tnh n nh ca mt qu trnh tnh ton thng ngi ta gi s sai s ch xy
ra ti mt bc, cc bc sau coi nh khng c sai s khc pht sinh. Nu cui cng sai s tnh
ton khng tng v hn th coi nh qu trnh tnh l n nh.

1.7. MT VI IU V MI QUAN H GIA THC T V M HNH


Theo nhng iu va ni trn y th chng ta lun hiu thc t l tuyt i ng, sai s ch
xy ra khi ta mun m hnh ha thc t v tin hnh tnh ton m hnh . Thc vy, chng ta c
cm gic rng gii t nhin ang hot ng mt cch chnh xc: h mt tri c khong 5 t
nm tui, nhng s vn hnh ca n c v vn hon ho: hng ngy mt tri mc, mt tri ln u
theo quy lut. C sau 365 ngy + 1/4 ngy th qu t quay mt vng quanh mt tri v hu
ht cc vng trn tri t u tri qua bn ma. Chng ta c th hnh dung rng ch cn mi nm
s vn hnh ca cc hnh tinh sai lch i cht t th trong hng t nm sai s tch ly c th s gy
nn nhng bin c khn lng! Tuy nhin theo cc nh thin vn th s vn hnh ca cc hnh
tinh khng tuyt i hon ho nh ta tng. Xt v tr ca mt tri v tri t chng hn, theo l
thuyt th nu ngy hm nay mt tri ng v tr gia bu tri tnh t ng sang ty th sau 24
gi na n cng v tr gia bu tri (tt nhin l c th chch v pha nam nu ta ang Vit
nam). Nhng trong thc t khng phi nh vy. Cc nh thin vn khng th xy dng c
mi gi mt cch chnh xc v nht qun nu da vo v tr ca mt tri. Ni c th hn, nu da
vo v tr mt tri ca nm nay lm mi gi cho cc vng trn tri t th nm sau thi gian
khng cn thch hp cho qu o ca mt tri na, m c khc i cht t. Chnh v s "ng nh"
ca mt tri nh vy nn cc nh thin vn a ra khi nim mt tri trung bnh v thi gian
trung bnh. So vi mt tri trung bnh v thi gian trung bnh th hng nm mt tri tht i lch
trong khong thi gian t -14,3 n +16,3 pht. Tuy nhin s d cc sai s ny khng tch ly t
nm ny sang nm khc l v cc sai s giao ng quanh v tr trung bnh v trit tiu ln nhau
theo thi gian.
Ngha l, khng ch m hnh ca chng ta, m ngay c gii t nhin cng c nhng sai s. Tuy
nhin cc sai s trong gii t nhin u c quy lut v thng trit tiu ln nhau, do khng lm
nh hng n s vn hnh ca cc vt th.

BI TP
Bi 1. Khi o 1 s gc ta c cc gi tr sau:
a= 21o373;

b=1o10

Hy xc nh sai s tng i ca cc s xp x bit rng sai s tuyt i trong php o


l 1.
11

Chng 1: S xp x v sai s
Bi 2. Hy xc nh sai s tuyt i ca cc s xp x sau y cho bit sai s tng i ca
chng:
a) a= 13267 ;

a=0,1%

b) b=2,32;

b=0,7%

Bi 3. Hy xc nh s cc ch s ng tin trong cc s a,b vi sai s nh sau:


a) a= 0,3941;

a=0,25.10-2

b) b=38,2543;

a= 0,27.10-2

Bi 4. Hy xc nh s nhng ch s ng tin trong cc s a vi sai s tng i nh sau:


a) a=1,8921;

a=0,1.10-2

b) a=22,351;

a=0,1

Bi 5. Hy qui trn cc s di y( xem l ng) vi 3 ch s c ngha ng tin v xc nh sai


s tuyt i v sai s tng i ca chng:
a) a= 2,514; b) 0,16152
c) 0,01204; d) 0,0015281
Bi 6. Hy xc nh gi tr ca cc hm s di y cng vi sai s tuyt i v sai s tng i
ng vi nhng gi tr ca cc i s cho vi mi ch s c ngha u ng tin.
a) u=ln(x+y2); x=0,97; y=1,132
b) u=(x+y)2z; x=3,28; y=0,932; z=1,132

12

Chng 2: Cc phng php s trong i s tuyn tnh

CHNG 2

CC PHNG PHP S TRONG I S TUYN TNH

MC CH, YU CU:
Sau khi nghin cu chng 1, yu cu sinh vin:
1. Hiu v nm c cc phng php tm nghim ng, nghim xp x ca h phng
trnh tuyn tnh.
2. Bit cch ng dng cc phng php trn vo vic tnh nh thc ca ma trn, tm ma
trn nghch o, gii quyt cc bi ton thc t.
3. Bit cch nh gi sai s ca tng phng php

2.1. MA TRN V NH THC


2.1.1. Ma trn
Cho ma trn ch nht A cp m x n:

A=

a11

a12

...

a1n

a21

a22

...

a2n

...

am1

am2

...

amn

y aij l cc s thc. Ma trn ny c m hng v n ct. Khi m = n ta c ma trn cp nxn


v c gi tt l ma trn vung cp n.
Ma trn vung cp n m mi phn t nm ngoi ng cho chnh bng 0, tc l aij = aji = 0
vi i j, c gi l ma trn ng cho. Nu ma trn ng cho c aii = 1 th ta gi A l ma trn
n v v ta thng k hiu l E hoc I.
Ma trn vung A c gi l ma trn tam gic trn, nu A c dng

A=

a11

a12

...

a1n

a22

...

a2n

...

...

ann
13

Chng 2: Cc phng php s trong i s tuyn tnh


Tng t, ma trn vung A c gi l ma trn tam gic di, nu A c dng:

A=

a11

...

a21

a22

...

...

an1

an2

...

ann

Ma trn ch nht AT cp n x m c gi l ma trn chuyn v ca ma trn A cp m x n nu:

AT =

a11

a21

...

am1

a12

a22

...

am2

...

a1n

a2n

...

amn

2.1.2. nh thc ca ma trn


Trc khi a ra nh ngha nh thc ca ma trn, chng ti gii thiu khi nim hon v
chn, hon v l ca mt tp hp n s nguyn {1, 2, ... , n}.
Cho = (i1, i2,..., in) l mt hon v ca tp {1,2,...,n}. Ta xt tt c cc cp (ik, ih), trong
k < h. Nu ik > ih th ta gi cp (ik, ih) l cp ngc, tc l cc gi tr ik, ih c sp xp ngc vi
k,h. Nu trong s cp ngc l chn th ta gi l hon v chn, ngc li th ta gi l hon
v l.
Vi mi ma trn vung A cp n:

A=

a11

a12

...

a1n

a21

a22

...

a2n

...

an1

an2

...

ann

tn ti mt s thc c gi l nh thc ca ma trn A, k hiu l det A, c xc nh


bi cng thc:
det A =

s(i1, i2,..., in) a

1i1

a 2i2 ...a nin

(2.0)

vi = (i1, i2,..., in) chy trong tp tt c cc hon v ca tp {1,2,...,n}, v


s(i1, i2,..., in) =

14

1 nu l hon v chn
-1 nu l hon v l

Chng 2: Cc phng php s trong i s tuyn tnh


nh thc ca ma trn cn c k hiu l

A=

a11

a12

...

a1n

a21

a22

...

a2n

...

an1

an2

...

ann

Vi mi ma trn ch nht A cp m x n bt k ta c th tnh nh thc ca tt c cc ma


trn con vung cp k, vi k min (m, n). Nu tn ti mt s r sao cho c mt ma trn con cp r
c nh thc khc 0, cn mi ma trn con vung cp ln hn r u bng 0 th ta ni rng r l hng
ca ma trn A.
Cc php bin i s cp sau y khng lm bin i hng ca ma trn:

i ch 2 hng hoc 2 ct bt k.

Nhn mt hng hay mt ct bt k vi mt s khc khng.

Cng cc thnh phn tng ng ca 2 hng hoc hai ct bt k.

Cc php bin i s cp s c s dng tnh nh thc ca ma trn v tm nghim ca


h phng trnh tuyn tnh.
Ma trn E c gi l ma trn n v cp n nu E l ma trn vung cp n v E c dng

E=

...

...

...

...

2.1.3. Cc phng php tnh nh thc


a. Tnh nh thc da trc tip vo nh ngha
Ta c th dng (2.0) tnh nh thc ca mt ma trn trn my tnh. Tuy nhin cch tnh
ny i hi khong c*n! php tnh. y l con s khng l vi n khng ln lm. V d vi my
tnh hin i nht hin nay cng cn hng triu nm tnh nh thc ca ma trn cp n = 25.
b. Tnh nh thc da vo cng thc khai trin theo hng
Cho A l ma trn vung cp n v aij l mt phn t bt k ca n. nh thc ca ma trn
con cp n-1 sau khi xa hng th i v ct th j i v khng thay i v tr cc thnh phn cn
li, c gi l minor ca phn t aij , v c k hiu l Mij. Gi tr Aij = (-1)i+j Mij c gi l
phn b i s ca phn t aij. Ta c cc cng thc sau tnh nh thc ma trn vung cp n
thng qua vic tnh nh thc ca cc ma trn con cp b hn:
Khai trin nh thc theo hng th i:
n

det A =

aij Aij
j=1

15

Chng 2: Cc phng php s trong i s tuyn tnh


Khai trin nh thc theo ct th j:
n

det A =

aij Aij
i=1

p dng cc cng thc trn y ta c th dng thut ton quy sau y tnh nh thc
ca ma trn vung cp n :
Nu

n = 1 : A11 = 1; det A = a11 A11


n

a1j A1j

n > 1: det A =

j=1

Tuy nhin, cng nh cch tnh trc tip, cch tnh ny cn khong c*n! php tnh, v nh
vy khng th thc hin c trn my tnh hin i nht hin nay d ch vi n khng ln lm. R
rng vic phn tnh thut ton gip chng ta nh gi c thi gian tnh ton trn my tnh v
nu thi gian l qu ln th chng ta khi phi tn cng v ch vit chng trnh v chy th.
c. Tnh nh thc bng cch chuyn ma trn v dng tam gic trn
Ta s bin i a ma trn A v dng ma trn tam gic trn

B=

b11

b12

...

b1n

b22

...

B2n

...

...

bmn

Vy det A=det B = b11 b22...bnn


2.1.4. Ma trn nghch o
Ma trn nghch o ca mt ma trn vung A cp n l ma trn c k hiu l A-1, tho
mn iu kin
A-1A = A A-1 = E
Trong E l ma trn n v. C th chng minh rng tha mn iu kin trn th bt
buc A-1 phi l ma trn vung, v ma trn o nu tn ti l duy nht.
iu kin tn ti ca ma trn nghch o: Ma trn vung A cp n c ma trn nghch o
khi v ch khi det A 0.
Cch tnh ma trn nghch o:
Gi Aij l phn b i s ca phn t aij , khi ta c:

A-1 =

16

1
det A

A11

A21

...

An1

A12

A22

...

An2

...

A1n

A2n

...

Ann

Chng 2: Cc phng php s trong i s tuyn tnh


Tuy nhin cng thc ny ch c ngha l thuyt, khng th p dng tnh trc tip ma
trn o trn my tnh c v s php tnh i hi qu ln.
Trong phn sau ta s p dng phng php kh Gauss-Jordan tnh ma trn nghch o
vi s php tnh nh hn nhiu (khong n3)

2.2. H PHNG TRNH I S TUYN TNH


Xt mt h phng trnh gm n phng trnh tuyn tnh vi n n s x1, x2,...,xn nh sau:
a11x1 + a12x2 + . . . + a1nxn = b1
a21x1 + a22x2 + . . . + a2nxn = b2
. . . . . . . . . . . . . . . .

(2.1)

an1x1 + an2x2 + . . . + annxn = bn


H phng trnh ny c th vit di dng ma trn

a11
a
21
A=
.

a n1

a12
a 22
.
an2

... a1n
... a 2 n
,x=
... .

... a nn

x1

x2
. ,b=

x
n

Ax = b, trong

b1

b2
.

b
n

Nu det A 0 th nghim ca h (2.1) c th tnh theo cng thc x = A-1b. p dng cng thc
tnh ma trn o ta c th bin i v dn n li gii c din t bng nh l Cramer nh sau:
nh l Cramer. Gi Aj l ma trn nhn c t ma trn A bng cch thay ct th j bng
ct b, khi h (2.1) c nghim duy nht v xj c tnh bi cng thc
xj =

det A j

det A
Tuy nhin trong thc hnh ngi ta khng dng cng thc ny tnh nghim v s php
tnh qu ln. Ngi ta dng nhng phng php hu hiu hn m chng ti s gii thiu sau y.
2.2.1. Phng php trc tip gii h phng trnh tuyn tnh
Gi s ta gii h phng trnh(2.1)
a. Phng php kh Gauss
Phng php kh Gauss dng cch kh dn cc n a h phng trnh cho v mt
dng tam gic trn ri gii h tam gic ny t gii ln trn, khng phi tnh mt nh thc no
Phng php ny c thc hin qua cc bc sau:
Qu trnh xui:
- Bc 0: Dng phng trnh u tin kh x1 trong n-1 phng trnh cn li. Gi s a110.
( cho cng thc n gin , trc khi kh ta c th chia phng trnh th nht cho a11 ).
C th kh x1 hng th k( k=2,3,n) ta phi tnh li cc h s akj hng th k
(j=1,2,..n+1) nh sau: akj=akj-a1j*ak1/a11
...
17

Chng 2: Cc phng php s trong i s tuyn tnh


- Bc 1: Dng phng trnh th 2 kh x2 trong n-2 phng trnh cn li pha sau. Gi
s a220. ( cho cng thc n gin, trc khi kh ta c th chia phng trnh th hai
cho a22).
C th kh x2 hng th k (k=3,4,n) ta phi tnh li cc h s akj hng th k
(j=2,..n+1) nh sau: akj=akj-a2j*ak2/a22
.
- Bc i: Dng phng trnh i kh xi trong cc phng trnh th i+1,i+2, ..., n. Gi
s aii0. cho cng thc n gin, trc khi kh ta c th chia phng trnh th i cho
aii).
C th kh xi hng th k (k=i+1,n) ta phi tnh li cc h s akj hng th k
(j=i,..n+1) nh sau: akj=akj-aij*aki/aii
- Bc n-1: Dng phng trnh th n-1 kh xn-1 trong phng trnh th n.Gi s an-1 n-10.
( cho cng thc n gin, trc khi kh ta c th chia phng trnh th n-1 cho an-1 n-1)
C th kh xn-1 hng th n ta phi tnh li cc h s anj hng th n (j=n-1,n,n+1)
nh sau: anj=anj-an-1j*an-1i/an-1n-1
Kt thc qu trnh kh.
Ch :
Trong qu trnh gii xui ta gi thit a110, a220,a330,...,an-1 n-10. Nu 1 trong cc h s
bng khng th qu trnh khng tip tc c. Lc ta phi thay i cch tnh.
Gi s khi kh x1 ta gp a11=0 th ta nhn cc h s a21, a31 ...an1 ca x1 cc phng trnh
pha di, nu c h s no khc khng ta c th ly n thay cho vai tr ca a11 bng cch hon v
hai phng trnh. Nu tt c cc h s s a11, a21, a31 ...,an1 u bng khng th h cho suy bin.
Vy tt nht l trc khi kh x1 ta chn trong cc h s a11, a21, a31 ...,an1 h s c gi tr tuyt i
ln nht lm tr th nht( gi l tr ti i th nht) ri hon v hng th nht cho hng c gi
tr tuyt i ln nht). Tc l ta chn hng r sao cho:
| ar1 | = max {| ak1 | / k=1,2, ... ,n}

Sau ta i hng r cho hng 1.

Tng t trong cc bc kh x2,... xn-1 , trc khi kh ta cng tm tr ti i:


| ari | = max {| aki | / k=i,i+1, ... ,n} ( vi i=2,3,,n-1)
Sau ta i hng r cho hng i.
Sau khi thc hin xong qu trnh gii xui h phng trnh (2.1) c dng:
Dng1: Ti cc bc (bc i) ta khng chia cho h s aii
a11x1 + a12x2 + . . . + a1nxn = b1
a22x2 + . . . + a2nxn = b2
. . . . . . . . . . .
ann xn = bn
18

Chng 2: Cc phng php s trong i s tuyn tnh


hoc: Dng 2: Ti cc bc (bc i) ta chia cho h s aii:
x1 + a12x2 + . . . + a1nxn = b1
x2 + . . . + a2nxn = b2
. . . . . . . . . . .
xn = bn
Xut pht t phng trnh th n ta ln lt tnh c cc gi tr xi bng cc cng thc ca
qu trnh gii ngc sau:
Qu trnh gii ngc
xn = bn/ann hoc ( xn=bn)
...
n

j=i+1

j=i+1

xi = (bi -( aijxj) )/aii ) hoc (bi -( aijxj) ), i =n-1, n-2, ..., 1


vic vit chng trnh c n gin, khi ci t trn my tnh ta dng mt mng
thay cho c ma trn a v vec t b. Tc l

a11
a
21
.

a n1

a12

... a1n

a 22

... a 2 n

.
an2

...

... a nn

a1,( n +1) a11


a 2,( n +1) a 21
=
. .

a n ,( n +1) a n1

a12

... a1n

a 22

... a 2 n

.
an2

...

... a nn

b1
b2
.

bn

Ta p dng cc php bin i s cp nh va trnh by bin i ma trn ch nht cp


nx(n+1) trn y v dng

1 a'12
0 1

.
.

0 0

... a'1n
... a' 2 n
...
.
... 1

a'1,( n +1)
a' 2,( n +1)
.

a' n ,( n +1)

V d:Gii h phng trnh sau bng phng php kh Gauss:


2x1 + 3x2 +x3 = 11
-x1 + 2x2 -x3 = 0
3x1 + 2x3

=9

Bc1: H phng trnh trn tng ng vi:


=9

h1=h3

-x1 + 2x2 -x3 = 0

h2=h2

2x1 + 3x2 +x3 = 11

h3=h1

3x1 + 2x3

19

Chng 2: Cc phng php s trong i s tuyn tnh

3x1 + 0 + 2x3

=9

2x2 - x3/3 = 3

h2=h2+h1/3

3x2 - x3/3

=5

h3=h3-2*h1/3

3x1 + 0 +2x3

=9

h1=h1

3x2 -

x3/3

=5

h2=h3

2x2 -

x3/3

=3

h3=h2

Bc 2:

3x1 + 0 + 2x3 = 9

h1=h1

x2 - x3 /3 = 5

h2=h2

-x3/9 = -1/3
Vy

h1=h1

h3=h3-2*h2/3

x3=3
x2=2
x1=1

Chng trnh minh ha.


Sau y l on chng trnh chnh th hin (m t) thut ton kh Gauss.
/*Giai he phuong trinh tuyen tinh dung khu Gauss, ma tran vuong n,
cac phan tu cot thu n+1 la vecto b*/
/*Dua ma tran a ve dang tam giac tren Giai he phuong trinh tuyen tinh.
Tra ve gia tri true neu co nghiem */
int khugauss(kmatran a,double *x,int n)
{
int i,j,k,h;double tmp,p;kmatran aa;
int n1=n+1;
for(i=1;i<=n;i++)
for(j=1;j<=n1;j++) aa[i][j]=a[i][j];
for(i=1;i<=n;i++) //Vong lap cac buoc khu
{//Tim hang co phan tu dau lon nhat
h=i;
for(k=i+1;k<=n;k++)
if(fabs(a[k][i])>fabs(a[h][i]) {h=k;}
if(a[h][i])==0) {cout<<"Ma tran suy bien";delay(1000);return false;}
20

Chng 2: Cc phng php s trong i s tuyn tnh


if(h!=i) //Doi hang i va hang h vi a[h][i] > a[i][i]
{int j;double tmp;
for(j=i;j<=n1;j++)
{tmp=a[i][j];a[i][j]=a[h][j];a[h][j]=tmp;}
}
//chuyen he so a[i][i] = 1
tmp=a[i][i];
for(j=i;j<=n1;j++) a[i][j] = a[i][j]/tmp;
//Bat tinh lai cac hang
for(k=i+1;k<=n;k++)
{p=a[k][i];
/*Vi ta biet a[k][i] =0 sau bien doi,
chi tinh tu a[k][i+1]*/
for(j=i+1;j<=n1;j++) a[k][j]=a[k][j] - p*a[i][j];
}
}
x[n]=a[n][n+1];
for(i=n-1;i>=1;i--)
{double xx=0;
for(j=i+1;j<=n;j++) xx=xx+a[i][j]*x[j];
x[i]=a[i][n+1]-xx;//b[i]-xx
}
//Dat cac gia tri phi duoi duong cheo chinh bang 0(phan nay khong can)
for(i=2;i<=n;i++)
for(j=1;j<i;j++) a[i][j]=0;
//Thu lai
kvecto bb;
for(i=1;i<=n;i++)
{bb[i]=aa[i][1]*x[1];
for(j=2;j<=n;j++) bb[i]+=aa[i][j]*x[j];
}
//Dua ket qua vao tep ketqua
return true;
}
21

Chng 2: Cc phng php s trong i s tuyn tnh


b. Phng php kh Gauss-Jordan
Phng php kh Gauss-Jordan dng cch kh dn cc n a h phng trnh cho
v mt dng ma trn ng cho ri gii h phng trnh ny, khng phi tnh mt nh thc no
Phng php ny c thc hin qua cc bc sau:
- Bc 1: Dng phng trnh u tin kh x1 trong n-1 phng trnh cn li, cch lm
tng t nh phng php kh tnh nh thc... ( cho cng thc n gin, trc khi
kh ta c th chia phng trnh th nht cho a11).
C th kh x1 hng th k( k=2,3,n) ta phi tnh li cc h s akj hng th k
(j=1,2,..n+1) nh sau: akj=akj-a1j*ak1/a11
...
- Bc i: Dng phng trnh i kh xi trong cc phng trnh th 1,2, i-1,i+1,i+2,...,n..
( cho cng thc n gin , trc khi kh ta c th chia phng trnh th i cho aii)
C th kh xi hng th k (k=1,2, i-1,i+1,i+2,...,n.) ta phi tnh li cc h s akj hng
th k (j=i,..n+1) nh sau: akj=akj-aij*aki/aii
...
- Bc n: Dng phng trnh th n kh xn trong phng trnh th 1,2, ..., n-1.. ( cho
cng thc n gin, trc khi kh ta c th chia phng trnh th n cho ann)
C th kh xn hng th k( k=1,2, ..,n-1.) ta phi tnh li cc h s akj hng th k
(j=n,n+1) nh sau: akj=akj-anj*akn/ann
Tng t php kh Gauss ti mi bc, trc khi kh ta phi chn tr ti i. C th ti
bc i ta lun chn hng c phn t ari c gi tr tuyt i ln nht ri i cho hng th i cho hng
th r.
H phng trnh sau khi kh c dng:
a11 x1

= b1
a22 x2

= b2

. . . . . . . .. .
ann xn = bn
Hoc (Nu ti cc bc (bc i) ta chia cho h s aii):
= b1

x1
x2

= b2
. . . . . . . .. .
xn = bn

Tc l ta c cc nghim m khng cn phi tnh ton thm.


Cng nh trong phng php kh Gauss, khi ci t trn my tnh ta dng mt mng a
thay cho c ma trn A v vec t b. Tc l
22

Chng 2: Cc phng php s trong i s tuyn tnh

a11
a
21
.

a n1

a12
a 22
.
an2

... a1n
... a 2 n
... .
... a nn

a1,( n +1) a11


a 2,( n +1) a 21
=
. .

a n ,( n +1) a n1

a12
a 22
.
an2

b1
b2
.

bn

... a1n
... a 2 n
... .
... a nn

Ta p dng cc php bin i s cp nh va trnh by bin i ma trn ch nht cp n


x (n+1) trn y v dng

1 0 ... 0 a '1,( n +1)


0 1 ... 0 a '

2 , ( n +1)

. . ... .
.

0 0 ... 1 a ' n ,( n +1)


Vy ta c xi = a'i,(n+1)
V d:Gii h phng trnh sau bng phng php kh Gauss-Jordan:
2x1 + 3x2 +x3 = 11
-x1 + 2x2 -x3 = 0
3x1 + 2x3

=9

Bc1: H phng trnh trn tng ng vi:


3x1 + 2x3=9

h1=h3

-x1 + 2x2 -x3 = 0

h2=h2

2x1 + 3x2 +x3 = 11

h3=h1

Bc 1:
3x1 + 0 +2x3

=9

h1=h1

2x2 -x3/3

=3

h2=h2+h1/3
h3=h3-2*h1/3

3x2 -x3//3 = 5

Bc 2:
3x1 + 0 +2x3

=9

h1=h1

3x2 - x3/3

=5

h2=h3

2x2 - x3/3

=3

h3=h2
23

Chng 2: Cc phng php s trong i s tuyn tnh


3x1 + 0 + 2x3 = 9

h1=h1

3x2 - x3/3 = 5

h2=h2

-x3/9 = -1/3

h3=h3-2*h2/3

Bc 3:
3x1 + 0 +0
3x2 -0

=3

h1=h1-2*h3/(-1/9)

=6

h2=h2-(1/3)*h3/(-1/9)

-x3/9 =-1/3

h3=h3/(-1/9)

Vy
x1=1
x2=2
x3=3

Chng trnh minh ha.


Sau y l on chng trnh chnh th hin (m t) thut ton kh Gauss-Jordan.
int gjordan(kmatran a,double *x,int n)
{int i,j,k,h;double tmp,p;kmatran aa;
int n1=n+1;
for(i=1;i<=n;i++)
for(j=1;j<=n1;j++) aa[i][j]=a[i][j];
for(i=1;i<=n;i++) //Vong lap cac buoc khu
{//Tim hang co phan tu dau lon nhat
h=i;
for(k=i+1;k<=n;k++)
if(fabs(a[k][i])>fabs(a[h][i]) {h=k;}
if(a[h][i]==0) {cout<<"Ma tran suy bien";delay(1000);return false;}
if(h!=i) //Doi hang i va hang h vi a[h][i] > a[i][i]
{int j;double tmp;
for(j=i;j<=n1;j++)
{tmp=a[i][j];a[i][j]=a[h][j];a[h][j]=tmp;}
}
//chuyen he so a[i][i] = 1
24

Chng 2: Cc phng php s trong i s tuyn tnh


tmp=a[i][i];
for(j=i;j<=n1;j++) a[i][j] = a[i][j]/tmp;
//Bat tinh lai cac hang
for(k=1;k<=n;k++)
{if(k==i) continue;
p=a[k][i];
/*Vi ta biet a[k][i] =0 sau bien doi,
chi tinh tu a[k][i+1]*/
for(j=i+1;j<=n1;j++) a[k][j]=a[k][j] - p*a[i][j];
}
}
for(i=1;i<=n;i++) x[i]=a[i][n+1];
/*Dat cac gia tri khong o tren duong cheo chinh bang 0
(phan nay khong can)*/
for(i=1;i<=n;i++)
for(j=1;j<=n;j++) {if(i!=j) a[i][j]=0;}
//Thu lai
kvecto bb;
for(i=1;i<=n;i++)
{bb[i]=aa[i][1]*x[1];
for(j=2;j<=n;j++) bb[i]+=aa[i][j]*x[j];
}
//Dua ket qua vao tep ketqua
return true;
2.2.2. p dng phng php kh Gauss-Jordan tnh ma trn nghch o
gii h n phng trnh n n Ax = b, trong phng php kh Gauss-Jordan ta dng
cc php bin i s cp a phng trnh ny v dng
Ex = b'
V Ex = x, do ta c x=b'. Nu B l mt ma trn ch nht cp n x k ty , ta c th p
dng phng php kh Gauss-Jordan gii ng thi k h n phng trnh n n:
AX = B

(2.2)

trong
25

Chng 2: Cc phng php s trong i s tuyn tnh

x11
x
21
X=
.

x n1
b11
b
21
B=
.

bn1

x12
x 22
.
xn2
b12
b22
.
bn 2

... x1k
... x 2 k
... .

... x nk
... b1k
... b2 k
... .

... bnk

Ta vit ma trn B bn phi ma trn A nh sau:

a11
a
21
.

a n1

a12
a 21
.
an2

... a1n
... a 2 n
... .
... a nn

b11
b21

b12
b22

.
bn1

.
bn 2

... b1k
... b2 k
... .

... bnk

Nu ma trn A khng suy bin, ta c th p dng cc php bin i s cp a ma trn


ny v dng:

1 0 ... 0 b'11
0 1 ... 0 b'
21

. . ... .
.

0 0 ... 1 b' n1

b'12
b' 22
.
b' n 2

... b'1k
... b' 2 k
...
.

... b' nk

Khi ta c

x11
x
21
X=
.

x n1

x12
x 22
.
xn2

b'11
b'
21
t B =
.

b' n1

... x1k b'11


... x 2 k b' 21
=
... . .

... x nk b' n1
b'12
b' 22
.
b' n 2

b'12
b' 22
.
b' n 2

... b'1k
... b' 2 k
;
...
.

... b' nk

... b'1k
... b' 2 k
...
.

... b' nk

Xt trng hp c bit B = E, ta c ma trn B' chnh l ma trn nghch o ca ma trn A.


Tht vy, nu X l nghim ca (2.2) th
X = A-1B
Nu B = E th X = A-1. Do vic tm ma trn nghch o ca ma trn A tng ng
vi vic gii phng trnh
AX = E
26

Chng 2: Cc phng php s trong i s tuyn tnh


Ta c th tm tt cc bc cn thc hin tnh ma trn o nh sau:

Vit thm ma trn n v E bn cnh ma trn A

a11
a
21
.

a n1

a12
a 21
.
an2

... a1n
... a 2 n
... .
... a nn

1 0 ... 0
0 1 ... 0
. . ... .

0 0 ... 1

(2.3)

p dng php bin i s cp ln cc hng ca ma trn (2.3) cho n khi ma trn c dng

1 0 ... 0 c11
0 1 ... 0 c
21

. . ... .
.

0 0 ... 1 c n1

c12
c 22
.
cn 2

... c1n
... c 2 n
... .

... c nn

Khi ta c

c11
c
21
-1
A =
.

c n1

c12
c 22
.
cn2

... c1n
... c 2 n
... .

... c nn

Ch . Trong qu trnh bin i ta c th i cc hng ca ma trn. iu ny khng nh


hng n kt qu thu c: Ma trn C vn l ma trn nghch o ca ma trn A ban u. L do
l v tm ma trn nghch o ta ch cn xc nh ma trn nghim. Ma trn nghim khng b thay
i nu ta i ch cc hng.
Chng trnh minh ha.
Sau y l on chng trnh chnh th hin ( m t) thut ton tm ma trn nghch o
int daomtran(kmatran a,kmatran &ad,int n)
{int i,j,k,h;double tmp,p;
int n2=n*2;
kmatran aa;
for(i=1;i<=n;i++)
for(j=1;j<=n;j++) aa[i][j]=a[i][j];
//Them phan sau cua ma tran a de co dang ma tran don vi
for(i=1;i<=n;i++)
for(j=1;j<=n;j++) a[i][n+j]=0;//Cho phan ma tran vuong phia sau bang 0
for(i=1;i<=n;i++) a[i][n+i]=1; //Duong cheo chinh phan phia sau bang 1
//Vong lap cac buoc khu
for(i=1;i<=n;i++)
{//Tim hang co phan tu dau lon nhat
h=i;
27

Chng 2: Cc phng php s trong i s tuyn tnh


for(k=i+1;k<=n;k++)
if(fabs(a[k][i])> fabs(a[h][i])) h=k;
if(a[h][i])==0) {cout<<"Ma tran suy bien";delay(1000);return false;}
if(h!=i) //Doi hang i va hang h vi a[h][i] > a[i][i]
{int j;double tmp;
for(j=i;j<=n2;j++)
{tmp=a[i][j];a[i][j]=a[h][j];a[h][j]=tmp;}
}
//chuyen he so a[i][i] = 1
tmp=a[i][i];
for(j=i;j<=n2;j++) a[i][j] = a[i][j]/tmp;
//Bat tinh lai cac hang
for(k=1;k<=n;k++)
{if(k==i) continue;
p=a[k][i];
/*Vi ta biet a[k][i] =0 sau bien doi,
chi tinh tu a[k][i+1]*/
for(j=i+1;j<=n2;j++) a[k][j]=a[k][j] - p*a[i][j];
}
}
/*Dat cac gia tri khong o tren duong cheo chinh bang 0
(phan nay khong can)*/
for(i=1;i<=n;i++)
for(j=1;j<=n;j++) {if(i!=j) a[i][j]=0;}
//Ma tran dao la phan phia sau cua mang a
for(i=1;i<=n;i++)
for(j=1;j<=n;j++) ad[i][j]=a[i][n+j];
//Thu lai A x AD = C
kmatran c;
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
{c[i][j]=aa[i][1]*ad[1][j];
for(k=2;k<=n;k++) c[i][j]+=aa[i][k]*ad[k][j];
}
return true;
}
28

Chng 2: Cc phng php s trong i s tuyn tnh


2.2.3. S khng n nh ca h phng trnh i s tuyn tnh
a. Chun ca ma trn v vec t
Chun ca ma trn ch nht cp m x n A = ( aij ) l mt s thc khng m c k hiu
l ||A|| tha mn cc iu kin sau
(1)

||A|| 0 (vi ||A|| =0 A = 0)

(2)

|| A|| = || ||A||, l s thc bt k.

(3)

||A + B|| ||A|| + ||B||

(4)

||A.B|| = ||A||.||B||

Ngi ta thng dng ba chun sau:


m

||A||1 = max | aij |

Chun ct:
Chun clit:

i=1

j=1

i=1

||A||2 = ( aij 2)1/2


n

Chun hng:

||A|| = max
i

| aij |
j=1

V d. Cho

5 2 1
A = 1 4 3

2 1 7
Ta tnh c cc chun ca A theo nh ngha trn nh sau:
||A||1 = max(5+1+2, 2+4+1, 1+3+7) = max(8, 7, 11) = 11
||A||2 = (52 + 22+ 1+ 1+ 42+ 32+ 22+ 1+ 72)1/2 = 1101/2 = 10.5
||A|| = max(5+2+1, 1+4+3, 2+1+7) = max (8, 8, 10) = 10
Vec t l ma trn ch c mt ct, do i vi vec t

x1

x2
x=
.

x
n
ta c 3 chun sau
n

||x||1 =

| xi |
i=1

||x||2 = ( xi 2)1/2
i=1

||x|| = max | xi |
i

29

Chng 2: Cc phng php s trong i s tuyn tnh


V d. Cho

2

3
x= 4

1
4

Ta c
||x||1 = 2 +3 +4 +1 +4 = 14
||x||2 = (2 2+ 3 2+ 4 2+ 1 +4 2)1/2 =

46

||x|| = max(2,3,4,1,4) = 4
Trong cc phn tip theo chng ta s k hiu n gin l ||A|| hoc ||x|| ch chun
ca ma trn v vec t. Nu khng c g gii thch thm th cch k hiu ny c hiu l mt
trong ba chun trn y.
b. S khng n nh ca h phng trnh i s tuyn tnh
Trn y ta tm hiu cc phng php gii h phng trnh i s tuyn tnh mt cch trc
tip. Nu nh mi tnh ton ca ta l chnh xc th cc phng php trn cho kt qu hon ton
chnh xc. Tuy nhin trong thc t khi tnh ton ta phi thng xuyn lm trn cc s, ngha l ta
thng ch tnh ton trn cc s gn ng m thi. Liu cch lm trn trong tnh ton c lm nh
hng nhiu n kt qu cui cng khng? V d sau y cho thy rng c nhng h phng trnh
i s tuyn tnh rt "nhy cm" vi sai s, ngha l sai s nh khi tnh ton c th nh hng
nghim trng n kt qu cui cng. Ni mt cch hnh tng th ta gp tnh hung "sai mt li i
mt dm". Nhng h thng phng trnh kiu ny c gi l h phng trnh khng n nh.
V d . Ta xt h phng trnh sau:
2x1 + x2 = 2
2x1 + 1.01x2 = 2.01
H ny c nghim x1 =0.5, x2 = 1.
Tuy nhin h phng trnh sau y nhn c vi cht t thay i h s trong h trn
2x1 + x2 = 2
2.01x1 + 1x2 = 2.05
li c nghim x1 =5, x2 = -8, khc xa so vi nghim trn y.
2.2.4. Phng php lp gii h phng trnh tuyn tnh
Cc phng php trc tip gii h phng trnh tuyn tnh ni chung cn khong cn3 php
tnh, trong c l mt hng s v ngi ta c lng c 2/3. Phng php kh Gauss nh chng
ta va tm hiu chng hn, l mt phng php ng, ngha l nu cc php tnh s cp c thc
hin ng hon ton th cui cng ta c nghim ng ca h. Tuy nhin trong thc t ta phi
lun lun lm trn khi thc hin cc php tnh, v nh ta thy trn, sai s tng hp i khi c
th s kh ln. V chng ta gp mt nghch l: v l thuyt phng php cho kt qu chnh xc
30

Chng 2: Cc phng php s trong i s tuyn tnh


100%, nhng khi thc hin p dng thc t th i khi kt qu li khc xa so vi kt qu l
thuyt. V nhng l do trn y, ngi ta tm kim nhng phng php gn ng gii cc
bi ton, tc l ngay t u ngi ta chp nhn kt qu xp x, hay s xp x nm ngay trong
m hnh. Khi thc hin tnh ton c th chng ta li gp sai s mt ln na. Nh vy trong cc
phng php gn ng th sai s s l tng hp ca sai s m hnh v sai s tnh ton. Mt iu
ng ngc nhin l trong nhiu trng hp phng php gn ng li cho kt qu tt hn phng
php ng. Thc ra iu ny cng khng c g kh hiu, v trong thc t chng ta cng rt hay
gp nhng trng hp mt ln sai cn nng n trm trng hn 2 ln hay thm ch mt s ln sai
cng li.
a. Cc bc chung trong phng php lp
Gi s ta cn gii phng trnh F(x) = 0, trong F(x) l mt hm trn khng gian nh
chun no v 0 c hiu l phn t 0 ca khng gian ny. V d nu khng gian nh chun
l Rn th 0 l vect (0,0,...,0)T. Ta bin i phng trnh ny v dng tng ng x = G(x). Ta c
th pht biu nh l sau:
nh l. Gi s y = G(x) l mt hm lin tc trn khng gian nh chun no v php
lp xn=G(xn-1) n=1,2,... hi t ti x* vi xut pht ban u x0. Khi x* l nghim ca phng
trnh x = G(x), tc l ta c x* = G(x*).
Chng minh. T xn=G(xn-1), vi lu l hm G(x) lin tc, ta c

lim xn = lim G(xn-1) = G( lim xn-1) x* = G(x*)

n > +

n > +

n > +

b. Phng php lp n
Tr li bi ton gii h phng trnh tuyn tnh
Ax =b

(2.4)

Ta a (2.4) v dng
x = Cx + d

(2.5)

Trong ma trn C v vec t d c xy dng t A v b.


thc hin php lp ta chn mt vec t ban u x(0), sau tnh cc x(i), i =1,2,... theo
cng thc lp sau:
x(1) = Cx(0) + d
x(2) = Cx(1) + d
...
x

(k)

(2.6)
(k-1)

= Cx

+d

...
Vc t x(k) c gi l vec t lp th k.
Ta c nh l sau:
nh l. (S hi t ca phng php)
a. Nu php lp (2.6) hi t, tc l tn ti x* sao cho x* = lim x(k)
k > +

th khi x* l nghim ca (2.5) (v nh vy cng l nghim ca (2.4))


31

Chng 2: Cc phng php s trong i s tuyn tnh


b. Nu ||C|| < 1 vi mt chun no , th (2.6) hi t v sai s gia nghim gn ng x(k)
(nghim gn ng ti bc lp th k) v nghim ng x* c th nh gi bng cc cng
thc sau:
||x(k) - x*||

|| C ||
||x(k) - x(k-1)||
1 || C ||

(2.7)

|| C || k
||x(1) - x(0)||
1 || C ||

(2.8)

hoc
||x(k) - x*||

Ni chung theo phng php lp n, iu kin php lp c hi t th ||C|| < 1. Tuy


nhin trong thc t th ta ch c ma trn A. Mt cu hi t ra l ma trn A phi tha mn iu
kin g ta c th a (2.4) v dng (2.5) v p dng phng php lp n?
phng php lp hi t th thng ma trn A phi tha mn tnh cho tri ca ma trn vung.
nh ngha: (Tnh cho tri ca mt ma trn vung): Ma trn A vi cc thnh phn aij c
gi l c tnh cho tri, nu gi tr tuyt i ca cc phn t nm trn ng cho chnh ln hn
tng cc gi tr tuyt i ca cc phn cn li nm cng hng, tc l
n

| aii | >

| aij |, i = 1, 2, . . ., n.

(2.9)

j 1, j i

Sau y s gii thiu 2 phng php lp n Jacobi v Gaus-Seidel


c. Phng php lp Jacobi
Vi gi thit ma trn A c tnh cho tri, khi cc h s aii 0, i = 1,2,...,n do ta c
th chia phng trnh th i ca h (2.1) cho aii v nhn c h tng tng
x1 +

a
a
a12
b
x2 + 13 x3 +. . . + 1n xn = 1
a11
a11
a11
a11

a
a 21
b
a
x1 + x2 + 23 x3+. . . + 2 n xn = 2
a 22
a 22
a 22
a 22
...

a i ,i 1
a i ,i +1
ai1
a
a
b
x1 + i 2 x2 +...+
xi-1+ xi +
xi+1. . . + in xn = i
aii
a ii
a ii
a ii
a ii
aii
...

a n, n 1
a n1
a
b
x1 + n 2 x2 +...+
xn-1+ xn = n
a nn
a nn
a nn
a nn
T y ta c
x1 = - (0.x1 +
x2 = - (
...
32

a
a
a12
b
x2 + 13 x3 +. . . + 1n xn ) + 1
a11
a11
a11
a11

a
a 21
b
a
x1 + 0.x2 + 23 x3+. . . + 2 n xn ) + 2
a 22
a 22
a 22
a 22

Chng 2: Cc phng php s trong i s tuyn tnh


xi = - (

a i ,i 1
a i ,i +1
ai1
a
a
b
x1 + i 2 x2 +...+
xi-1+ 0.xi +
xi+1. . . + in xn ) + i
aii
a ii
a ii
aii
a ii
a ii

...
xn = - (

a n ,n 1
a n1
a
b
x1 + n 2 x2 +...+
xn-1+ 0.xn ) + n
a nn
a nn
a nn
a nn

Khi ma trn C, vect d l:

a 21
C = - a
22
.
a
n1
a nn

a12
a11
0
.
an2
a nn

a1n
a11

a 2n
...
a 22 , d =
...
.

... 0

...

b1

a11
b2
a
22
.
bn
a
nn

(n y ta a h (2.4) v dng (2.5) v d thy rng ma trn C tha mn iu kin lp


n, tc l ||C|| < 1.).
Vy n y ta tip tc p dng phng php lp (2.6) tnh nghim cc bc lp nh sau:
Vi vec t x(0) cho trc bt k, v d x(0) = (vec t 0) ta c th tnh cc vec t x(k) ti
bc lp k bng cng thc x(k) = C x(k-1) + d , k =1, 2, ...
C th hn, nu x(k) = (x1(k), x2(k), . . ., xn(k)) th ta c

x1( k )
(k )
x2
.

x (k )
n

a 21
= - a
22
.
a
n1
a nn

a12
a11
0
.
an2
a nn

a1n
b1

a11 x1( k 1) a11

a 2 n x ( k 1) b2
2
...

a 22
+ a 22
.
...
. ( k 1) .

x
n

bn

... 0
a

nn
...

Vi tng thnh phn xi(k) ta c


xi(k) = -

a ij

j 1, j i

a ii

xj(k-1) +

n
bi
1
=
(bi - aij xj(k-1))
a ii
a ii
j 1, j i

(2.10)

i = 1, 2, . . ., n, k = 1,2,...
iu kin hi t, nh gi sai s ca phng php lp Jacobi cng ging vi phng
php lp n.
V d. Dng phng php lp Jacobi tm nghim gn ng ca h phng trnh:
4x1 + 0.24x2 - 0.08x3 = 8
0.09x1 + 3x2 - 0.15x3 = 9
0.04x1 - 0.08x2 + 4x3 = 20
33

Chng 2: Cc phng php s trong i s tuyn tnh


Gii. (1).C th thy rng ma trn cc h s ca h phng trnh trn y tha mn tnh
cho tri, do ta c th bin i h ny p dng phng php lp Jacobi. Chia hai v phng
trnh u tin cho 4, hai v phng trnh th hai cho 3 v hai v ca phng trnh th ba cho 4
ri bin i thch hp ta nhn c:
x1 = 2 - 0.06x2 +0.02x3
x2 = 3 - 0.03x1 + 0.05x3
x3 = 5 - 0.01x1 + 0.02x2
hay

0.06 0.02 x1 2
x1 0


0
0.05 x 2 + 3 = Cx + d
x 2 = 0.03
x 0.01 0.02
0 x3 5
3
||C||

= max(0 + 0.06 + 0.02, 0.03 + 0 + 0.05, 0.01 + 0.02 + 0) =


= max(0.08,0.08,0.03) = 0.08 <1

(2) Chn x(0) = (2,3,5)T, ri tnh x(1), x(2),... theo cng thc (2.10) vi lu aii =1 ta c
bng kt qu sau:
k

x1(k)

x2(k)

x3(k)

1.92

3.19

5.04

1.9094

3.1944

5.0446

1.909228

3.194948

5.044794

(3) Xem x(3) l nghim gn ng cn tm, ta c th nh gi sai x(3) vi nghim ng x*


|| C ||
theo (2.10) nh sau: ||x(3) - x*||
||x(3) - x(2)||
1 || C ||
||x(3) - x(2)|| = max |xi(3) - xi(2)| = max(0.000172, 0.000548, 0.000194) = 0.000548
i

Nh vy
||x(3) - x*||

0.08
0.000548 = 0.0000476 0.00005
1 0.08

d. Phng php lp Gauss - Seidel


Vi gi thit ma trn A c tnh cho tri. T cng thc (2.10) ta thy rng phn t th i
ca vec t nghim ti bc k c tnh qua cc phn t cc v tr khc i trong bc k-1.
Phng php Gauss-Seidel ci tin phng php Jacobi bng cch dng ngay nhng kt qu va
tnh c cho cc thnh phn ca nghim ti bc k tnh cc thnh phn khc ca bc k, ch
c nhng thnh phn no cha c tnh th mi ly bc k-1. C th hn ta c ti cc bc:
(1)
34

Gi tr x1(1) c tnh qua cc gi tr x2(0), x3(0), ... xn(0)

Chng 2: Cc phng php s trong i s tuyn tnh


Gi tr x2(1) c tnh qua cc gi tr x1(1), x3(0), ... xn(0)
Gi tr x3(1) c tnh qua cc gi tr x1(1), x2(1),x4(0), ... xn(0)
...
(h)

Gi tr x1(h) c tnh qua cc gi tr x2(h-1), x3(h-1), ... xn(h-1)


Gi tr x2(h) c tnh qua cc gi tr x1(h), x3(h-1), ... xn(h-1)
Gi tr x3(h) c tnh qua cc gi tr x1(h), x2(h),x4(h-1), ... xn(h-1)
...

Vi vec t x(0) cho trc bt k, v d x(0) = (vec t 0) ta c th tnh cc vec t x(k) ti


bc lp k bng cng thc
xi(k) =

n
i1
1
(bi -( aijxj(k) + aijxj(k-1)))
a ii
ji+1
j 1

(2.11)

i = 1, 2, . . ., n, k = 1,2,...
Trong cng thc (2.11) chng ta c th khng dng ch s trn ch ra rng chng ta ch
dng mt mng l vec t c n thnh phn lu tr nghim. Gi tr no va c tnh ton th
c lu tr ngay vo v tr c v c dng ngay trong cng thc tnh cc gi tr khc.
xi =

n
1
(bi - aij xj)
a ii
j 1, j i

i = 1, 2, . . ., n, k = 1,2,...
S hi t ca phng php Gause-Seidel
iu kin hi t ca phng php lp Gause- Seidel cng ging vi phng php lp n.
Nh ta s thy trong v d trong phn sau, phng php Gause- Seidel ni chung hi t nhanh hn
phng php lp n.
Ta c th s dng cc cng thc sau nh gi sai s ca phng php lp Gause-Seidel:
Gi x* l nghim ng ca h phng trnh v gi
pi =

i1

j=1

j=i

|cij|, qi = |cij|

, = max
i

qi
1 pi

Khi ta c
||x(k) - x*||

||x(k) - x(k-1)||

(2.12)

k
||x(1) - x(0)||
1

(2.13)

hoc
||x(k) - x*||

V d. Dng phng php lp Gause-Seidel tm nghim gn ng ca h phng trnh:


4x1 + 0.24x2 - 0.08x3 = 8
0.09x1 + 3x2 - 0.15x3 = 9
0.04x1 - 0.08x2 + 4x3 = 20
35

Chng 2: Cc phng php s trong i s tuyn tnh


Gii. (1).C th thy rng ma trn cc h s ca h phng trnh trn y tha mn tnh
cho tri, do ta c th bin i h ny p dng phng php lp Jacobi. Chia hai v phng
trnh u tin cho 4, hai v phng trnh th hai cho 3 v hai v ca phng trnh th ba cho 4
ri bin i thch hp ta nhn c:
x1 = 2 - 0.06x2 +0.02x3
x2 = 3 - 0.03x1 + 0.05x3
x3 = 5 - 0.01x1 + 0.02x2
hay

0.06 0.02 x1 2
x1 0


0
0.05 x 2 + 3 = Cx + d
x 2 = 0.03
x 0.01 0.02
0 x3 5
3
= max(0 + 0.06 + 0.02, 0.03 + 0 + 0.05, 0.01 + 0.02 + 0) =

||C||

= max(0.08,0.08,0.03) = 0.08 <1


(2) Chn x(0) = (2,3,5)T, ri tnh x(1), x(2),... theo cng thc (2.11) vi lu aii =1 ta c
bng kt qu sau:
k

x1(k)

x2(k)

x3(k)

1.92

3.1924

5.044648

1.9093489

3.194952

5.0448056

1.909199

3.1949643

5.0448073

Xem x(3) l nghim gn ng cn tm, ta c th nh gi sai s phm phi ca x(3)


theo(2.12): ||x(k) - x*||

||x(k) - x(k-1)||

Trong :
||x(3) - x(2)|| = max |xi(3) - xi(2)| = max(0.0001499,0.000123,0.0000017) =
i

0.0001499
= max
i

qi
= max(0.08,0.0515463,0) = 0.08
1 pi

Nh vy
||x(3) - x*||

||x(k) - x(k-1)||

0.08
0.00001499 0.000013
1 0.08

Thut ton Jacobi cng tng t nh thut ton Gauss-Seidel, nhng thut ton Gauss Seidel c tc hi t nhanh hn.
36

Chng 2: Cc phng php s trong i s tuyn tnh


Chng trnh minh ha.
Sau y l on chng trnh chnh th hin (m t) thut ton lp Gauss - Seidel
/*Giai he phuong trinh tuyen tinh dung lap Gauss-Seidel, ma tran vuong n,
cac phan tu cot thu n+1 la vecto b*/
//===============================================
double kcach(double *x,double *y,int n)
{double tmp=0;
for(int i=1;i<=n;i++) tmp=tmp+fabs(x[i]-y[i]);
return tmp;
}
//===============================================
int cheotroi(kmatran a, int n)
{double tmp;int i,j;
for(i=1;i<=n;i++)
{tmp=0;
for(j=1;j<=n;j++) {if(j!=i) tmp=tmp+fabs(a[i][j]);}
if(fabs(a[i][i])<=tmp) return false;
}
return true;
}
//===============================================
/*Giai he phuong trinh tuyen tinh bang phep lap Gauss-Seidel.
Tra ve true neu co nghiem */
int gseidel(kmatran aa,double *x,int n)
{int h,i,j,k;double tmp;kvecto z;kmatran a;
int n1=n+1;
for(i=1;i<=n;i++)
for(j=1;j<=n1;j++) a[i][j]=aa[i][j];
if(!cheotroi(a,n))
{cout<<endl<<"Khong phai cheo troi";delay(1000);return false;}
for(i=1;i<=n;i++) //chuyen ve dang he so a[i][i] == 1
{tmp=a[i][i];
for(j=1;j<=n1;j++) a[i][j] = a[i][j]/tmp;
}
//Vong lap cac buoc khu
37

Chng 2: Cc phng php s trong i s tuyn tnh


for(i=1;i<=n;i++) {x[i]=0;z[i]=0;}
k=1;
while(true)
{for(i=1;i<=n;i++)
{tmp=0;
for(j=1;j<=n;j++) if(j!=i) tmp+=a[i][j]*x[j];
x[i] = a[i][n+1]-tmp;
}
k++;
if(kcach(x,z,n)<epsi) break;
if(k>kmax)
{cout<<endl<<"Phep lap chua hoi tu";delay(1000);return(false);}
//Gan z = x va chuan bi sang vong lap tinh x
for(i=1;i<=n;i++) z[i]=x[i];
}
//Thu lai
kvecto bb;
for(i=1;i<=n;i++)
{bb[i]=aa[i][1]*x[1];
for(j=2;j<=n;j++) bb[i]+=aa[i][j]*x[j];
}
//Dua ket qua vao tep ketqua
return true;
)

2.3.

BI TP

Bi 1. Tnh v kim tra bng chng trnh nh thc ca ma trn

1 3 1
A = 2 4 6

7 6 11
Bi 2. Tm v kim tra bng chng trnh nghch o ca ma trn

2 3 1
A = 1 2 1

3 0 2
38

Chng 2: Cc phng php s trong i s tuyn tnh


Bi 3. Tm nghim h phng trnh
2x1 + 3x2 +x3 = 11
-x1 + 2x2 - x3 = 0
3x1 +2x3 = 9
Bng phng php kh Gauss v Jordan. Kim tra bng chng trnh.
Bi 4. Gii bng cc phng php kh Gauss, kh Gauss-Jordan, phng lp Jacobi v lp
Gauss-Seidel (nu tha mn iu kin) h phng trnh sau:

17 65 13 50
12 16 37
28

A=
56 23 11 19.

10
3 5 47

x1 84

x 2 25
x = 36
3
x 18
4

Kim tra trn my tnh v thng bo v kh nng gii c hay khng cc phng
php trn.
Bi 5. Gii bng cc phng php lp h phng trnh sau:
10x1 + 2x2 + x3 =9
2x1 + 20x2 - 2x3 = -44
-2x1 + 3x2 + 10x3 =22

39

Chng 2: Cc phng php s trong i s tuyn tnh

TM TT NI DUNG CHNG 2
Trong chng ny sinh vin cn nm vng t nht l cc vn sau:
1. Phng php trc tip gii h phng trnh tuyn tnh
a.Phng php kh Gauss
Phng php kh Gauss dng cch kh dn cc n a h phng trnh cho v mt
dng tam gic trn ri gii h tam gic ny t gii ln trn, khng phi tnh mt nh thc no.
b. Phng php kh Gauss-Jordan
Phng php kh Gauss-Jordan dng cch kh dn cc n a h phng trnh cho
v mt dng ma trn ng cho ri gii h phng trnh ny, khng phi tnh mt nh thc no.
2. Phng php lp gii h phng trnh tuyn tnh
a. Phng php lp n
- Gi s phi tm nghim gn ng ca h phng trnh tuyn tnh (2.1) c dng Ax=b. i
vi phng php lp n, ni chung chng ta phi a h (2.1) v dng x=Cx+d.Trong ma trn
C v vec t d c xy dng t A v b. Ma trn phi tho mn iu kin ||C||<1.
thc hin php lp ta chn mt vec t ban u x(0), sau tnh cc x(i), i =1,2,... theo
cng thc lp sau:
x(i) = Cx(i-1) + d cho ti khi no tho mn iu kin dng.
- Sai s ca phng php:
||x(k) - x*||

|| C ||
||x(k) - x(k-1)||
1 || C ||

hoc
(k)

||x

|| C || k
- x ||
||x(1) - x(0)||
1 || C ||
*

b. Phng php lp Jacobi


- Gi thit ma trn A c tnh cho tri. Phng php lp Jacobi s c cc bc lp nh :
Vi vec t x(0) cho trc bt k, v d x(0) = (vec t 0) ta c th tnh cc vec t x(k) ti
bc lp k bng cng thc x(k) = C x(k-1) + d , k =1, 2, ...
C th hn, nu x(k) = (x1(k), x2(k), . . ., xn(k)) th ta c

x1( k )
(k )
x2
.

x (k )
n
40

a 21
= - a
22
.
a
n1
a nn

a12
a11
0
.
an2
a nn

a1n
b1

a11 x1( k 1) a11

a 2 n x ( k 1) b2
2
...

a 22
+ a 22
.
...
. ( k 1) .

x
n
bn

... 0
a

nn
...

Chng 2: Cc phng php s trong i s tuyn tnh


Vi tng thnh phn xi(k) ta c
xi(k) = -

a ij

j 1, j i

a ii

xj(k-1) +

n
bi
1
=
(bi - aij xj(k-1))
a ii
a ii
j 1, j i

i = 1, 2, . . ., n, k = 1,2,...
- iu kin hi t, nh gi sai s ca phng php lp Jacobi cng ging vi phng php
lp n.
c.Phng php lp Gauss Seidel
- Gi thit ma trn A c tnh cho tri. Phng php lp Gauss - Seidel s c cc bc lp
nh sau:
Vi vec t x(0) cho trc bt k, v d x(0) = (vec t 0) ta c th tnh cc vec t x(k) ti
bc lp k bng cng thc :
xi(k) =

n
i1
1
(bi -( aijxj(k) + aijxj(k-1)))
a ii
ji+1
j 1

i = 1, 2, . . ., n, k = 1,2,...

- nh gi sai s:
pi =

i1

j=1

j=i

|cij|, qi = |cij|

, = max
i

qi
1 pi

Khi ta c:
||x(k) - x*||

||x(k) - x(k-1)||

hoc
||x(k) - x*||

k
||x(1) - x(0)||
1

41

Chng 3: Php ni suy v hi quy

CHNG 3

PHP NI SUY V HI QUY

MC CH, YU CU
Sau khi hc xong chng 3, yu cu sinh vin:
1. Hiu c th no l bi ton ni suy v hi quy.
2. Nm c cc phng php ni suy a thc, bit cch tm cc a thc ni suy theo cc
phng php .
3. Bit c khp ng cong - Ni suy Spline l g?
4. Nm v gii c cc bi ton bng phng php bnh phng ti thiu
5. Bit cch nh gi sai s ca tng phng php.

3.1. M U
Thng thng trong mt s lnh vc nh kinh t chng hn, cc i lng kho st thng
khng c cho di dng hm lin tc, m l bng cc gi tr ri rc. Cc phng php gii tch
ton hc thng tnh ton vi cc hm cho bi cc cng thc, do khng th p dng trc tip
nghin cu cc hm cho di dng ri rc nh th ny. Cng c khi ta bit rng i lng y l
mt hm ca i lng x, tc l y = f(x), nhng ta khng bit biu thc hm f(x) m ch bit mt
s gi tr yi tng ng vi cc gi tr ca x ti cc im xi nh trong bng sau:
x

x
0

x
1

y
0

..

y
2

x
n-1

.
..

x
n

y
n-1

y
n

Thng thng th x0 < x1 < x2 < . . . < xn v cc im ny c th phn b cch u hoc


khng. Mc du ta ch bit cc gi tr ca y ti cc im mc xi, nhng trong nhiu trng hp ta
cn tnh ton vi cc gi tr y ti cc v tr khc ca x. Mt cu hi t ra l: cho mt im x
khng thuc cc im xi cho trn, lm th no chng ta c th tnh c gi tr y tng ng vi
n, sao cho chng ta c th tn dng ti a cc thng tin c?
Bi ton ni suy l bi ton tm gi tr gn ng ca y ti cc im nm gia cc gi tr x
khng c trong bng trn. Nu cn tm cc gi tr gn ng ca y ti cc im x nm ngoi khong
[x0,xn] th bi ton c gi l bi ton ngoi suy. Mt b n+1 cp cc gi tr bit ca x v y:
(x0,y0), (x1,y1), . . . ,(xn,yn) c gi l mt mu quan st, cn x0, x1, ... , xn c gi l cc im
quan st v y0, y1, ... , yn l cc kt qu quan st.
42

Chng 3: Php ni suy v hi quy


V bi ton ca chng ta khng ch gii quyt vi mt gi tr x c th, m l c mt mim
gi tr no ca x. Do cu hi trn cng tng ng vi vn sau: hy tm mt hm g(x)
sao cho min gi tr ca n cha cc im (x0, x1, ..., xn) v hm ny xp x tt nht tp s liu
c l cc cp (x0,y0), (x1,y1), ..., (xn,yn) theo mt ngha no . Chng ta thy ngay l tp s liu l
hu hn, cn tp cc gi tr cn c lng l v hn, nn s c v s hm g(x) nu chng ta khng
a ra mt s rng buc no v g(x). iu u tin chng ta quan tm l nn chn dng hm
g(x) nh th no.
Mt cch t nhin, ta c th t iu kin v hm g(x) nh sau:

g(xi) i =0,1,2,...,n gn cc im yi nht theo mt ngha no .

g(x) l duy nht theo mt s iu kin no .

Hm g(x) lin tc, khng c im gp khc v t thay i trong tng on [xi,xi+1].


Cc nh l v xp x sau y ca Weierstrass s cho chng ta gi v dng hm ca g(x).
nh l Weierstrass 1 v xp x hm.

Cho f (x) l mt hm thc lin tc xc nh trn khong [a,b]. Khi vi mi >0 tn ti


mt a thc p(x) bc m vi cc h s thc sao cho vi mi gi tr x[a,b] ta c |f(x) - p(x)|<.
nh l Weierstrass 2 v xp x hm.
Cho f (x) l mt hm thc lin tc xc nh trn khong [-,] v f(-) = f(). Khi vi
mi >0 tn ti mt a thc lng gic
qm(x) =

a0
+
2

[aj cos(jx) + bj sin(jx)]


j=1

vi cc h s thc sao cho vi mi gi tr x[-,] ta c |f(x) - q(x)|<.


T cc nh l trn y ta thy rng chn a thc l thch hp cho dng hm g(x). a thc
l hm quen thuc v ta bit nhiu tnh cht ca n.
Ngi ta thng dng cc phng php xp x sau xc nh a thc p(x):
1.

Nu ta bit rng cc cp gi tr (x0,y0), (x1,y1), ..., (xn,yn) l th hin ca mt hm f(x) no


, tc l ta bit rng y=f(x) v nh vy ti cc im xi, i=0,1,...,n yi = f(xi). Trong trng
hp ny ta i hi a thc p(x) phi i qua cc im (xi,yi), i=0,1,...,n.
Bi ton ni suy by gi c th pht biu c th hn nh sau:
Cho mt mu quan st gm n+1 cp cc gi tr bit ca x v y : (x0,y0), (x1,y1), .
. . ,(xn,yn) . Hy xy dng mt a thc bc m n
pm(x) = a0 + a1x1 + . . . am-1xm-1 + amxm
sao cho pm(xi) = yi , i = 0, 1,..., n

(3.1)
(3.2)

Ngi ta gi bi ton trn y l bi ton ni suy a thc, v a thc pm(x) c gi


l a thc ni suy.
Trong mt s ng dng vt l ta gp cc hin tng c tnh cht tun hon. Khi a
thc lng gic t ra thch hp hn trong bi ton ni suy. V trong bi ton trn a thc
pm(x) c thay bng a thc lng gic
43

Chng 3: Php ni suy v hi quy


qm(x) =
2.

a0
+
2

[aj cos(jx) + bj sin(jx)]


j=1

Ni suy trong trng hp s o khng hon ton chnh xc:


Trong thc t cc gi tr yi ti cc im quan st li thng ch l cc gi tr gn ng
ca cc gi tr tht. Ni cch khc thc ra ta ch c yi f(xi) m thi. Trong trng hp ny
nu ta p t iu kin v a thc ni suy phi tha mn pm(xi) = yi th khng hp l. Thay
v tm mt a thc tha mn iu kin ny, ta tm a thc pm(x) = a0 + a1x1 + . . . am-1xm-1
+ amxm, tc l xc nh cc h s a0, a1, . . ,am sao cho tng bnh phng sai s l b nht,
tc l
e=

i=0

j=0

(yi - aj xij )2

l b nht. Phng php ni suy theo tiu chun ny c gi l phng php bnh
phng b nht hay l phng php bnh phng cc tiu.
Ngoi hai phng php thng dng trn, ngi ta cn dng phng php xp x Csebisev
da trn tiu chun:

max |yi - p(xi)|


0 i n

cc tiu.

3.2. NI SUY A THC


3.2.1. S duy nht ca a thc ni suy
Ta c nh l sau y:
nh l. C duy nht mt a thc c bc khng qu n v i qua n+1 im cho trc (x0,y0),
(x1,y1), . . . ,(xn,yn) .
Chng minh. Ta xt a thc c dng (3.1) trn y v tha mn (3.2). Kt hp (3.1) v
(3.2) ta c

y0

y1
. =

y
n

1 x 0

1 x1
. .

1 x n

x 02
x12
.

...
...
...

x n2

x n2

x 0n a 0

x1n a1
. .

x nn a n

Hay c th biu din gn hn di dng ma trn


Y=Va
Trong

1 x 0

1 x1
V=
. .

1 x n
44

x 02
x12
.

...
...
...

x n2

x n2

x 0n

x1n
.

x nn

(3.3)

Chng 3: Php ni suy v hi quy


chnh l ma trn Vandermon, ta c

det V =

(xj - xi)

0 i < j n

V ta gi thit cc im xi v xj khc nhau, do ma trn ny khc 0 nn h phng trnh


(3.3) c nghim duy nht cho cc ai, v nh vy a thc pn(x) c xc nh duy nht. (Nu khi
gii phng trnh (3.3) m ta nhn c an 0 th a thc ny c bc l n).
3.2.2. Tnh gi tr a thc bng phng php Horner
Trong bi ton ni suy a thc ta s phi thng xuyn tnh gi tr ca a thc pm(x)= a0 +
a1x1 + . . . am-1xm-1 + amxm ti im x. Nu tnh trc tip ta phi thc hin kh nhiu php tnh, v
khi tnh cc gi tr m ca x c th ta gp cc gi tr ln, cho d trong thc t cc thnh phn ca
a thc trit tiu ln nhau v gi tr ca a thc khng ln. Horner a ra cch tnh sau loi tr
c cc nhc im trn.
Ta vit li a thc pm(x) di mt dng khc:
pm(x) = amxm + am-1xm-1 + . . . + a1x1 + a0 = (...((amx + am-1)x + am-2)x+...+a1)x+a0
T y ta c cch tnh pm(x) trn my tnh nh sau:
t

Pm = a m
Pm-1 = Pmx+am-1
...
Pi = Pi-1x + ai

Khi tnh ton ta khng cn lu tr tt c cc gi tr ca Pi, m ch cn lu tr cc gi tr ca


Pi trong mt v tr b nh. Thut ton trn tr thnh:
t

P = am

Cho i chy t m-1 n 0, tc l i=m-1,m-2,...,0


t

P = Px + ai

P cui cng tnh c chnh l gi tr ca a thc ti x.


3.2.3. Sai s ca a thc ni suy
nh l Rolle: Cho f(x) l hm s thc lin tc trn khong ng [a,b] v kh vi trn
khong m (a,b) v f(a) = f(b). Khi tn ti im (a,b) sao cho f'() = 0.
nh l: Gi s hm f(x) c o hm lin tc n cp n+1 trn on [a,b] v pm(x) l a thc
ni suy, tc l:pm(xi) = f(xi) = yi , i = 0, 1,..., n. Vi cc mc ni suy l a = x0 < x1 <... < xn = b.
t n+1(x) =

( x x ) v
i

R(x) = f(x) - pm(x)

i =0

Khi vi x [a,b] tn ti [a,b] (ph thuc vo x) sao cho

f ( n +1) ( )
n+1(x)
R(x) =
(n + 1)!

(3.4)

45

Chng 3: Php ni suy v hi quy


H qu. Gi M =

sup
a x b

|f(n+1) (x)| khi ta c

|R(x)| | f(x) - pm(x)|

M
| n+1(x) |
(n + 1)!

(3.5)

y l cng thc nh gi sai s ca a thc ni suy.


Ta c th p dng h qu (3.5) nh gi sai s a thc ni suy.
V d. Cho bng gi tr ca hm s y = sinx
x
y

0
0

0.707

Hy nh gi sai s khi dng a thc ni suy tnh gn ng sin


Gii. Bi ra khng t vn tnh xp x sin
Ta c n = 2 v nh vy M =
|R2(

)|

sup
a x b

m ch yu cu tnh sai s.

|sin(n+1) (x)| =1, do

1
= 0.024
3! 3 12 6

Sau y ta s xt mt s phng php tm a thc ni suy da vo cc im mc cch u


v khng cch u.
3.2.4. Phng php ni suy Lagrange
Gi s ta c cc im quan st x0, x1, ... xn vi khong chia u hoc khng u v mt
dy cc gi tr quan st y0, y1, ... yn .
tng n gin u tin l tm mt a thc ni suy c bc n (chnh xc hn l c bc
khng qu n) sao cho trong cc cp (xi,yi) i = 0,1, ..., n c vai tr bnh ng. Th d ta tm
pn(x) c dng:
pn(x) = H0(x) + H1(x) + . . . + Hn(x)
Cc hm Hi(x) u c bc khng qu n v Hi(xi) = yi, Hki(xj) = 0 khi ji. Hi(xj) = 0 khi
ji th Hi(x) c dng:
Hi(x) = K(x)(x-x0) (x-x1)... (x-xi-1) (x-xi+1)... (x-xn)
T iu kin Hi(xi) = yi ta c
K(x)(x-x0) (x-x1)... (x-xi-1) (x-xi+1)... (x-xn) = yi
Suy ra
K(x) =yi
46

(x - x 1 ) (x - x 2 )... (x - x i -1 )(x - x i +1 )... (x - x n )


(x i - x 1 ) (x i - x 2 )... (x i - x i -1 )(x i - x i +1 )... (x i - x n )

Chng 3: Php ni suy v hi quy


Nu ta k hiu Li(x) =

(x - x 1 ) (x - x 2 )... (x - x i -1 )(x - x i +1 )... (x - x n )


(x i - x 1 ) (x i - x 2 )... (x i - x i -1 )(x i - x i +1 )... (x i - x n )

Ta nhn thy a thc Li(x) c tnh cht

1
Li(xj) =
0

j =i
ji

v a thc pn(x) c dng


pn(x) = y0L0(x) + y1L1(x) + . . . + ynLn(x)

(3.6)

Nh vy ta c
L0(x) =

(x - x1 ) (x - x 2 )... (x - x n )
(x 0 - x1 ) (x 0 - x 2 )... (x 0 - x n )

L1(x) =

(x - x 0 ) (x - x 2 )... (x - x n )
(x 1 - x 0 ) (x 1 - x 2 )... (x 1 - x n )

...
Li(x) =

(x - x 1 ) (x - x 2 )... (x - x i -1 )(x - x i +1 )... (x - x n )


(x i - x 1 ) (x i - x 2 )... (x i - x i -1 )(x i - x i +1 )... (x i - x n )

...
Ln(x) =

(x - x 0 ) (x - x 1 )... (x - x n -1 )
(x n - x 0 ) (x n - x 2 )... (x n - x n -1 )

a thc ni suy c xy dng theo cch trn y c gi l a thc ni suy Lagrange.


V d1 :Vi hm s y=sin(x/2) ti cc nt gi tr sau:
I

xi

yi

0.000

1.5

0.682

0.841

Hy xc nh a thc ni suy Lagrange i qua cc im trn? Hy tnh gi tr gn ng ca


hm s ti im x=1? Hy nh gi sai s l thuyt ti x=1
Theo phn l thuyt trn a thc ni suy Lagrange i qua cc im (xi,yi) c xc nh
nh sau
n

P(x)= yiLi
i =0

j =0
j i

j =0
j i

Vi Li=( (x-xj))/( (xi-xj))


47

Chng 3: Php ni suy v hi quy


Ta c:
L0(x)=(x-1.5)(x-2)/3
L1(x)=-4/3x(x-2)
L2(x)=x(x-1.5)
Vy P(x)= y0L0(x)+y1L1(x)+y2L2(x)=0- 0.682*4/3x(x-2) + 0.841*x(x-1.5)
Vy P(1)=0- 0.682*4/3(1-2) + 0.841(1-1.5)
P(1)=0.4888
* nh gi sai s l thuyt:
R(x)=(f(3)()/3!)*x(x-1.5)(x-2).
f(x)=sin(x/2). vy f(3)(x)=(-1/2(3))cos(x/2)
Ta c |f(3)(x)|1/8
Vy R(1)(f(3)(x)/3!)*(1-1.5)(1-2)0.01042.
V d 2.Vi hm s y=sin(x/3) ti cc nt gi tr sau:
I

xi

yi

0.000

1.5

0.479

0.618

Hy xc nh a thc ni suy Lagrange i qua cc im trn? Hy tnh gi tr gn ng ca


hm s ti im x=1? Hy nh gi sai s l thuyt ti x=1
Theo phn l thuyt trn a thc ni suy Lagrange i qua cc im (xi,yi) c xc nh
nh sau
n

P(x)= yiLi
i =0

Vi

48

j =0
j i

j =0
j i

Li=( (x-xj))/( (xi-xj))

Chng 3: Php ni suy v hi quy


Ta c:
L0(x)=(x-1.5)(x-2)/3
L1(x)=-4/3x(x-2)
L2(x)=x(x-1.5)
Vy P(x)= y0L0(x)+y1L1(x)+y2L2(x)=0- 0.479*4/3x(x-2) + 0.618*x(x-1.5)
Vy P(1)=0- 0.479*4/3(1-2) + 0.618(1-1.5)
P(1)0.3297
* nh gi sai s l thuyt:
R(x)=(f(3)()/3!)*x(x-1.5)(x-2).
f(x)=sin(x/3). vy f(3)(x)=(-1/3(3))cos(x/3)
Ta c |f(3)(x)|1/27
Vy R(1)( |f(3)(x)|/3!)*(1-1.5)(1-2)((1/27)/6)*0.5=0.00386
3.2.5. Sai phn
Cch xy dng a thc ni suy Lagrange kh n gin v mt tng. Tuy nhin nhc
im ca n l mi ln b sung thm mt s im quan st mi ta li phi tnh li t u. Ngi ta
tm cch xy dng mt a thc ni suy sao cho khi b sung cc im quan st th ta khng phi
tnh li phn a thc c. Th d t cc im quan st (x0,y0), (x1,y1),..., (xk,yk) ta tnh c a
thc pk(x). Khi b sung thm cc im (xk+1,yk+1),..., (xn,yn) th a thc ni suy tng ng vi mu
quan st (x0,y0),..., (xn,yn) s c dng pn(x) = pk(x) + u(x).
thc hin v trnh by iu ny mt cch r rng, sng sa, trc ht ta cn n khi
nim sai phn nh sau:
a. nh ngha:
Cho f(x) l hm ca x v h = x l mt hng s khng i biu th cho khong thay i trn
bin x v c gi l s gia ca x. Khi s gia tng ng trn f(x):
f(x) = f(x+x) - f(x)

(3.7)

c gi l sai phn tin cp mt ti im x ca f(x) tng ng vi h. Gia s c tnh bi


f(x) = f(x) - f(x-x)

(3.8)

c gi l sai phn li cp mt ti im x ca f(x) tng ng vi h.


V sai phn tin g(x) ca mt hm li l mt hm ca x do ta li c th nh ngha sai
phn tin ca g(x). Khi ta gi sai phn tin cp mt ca g(x) l sai phn tin cp 2 ca f(x), v
c nh vy ta c th nh ngha sai phn tin cp k ca mt hm f(x).
49

Chng 3: Php ni suy v hi quy


Vi sai phn li ta cng c lp lun v nh ngha tng t.
b. Sai phn tin
Gi s cc im x0, x1, ... xn tho mn iu kin
xi+1 - xi = h
yi = f(xi), i = 0, 1, ...

(3.9)

Ta c th thy rng sai phn tin


2 yi = (yi) = yi+1 - yi = yi+2 - yi+1 - (yi+1 - yi) = yi+2 - 2yi+1 +yi
Tng qut ta c th chng minh rng
k yi =

(-1)j Ckj yi+(k-j)

(3.10)

j=0

Bng cc sai phn tin


x

2y

3y

4y

x0

y0

y0

2y0

3y0

4y0

x1

y1

y1

2y1

3y1

4y1

x2

y2

y2

2y2

3y2

4y2

x3

y3

y3

2y3

3y3

4y3

x4

y4

y4

2y4

3y4

4y4

.
4yn-5

3yn-4
2yn-3
.

yn-2

xn-1

yn-1

yn-1

xn

yn

4yn-4

3yn-3

2yn-2

c. Sai phn li
Vi sai phn li ta c
2 yi = (yi) = yi - yi-1 = yi - yi-1 - (yi-1 - yi-2) = yi - 2yi-1 +yi-2
Tng qut ta c th chng minh rng
k yi =

(-1)j Ckj yi-j


j=0

Bng cc sai phn li:


50

(3.11)

Chng 3: Php ni suy v hi quy


y

x0

y0

x1

y1

y1

y2

2y

3y

4y

2y2
2y3

3y3
3y4

4y4
4y5

xn-4

yn-4

yn-4

2yn-4

3yn-4

4yn-4

xn-3

yn-3

yn-3

2yn-3

3yn-3

4yn-3

xn-2

yn-2

yn-2

2yn-2

3yn-2

4yn-2

xn-1

yn-1

yn-1

2yn-1

3yn-1

4yn-1

xn

yn

yn

2yn

3yn

4yn

3.2.6. Phng php sai phn Newton


a. tng ca phng php
Ta s tm mt a thc ni suy c bc n (chnh xc hn l c bc khng qu n) sao cho trong
cc cp (xi,yi) i = 0,1, ..., n, sao cho mi ln b sung thm s liu (th d v cui ca mu quan
st) th ta vn tn dng c a thc ni suy tnh trc . Chnh xc hn, ta s tm a thc ni
suy pn(x) c dng
pn(x) = D0(x) + D1(x) + . . . + Dn(x)
sao cho a thc pi(x) = D0(x) + D1(x) + . . . + Di(x) l a thc ni suy ca mu:
(x0,y0), (x1,y1), . . ., (xi,yi).

(3.12)

T nhng iu kin trn y ta thy Di(x) l a thc bc cao nht l i, v cc h s ca n


ch ph thuc vo mu con (x0,y0), (x1,y1), . . ., (xi,yi).
V D0(x) l a thc ni suy i qua mt im duy nht (x0,y0), do y l a thc bc 0,
D0(x)=a0, trong a0 l hng s v ta c th suy ra l a0 = y0.
Vi i khng m, do pi(x) l a thc ni suy ca mu (x0,y0), (x1,y1), . . ., (xi,yi), ta c:
pi(xj) = D0(xj) + D1(xj) + . . . + Di(xj) = yj j = 0,1, ...,i
Nhng pn(x) l a thc ni suy ca mu (x0,y0), (x1,y1), . . ., (xn,yn) nn ta cng c
pn(xj) = D0(xj) + D1(xj) + . . . + Di(xj) + Di+1(xj) +... + Dn(xj) = yj j = 0,1, ...,i
Kt hp hai ng thc trn ta suy ra:
Dk(xj) = 0, vi k = i+1, i+2,..., n; j = 0,1,2,...,i
51

Chng 3: Php ni suy v hi quy


Hay x0, x1,..., xi l nghim ca cc a thc Dk(x), k = i+1, i+2,..., n. Ngha l cc a thc
Dk(x) c dng
Dk(x) = R(x)(x-x0)(x-x1)...(x-xi), k = i+1,i+2,...,n
Vi k = i+1 th a thc Dk(x) c bc khng cao hn i+1, do n c dng
Di+1(x) = ai+1(x-x0)(x-x1)...(x-xi)
trong ai+1 l hng s ph thuc vo mu (x0,y0), (x1,y1), . . ., (xi+1,yi+1).
Nh vy a thc ni suy c xy dng tha mn (3.12) c dng
pn(x) = a0 + a1(x-x0) + a2(x-x0)(x-x1) + . . . + ai(x-x0)(x-x1)... (x-xi-1)+ . . .
+ an(x-x0) (x-x1)... (x-xn-1)

(3.13)

Trong ai l hng s ph thuc vo mu quan st (x0,y0), (x1,y1), . . ., (xi,yi).


b. Phng php sai phn tin Newton vi khong chia u
Gi s cc im x0, x1, ... xn tho mn iu kin
xi+1 - xi = h
yi = f(xi), i = 0, 1, ...
Ta gi thit rng:
kyi 0, k =1,2, ...,m; m n
kyi = 0, k > m
Khi ta c th chn a thc ni suy c bc m pm(x) theo phng php Newton tin nh sau:
pm(x) = a0 + a1(x-x0) + a2(x-x0)(x-x1) + . . . + ai(x-x0)(x-x1)... (x-xi-1)+ . . .
+ am(x-x0) (x-x1)... (x-xm-1)

(3.14)

V ta c th dng a thc ny ni suy cc gi tr trong khong [x0,xm].


Xc nh cc h s ai
Thay ln lt cc gi tr x = xi , i =0,1,2,...,m vo (3.14) ta c
pm(x0) = y0 = a0
Vy

a0 = y0
pm(x1) = y1 = a0 + a1(x1 - x0) = y0 + a1h

Vy

y1 y 0
y 0
=
h
h
pm(x2) = y2 = a0 + a1(x2 - x0) + a2(x2 - x0)(x2 - x1) = y0 + a1h =
= y0 + 2(y1 - y0) + a2 2h2
a1 =

Do a2 2h2 = y2 - 2y1 + y0 = 2y0

2 y 0
2h 2
Tng t vi trng hp tng qut ta c
Vy

a2 =

i y 0
ai =
,im
i! h i
52

Chng 3: Php ni suy v hi quy


Thay cc ai vo (3.14) ta c
pm(x) = y0 +

y 0
2 y 0
i y 0
(x-x0) +
(x-x
)(x-x
)
+
.
.
.+
(x-x0) (x-x1)...
0
1
h
2h 2
i! h i

m y 0
(x-x0) (x-x1)... (x-xm-1)
+ (x-xi-1) + . . . +
m! h m
Ta c th biu din (3.15) di mt dng khc bng php bin i
t=

(3.15)

x x0
-> x = x0 + th
h

pm(x) = y0 +
+

y 0
2 y 0
(x-x0) +
(x-x0)(x-x1) + . . .
h
2h 2

i y 0
m y 0
(x-x
)
(x-x
)...
(x-x
)
+
.
.
.
+
(x-x0) (x-x1)... (x-xm-1)
0
1
i-1
i! h i
m! h m

pm(x) = pm(x0 + th) = y0 + (y0)t +


+

2 y 0
t(t-1) + . . .
2

i y 0
m y 0
t(t-1)... (t-i+1) + . . . +
t (t-1)... (t-m+1) (3.15b)
i!
m!

V d. Cho bng sai phn sau:


x

2y

3y

23

70

96

48

93

166

144

48

259

310

192

48

569

502

240

48

10

1071

742

288

12

1813

1030

14

2843

Ta thy cc sai phn bc nh hn 4 khc khng nhng sai phn bc bn u bng khng, do
chng ta ch xy dng c a thc bc cao nht l 3. Chn x0=4, x1=6, x2 = 8, ta c a thc
bc ba l
p3(x) = 93 + 83(x-4) + 18(x-4)(x-6) + (x-4)(x-6)(x-8)
Mun tnh gi tr ca hm f(x) ti cc im x thuc khong [4,8] ta ch cn thay gi tr x
vo a thc va lp c v tnh gi tr ca a thc. Chng hn vi x = 4.2 ta c:
p3(4.2) = 93 + 83(4.2-4) + 18(4.2-4)(4.2-6) + (4.2-4)(4.2-6)(4.2-8) = 104.48
53

Chng 3: Php ni suy v hi quy


Nhn xt v phng php sai phn tin Newton:
Cng thc ni suy Newton tin thng c dng ni suy cc gi tr ca hm f(x)
vng u bng. ni suy cc gi tr cui bng ngi ta thng dng phng php sai phn li.
c. Phng php Newton vi khong chia khng u
Trong thc t cc im x0, x1, ... xn c th khng cch u. Lc ny khong cch xi+1 - xi =
hi khng phi l hng s. Trong trng hp ny ta cng xy dng c a thc ni suy Newton
c dng nh (3.14) nh trng hp cch u, nhng cch tnh ton cc h s c khc. Ta a ra
cc k hiu sau, c th xem l dng tng qut ha ca sai phn tin.
Vi s s nguyn p 0 bt k ta nh ngha t sai phn cp 1 l i lng

y p +1 y p

y[xp+1,xp] =
V d:

y[x1,x0] =

x p +1 x p

y1 y 0
x1 x 0

T sai phn cp 2
y[xp+2,xp+1,xp] =
V d: y[x2,x1,x0] =

y[ x p + 2 , x p +1 ] y[ x p +1 , x p ]
x p+2 x p

y[ x 2 , x1 ] y[ x1 , x 0 ]
x 2 x0

...
T sai phn cp k:
y[xp+k,..., xp+1, xp] =
V d: y[xk,..., x1, x0] =

y[ x p + k ,..., x p + 2 , x p +1 ] y[ x p + k 1 ,..., x p +1 , x p ]
x p+k x p

y[ x k ,..., x 2 , x1 ] y[ x k 1 ,..., x1 , x 0 ]
x k x0

By gi ta xt a thc ni suy
pm(x) = a0 + a1(x-x0) + a2(x-x0)(x-x1) + . . . + ai(x-x0)(x-x1)... (x-xi-1)+ . . .
+ am(x-x0) (x-x1)... (x-xm-1)
Thay ln lt ccgi tr x = xi , i=0,1,...,n

(3.16)
vo (3.16)

Ta c:
a0 = y0
y1 - y0 = a1(x1 -x0) a1 =

y1 y 0
= y[x1,x0].
x1 x 0

y2 - y0 = a1(x2-x0)+ a2(x2-x0)(x2-x1) =
54

y1 y 0
(x2 - x0) + a2(x2-x0)(x2-x1)
x1 x 0

Chng 3: Php ni suy v hi quy


a2(x2-x0)(x2-x1) = (y2 - y0) -

y2 y0
y1 y 0
=
( x 2 x 0 )( x 2 x1 ) ( x1 x 0 )( x 2 x1 )

a2 =
=

y1 y 0
(x2 - x0)
x1 x 0

( y 2 y1 + y1 y 0 )( x1 x 0 ) ( y1 y 0 )( x 2 x 0 )
( x 2 x 0 )( x1 x 0 )( x 2 x1 )

(3.17)

Xt t s ta c
(y2 - y1 + y1 - y0)(x1 - x0) - (y1 - y0)( x2 - x1 + x1 -x0) =
(y2 - y1) (x1 - x0) + (y1 - y0) (x1 - x0) - (y1 - y0)( x2 - x1) -(y1 - y0)( x1 - x0) =
= (y2 - y1) (x1 - x0) - (y1 - y0)( x2 - x1)
Thay vo (3.17) v gin c ta c
a2 =

y[ x 2 , x 1 ] y[ x1 , x 0 ]
= y[x2, x1, x0]
( x 2 x0 )

Tng qut ta c th chng minh rng


ak = y[xk,..., x1, x0]
Tng t nh phng php sai phn chia u, ta c bng tnh t sai phn (t.s.p) Newton
tng qut nh sau:
X

t.s.p bc 1

t.s.p bc 2

t.s.p bc 3

t.s.p bc 4

X0

y0

y[x1,x0]

y[x2,x1,x0]

y[x3,x2,x1,x0]

y[x4,x3,x2,x1,x0]

X1

y1

y[x2,x1]

y[x3,x2,x1]

y[x4,x3,x2,x1]

X2

y2

y[x3,x2]

y[x4,x3,x2]

X3

y3

y[x4,x3]

X4

y4

V d.Cho bng gi tr (xi,yi) (i=0,2...,4)tng ng nh sau


x

-4

-1

1245 33

1335

Hy thit lp a thc ni suy Newton qua cc im trn?


Vy ta c bng t sai phn nh sau:
x
-4
-1
0
2
5

y
1245
33
5
9
1335

t.s.p bc 1
-404
-28
2
442

t.s.p bc 2
94
10
88

t.s.p bc 3
-14
13

t.s.p bc 4
3

55

Chng 3: Php ni suy v hi quy


Chn x0 = -4 ta c a thc ni suy
p4(x) = 1245 -404(x+4) + 94(x+4)(x+1) - 14(x+4)(x+1)x + 3(x+4)x(x-2) =
= 5 -14x +6x2 -5x3 + 3x4
d. Ci t phng php sai phn Newton tng qut
Ta c th thy rng thut ton trong trng hp khong chia khng cch u hon ton c
th p dng cho trng hp cch u. Do vy ta ch ci t cho trng hp tng qut.
Ta s lu tr cc im quan st v cc kt qu quan st trong cc vect x,y; cc h s ai
trong vect a.
tnh ton v lu tr cc t sai phn ta s vit li bng t sai phn di dng sau
x

s.p bc 1

s.p bc 2

s.p bc 3

s.p bc 4

x0

y0

y[x1,x0]

y[x2,x1,x0]

y[x3,x2,x1,x0]

y[x4,x3,x2,x1,x0]

x1

y1

y[x2,x1]

y[x3,x2,x1]

y[x4,x3,x2,x1]

x2

y2

y[x3,x2]

y[x4,x3,x2]

x3

y3

y[x4,x3]

x4

y4

Cc t sai phn bc k c tnh bi cng thc sau:


y[xi+k,xi+k-1,...,xi] =

y[ xi + k , xi + k 1 ,..., x i +1 ] y[ xi + k 1 ,..., x i +1 , x i ]
(3.18)
( xi + k xi )

Ta c nhn xt sau:
Ta nh s cc sai phn bc k cn c vo v tr xut pht i ca n v lu tr trong vect
sp[i], i =0,1,2,...,n-1. T sai phn bc k c v tr xut pht l i s c lu tr trong phn t sp[i]
nh bng sau:
x

sp[i]

s.p bc 1

s.p bc 3

s.p bc 4

x0

y0

sp[0]

y[x1,x0]

y[x3,x2,x1,x0]

y[x4,x3,x2,x1,x0]

x1

y1

sp[1]

y[x2,x1]

y[x4,x3,x2,x1]

x2

y2

sp[2]

y[x3,x2]

x3

y3

sp[3]

y[x4,x3]

x4

y4

Khi k thay i th ta c cm gic nh cn mt mng 2 chiu lu tr cc t sai phn v


y ta c 2 ch s l i v k. Tuy nhin mc ch chng ta khng phi l tnh cc t sai phn m
l tnh cc h s ai, do ta s thy rng ch cn lu tr sai phn trong mt mng vect l . Cc
bc c tin hnh nh sau:
- Bc 0: t a[0] = y[0]
56

Chng 3: Php ni suy v hi quy


- Bc 1: Ta tnh cc sai phn bc nht v lu vo vect sp, y[xi+1,xi] c lu tr vo
sp[i], i = 0,1,2, ..., n-1
t a[1] = sp[0]
- Bc 2: Ta tnh cc sai phn bc hai y[xi+2,xi] bt u t i=0,1,...,n-2 v lu tr vo
sp[i], i = 0,1,2,..., n-2. tnh y[x0+2,x0] chng hn, ta t
sp[0] =

y[ x 2 , x 1 ] y[ x1 , x 0 ] sp[1] sp[0]
=
x 2 x0
x2 x0

Tng t ta c
sp[1] =

y[ x3 , x 2 ] y[ x 2 , x 1 ] sp[2] sp[1]
=
x3 x1
x3 x1

...
Nh vy ta thy khi tnh li sp[0] ta cn n sp[0] v sp[1], khi tnh sp[1] ta cn n sp[1]
v sp[2], ... nh vy qu trnh tnh ton sp[i] ch cn n cc phn t t v tr i tr v sau
m khng cn n cc v tr trc i. Nh vy sau khi tnh t sai phn bc 2 th i ta c th
dng ngay v tr i lu tr khng s rng v tr ny b nhng tnh ton tip theo lm thay
i, v khi tnh t sai phn th i+1 ta ch cn gi tr sp[i+1] v sp[i+2].
t a[2] = sp[0].
..
- Bc k: Ta tnh cc t sai phn bc k y[xi+k,xi] bt u t i=0,1,...,n-k v lu tr vo
sp[i], i = 0,1,2, ..., n -k. tnh y[x0+k,x0] chng hn, ta t
sp[0] =

y[ x k , x 1 ] y[ x k 1 , x 0 ] sp[1] sp[0]
=
x k x0
xk x0

Thc hin tng t vi i =1,2,.., n-k.


t a[k] = sp[0]
...
- Bc n: bc cui cng ta tnh

sp[1] sp[0]
xn x0
sp[0] =
t a[n] = sp[0]
(on chng trnh m t phng php c th hin phn sau)
3.2.7. Php ni suy ngc
Trong cc phn trc ta xt bi ton cho gi tr hm y = f(x) ti cc im quan st x0, x1, ...
xn v cn xc nh gi tr y = f(x) ti nhng im x khng c trong cc im quan st. By gi ta
xt bi ton ngc li: vn l cc gi thit trn, tc l cho bng cc gi tr yi ca hm y = f(x) ti
cc im xi, i=0,1,...,n. Cho bit gi tr y', ta hy tnh x' tng ng. Bi ton ny c gi l bi
ton ni suy ngc. Mt trong nhng ng dng ca ni suy ngc l tm nghim xp x ca
phng trnh f(x)=0.
57

Chng 3: Php ni suy v hi quy


Cch gii quyt bng a thc ni suy Lagrange.
Ta xem x = (y) l hm ngc ca hm y = f(x) v xem cc gi tr y0, y1,..., yn l cc mc
ni suy (ni chung cc mc yi khng u). T t bit y' ta s tnh c x' = (y').
Chng trnh ci t cc a thc ni suy
Sau y l on chng trnh chnh th hin (m t) phng php Newton v phng
php Lagrange:
/*Tra ve gia tri da thuc noi suy tai x; anew[i] la cac he so da thuc noi suy Newton, xqs[i] la
cac diem quan sat*/
double polinew(double x)
{int i;double mx,s;
s=anew[0];
mx=1;
for(i=0;i<nqs;i++)
{mx*=(x-xqs[i]);
s+=anew[i+1]*mx;
}
return s;
}
//===============================================
/*Tra ve gia tri da thuc noi suy tai x; alag[i] la cac he so cua
da thuc noi suy Lagrange , xqs[i] la cac diem quan sat*/
double polilag(double x)
{int i,j;double mx,s;
s=0;
for(i=0;i<=nqs;i++)
{mx=1;
for(j=0;j<=nqs;j++)
if(j!=i) mx*=(x-xqs[j]);
s+=alag[i]*mx;
}
return s;
}
//===============================================
/*Noi suy Newton voi khoang chia khong can deu */
void nsnewton(double *a)
58

Chng 3: Php ni suy v hi quy


{ int h,i,j,k;double tmp;kvecto sp;
a[0]=yqs[0];
for(i=0;i<=nqs-1;i++) //Tinh sai phan bac 1;
sp[i]=(yqs[i+1]-yqs[i])/(xqs[i+1]-xqs[i]);
a[1]=sp[0];
for(k=2;k<=nqs;k++)//Tinh cac sai phan bac k va cac he so a[i]
{ for(i=0;i<=nqs-k;i++)
sp[i]=(sp[i+1]-sp[i])/(xqs[i+k]-xqs[i]);
a[k]=sp[0];
}
}
//===============================================
/*Noi suy Lagrange voi khoang chia khong can deu
Tinh cac he so*/
a[i] = 1/((x[i]-x[0])(x[i]-x[1])...(x[i]-x[i-1])(x[i]-x[i+1])...x[m])*/
void nslagrange(double *a)
{ int h,i,j,k;double tmp;
for(i=0;i<=nqs;i++) //Tinh cac he so a[i];
{ tmp=1;
for(j=0;j<=nqs;j++) if(j!=i) tmp=tmp*(xqs[i]-xqs[j]);
a[i]=yqs[i]/tmp;
}
}

3.3. KHP NG CONG - NI SUY SPLINE


Trong phn trc ta xt bi ton ni suy dng a thc v nh ta thy, cc a thc ni
suy thng c bc l n, trong n+1 l s im quan st. Ta c th ni suy bng a thc bc m
nh hn n, nhng nh vy th ta cng ch dng n mu quan st da trn m+1 im l (x0,y0),
(x1,y1), . . . ,(xm,ym) v nh th ch ni suy c gi tr ca hm ti cc im x [x0,xm] . iu
ny t ra khng c ph hp vi thc t cho lm. Tht vy, gi s trong thc t hm f(x) l
mt a thc bc 3 nhng v ta khng bit iu ny nn phi dng a thc ni suy. Theo mt cch
t nhin, ta ngh rng nu c cng nhiu thng tin th ta cng gii quyt bi ton tt hn. Ngha l
nu c cng nhiu im quan st th kt qu ca chng ta cng gn vi thc t hn. Tuy nhin nu
dng a thc ni suy nh kiu chng ta va kho st th khng c c nh iu chng ta mong
i. Mc du dng tht ca a thc l bc 3, nhng nu dng 5 im quan st th ta phi tnh cc
h s a thc bc 4, 10 im th ta phi tnh ton vi a thc bc 9,...ngha l cng dng nhiu
im th ta cng i xa thc t hn. Php ni suy a thc cn c mt nhc im na l s lng
59

Chng 3: Php ni suy v hi quy


php tnh cn thc hin ph thuc rt nhiu vo c ca mu quan st. Trong k thut truyn thng
chng hn, vic chuyn i mt tn hiu s c hng ngn im quan st sang dng tng t l vn
thng gp. Th nhng ch cn ni suy a thc cho 101 im quan st ta phi dng n a
thc bc 100, v vic dng a thc bc 100 tnh ton cho cc im cn li l mt vic tiu tn
ti nguyn my mt cch qu lng ph. V vy c th ni rng php ni suy a thc ch c ngha
l thuyt m thi, trong thc t hu nh ngi ta khng dng n.
tm kim mt cch ni suy gn vi thc t hn, chng ta hy bt u bng mt thao tc
n gin m chng ta hay thc hin hi cn hc ph thng. Khi v mt th hm s no , u
tin ta v cc im ri rc, v v c cng nhiu im cng tt. Sau ta dng bt ni cc im
vi nhau, nhng ta khng ni bng thc k, m ni bng bt v s quan st bng mt sao cho
cc on ni cc im thnh mt ng mn, khng b gy khc.
Nhng ngi chuyn v s thit k dng mt thit b c hc gi l spline v cc
ng cong p, c thm m: ngi v xc nh tp hp cc im (nt) ri b cong mt gii
plastic hay thanh g linh hot (spline) quanh chng v ly vt chng to thnh mt ng
cong. Ni suy spline v mt ton hc tng ng vi tin trnh ny v cho ra cng mt kt qu.

3.4. PHNG PHP BNH PHNG CC TIU


Trong phng php ni suy a thc xt, ta i hi a thc phi i qua cc im quan st.
iu ny i khi l iu kin qu cht trong thc t. Sau y ta s xc nh tham s ca mt hm
f(x) c dng bit, sao cho cc gi tr f(xi) xp x tt nht cc gi tr yi theo mt tiu chun gi
l bnh phng cc tiu. Trong bi ton c lng bnh phng cc tiu ta phi gi thit l dng
hm f(x) bit v ta ch cn c lng cc tham s. Ni chung i vi dng bi ton ny th ta
khng th t ra yu cu l th hm s y = f(x) phi i qua cc im quan st, m ch c th
t ra yu cu l th gn cc im quan st nht trong tp hp cc dng hm cho.
3.4.1. Trng hp hm ni suy l a thc hay y ph thuc cc tham s mt cch tuyn tnh
By gi ta xt mt trng hp hay c p dng nht l hm f(x) c dng a thc bc m,
tc l:
f(x) =

a0 + a1x1 + . . . am-1xm-1 + amxm

V gi tr f(xi) ni chung khc gi tr yi, gi s sai s l ei, ta c


yi = a0 + a1xi1 + . . . am-1 xi m-1 + am xi m + ei
i=0,1,2,...,n
Nh vy ta c:
m

ei = yi -

aj xi j
j=0

V tng bnh phng cc sai s bng


n

S=

ei2 =
i=0

(yi i=0

aj xi j)2
j=0

S t gi tr nh nht th iu kin sau phi tha mn


60

Chng 3: Php ni suy v hi quy


S /ak =0, vi k=0,1,...,m
Thc hin php ly o hm ring tng thnh phn ca tng theo ak ta c
m

aj xi j)2 /ak

(yi -

= 2(yi -

j=0

aj xi j)(- xik) =

2(-yi xik +

j=0

aj xi j+k)
j=0

Nh vy
n

S /ak = 2 (-yi xik +


i=0

aj xi j+k) = 0,

k=0,1,2,...,m

j=0

T y
m

j=0

i=0

i=0

aj xi j+k = yi xik ,

k = 0,1,2,...,m

Vi k = 0,1,2,..,m
n

(n+1)a0 + a1 xi + a2 xi2 + . . . + am xim


n

i=0

i=0

i=0

i=0

a0 xi + a1 xi2 + a2 xi3 + . . . + am xim+1


i=0

i=0

i=0

i=0

a0 xi2 + a1 xi3 + a2 xi4 + . . . + am xim+2


i=0

i=0

i=0

yi
n

yi xi
i=0
n

i=0

yi xi2
i=0

...
n

i=0

i=0

i=0

i=0

xi

xi2

a0 xim + a1 xim+1 + a2 xim+2 + . . . + am xim+m =

yi xim
i=0

t
n

xi 0
i=0
n

xi
i=0

C=

xi 2
i=0

i=0
n

xi2
i=0
n

xi3
i=0

i=0
n

xi3
i=0
n

xi4
i=0

xi3
i=0

...

xi4
i=0

i=0

i=0
n

...

xim+1

...

xim+1

xi5

xim
i=0
n

i=0

...
n

xi m
i=0

xim+1
i=0

xim+2
i=0

xim+3
i=0

...

xi2m
i=0

61

Chng 3: Php ni suy v hi quy


n

d = ( yi xi0 ,
i=0

yi xi1 ,. . .,
i=0

yi xim)
i=0

Ta c h phng trnh
Ca=d
Tuy nhin, tin cho vic tnh ton, ta c nhn xt sau y:
t y = (y0, y1,..., yn)T, e = (e0, e1,..., en)T , a = (a0, a1,..., an)T

x0

x02

...

x0 m

x1

x12

...

x1 m

...

xn

...

xn m

xn2

H phng trnh C a = d c th vit di dng sau:


FT F a = FTy
Ta c th p dng phng php Gauss-Jordan gii h phng trnh ny.
Ta c th thy rng nu m n th nh thc ca ma trn C khc khng v v vy a thc ni
suy bnh phng cc tiu c xc nh duy nht.
Tht vy, vit chi tit ma trn C ta c

1 + 1 + ... + 1

x + x1 + ... + x n
C= 0

.
m
m
m
x 0 + x1 + ... + x n

x 0 + x1 + ... + x n
x 02 + x12 + ... + x n2
.
x

m +1
0

m +1
1

+x

+ ... + x nm +1

x 0m + x1m + ... + x nm
...

... x 0m +1 + x1m +1 + ... + x nm +1

...
.

... x 02 m + x12 m + ... + x n2 m

Bng cch tch ra cc ct ta thu c (n+1)m+1 ma trn con C1, C2,... , mi ct ca ma trn
con ch ph thuc cc s 1, x0, x1,..., xn. Sau khi tch c nh vy, bng cch t tha s
chung ra ngoi ta li thu c cc ma trn m mi ma trn c m+1 ct, cc ct ny c ly t t
hp ca (n+1) cc ct c dng

1

x0
x2 ,
0
.
xm
0

1

x1
x 2 , ...,
1
.
xm
1

1

xn
x2
n
.
xm
n

D thy rng:
- Nu m>n th cc ma trn con lun c 2 ct no trng nhau nn nh thc bng 0 v
do det C = det Ci = 0.
- Nu n m: ma trn C c tch thnh hai loi ma trn:
62

Chng 3: Php ni suy v hi quy


Loi 1: Cc ma trn c 2 ct no cng ph thuc mt thnh phn trong x0,x1,...,xn
nn c nh thc bng 0.
Loi 2: Cc ma trn c m+1 ct khc nhau ly t (n+1) ct c dng trn. Cc ma trn
ny c dng Vandermond nn khc khng. Do det C 0.
3.4.2. Trng hp y ph thuc cc tham s mt cch phi tuyn
a. y = aebx, a>0

(3.19)

Ly logarit hai v, ta c
lny = lna + bx
t Y = lny, A = lna, B = B, X = x (3.18) tr thnh
Y = A + BX

(3.20)

Nh vy bng cch ly logarit hai v, ta a quan h phi tuyn (3.19) thnh dng tuyn
tnh (3.20). Ta tnh c A v B, t y tnh c a, b.
b. y = axb, a>0

(3.21)

Ly logarit hai v, ta c
lny = lna + blnx
t Y = lny, A = lnA, B = b, X = lnx (3.21) tr thnh
Y = A + BX

(3.22)

T y ta tnh c A v B, v suy ra a, b.
Chng trnh ci t cc a thc ni suy
Sau y l on chng trnh chnh th hin (m t) thut ton hi qui bng bnh phng
cc tiu
/*Hoi quy dung da thuc uoc luong theo phuong phap binh phuong cuc tieu*/
/*Cho truoc bac m, xac dinh cac he so da thuc thuc nghiem , tra ve tong binh phuong cac sai so*/
double regresspoli(double *a,int m)
{int i,j,k;
kmatran aa;
double **f,**ft;
f = new double* [nqs+1];
for(I=0;i<=nqs;i++) f[i] = new double [m+1];
ft = new double* [m+1];
for(I=0;i<=m;i++) ft[i] = new double [nqs+1];
/*Tinh ma tran
f la ma tran co kieu nhu Vandermon nhung co n hang m cot,
ft la ma tran chuyen vi cua f. Nhu vay ft x f se la ma tran aa cua
he phuong trinh tuyen tinh
*/
63

Chng 3: Php ni suy v hi quy


for(i=0;i<=nqs;i++)
{f[i][0]=1;
for(j=1;j<=m;j++)
f[i][j]=f[i][j-1]*xqs[i];
}
//Tinh ma tran chuyen vi
for(i=0;i<=m;i++)
for(j=0;j<=nqs;j++) ft[i][j]=f[j][i];
/*Tinh ma tran vuong aa cap m, chi can tinh tinh nua tren roi gan cho
nua duoi, vi ma tran aa la doi xung
*/
for(i=0;i<=m;i++)
for(j=i;j<=m;j++)
{aa[i][j]=ft[i][0]*f[0][j];
for(k=1;k<=nqs;k++) aa[i][j]+=ft[i][k]*f[k][j];
}
//Gan nua duoi
for(i=0;i<=m;i++)
for(j=0;j<i;j++) aa[i][j]=aa[j][i];
//Tinh ve phai cua he phuong trinh
for(i=0;i<=m;i++)
{aa[i][m+1]=ft[i][0]*yqs[0];
for(k=1;k<=nqs;k++) aa[i][m+1]+=ft[i][k]*yqs[k];
}
for(i=0;i<=nqs;i++) delete [] f[i];
for(i=0;i<=m;i++) delete [] ft[i];
gjordan(aa,a,m);
//Tinh tong binh phuong cac sai so
double ss,fa,xx;
ss=0;
for(i=0;i<=nqs;i++)
{fa=1;xx=1;
for(j=1;j<=m;j++)
{xx=xx*xqs[i];fa+=a[j]*xx;}
ss+=(yqs[i]-fa)*(yqs[i]-fa);
}
return ss;
}
64

Chng 3: Php ni suy v hi quy

3.5.

BI TP

Bi 1. Cho hm s y = 2x vi cc gi tr ti xi = 3,50 +0,05i, i=0,1,2,3,4 tun t l 33,115;34,813;


36,598; 38,475; 40,477. Hy lp a thc ni suy Newton tin xut pht t nt 3,50.
Bi 2. Tch phn xc sut
x

(x) = (2/sqrt()) exp(-t2) dt


0

Khng tnh c bng nguyn hm. Ngi ta tnh gn ng n ti xi =1 +0,1i, i=0,1,2,..,10


c cc gi tr xp x tun t l 0,8427; 0,8802; 0,9103; 0,9523; 0,9661; 0,9763; 0,9838;
0,9891; 0,9928; 0,9953. Hy tnh (1,43)
Bi 3. Cho hm s y = ex ti x = 0,65 + 0,1i i=0,1,...,5 tun t l 1,91554; 2,11700; 2,33965;
2,58571; 2,85765; 3,15819. Hy tnh ln2.
Bi 4. Bit rng i lng y l mt tam thc bc hai ca x v ti x =0,78; 1,56; 2,34; 3,12;
3,81 cc gi tr ca y tun t l 2,5; 1,20; 1,12; 4,28. Hy lp cng thc y biu din qua x.
Bi 5. Hy nh gi sai s nhn c khi xp x hm s y = sinx bng a thc ni suy Lagrange
bc 5 L5(x), bit rng a thc ny trng vi hm s cho ti cc gi tr x bng: 00, 50, 100,
150, 200, 250.
Xc nh ga tr ca sai s khi x = 12030'.
Bi 6. Cho bng cc gi tr:
2

10

12

x
7
.32

8
.24

9
.20

10
.19

11
.01

12
.05

Hy p dng phng php bnh phng cc tiu xc nh cc a thc xp x c cc dng:


y = a + bx, y = a+bx +cx2, y = axb
v so snh cc sai s kt lun dng no thch hp nht.
Bi 7. Th li hoc vit mi cc chng trnh ci t cc thut ton ri chy th kim tra cc
kt qu trn y.

65

Chng 3: Php ni suy v hi quy

TM TT NI DUNG CHNG 3
Trong chng ny chng ta cn ch nht l cc vn sau:
1. Sai s ca a thc ni suy
Vi M =

sup
a x b

|f(n+1) (x)| khi ta c: |R(x)| | f(x) - pm(x)|

M
| n+1(x) |
(n + 1)!

y l cng thc nh gi sai s ca a thc ni suy.


2. Phng php ni suy Lagrange
a thc pn(x) c dng nh sau, c gi l a thc ni suy Lagrange:
pn(x) = y0L0(x) + y1L1(x) + . . . + ynLn(x)

(3.6)

Vi:
L0(x) =

(x - x1 ) (x - x 2 )... (x - x n )
(x 0 - x 1 ) (x 0 - x 2 )... (x 0 - x n )

L1(x) =

(x - x 0 ) (x - x 2 )... (x - x n )
(x 1 - x 0 ) (x 1 - x 2 )... (x 1 - x n )

...
Li(x) =

(x - x 1 ) (x - x 2 )... (x - x i -1 )(x - x i +1 )... (x - x n )


(x i - x 1 ) (x i - x 2 )... (x i - x i -1 )(x i - x i +1 )... (x i - x n )

...
Ln(x) =

(x - x 0 ) (x - x 1 )... (x - x n -1 )
(x n - x 0 ) (x n - x 2 )... (x n - x n -1 )

3. Phng php sai phn Newton


Phng php sai phn tin Newton vi khong chia u
Theo phng php Newton tin th a thc ni suy c bc m l pm(x) vi khong chia
u nh sau:
pm(x) = y0 +

y 0
2 y 0
i y 0
(x-x0) +
(x-x
)(x-x
)
+
.
.
.+
(x-x0) (x-x1)... (x-xi-1) + .. . +
0
1
h
2h 2
i! h i

m y 0
(x-x0) (x-x1)... (x-xm-1)
m! h m
Hoc c th biu din cng thc trn di mt dng khc bng php bin i t =
-> x=x0 + th:
66

x x0
h

Chng 3: Php ni suy v hi quy

2 y 0
pm(x) = pm(x0 + th) = y0 + (y0)t +
t(t-1) + . . .
2
+

i y 0
m y 0
t(t-1)... (t-i+1) + . . . +
t (t-1)... (t-m+1)
i!
m!

Phng php sai phn tin Newton vi khong chia khng u


Theo phng php Newton tin th a thc ni suy c bc m l pm(x) vi khong chia
khng u nh sau:
pm(x) = a0 + a1(x-x0) + a2(x-x0)(x-x1) + . . . + ai(x-x0)(x-x1)... (x-xi-1)+ . . .
+ am(x-x0) (x-x1)... (x-xm-1)

(3.16)

Trong :
a0 = y0
a1 =

y1 y 0
= y[x1,x0].
x1 x 0

a2 =

y[ x 2 , x 1 ] y[ x1 , x 0 ]
= y[x2, x1, x0]
( x 2 x0 )

............................
am = y[xm,..., x1, x0]

67

Chng 4: Tnh gn ng nghim ca phng trnh phi tuyn

CHNG 4

TNH GN NG NGHIM CA
PHNG TRNH PHI TUYN
MC CH, YU CU
Sau khi hc xong chng 4, yu cu sinh vin:
1. Hiu c th no l nghim v khong phn ly nghim
2. Nm c mt s phng php lp tm nghim gn ng ca phng trnh phi tuyn.
3. Bit vn dng cc phng php trn vo cc bi ton thc t.

4.1. NGHIM V KHONG PHN LY NGHIM


4.1.1. Nghim ca phng trnh mt n
Xt phng trnh mt n
f(x) = 0

(4.1)

trong f(x) l mt hm s cho trc ca i s x.


Gi tr x0 c gi l nghim ca (4.1) nu
f(x0) = 0
Nghim ca phng trnh (4.1) c th l s thc hoc s phc, nhng y ta ch kho st
cc nghim thc.
4.1.2. S tn ti nghim ca phng trnh
nh l. Nu hm s f(x) lin tc trn on [a,b] v f(a) v f(b) tri du, tc l
f(a)f(b)<0

(4.2)

Th phng trnh (4.1) c t nht mt nghim trong khong [a,b].


4.1.3. Khong phn ly nghim
nh ngha. Khong [a,b] c gi l khong phn ly nghim ca phng trnh (4.1) nu
n cha mt v ch mt nghim ca phng trnh .
nh l. Nu hm s f(x) lin tc, n iu trn on [a,b] v f(a)f(b)<0 th on [a,b] l
mt khong phn ly nghim ca phng trnh (4.1).
V d. Xt phng trnh
f(x) = x2 - 2 =0
Ta thy hm s f(x) lin tc, v f'(x) = 2x.
68

Chng 4: Tnh gn ng nghim ca phng trnh phi tuyn


Ta xt on [1,2]. Ta c f(1) = -1; f(2) = 2. Vy f(1)f(2)<0. Hm s f(x) lin tc v n iu
v f'(x) = 2x >0 trn on [1,2]. Vy on [1,2] l khong phn ly nghim ca phng trnh trn.
Tuy nhin v d sau y chng t rng iu kin lin tc, n iu ch l iu kin . Hm
s khng n iu trong mt khong no vn c th ch c mt nghim duy nht.
V d. Xt phng trnh
f(x) = x3 - x -1 =0

(4.3)

Ta s chng t rng phng trnh ny c nghim thc v xc nh khong phn ly nghim.


Ta thy hm s f(x) lin tc, v f'(x) = 3x2 - 1 =0 ti x =

1
3

Ta c bng bin thin sau:


x

f'(x)

+
+

f(x)

M
-

trong f(M) = f(-

1
3

)=-

1
3 3

1
3

-1 =

2
3 3

-1 <0

Vy th ch ct trc honh ti mt im duy nht v do phng trnh (4.3) ch c mt


1
nghim duy nht (Mc d trn on [ ;2] hm s khng n iu)
3
Ngoi ra theo bng bin thin ta c: hm s f(x) lin tc,n iu trn on [1;2] v
f(1) = 13 -1 -1 =-1 < 0
f(2) = 23 -2 -1 = 5 > 0
Tc l f(1)*f(2)<0
Vy khong [1,2] chnh l khong phn ly nghim.
4.1.4. V vn nh gi sai s nghim xp x
Cng nh cc phng php gn ng ni chung, khi tm nghim gn ng ca phng trnh
siu vit, ta thng thit lp c mt dy x0, x1,...,xn,... sao cho xn -> khi n-> , trong l
nghim ng ca phng trnh (4.1). Do gi thit lin tc ca hm f(x) ta c

lim f(xn) = f() = 0

n > +

iu ny c ngha l khi xn kh gn th f(xn) kh gn f() v c th xem f(xn) 0, hay xn


thc s c th xem l xp x ca nghim.
69

Chng 4: Tnh gn ng nghim ca phng trnh phi tuyn


Ngi ta thng cho trc s >0 nh v nu
|xn-|

(4.4)

th chn xn lm nghim xp x v dng qu trnh tnh ton. Mt cu hi t ra l vi cch


chn nh vy th f(xn) c th thc s xem l xp x ca f() khng, c bo m rng |f(xn)f()| = |f(xn)| l kh gn 0 khng? Cng c lc ta ch quan tm l xn xp x tt nh th no
thi, nh trong v d p dng tnh 2 m ta s xt n chng hn, khi ta khng cn quan
tm n cu hi ny lm. Nhng cng c nhng trng hp ta li quan tm l f(xn) c th coi l
gn 0 khng, (V d c th b qua trong qu trnh tnh ton) th lc ny s xp x ca xn so
vi cha , m ta cn phi xt c gi tr |f(xn)| na. Chnh v l do ny m trong cc chng
trnh tnh ton chng ti a thm iu kin dng v f(xn). Qu trnh tnh ton s dng nu iu
kin (4.4) v
|f(xn)| <

(4.5)

tha mn.
bn c hiu r hn nhng iu chng ti va trnh by, chng ta xt v d sau y:
V d.
Ta xt 2 hm sau y:
f(x) = (3363 - 2378 2 ) - (x-1)10
g(x) = (3363 - 2378x) - ( 2 -1)10
v xt 2 phng trnh
f(x) = 0

(4.6)

g(x) = 0

(4.7)

Ta c th thy rng
f( 2 ) = g( 2 ) =0
V khng tnh c = 2 nn chng ta s dng kt qu chnh xc gp i do my tnh
thc hin bng hm sqrt(2). Gi tr ny vo khong 1.41421356237309551454746218. Ta nh
ngha dy xn nh sau
x0 =1

| x0 - | < 0.5e+01

x1 =1.4

| x1 - | < 0.5e-01

x2 =1.41

| x2 - | < 0.5e-02

x3 =1.414

| x3 - | < 0.5e-03

x4 =1. 4142

| x4 - | < 0.5e-04

...
R rng dy xn hi t n .
Ta c bng sau y biu din mi lin h gia dy xn , sai s trn dy xn l n, hm f(xn) v
hm g(xn).
70

Chng 4: Tnh gn ng nghim ca phng trnh phi tuyn


n

xn

f(xn)

g(xn)

0.5

0.0001486768

985

1.4

0.5e-01

0.0000438191

34

1.41

0.5e-02

0.0000144501

10

1.414

0.5e-03

0.0000007647

0.5

1.4142

0.5e-04

0.0000000488

0.03

1.41421

0.5e-05

0.0000000128

0.008

1.414213

0.5e-06

0.0000000002

0.001

1.4142135

0.5e-07

0.0000000002

0.0001

R rng nu ch da vo lch | xn - |, hay trong thc t l | xn - xn-1 | chn nghim xp


x, ta s c nhng kt qu rt khc bit gia 2 phng trnh (4.6) v (4.7). Vi phng trnh (4.6)
th tt c cc gi tr xn trong bng trn u c th xem l nghim gn ng, v nh vy = 0.5
cng l . Ngc li nu ta ni rng gi tr xn = 1.41 l nghim xp x ca phng trnh (4.7)
vi chnh xc 0.5% th r rng khng n, v gi tr g(1.41) =10 cn l gi tr qu ln so vi 0.
Thm ch khi t chnh xc 0.0005 th g(1.4142) = 0.03 vn cn ln so vi 0, nn nu ta ni
rng 1.4142 l nghim xp x ca (4.7) th cng khng n.
Nu by gi ta thay iu kin (4.4) bng iu kin (4.5) th ta khng cn gp iu phin toi
trn y na. Vi phng trnh (4.6) ta ch cn chn n rt b l , cn vi phng trnh (4.7) th
ta phi chn n ln hn nu mun t c chnh xc nh mong mun. Trong thc hnh vic
th iu khin (4.5) c thc hin rt d dng. V vy chng ti ngh rng trong nhng bi ton
tm nghim xp x ta nn thm mt ct f(xn), chng ta s thy c tc hi t n 0 ca f(xn)
v v vy s dng bc tnh ton thi im thch hp hn.

4.2. MT S PHNG PHP LP GII PHNG TRNH


4.2.1. M u
tng chung ca phng php lp tm nghim ca phng trnh (4.1) l xy dng mt
dy cc s x0, x1,..., xn,... vi x0 l gi tr xut pht sao cho

lim xn =

n > +

Nh vy vi n kh ln, ta c th xem xn l xp x ca nghim .


Ta c th a ra mt nh gi v sai s tng qut cho hu ht cc php lp nh sau:
nh l. Vi hm f(x) lin tc v kh vi trn on [a,b], ngoi ra
m1 sao cho 0 < m1 |f'(x)| vi x [a,b]

(4.8)

khi ta c nh gi
|xn - |

| f ( xn ) |
m1

(4.9)
71

Chng 4: Tnh gn ng nghim ca phng trnh phi tuyn


4.2.2. Phng php chia i (bisection)
a. M t phng php
Gi s f(x) lin tc trn [a,b] v f(a), f(b) tri du (on [a,b] khng cn phi l khong
phn ly). Nh vy trong khong ny phi c mt nghim . Ta s tm nghim ny bng cch chia
i khong [a,b], chn khong con cha nghim, ri chia i tip khong con cha nghim ny
cho n khi tm thy nghim hoc khong con nh bo m rng mi gi tr trong
khong u c th xem l xp x nghim. C th trc ht ta t a0 = a, b0 =b v cho trc mt
gi tr > 0 nh dng lm iu kin xp x nghim v dng qu trnh tnh ton. Sau ta
thc hin cc bc sau:
- Bc 0:

t x0 =

a 0 + b0
2

V f(a0)f(b0)<0, do mt trong 2 trng hp sau xy ra:


a. f(x0) = 0.

Ta c x0 l nghim v kt thc.

b. f(x0) 0.

Nu f(a)f(x0)<0 th nghim s trong khong [a, x0] do ta t

a1 = a0 , b1 = x0
Nu f(x0)f(b)<0 th nghim s trong khong [x0,b] do ta t
a1 = x0 , b1 = b
V nghim [a1,b1], ta c | x0- | | b1-a1| =

ba
2

Chuyn sang bc 1.
- Bc 1:

t x1 =

a1 + b1
2

V f(a1)f(b1)<0, do mt trong 2 trng hp sau xy ra:


a. f(x1) = 0.

Ta c nghim l x1 v kt thc.

b. f(x1) 0.
Nu f(a1)f(x1)<0 th nghim s trong khong [a1, x1] do ta t
a2 = a1 , b2 = x1
Nu f(x1)f(b1 )<0 th nghim s trong khong [x1,b1] do ta t
a2 = x1 , b2 = b1
V nghim [a2,b2], ta c | x1- | | b2-a2| =
Chuyn sang bc 2.
...
- Bc n:
72

t xn =

a n + bn
2

ba
22

Chng 4: Tnh gn ng nghim ca phng trnh phi tuyn


V f(an)f(bn)<0, do mt trong 2 trng hp sau xy ra:
a. f(xn) = 0.

Ta c nghim l xn v kt thc.

b. f(xn) 0.
Nu f(an)f(xn)<0 th nghim s trong khong [an, xn] do ta t
an+1 = an , bn+1 = xn
Nu f(xn)f(bn )<0 th nghim s trong khong [xn,bn] do ta t
an+1 = xn , bn+1 = bn
V nghim [an+1,bn+1], ta c | xn - | | bn+1-an+1| =

ba
2 n +1

ba
th kt thc, nu khng th
2 n +1
Chuyn sang bc n+1.
b. S hi t ca phng php v sai s
Dy a0,a1,...,an n iu tng v b chn bi b, by b0,b1,...,bn n iu gim v b chn bi
a mt khc dy bn-an dng v gim dn n 0, nh vy khi n -> ta c
Ta kim tra xem nu

lim an = lim bn = lim xn =

n > +

n > +

n > +

Do tnh lin tc ca hm f v f(an)f(bn)<0 ta c

lim f(an)f(bn) = |f()|2 0

n > +

Suy ra f() = 0, hay chnh l nghim ca phng trnh (4.1).


Tm li xut pht t a0 = a v b0 = b, cho n = 0,1,2,... nu ta ly nghim gn ng l xn = an
hoc xn = bn th sai s l
|xn - |

ba
2n

Cn nu ta ly nghim gn ng l

(4.10)

a n + bn
th sai s l
2

ba
(4.11)
2 n +1
(4.9) chnh l nh gi sai s ca nghim xp x tnh bng thut ton trnh by trn y.
c. V d
Ta xt phng trnh f(x) = sin(x) - x2cos(x) =0.
Phng trnh ny c nghim ng l x = 0.
Ta thy nu a= -0.5, b = 2 th f(a) = -0.6988, f(b) = 2.5739, tc l tri du. Vy ta c th p
dng phng php chia i. t = 1.0e-03 ta c sau 8 bc lp ta nhn c nghim l 0.0005.
d. Nhn xt v thut ton chia i
u im ca phng php chia i l n gin. Nhc im l tc hi t chm, khng
tn dng c tnh cht ca hm s f(x). D hm s c dng g th chng ta cng ch chia i, xt
|xn - |

73

Chng 4: Tnh gn ng nghim ca phng trnh phi tuyn


gi tr ca hm ti cc im chia ri quyt nh chn on no chia tip. Nu khong [a,b] ban
u ln th phi kh nhiu bc mi t c chnh xc cn thit.
e. Ci t chng trnh cho thut ton chia i
Phng php chia i i hi phi bit hm f(x) v 2 gi tr a v b l 2 im cn di v
cn trn ca khong quan st. Trong chng trnh chng ti dng chng trnh con chiadoi
(double (*f)(double),double &x) thc hin thut ton chia i. y chng ti dng con tr ti
hm l f, nh vy chng ta khng ph thuc vo mt dng hm c th. Sau ny ta c th gi th
tc chia i cho mt hm do ta nh ngha hoc c sn, v d chiadoi(sin,xx), chiadoi(g,x),... Th
tc chiadoi c vit di dng hm. Khi chy th tc ny ta s phi nhp gi tr a,b. Chng
trnh s kim tra iu kin f(a)f(b)<0; nu khng tha mn hoc s bc lp vt qu s bc
lp ti a th hm tr v gi tr false. Trong trng hp thnh cng th hm tr v gi tr true v gi
tr x l nghim xp x.
Sau y l on chng trnh chnh th hin thut ton:
/*Phuong phap tim nghiem bang cach chia doi lien tiep khoang [a,b]*/
int chiadoi(double (*f)(double),double a,double b,double &x,
double &errx,double &erry,int &buoclap)
/*Phuong phap chia doi de tim nghiem f(x)=0 trong khoang trai dau [a,b].
Neu co nghiem thi tra ve gia tri true, neu khong thi tra ve gia tri false.
x la nghiem, errx, erry sai so tren x va tren y, buoclap la so buoc lap
da thuc hien*/
{clrscr();
if(f(a)==0) {x=a;errx=erry=0;buoclap=0;return true;}
if(f(b)==0) {x=b;errx=erry=0;buoclap=0;return true;}
if(f(a)*f(b)>0)
{cout<<endl<<"f(a) va f(b) khong trai dau";delay(1000);return false;}
int k=1;double c,aa,bb;aa=a;bb=b;
kvecto xc;
xc[0]=a;xc[1]=b;
while(true)
{c = (a+b)/2;
if(f(a)*f(c)<0) b=c;else a=c;
xc[++k]=c;
if(b-a<epsix && fabs(f(c))<epsiy) break;//f(c) = 0
if(k>kmax)
{cout<<endl<<"Lap chua hoi tu sau "<<kmax<<" buoc";
delay(1000);return false;
}
}
74

Chng 4: Tnh gn ng nghim ca phng trnh phi tuyn


x=c;
errx=b-a;erry=fabs(f(c));buoclap=k;
return true;
}
4.2.3. Phng php dy cung
a. M t phng php
iu kin thc hin phng php dy cung cng ging nh phng php chia i, l
f(x) lin tc trn [a,b] v f(a), f(b) tri du.
V nguyn tc phng php dy cung cng ging nh phng php chia i, ngha l da
vo hai im a0 = a, b0 = b ban u ta s chn tip cc im xn nm trong khong [an,bn], sao cho
khong chn lun lun cha nghim ng ca phng trnh. phng php chia i, xn c
chn l im gia ca khong [an ,bn ] v khong [an+1 ,bn+1] tip theo s l khong cha nghim
trong 2 khong con [an ,xn ] hoc [xn,bn]. Nh vy khong [an,bn] s nh dn ti 0, cho n lc ta
c th xem tt c cc im nm trong khong l xp x ca nghim.
Cn phng php dy cung gi tr xn c chn tip theo li l giao im ca dy cung
ni 2 im biu din th ti 2 u khong con vi trc honh.
Ta lu l trong phng php chia i di khong con [an,bn] tin ti 0, nhng trong
phng php dy cung ni chung iu ny khng ng. C th mt trong 2 gi tr a hoc b s gi
nguyn. Gi tr ny s lun ng vai tr l an hoc bn . V d nu b gi nguyn v lun lun ng
vai tr bn th an s thay i v chnh l xn-1, n=1,2,...Dy x0,x1,...,xn,... l dy n iu tng hoc
gim v hi t n nghim ng. Khng nh phng php chia i, iu kin dng y khng
cn l di khong [an,bn], m l di khong [xn, xn-1]. Ta s dng thut ton v xem xn l
nghim xp x nu |xn - xn-1| hoc (v) |f(xn)| .
Ta bit rng phng trnh ng thng i qua 2 im (a,f(a)) v (b,f(b) l

y f (a)
xa
=
ba
f (b) f ( a )
im ct trc hong c ta (c,0) do ta c

f (a)
ca
=
f (b) f (a )
ba
T y
c=a-

af (b) bf (a )
f (a )[b a ]
=
f (b) f (a )
f (b) f ( a )

(4.12)

Trc ht ta t a0 = a, b0 =b v cho trc mt gi tr > 0 v >0 nh dng lm


iu kin xp x nghim v dng qu trnh tnh ton. Ta cng cho trc mt s kmax lm s
bc lp ti a. Sau kmax bc m thut ton cha kt thc th ta thng bo s bc qu ln,
cha nhn c kt qu v kt thc.
Sau ta thc hin cc bc sau:
75

Chng 4: Tnh gn ng nghim ca phng trnh phi tuyn


- Bc 0:

t x0 =

a0 f (b0 ) b0 f (a 0 )
f (b0 ) f (a0 )

V f(a0)f(b0)<0, do mt trong 2 trng hp sau xy ra:


a. |f(x0)| .

Ta c x0 l nghim xp x v kt thc.

b. f(x0) 0.
Nu f(a)f(x0)<0 th nghim s trong khong [a, x0] do ta t
a1 = a0 , b1 = x0
Nu f(x0)f(b)<0 th nghim s trong khong [x0,b] do ta t
a1 = x0 , b1 = b
Chuyn sang bc 1.
- Bc 1:

t x1 =

a1 f (b1 ) b1 f (a1 )
f (b1 ) f (a1 )

V f(a1)f(b1)<0, do mt trong 2 trng hp sau xy ra:


a. Nu |x1 - x0 | v |f(x1)| .

Ta c nghim l x1 xp x v kt thc.

b. f(x1) 0.
Nu f(a1)f(x1)<0 th nghim s trong khong [a1, x1] do ta t
a2 = a1 , b2 = x1
Nu f(x1)f(b1 )<0 th nghim s trong khong [x1,b1] do ta t
a2 = x1 , b2 = b1
Chuyn sang bc 2.
...
- Bc n:

t xn =

a n f (bn ) bn f (a n )
f (bn ) f (a n )

V f(an)f(bn)<0, do mt trong 2 trng hp sau xy ra:


a. Nu |xn - xn-1 | v |f(xn)|

Ta c nghim xp x l xn v kt thc.

b. f(xn) 0.
Nu f(an)f(xn)<0 th nghim s trong khong [an, xn] do ta t
an+1 = an , bn+1 = xn
Nu f(xn)f(bn )<0 th nghim s trong khong [xn,bn] do ta t
an+1 = xn , bn+1 = bn
Nu n > kmax th thng bo v kt thc.
Chuyn sang bc n+1.
b. S hi t ca phng php v nh gi sai s
V tng th phng php dy cung rt n gin v d hiu. Tuy nhin kho st mt
cch cht ch th ta phi phn ra mt s iu kin hm li hoc lm trong khong [a,b]. y
chng ta s khng i qu vo cc chi tit ny.
76

Chng 4: Tnh gn ng nghim ca phng trnh phi tuyn


Ta vit li cng thc (4.10)
c=a-

f ( a )[a b]
f (a )[b a ]
=af (b) f ( a )
f (a ) f (b)

v khi tnh c th a v b u bnh ng nn


c=b-

f (b)[b a ]
f (b) f (a )

By gi n gin ta ch xt trng hp hm f(x) li (f''(x)<0) hoc lm (f''(x)>0) trn


on [a,b]. Trong trng hp ny mt trong 2 im a hoc b s c c nh. Nu ta gi gi tr c
nh ny l d v gi tr cn li l x0 (tc l nu d = a th x0 = b, nu d = b th x0 = a) th cc gi tr
xn c tnh theo cng thc:
xn = xn-1 -

f ( x n 1 )[ x n 1 d ]
f ( x n 1 ) f (d )

(4.13)

n = 0,1,2,...
d v x0 c chn c th trong cc trng hp nh sau:
(1) Nu f(x) l hm li trn [a,b], tc l f''(x) < 0, ta chn d cng du vi f''(x). Trong
trng hp (a) th d =a, x0 = b. Trong trng hp (b) th d =b v x0=a.
(2) Nu f(x) l hm lm trn [a,b], tc l f''(x) > 0, ta cng chn d cng du vi f''(x).
Trong trng hp (c) th d =a, x0 = b. Trong trng hp (d) th d =b v x0=a.
Vy ta lun lun chn d cng du vi f''(x).
C th chng minh rng dy xn n iu tng hoc gim v b chn, do hi t n gi tr .
T (4.11) ta c:
=-

f ( )[ d ]
f ( ) f (d )

(4.14)

T y suy ra f() =0 hay chnh l nghim ca phng trnh (4.1).


Ngoi cng thc nh gi sai s chung cho phng php lp (4.9), nu thm iu kin v
f'(x) ta c th nh gi sai s ca nghim gn ng xn thng qua 2 gn ng lin tip xn v xn-1.
nh l.
Gi s f'(x) lin tc v khng i du trn [a,b] v tha mn:
m1 , M1 sao cho 0 < m1 |f'(x)| M1 < vi x [a,b]

(4.15)

khi ta c :
|xn - |

M 1 m1
|xn - xn-1|
m1

(4.16)

c. V d
Ta xt phng trnh f(x) = sin(x) - x2cos(x) =0.
Phng trnh ny c nghim ng l x = 0.
77

Chng 4: Tnh gn ng nghim ca phng trnh phi tuyn


Ta thy nu a= -0.5, b = 2 th f(a) = -0.6988, f(b) = 2.5739, tc l tri du. Vy ta c th p
dng phng php dy cung. t = 1.0e-03 ta c sau 3 bc lp ta nhn c nghim l 0.0008.
Vy trong trng hp ny ta thy phng php dy cung hi t nhanh hn phng php chia
i. iu ny cng d hiu, v trong phng php chia i ta khng h tn dng tnh c th ca
hm f(x). Ngha l cho d hm f(x) kiu g th ta cng ch chia i khong [a,b]. Cn phng php
dy cung th chng ta tn dng thng tin v gi tr ca hm ti 2 u ca on cha nghim.
d. Nhn xt thut ton dy cung
Thut ton dy cung l mt trong nhng phng php c s dng rng ri tnh gn
ng nghim thc ca phng trnh siu vit. u im ca n l thut ton n gin. Nhc im
l tuy c nhanh hn thut ton chia i nhng vn cn hi t chm, ch hi t tuyn tnh.
e. Ci t chng trnh cho thut ton dy cung
Sau y l on chng trnh chnh th hin (m t) thut ton dy cung
/*Phuong phap tim nghiem bang phuong phap day cung tren khoang [a,b]*/
/*Phuong phap day cung de tim nghiem f(x)=0 trong khoang trai dau [a,b].
Neu co nghiem thi tra ve gia tri true, neu khong thi tra ve gia tri false.
x la nghiem, errx, erry sai so tren x va tren y, buoclap la so buoc lap
da thuc hien*/
int daycung(double (*f)(double),double a,double b,double &x,
double &errx,double &erry,int &buoclap)
{clrscr();
if(f(a)==0) {x=a;errx=erry=0;buoclap=0;return true;}
if(f(b)==0) {x=b;errx=erry=0;buoclap=0;return true;}
if(f(a)*f(b)>0)
{cout<<endl<<"f(a) va f(b) khong trai dau";delay(1000);return false;}
int k=1;double c,cp,aa,bb;aa=a;bb=b;//cp=c previouse
kvecto xa,xb;
xa[0]=a;xb[0]=b;
c = (a*f(b)-b*f(a))/(f(b)-f(a));
if(f(a)*f(c)<0) b=c;else a=c;
xa[1]=a;xb[1]=b;
while(true)
{cp=c;
c = (a*f(b)-b*f(a))/(f(b)-f(a));
if(f(a)*f(c)<0) b=c;else a=c;
k++;
xa[k]=a;xb[k]=b;
78

Chng 4: Tnh gn ng nghim ca phng trnh phi tuyn


if(fabs(c-cp)<epsix && fabs(f(c))<epsiy) break;
if(k>kmax)
{cout<<endl<<"Lap chua hoi tu sau "<<kmax<<" buoc";
delay(1000);return false;
}
}
x=c;
errx=fabs(c-cp);erry=fabs(f(c));buoclap=k;
}
4.2.4. Phng php lp n
a. M t phng php
Gi s phng trnh (4.1) c nghim trong khong [a,b] v ta bin i c v dng tng ng
x = (x)

(4.17)

Tip theo ta chn mt gi tr x0 [a,b] lm gi tr xp x ban u ri tnh dn cc nghim


xp x xn theo quy tc
xn = (xn-1), n=1,2,...

(4.18)

Phng php ny gi l phng php lp v hm gi l hm lp.


b. iu kin hi t ca phng php v nh gi sai s
iu kin hi t ca phng php lp:
nh l. Gi s phng php lp (4.17) v (4.18) tha mn cc iu kin sau:
(1) [a,b] l khong phn ly nghim ca phng trnh (4.17)
(2) Mi xn tnh theo (4.18) u [a,b].
(3) Hm (x) c o hm '(x) v tha mn: | '(x) | q < 1, x (a,b)
Khi phng php lp (4.18) hi t, tc l: xn khi n
Chng minh.
Chng ta s dng n cng thc Lagrange nh sau:
Cho hm s g(x) lin tc trn [a,b] v c o hm trong (a,b). Khi tn ti c (a,b) sao
cho g(b)-g(a) = g'(c)(b-a).
By gi ta chng minh nh l trn.
V l nghim ca (4.4) ta c: = ()
theo cng thc lp th xn = (xn-1)
Tr 2 ng thc ny v vi v ta c
-xn = () - (xn-1)

(4.19)

p dng cng thc Lagrange vo v phi ca (4.19) ta c


-xn = '(c)( - xn-1)
79

Chng 4: Tnh gn ng nghim ca phng trnh phi tuyn


T y suy ra
| -xn | = | '(c) | | - xn-1| q | - xn-1|

(4.20)

V bt ng thc ny ng vi mi n, do cho n gim dn n 1 ta c


| -xn | = | '(c) | | - xn-1| qn | - x0| 0 khi n .

(4.21)

Vy ta c | -xn | 0 khi n , l iu cn chng minh.


nh gi sai s phng php lp:
Ta c th dng cng thc (4.21) nh gi sai s ca phng php lp n. Tuy nhin
trong thc t gi tr li cha bit nn ta phi thay khong [,x0] bng khong [a,b], v nh vy
| -xn | qn | b - a |

(4.22)

Tuy nhin cng thc ny ph thuc vo a, b v khng st vi thc t, nht l khi khong
[a,b] ln.
Sau y chng ta s a ra mt cch nh gi khc, st vi thc t hn.
T (4.20) ta c
| -xn | q | - xn-1| = q | -xn + xn - xn-1| q | -xn | + q | xn - xn-1|
Vy
(1-q) | -xn | q | xn - xn-1|
Hay
| -xn |

q
| xn - xn-1|
1 q

(4.23)

Mt khc v
| '(x) | q < 1, x (a,b)
Do
| xn -xn-1 | = | (xn-1) - (xn-2)| = | '(c) | | xn-1 - xn-2| q | xn-1 - xn-2|
T y suy ra
| xn -xn-1 | qn-1 | x1 - x0|
Tc l | xn -xn-1 | hi t n 0.
Kt hp vi (4.22) ta c
| -xn |

q
1
| xn - xn-1| qn
| x1 - x0| (4.24)
1 q
1 q

p dng (4.24) ta c th nh gi sai s | xn - | qua cc gi tr lp va tnh. V sau ny


khi xt iu kin dng qu trnh lp ngi ta thng nh gi qua |xn-xn-1|. Nu sai s cho
php l th qu trnh lp s dng nu |xn-xn-1| .
V d.
Ta xt phng trnh:
f(x) = x3 - x - 1 = 0
80

(4.25)

Chng 4: Tnh gn ng nghim ca phng trnh phi tuyn


Theo v d phn (4.1.3) hm s ny lun n iu, lin tc trn [1;2] v f(1) = -1, f(2) =5.
Vy khong [1,2] chnh l khong phn ly nghim. Ta s dng phng php lp tnh gn ng
nghim ca n. Ta s bin i (4.25) v dng (4.17). V d ta c th vit
(x) = x3 -1
Nhng lc
'(x) = 3x2 3 ti mi x [1,2]
Vi cch chn nh vy phng php lp khng c hy vng hi t. iu ny c th thy r
trong bng sau:
n

x0 =1
xn = (xn-1)

-1

-2

-9

-730

By gi ta vit (4.25) di dng sau


x3 = x +1
x = (x+1)1/3
(x) = (x+1)1/3
Lc
'(x) = (1/3)(x+1)-2/3 = (1/3)(1/ 3 ( x + 1) 2) 1/3 ti mi x [1,2]
Ngoi ra '(x) > 0, nh vy hm (x) tha mn nh l trn y do ta c th thc hin
qu trnh lp vi gi tr bt u l x0 =1 chng hn.Ta c bng gi tr nh sau:
n

x0 =1
xn = (xn-1)

1.2599

1.3122

1.3223

1.3242

1.3246
81

Chng 4: Tnh gn ng nghim ca phng trnh phi tuyn


Ta c th ly nghim xp x l 1.3246
4.2.5. Phng php Newton-Rapson hay cn gi l phng php tip tuyn
a. M t phng php
iu kin thc hin phng php Newton c phn cht hn 2 phng php ta va kho
st trn y. Ta gi thit rng hm f(x) tri du ti 2 v tr a v b, ng thi tn ti o hm cp
mt f'(x) 0 trong khong [a,b], v o hm cp 2 ti x (a,b).
ch o ca phng php Newton l thay phng trnh (4.1) phi tuyn i vi x bng
phng trnh gn ng, tuyn tnh i vi x.
Trc ht ta nhc li nh l v khai trin Taylo ca mt hm nh sau:
nh l. Cho hm s f(x) xc nh v c o hm n cp n+1 ti x0 v ln cn ca x0.
Gi s h l mt gi tr sao cho x0 + h cng thuc ln cn ny. Ta c cng thc sau y c gi l
khai trin Taylor bc n ca f(x) ti x0:
f(x0 +h) = f(x0) +

h2
h n (n)
h n +1 (n+1)
h
f'(x0) +
f''(x0) + . . .+
f (x0) +
f (c)
1!
2!
n!
(n + 1)!

Trong c (x0,x0+h)
Da vo khai trin Taylo, ta s xc nh mt hm (x) v tm nghim ca (4.1) bng php lp:
xn+1 = (xn)
Gi s x l nghim ng ca (4.1), cn xn l nghim xp x ti bc lp th n. Ta t
x=xn+xn. Theo khai trin Taylo ta c
2

x
f(x) = f(xn + xn) = f(xn) + xnf'(xn) + n f''(c) = 0
2!
xn nh th ta c cng thc gn ng:

Nu

f(xn) + xnf'(xn) f(x) = 0


T y
xn
V

f ( xn )
f ' ( xn )

xn = x - xn

Do
x xn

f ( xn )
f ' ( xn )

V ta suy ra cng thc lp cho php lp Newton:


xn+1 = xn

f ( xn )
f ' ( xn )

(4.25)

V ngha hnh hc xn+1 chnh l giao im ca tip tuyn ng cong y = f(x) ti im


(xn,f(xn)) vi trc honh. Do phng php ny cn c gi l phng php tip tuyn.
82

Chng 4: Tnh gn ng nghim ca phng trnh phi tuyn


T im (xn,f(xn)) ta v tip tuyn ca th y = f(x). Phng trnh th ny l
y = f(xn) + f'(xn)(x-xn).
Gi s ng tip tuyn ny ct trc honh ti xn+1, ta c
0 = f(xn) + f'(xn)(xn+1-xn)
T y suy ra

f ( xn )
f ' ( xn )

xn+1 = xn

Cng thc ny cng chnh l cng thc (4.25) trn.


b. iu kin hi t ca phng php Newton v nh gi sai s
nh l. iu kin phng php tip tuyn hi t:
Gi s nhng iu kin sau y tha mn:
f(a)f(b) < 0, tc l gi tr hm f(x) tri du ti hai u on [a,b].
Hm f(x) c o hm bc nht v bc 2 f'(x) v f''(x), vi f(x) v f'(x) lin tc trn [a,b], f'
v f'' khng i du trong (a,b) (tc l hm f(x) n iu, li hoc lm trong on [a,b]).
Xp x u x0 c chn [a,b], sao cho f(x0) cng du vi f''(x), tc l f(x0)f''(x) > 0
(hm li th chn pha gi tr hm m, hm lm th chn pha gi tr dng).
Khi dy xn c nh ngha bi (4.25) s hi t ti .
nh gi sai s ca nghim gn ng.
Ngoi cng thc anh gi sai s (4.9), nu thm iu kin v f''(x) ta c th nh gi sai s
ca nghim gn ng xn thng qua 2 gn ng lin tip xn v xn-1.
nh l.
Gi s f'(x) lin tc v khng i du trn [a,b] v tha mn:
m1 , M2 dng sao cho m1 |f'(x)| ; f''(x) M2 vi x [a,b]

(4.28)

khi ta c
|xn - |

M2
|xn - xn-1| 2
2m1

(4.29)

Chng minh.
Dng cng thc khai trin Taylor cho f(xn) ti xn-1 ta c
f(xn) = f(xn-1) +

x n x n 1
( x n x n 1 ) 2
f'(xn-1) +
f''(c)
1!
2!

(4.30)

trong c (xn-1,xn)
Theo (4.25)
xn = xn-1 -

f ( xn )
f ' ( x n 1 )
83

Chng 4: Tnh gn ng nghim ca phng trnh phi tuyn


T y
f(xn-1) + (xn - xn-1)f'(xn-1) = 0
Thay vo (4.30) ta c

( x n x n 1 ) 2
f''(c)
2!
Nh vy theo (4.27) v (4.28)
f(xn) =

| f ( x n ) | ( x n x n 1 ) 2
M2
|xn - |
=
f''(c)
|xn - xn-1|2
m1
2m1
2m1

(4.31)

L iu cn chng minh.
c. V d v phng php Newton
Tnh

2 bng cch gii phng trnh sau:


f(x) = x2 - 2 =0

(4.32)

Gii:
Ta thy f(1) = -1, f(2) = 2, nh vy iu kin 1) tha mn.
f'(x) = 2x > 2 vi mi x [1,2]
f'(x) = 2 > 1 vi mi x [1,2] , vy iu kin 2) tha mn
V f(2) = 2, nn ta chn x0 =2, nh vy th f(2)f(x) = 2.2 = 4 >0 v iu kin 3) tha mn.
Vy ta c th p dng phng php lp Newton tnh nghim xp x ca phng trnh
(4.32). Ta c bng sau
n

x0 = 2
xn+1 = xn - f(x)/f(xn)

1.5

1.417

1.41421

Ta c th ly nghim xp x l 1.41421. Ta bit rng


php lp Newton hi t rt nhanh.

2 = 1.414213562, nh vy phng

d. Nhn xt v phng php Newton


Nh vic s dng o hm ca hm s f(x) nn ni chung phng php Newton hi t
nhanh hn phng php chia i v phng php dy cung. Tuy nhin vic kim tra iu kin
p dng phng php Newton phc tp hn. Nhng iu kin phng php Newton hi t l
quan trng v cn thit phi kim tra khi p dng phng php ny. V d tng ng vi hnh v
sau y ch ra rng c trng hp nu p dng cc phng php chia i hoc dy cung th qu
trnh lp s hi t, cn nu ta p dng phng php Newton nhng chn im xut pht khng
thch hp th khng t c kt qu nh mong mun.
84

Chng 4: Tnh gn ng nghim ca phng trnh phi tuyn


e. Chng trnh minh ha phng php Newton (tip tuyn)
Sau y l on chnh ca chng trnh th hin (m t) phng php newton :
/*Phuong phap tim nghiem bang phuong Newton tren khoang [a,b]*/
/*Phuong phap Newton de tim nghiem f(x)=0 trong khoang trai dau [a,b].
Neu co nghiem thi tra ve gia tri true, neu khong thi tra ve gia tri false.
x la nghiem, errx, erry sai so tren x va tren y, buoclap la so buoc lap
da thuc hien*/
int ttuyen(double (*f)(double),double (*f1)(double),double a,double b,
double &x,double &errx,double &erry,int &buoclap)
{clrscr();
if(f(a)==0) {x=a;errx=erry=0;buoclap=0;return true;}
if(f(b)==0) {x=b;errx=erry=0;buoclap=0;return true;}
if(f(a)*f(b)>0)
{cout<<endl<<"f(a) va f(b) khong trai dau";delay(1000);return false;}
int k=0;
kvecto xb;double xp,xn;//previouse x;
xb[0]=b;
xn=b;
while(true)
{if(f1(xn)<epsiy1)
{cout<<endl<<"Dao ham qua be";delay(1000);return false;}
xp=xn;
xn = xn-f(xn)/f1(xn);
k++;
xb[k]=xn;
if(fabs(xn-xp)<epsix && fabs(f(xn))<epsiy) break;
if(k>kmax)
{cout<<endl<<"Lap chua hoi tu sau "<<kmax<<" buoc";
delay(1000);return false;
}
}
errx=fabs(xn-xp);erry=fabs(f(xn));buoclap=k;
x=xn;
}

85

Chng 4: Tnh gn ng nghim ca phng trnh phi tuyn

4.3.

BI TP

Bi 1. Hy m t phng php chia i tm nghim gn ng ca phng trnh phi tuyn.


Bi 2. Hy m tp hng php dy cung tm nghim gn ng ca phng trnh phi tuyn.
Bi 3. Hy m t phng php tip tuyn tm nghim gn ng ca phng trnh phi tuyn.
Bi 4. Hy m t phng php lp n tm nghim gn ng ca phng trnh phi tuyn.
Bi 5. Gii gn ng phng trnh:
x-1/2sinx = 0,25
bng phng php lp vi 4 ln lp.
Bi 6. Dng phng php chia I tnh nghim gn ng ca phng trnh: x3-x-1 qua 4 bc
lp. nh gi sai s |x 4- |
Bi 7. Dng phng php dy cung tnh nghim gn ng ca phng trnh: x3-x-1 qua 4 bc
lp. nh gi sai s |x4- |
Bi 8. Dng phng php chia i tnh gn ng

5 qua 4 bc lp. nh gi sai s |x4-

5 |

Bi 9. Dng phng php lp hy tnh gn ng nghim dng ln nht ca phng trnh:


x3 - x - 1000 =0
vi sai s tuyt i khng ln hn 10-5.
Bi 10. Th li hoc vit mi cc chng trnh ci t cc thut ton ri chy th kim tra cc
kt qu trn y.

86

Chng 4: Tnh gn ng nghim ca phng trnh phi tuyn

TM TT NI DUNG CHNG 4
Trong chng ny chng ta cn ch nht l cc vn sau:
1. Khong phn ly nghim
nh ngha. Khong [a,b] c gi l khong phn ly nghim ca phng trnh (4.1) nu
n cha mt v ch mt nghim ca phng trnh .
nh l. Nu hm s f(x) lin tc, n iu trn on [a,b] v f(a)f(b)<0 th on [a,b] l
mt khong phn ly nghim ca phng trnh (4.1)
2.Phng php chia i (bisection):
- Phng php:
+ Xc nh khong phn ly nghim [a,b]
+Tnh gi tr ca nghim gn ng bc lp th i trn khong phn ly nghim [ai,bi ]
(i=0,1,2...) theo cng thc xi= (ai+bi )/2 vi a0=a;b0=b. Sau l xc nh khong phn ly mi
cho nghim bc mi th i+1 l [ai+1,bi+1 ]. C tip tc php lp nh th cho n khi no
tho mn iu kin dng ca phng php.
- nh gi sai s:
Gi s bc lp cui cng l bc thc n (i=n) ta xc nh c nghim gn ng
|ab|
. (Trong l nghim ng ca
xn. Khi sai s c nh gi nh sau:|xn - |
2 n +1
phng trnh (4.1)
3.Phng php dy cung
- Phng php:
+ Xc nh khong phn ly nghim [a,b]
+Tnh gi tr ca nghim gn ng bc lp th i trn khong phn ly nghim [ai,bi ]
a f (bi ) bi f (ai )
vi a0=a;b0=b. Sau l xc nh khong
(i=0,1,2...) theo cng thc xi= i
f (bi) f (ai )
phn ly mi cho nghim bc mi th i+1 l [ai+1,bi+1 ]. C tip tc php lp nh th cho
n khi no tho mn iu kin dng ca phng php.
- nh gi sai s:
Gi s bc lp cui cng l bc thc n (i=n) ta xc nh c nghim gn ng
| f ( xn ) |
. (Trong l nghim ng ca
xn. Khi sai s c nh gi nh sau: |xn - |
m1
phng trnh (4.1), v 0 < m1 |f'(x)| vi x [a,b]). Hoc ta c nh gi sai s thc 2
M m1
l:|xn - | 1
|xn - xn-1|.
m1
87

Chng 4: Tnh gn ng nghim ca phng trnh phi tuyn


4 Phng php lp n
- Phng php:
+Xc nh khong phn ly nghim [a,b] ca (4.1), phng trnh (4.1) chuyn v
dng x = (x), vi iu kin :|(x)| q<1 trn (a,b).Tip theo ta chn mt gi tr x0 [a,b]
lm gi tr xp x ban u ri tnh dn cc nghim xp x xi theo quy tc:
xi = (xi-1), i=1,2,.. cho ti khi no tho mn iu kin dng ca phng php.
- nh gi sai s:
Gi s bc lp cui cng l bc thc n (i=n) ta xc nh c nghim gn ng xn.
1
| x1 - x0| .
Khi sai s c nh gi nh sau: |xn - | qn | b - a | hoc |xn - | qn
1 q
5 Phng php tip tuyn
- Phng php:
+ Xc nh khong phn ly nghim [a,b] ca phng trnh (4.1).
+Tnh gi tr ca nghim gn ng bc lp th i theo cng thc
xi+1 = xi

f ( xi )
.
f ' ( xi )

Xp x u x0 c chn [a,b], sao cho f(x0) cng du vi f''(x), tc l f(x0)f''(x) > 0


(hm li th chn pha gi tr hm m, hm lm th chn pha gi tr dng).
- nh gi sai s :
Gi s bc lp cui cng l bc thc n (i=n) ta xc nh c nghim gn
| f ( xn ) |
ng xn. Khi sai s c nh gi nh sau: |xn - |
hoc
m1

|xn - |

88

M2
|xn - xn-1| 2
2m1

Chng 5: Tnh gn ng o hm v tch phn xc nh

CHNG 5

TNH GN NG O HM V TCH PHN XC NH

MC CH, YU CU
Sau khi hc xong chng 5, yu cu sinh vin:
1. Hiu v nm c th no l bi ton tnh gn ng o hm v tch phn xc nh
2. Nm c cc phng php tnh gn ng o hm, qua bit cch tnh gi tr gn
ng o hm cho mt hm bt k.
3. Nm c cc phng php tnh gn ng tch phn xc nh, qua bit cch tnh gi
tr gn ng tch phn xc nh ca mt hm bt k
4. Bit cch p dng cc phng php tnh gn ng trn vo vic gii cc bi ton ngoi
thc t.
5. Bit cch nh gi sai s ca tng phng php.

5.1 TNH O HM
Ngi ta thng dng mt s phng php tnh gn ng o hm ca hm f(x) ti x
trong hai phng php sau y thng c dng nht:
5.1.1. p dng a thc ni suy
Gi s ngi ta phi tnh xp x o hm ca hm s f(x) trn on (a,b). Trc ht ngi ta
thay hm f(x) bng a thc ni suy p(x), sau ly o hm p'(x) v coi l xp x ca o hm f'(x).
V d.
Gi s ta xc nh c a thc ni suy l:
p3(x) =8x3 -29x +5
Khi o hm:
p3'(x) = 24x2 -29 c xem l xp x ca f'(x).
5.1.2. p dng cng thc Taylor
Theo cng thc Taylor ta c
f(x +h) = f(x) +

h2
h
f'(x) +
f''(c)
1!
2!

c = x+ h, 0 < <1
Khi | h | kh b th c th b qua s hng h2
89

Chng 5: Tnh gn ng o hm v tch phn xc nh


f(x+h) - f(x) hf'(x)
Vy ta c: f'(x)

f ( x + h) f ( x )
h

y cng chnh l nh ngha ca o hm. Vy cch dng khai trin Taylor cng chnh l
cch dng nh ngha o hm.
Chng trnh minh ha
Sau y l on chng trnh chnh th hin (m t) phng php tnh gn ng o hm
bng phng php ni suy
/*Noi suy dung da thuc Vandermon roi tinh dao ham*/
/*Tra ve gia tri da thuc noi suy tai x; avan[i] la cac he so cua da
thuc giai truc tiep tu ma tran Vandermon, xqs[I] la
cac diem quan sat*/
double poli(double x) //Tinh da thuc bang phuong phap Horner
{int i;double s;
s=avan[nqs];
for(i=nqs-1;i>=0;i--) s= s*x+avan[i];
return s;
}
//===============================================
/*Tra ve dao ham gia tri da thuc noi suy tai x; avan[i] la cac he so cua da
thuc giai truc tiep tu ma tran Vandermon, xqs[i] la
cac diem quan sat*/
double poli1(double x) //Tinh da thuc bang phuong phap Horner
{int i;double s;
s=nqs*avan[nqs];
for(i=nqs-1;i>0;i--) s= s*x+i*avan[i];
return s;
}
//===============================================
/*Noi suy bang cach giai truc tiep he phuong trinh tuyen tinh voi
ma tran Vandermon */
void nsvandermon(double *a)
{int i,j,k,n1;kmatran aa;kvecto b;
//Tinh ma tran Vandermon
for(i=0;i<=nqs;i++)
90

Chng 5: Tnh gn ng o hm v tch phn xc nh


{aa[i][0]=1;
for(j=1;j<=nqs;j++)
aa[i][j]=aa[i][j-1]*xqs[i];
}
for(i=0;i<=nqs;i++) aa[i][nqs+1]=yqs[i];
gjordan(aa,a,nqs);
}

5.2. TNH GN NG TCH PHN XC NH


5.2.1. M t bi ton
Xt tch phn xc nh ca mt hm s f(x) trong khong [a,b]
b

I = f(x)dx

(5.1)

Nu hm f(x) lin tc trn [a,b] v c nguyn hm F(x), th I c th tnh mt cch n gin


thng qua cng thc Newton-Leibniz:
b

I = f(x)dx = F(b) - F(a)

(5.2)

Tuy nhin trong thc t th chng ta thng gp trng hp hm f(x) khng c nguyn hm
hoc nguyn hm qu phc tp khng th xc nh c. Trong nhng trng hp ny ngi ta
phi tnh gn ng (5.1). C nhiu cch tnh gn ng tch phn, v d c th dng ngay nh
ngha ca tch phn
I = lim

n > +

n1

f(xi)xi

(5.3)

i =0

Tuy nhin tng Darboux hi t rt chm, do t c chnh xc cao i hi mt


khi lng tnh ton rt ln. Do trong thc t ngi ta hu nh khng dng (5.3) tnh xp x
tch phn.
Sau y l mt s phng php tnh gn ng tch phn hay c dng. tng c bn ca
phng php ny l chia nh khong [a,b] cn ly tch phn, sau trn mi khong nh ny ta
xp x hm s bng mt a thc. Vi cc a thc ta c th dng nguyn hm ca chng tnh
tch phn, sau ta cng cc tch phn thnh phn c xp x ca tch phn ton th.
5.2.2. Cng thc hnh thang
a. M t phng php
Ta chia on [a,b] thnh n on con bng nhau:
a = x0 < x1 < ... < xn = b
xi =a + ih, h =

ba
n

i = 0,1,2,... ,n
91

Chng 5: Tnh gn ng o hm v tch phn xc nh


Thay din tch hnh thang cong bng din tch hnh thang thng ta c
x2

f(x)dx

x1

y1 + y 2
2

(5.4)

Thc cht ca (5.4) l ta thay hm f(x) bng hm ni suy


p(x) = y0 +
t t =

x x0
y 0
(x-x0) = y0 + y0
h
h

(5.5)

x x0
, hay x = x0 + th ta c dx = hdt
h
x2

p(x)dx =

x1

( y0 + ty0)hdt = h (ty0 +
0

= h( y0 +

t =1
t2
y0) | =
t =0
2

y + y1
1
y0) = h 0
2
2

Nh vy
b

I = f(x)dx I* =
a

= h(

ba
(y0 +2 y1 + . . . +2 yn-1 + yn) =
2n

y0 + yn
+ y1 + . . . + yn-1)
2

(5.6)

b. nh gi sai s
nh l.
Gi s hm s y = f(x) c o hm cp 2 lin tc v
| f''(x) | M2 , x [a,b]

(5.7)

khi ta c nh gi
| I - I*|

M2 2
h (b-a)
12

(5.8)

c. V d
Hy tnh gn ng tch phn
1

I =

(1/(1+x ))dx
2

Ta bit gi tr ng ca tch phn ny l /4. Nh vy I 0.78539816


Ta s tnh gn ng I bng cng thc hnh thang ri so snh kt qu.
92

Chng 5: Tnh gn ng o hm v tch phn xc nh


Chia on [0,1] thnh n = 10, on con bng nhau, tc l h = 0.1; ta tnh ra bng sau:
n

0.0

1.0000000

0.1

0.9900990

0.2

0.9615385

0.3

0.9174312

0.4

0.8620690

0.5

0.8000000

0.6

0.7352941

0.7

0.6711409

0.8

0.6097561

0.9

0.5524862

10

1.0

0.5000000

p dng cng thc hnh thang ta c:


I= h(

y 0 + y10
+ y1 + . . . + y9)
2

Thay gi tr t bng trn vo ta c:


I 0.7849815 vi sai s tng i l 0.054%.
d. Chng trnh minh ha
Thut ton c thc hin trong chng trnh c khc cht t so vi thut ton trnh by
trn. Xut pht t n=1, h=b-a, ta s tng n ln gp i ti mi bc tnh ton. Qu trnh tnh ton s
dng li nu s khc bit ca tch phn xp x bc hin ti so vi bc trc nh hn mt s
epsilon cho trc. Ta s phn tng tch phn thnh 3 tng s0,s1 v s2. Tng s0 = (f(a)+f(b))/2; mi
ln tng n ln gp i th ta ch cn tnh li tng s2 cc v tr 1,3,5,...,n-1. Tng s1 l tng ca cc
gi tr hm ti cc im khng phi l u mt. Sau khi tnh li s2, ta tnh li s1 bng php gn
s1=s1+s2
V tng xp x ca tch phn l
In = h(s0+s1)
Sau y l on chnh ca chng trnh th hin ( m t) thut ton
/*Phuong phap tinh xap xi tich phan bang phuong phap hinh thang
tren khoang [a,b]*/
/*Phuong phap hinh thang tinh tich phan xac dinh trong khoang [a,b].
Bien gttp la gia tri xap xi cua tich phan tinh duoc.
Tra ve gia tri true neu da dat duoc do chinh xac*/
int hinhthang(double (*f)(double),double a,double b,double &gttp,
93

Chng 5: Tnh gn ng o hm v tch phn xc nh


double &err,int &khoangchia)
{clrscr();
double s0,s1,s2,h,tp,tp1;int k,nkc,i;
kvecto x;
nkc=1;
h=b-a;
s0=(f(a)+f(b))/2;
s1=0;
tp=(s0+s1)*h;
do
{tp1=tp;
nkc=nkc*2;
h=h/2;
s2=0;//Bat dau tinh tong tai cac diem moi
for(i=1;i<nkc;i+=2) s2+=f(a+i*h);
s1=s1+s2;
tp=h*(s0+s1);
if(nkc>nmax)
{cout<<endl<<"Tich phan chua hoi tu voi "<<nmax<<" khoang chia";
delay(1000);return false;
}
}
while(fabs(tp-tp1)>epsi);
err=fabs(tp-tp1);khoangchia=nkc;gttp=tp;
return(true);
}
5.2.3. Cng thc parabol (Simpson)
a. M t phng php
Ta chia on [a,b] thnh 2n on con bng nhau
a = x0 < x1 < ... < x2n = b
xi =a + ih, h =

ba
2n

yi = f(xi)
i = 0,1,2,. . . ,2n
94

Chng 5: Tnh gn ng o hm v tch phn xc nh


tnh tch phn (5.1) coi khong ni 3 im lin tip nhau l 1 on (nh vy qua 2n+1
im ta c n on), on th i(i =0,1,...,n) gm cc im x2i, x2i+1, x2i+2, v trong mi on con ta
dng a thc ni suy bc 2 p2(x).
Gi s cc im ca mt on con l x0,x1,x2 v cc gi tr f(x) tng ng l y0, y1, y2 ,
ta c:
x2

x2

x0

x0

f(x)dx p2(x)dx

(5.9)

trong
p2(x)

y 0
2 y 0
(x-x0) +
(x-x0)(x-x1)
h
2h 2
x x0
( x x0 )( x x1 )
+2y0
= y0 + y0
h
2h 2

= y0 +

(5.10)

x x0
, hay x = x0 + th ta c dx = hdt ,
h
nu x = x0 th t = 0, x=x2 th t=2.
Nh vy
t t =

x2

f(x)dx

x0

p2(x)dx
0

= h (y0+ty0 +
0

t (t 1) 2
y0)dt =
2

t =2
1 2
1
t y0 + (t3/3 - t 2 /2)2y0) | =
t =0
2
2
1
h
= h(2y0+2y0 + (8/3 - 4 /2)2y0) = (y0 + 4 y1 + y2)
2
3
Tnh tch phn xp x cho tng on [x0,x2], [x2,x4], ... ,[x2n-2,x2n] v cng li ta c

= h( ty0+

f(x)dx
a

I* =

h
[(y0 +y2n) + 4(y1 +y3 + . . . + y2n-1) + 2(y2 +y4 + . . . + y2n-2)]
3
(5.11)

(b a)
2n
Cng thc (5.11) c gi l cng thc Simpson.
h=

b.nh gi sai s
nh l.
Gi s hm s y = f(x) c o hm cp 4 lin tc v
| f(4)(x) | M4 , x [a,b]
khi ta c nh gi
| I - I* |

M4 4
h (b-a)
180

(5.12)

(5.13)
95

Chng 5: Tnh gn ng o hm v tch phn xc nh


c. V d
Hy tnh gn ng tch phn
1

I =

(1/(1+x ))dx
2

Ta bit gi tr ng ca tch phn ny l /4. Nh vy I 0.78539816


Ta s tnh gn ng I bng cng thc Simson ri so snh kt qu.
Chia on [0,1] thnh 2n = 4 on con bng nhau, vi h=0.25, ta tnh ra bng sau:
i

xi

yi=f(xi)

0.25

0.941176

0.5

0.8

0.75

0.64

0.5

Theo cng thc Simpson ta c


I = (h/3)*(y0 + y4 + 4y1 + 4y3 + 2y2). Thay cc gi tr bng trn vo ta c
= (0.25/3)*(1 + 3.76471 + 1.6 +2.56000 + 0.5) 0.785399
d. Chng trnh minh ha
Sau y l on chng trnh chnh th hin (m t) thut ton:
//SIMSON.CPP
/*Phuong phap tinh xap xi tich phan bang phuong phap Simson
(pp cau phuong) tren khoang [a,b]
Bien gttp la gia tri xap xi cua tich phan tinh duoc.
Tra ve gia tri true neu da dat duoc do chinh xac*/
int simson(double (*f)(double),double a,double b,double &gttp,
double &err,int &khoangchia)
{clrscr();
double s0,s1,s2,h,tp,tp1;int k,nkc,i;
kvecto x;
nkc=1;
h=b-a;
h=b-a;
s0=f(a)+f(b);
s1=0;
s2=0;
96

Chng 5: Tnh gn ng o hm v tch phn xc nh


tp=(s0+2*s1+4*s2)*h/3;
do
{tp1=tp;
s1=s1+s2;
nkc=nkc*2;
h=h/2;
s2=0;//Bat dau tinh tong tai cac diem moi
for(i=1;i<nkc;i+=2) s2=s2+f(a+i*h);
tp=(s0+2*s1+4*s2)*h/3;
if(nkc>nmax)
{cout<<endl<<"Tich phan chua hoi tu voi "<<nmax<<" khoang chia";
delay(1000);return false;
}
}
while(fabs(tp-tp1)>epsi);
err=fabs(tp-tp1);khoangchia=nkc;gttp=tp;
return true;
}

5.3.

BI TP

Bi 1. Cho hm s y = logx vi s cc gi tr ti x = 50; 55; 60; 65 tun t l 1,6990; 1,7404;


1,7782; 1,8129. Hy tnh o hm ca y ti x = 50 v so snh vi kt qu trc tip.
Bi 2. Cho tch phn
1

I=

dx

1+ x
0

Hy chia on [0,1] thnh n = 10 on con bng nhau ri tnh gn ng I v cho nh gi


sai s bng:
a) Cng thc hnh thang
b) Cng thc Simson
Bi 3. Cho tch phn
1

I=

sin x
dx
x

a) Hi phi chia on [0,1] thnh my (n = ?) on con bng nhau khi tnh gn ng I


bng cng thc hnh thang bo m c sai s tuyt i < 3.10-4
b) Vi n y khi tnh theo cng thc Simson th sai s l bao nhiu?
c) Hy tnh I vi n chn trn bng cng thc hnh thang v cng thc Simson n 6
ch s l thp phn.
Bi 4. Th li hoc vit mi cc chng trnh ci t cc thut ton ri chy th kim tra cc
kt qu trn y.
97

Chng 5: Tnh gn ng o hm v tch phn xc nh

TM TT NI DUNG CHNG 5
Trong chng ny chng ta cn ch nht l cc vn sau:
1. Tnh gn ng o hm
Ngi ta thng dng mt s phng php tnh gn ng o hm ca hm f(x) ti x
trong hai phng php sau y thng c dng nht: p dng a thc ni suy v p dng
cng thc Taylor.
2. Tnh gn ng tch phn
- Cng thc hnh thang:
+ Cng thc:
b

I = f(x)dx I* = = h(
a

vi h=

y0 + yn
+ y1 + . . . + yn-1)
2

(b a)
n

+ nh gi sai s
Gi s hm s y = f(x) c o hm cp 2 lin tc v
| f''(x) | M2 , x [a,b]
khi ta c nh gi
| I - I*|

M2 2
h (b-a)
12

- Cng thc parabol (Simpson)


+ Cng thc:
b

I= f(x)dx I* =
a

vi h=

h
[(y0 +y2n) +4(y1 +y3 + . . . + y2n-1) + 2(y2 +y4 + . . . + y2n2)]
3

(b a)
2n

+ nh gi sai s
Gi s hm s y = f(x) c o hm cp 4 lin tc v
| f(4)(x) | M4 , x [a,b]
khi ta c nh gi
| I - I* |
98

M4 4
h (b-a)
180

Chng 6: Gii gn ng cc phng trnh vi phn

CHNG 6

GII GN NG PHNG TRNH VI PHN


MC CH, YU CU
Sau khi hc xong chng 3, yu cu sinh vin:
1. Hiu c vai tr v tm quan trng ca bi ton gii gn ng phng trnh vi phn.
2. Nm c cc phng php tm nghim gn ng ca phng trnh vi phn.
3. Bit cch p dng cc phng php trn vo vic gii quyt cc bi ton thc t.
4. Bit cch nh gi sai s ca tng phng php.

6.1. M U
Nhiu bi ton khoa hc k thut dn v vic tm nghim phng trnh vi phn tha mn
mt s iu kin no . Nhng phng trnh vi phn m t nhng h c hc, l hc, ha hc,
sinh hc ni chung rt phc tp, khng hy vng tm li gii ng.
Trong chng ny ta nghin cu bi ton n gin nht ca phng trnh vi phn l bi
ton Cauchy i vi phng trnh vi phn cp 1 nh sau:
Hy tm hm y=y(x) tha mn:
y'(x) = f(x,y) x [a,b], x0 = a

(6.1)

y(x0) =y0

(6.1b)

iu kin (6.1b) c gi l iu kin ban u hay iu kin Cauchy.


Tng t, bi ton Cauchy i vi phng trnh vi phn cp n c m t nh sau:
Hy tm hm y=y(x) tha mn:
y(n) = f(x,y,y',y(2),...,y(n-1))

(6.2)

y(x0) =0, y'(x0) =1, y(2)(x0) = 2, ..., y(n-1)(x0)=n-1


trong f() l mt hm bit ca n+1 i s x,y,y',y(2),...,y(n-1); x0, b, 0, 1 ..., n-1 l
nhng s cho trc.
(6.1) cn c m rng cho h thng cc phng trnh vi phn cp mt vi bi ton Cauchy
ch sau:
y1' = f1(x,y1, y2,..., yn)
y2' = f2(x,y1, y2,..., yn)
...

(6.3)

yn' = fn(x,y1, y2,..., yn)


99

Chng 6: Gii gn ng cc phng trnh vi phn


y1(x0) =1, y2(x0) = 2, . . ., yn(x0)=n
x [a,b], x0 = a
Nu t
= [1, 2,..., n]T
y = [y1, y2,..., yn]T
y = [y'1, y'2,..., y'n]T
f = [f1, f2,..., fn]T
Bi ton (6.3) c th vit gn hn di dng vect nh sau:
y = f (x, y), x [a,b], x0 = a
y (x0) =
Ghi ch. Phng trnh vi phn cp n c th a v h cc phng trnh vi phn cp mt
bng php bin i
y1 =y, y2 =y' ,. . ., yi =y(i-1 ,. . ., yn = y(n-1)
Ni chung c hai nhm phng php gii cc phng trnh vi phn thng:
Phng php tm nghim chnh xc: bng cch da vo cch tnh tch phn trc tip, xc nh
c dng tng qut ca nghim ri da vo iu kin ban u xc nh nghim ring cn tm.
Phng php tm nghim gn ng xut pht t iu kin ban u. Phng php ny c th
p dng cho mt lp phng trnh vi phn rng hn rt nhiu so vi phng php trc tip, do
c dng nhiu trong thc t.
Trong phn tip theo ta s tp trung vo nhm phng php th hai.

6.2. PHNG PHP EULER


Tr li bi ton
y'(x) = f(x,y) x [a,b], x0 = a

(6.4)

y(x0) =y0
Cch gii gn ng (6.4) l tm cc gi tr gn ng yi ca gi tr ng y(xi) ti cc im
xi, i = 0,1,2,... n, trong
a = x0 < x1 < . . . < xn = b
xi = x0 + ih, i=0,1,...,n-1
h=

ba
n

Ta bit y0 =0, ta s ln lt xc nh y1 ti x1, ri y2 ti x2, v ni chung t gi tr gn


ng yi ti xi ta s tnh yi+1 ti xi+1.
Phng php Euler cng nh mt vi phng php s c trnh by s da vo gi thit
sau y (cho d gi thit ny ni chung khng th kim tra c)
Gi thit rng bi ton (6.4) c nghim duy nht y = y(x), x [a,b], a = x0, v nghim y(x)
trn, ngha l n c o hm n cp cao.
(6.5)
100

Chng 6: Gii gn ng cc phng trnh vi phn


Ta khai trin Taylo nghim y(x) ca (6.4) ti xi
y(x) = y(xi) +

x xi
( x xi ) 2
y'(xi) +
y''(ci) , ci (xi,x)
1!
2!

(6.5)

Thay x = xi+1 = xi + h, y'(xi) = f(xi,y(xi)) vo ng thc trn ta c


y(xi+1) = y(xi) + h f(xi,y(xi)) +

h2
y''(ci), ci (xi,xi+1)
2

(6.6)

B qua s hng cui cng bn phi, ng thi thay cc gi tr ng y(xi+1), y(xi),


f(x,y(xi)) bng cc gi tr xp x yi+1, yi, f(x,yi) vo (6.6) ta c
yi+1 = yi + h f(xi,yi)

(6.7)

Vi gi tr y0 = y(x0) = 0 ban u (nh vy y0 l gi tr ng ca y(x0)), ta c th tnh tip


cc gi tr yi , i =1,2, ..., n.
Cng thc (6.7) c gi l cng thc Euler. Cng thc ny cho ta cch tnh yi+1 khi bit
yi m khng phi gii mt phng trnh no. V vy phng php Euler l mt phng php hin.
Sai s a phng ca phng php Euler l

h2
Ri(h) = y(xi)- yi =
y''(ci-1) = O(h2)
2!

(6.8)

Ngi ta chng minh c rng: sai s ca phng php Euler ti im xi l


| yi - y(xi) | Mh

(6.9)

trong M l hng s khng ph thuc h.


iu ny chng t rng khi h 0 th yi y(xi) ti mi im xi c nh. Tuy nhin vic
xc nh gi tr M rt phc tp. V vy trong thc hnh ngi ta thng lm nh sau: Qu trnh
tnh c chia lm nhiu bc, khong cch gia cc im xi v xi+1 bc sau s l mt na
ba
khong cch ca bc trc, tc l hk+1 =hk/2 . Nu gi ln u tin vi h=
ta gi l ln
n
th 0 vi n+1 im chia th ti ln th k+1 s c n.2k+1 +1 im chia. Trong s im chia ny th
c n.2k +1 im chia trng vi ln th k. Cc im trng l 0,2,4,..., n.2k+1. Ti cc im chia
ny ta c ln th k gi tr xp x ca yi l yi(k), cn ln th k+1 th gi tr xp x gi tr y ti
v tr ny li l y2i(k+1). Ta xt i lng sau
maxdiff = max | y2i (k+1) - y i (k) |, i=0,1,2,...,n.2k
i

V s dng qu trnh tnh ton nu maxdiff nh hn gi tr kh nh cho trc.


Ta c th m t thut ton Euler ci t trn my tnh theo cc bc sau:
a.Thut ton cho mt ln chia khong duy nht.
Nhp a, b , y0 v n.
t h =

ba
, x0 = a.
n

Vi i =1,2,..., n tnh
101

Chng 6: Gii gn ng cc phng trnh vi phn


yi = yi-1 + hf(xi-1,yi-1)
xi = xi-1 + h
b.Thut ton cho nhiu ln chia khong.
Nhp a, b , y0 , kmax v >0.

- Bc 0:

t h0 =

ba
, x 0( 0 ) = a , y 0( 0 ) = y0
n
( 0)

Tnh y i( 0 ) = y i(01) + hf( x i(01) , y i(01) ), x i( 0 ) = x i 1 + h0 , i = 1,2,...,n


- Bc 1:
t h1 =

h0
, x 0(1) = a , y 0(1) = y0
2

y i(1) = y i(11) + hf( xi(11) , y i(11) ), x i(1) = x i(11) + h1 , i = 1,2,...,n.2

Tnh

d1 = max | y2i (1) - y i (0) |, i=0,1,2,...,n


i

Nu d1 < th dng thut ton v ly mu (x0,y0), (x1,y1), ..., (x2n,y2n) lm nghim


xp x.
Nu 2 iu trn y khng xy ra th chuyn qua bc (3).
...
- Bc k:
t hk =

hk 1
, x 0( k ) = a , y 0( k ) = y0
2
y i(k ) = y i(k1) + hf( x i(k1) , y i(k1) ), x i( k ) = x i(k1) + hk , i = 1,2,...,n.2k

Tnh

dk = max | y2i (k) - y i (k-1) |, i=0,1,2,...,n.2k-1


i

Nu dk < th dng thut ton v ly mu (x0,y0), (x1,y1), ..., (xN,yN), trong N = n.2k
lm nghim xp x.
Nu k kmax th thng bo php lp cha hi t v cng dng thut ton.
Nu 2 iu trn y khng xy ra th chuyn qua bc (k+1).
c.Chng trnh ci t thut ton Euler:
//EULER.CPP
/*Phuong phap Euler giai gan dung phuong trinh vi phan y'=f(x,y)*/
#include "zheader.cpp"
#define kmax 17
const double epsi=1.0E-02;
double g(double,double);//a=0,b=1
double yg(double);//La nghiem dung y=y(x) cua phuong trinh y'=g(x,y)
102

Chng 6: Gii gn ng cc phng trnh vi phn


int euler(double (*f)(double,double),double (*yf)(double));
/*Phuong phap Euler giai phuong trinh vi phan tren [a,b].
y'(x)=f(x,y), y(x0)=y0.
Neu buoc lap vuot qua kmax thi tra ve false
Ham yf la nghiem dung de so sanh*/
//===============================================
double g(double x,double y)
{return x*y/2;
}
//===============================================
double yg(double x)
{return exp(x*x/4);
}
//===============================================
//Ham de tim y(x).
int euler(double (*f)(double,double),double (*yf)(double))
{clrscr();
double a,b,h,maxdiff,x[kmax],y[kmax],y1[kmax];int n,m,i;
cout<<endl<<"Can duoi: ";cin>>a;
cout<<"Can tren: ";cin>>b;
cout<<"Dieu kien ban dau: y(a) = ";cin>>y[0];
n=1;
h=b-a;
x[0]=a;
y[1]=y[0]+h*f(x[0],y[0]);
do
{for(i=0;i<=n;i++) y1[i]=y[i];//Gan y1=y de bat dau tinh y moi
m=n;
n=n*2;
h=h/2;
for(i=0;i<n;i++)
{x[i+1]=x[i]+h;
y[i+1]=y[i]+h*f(x[i],y[i]);
}
maxdiff=0;
103

Chng 6: Gii gn ng cc phng trnh vi phn


for(i=0;i<=m;i++)
maxdiff=maxdiff<fabs(y[2*i]-y1[i])?fabs(y[2*i]-y1[i]):maxdiff;
if(maxdiff>epsi&&2*n>kmax-1)
{cout<<endl<<"Chua hoi tu voi "<<n<<" khoang chia";
delay(1000);break;
}
}
while(maxdiff>epsi);
cout<<endl<<" i

x[i]

y[i]

y(x[i])";

for(i=0;i<=n;i++)
{cout<<endl<<setw(4)<<i;
cout<<setw(10)<<setprecision(2)<<x[i];
cout<<setw(10)<<setprecision(4)<<y[i];
cout<<setw(10)<<setprecision(4)<<yf(x[i]);
}
cout<<endl<<endl<<"So khoang chia :";
cout<<setw(10)<<n;
cout<<endl<<"Sai so |y[i]-y(x[i])| cuc dai:";
cout<<setw(10)<<setprecision(4)<<maxdiff;
//================Ghi vao tep EULER.DAT
FILE *fp;
fp=fopen("EULER.DAT","wt");
fprintf(fp," i

x[i]

y[i]

y(x[i])");

for(i=0;i<=n;i++)
{fprintf(fp,"\n%4d",i);
fprintf(fp,"%10.2f",x[i]);
fprintf(fp,"%10.4f",y[i]);
fprintf(fp,"%10.4f",yf(x[i]));
}
fprintf(fp,"\n\nSo khoang chia : %4d",n);
fprintf(fp,"\nSai so |y[i]-y(x[i])| cuc dai: %10.4f",maxdiff);
fclose(fp);
getch();
clrscr();
104

Chng 6: Gii gn ng cc phng trnh vi phn


if(n>kmax) return false;
else return true;
}
//===============================================
void main()
{char mchon;
while(true)
{clrscr();
gotoxy(20,2);cout<<"PHUONG PHAP EULER";
gotoxy(2,2);
cout<<endl<<" 1. Giai phuong trinh vi phan ";
cout<<endl<<" z. Ket thuc";
cout<<endl<<" Nhan phim 1 -> z de chon";
mchon=toupper(getch());
if(mchon=='Z') break;
switch(mchon)
{case '1':clrscr();
euler(g,yg);
break;
}
gotoxy(2,22);
cout<<"Nhan phim bat ky de tiep tuc";
getch();
}
}
Nhn xt.
u im ca phng php Euler l tnh ton n gin, nhng nhc im l chnh xc thp.
Khi ta gim bc h th chnh xc tng ln v sai s tch ly cng tng ln. gim sai s tch lu,
trong chng trnh tnh ton trn my tnh ta nn dng cc i lng c chnh xc gp i.
Phng php Eurler c th p dng cho h thng phng trnh vi phn cp mt (6.3).
S dng cc k hiu nh trong (6.3) ta c cng thc Euler gii bi ton Cauchy c dng sau:
y0 = y(x0) =
yi+1 = yi + h f(xi,yi ), i=0,1,2,...,n-1

(6.10)

i vi h thng hai phng trnh vi phn cp mt:


105

Chng 6: Gii gn ng cc phng trnh vi phn


y' = f1(x,y,z)
z' = f2(x,y,z)
vi iu kin ban u:
y(x0) =1 , z(x0) =2
Cng thc (6.8) c dng sau:
y0 = y(x0) =1 , z0 = z(x0) =2
yi+1 = yi + hf1(xi, yi, zi)
zi+1 = zi + hf2(xi, yi, zi) i=0,1,...,n-1

(6.11)

V d.
Cho h thng phng trnh vi phn cp mt:
y' = (z-y)x
z' = (z+y)x
Vi iu kin ban u: y(0)=z(0)=1.
Hy tm nghim gn ng bng phng php Euler trn khong [0,0.6] vi bc h=0.1.
Gii:
Ta c xi = 0.1i, i=0,1,2,...,6.
Xut pht t y(0)=z(0)=1, p dng (6.11) ta nhn c kt qu tnh ton sau:
i

xi

yi

f1(xi, yi, zi)

hf1(xi, yi, zi)

zi

f2(xi, yi, zi)

hf2(xi, yi, zi)

1.0000

1.0000

0.1

1.0000

1.0000

0.2000

0.0200

0.2

1.0000

0.0040

0.0004

1.0200

0.4040

0.0404

0.3

1.0004

0.0180

0.0018

1.0604

0.6182

0.0618

0.4

1.0022

0.0480

0.0048

1.1222

0.8498

0.0850

0.5

1.0070

0.1001

0.0100

1.2072

1.1071

0.1107

0.6

1.0170

1.3179

6.3.PHNG PHP EULER CI TIN


tng chnh xc ca phng php Euler ngi ta lm nh sau:
Theo cng thc Newton-Lepnitz, ta c
x2

y(x2) - y(x1) =

y'(x)dx

x1

Tnh gn ng tch phn xc nh v phi bng cng thc hnh thang ta c:


x2

y'(x)dx

x1

106

h
h
[y'(x1)+y'(x2)] =
[f(x1,y(x1)) + f(x2,y(x2)], trong h=x2-x1
2
2

Chng 6: Gii gn ng cc phng trnh vi phn


Thay x1 bng xi, x2 bng xi+1, ta c
yi+1 = yi +

h
[f(xi,yi) + f(xi+1,yi+1)] , i=0,1,...,n-1
2

(6.12)

vi y0 = .
Ngi ta chng minh c rng sai s ca (6.12) ti im xi l:
| yi - y(xi) | Mh2
trong M l hng s khng ph thuc h.
Vy cng thc (6.12) chnh xc hn cng thc Euler. Tuy nhin n c nhc im l yi+1
xut hin c v phi. Nh vy khi bit yi ta vn cn phi gii mt phng trnh i s phi
tuyn i vi yi+1 (nu f(x,y) phi tuyn i vi y). V vy y l mt phng php n. Ngi ta
ci tin phng php (6.12) bng cch phi hp (6.12) vi phng php Euler nh sau:
y0 =y(x0) bit
Vi i =1, 2,... n ta tnh
z = yi-1 + hf(xi-1,yi-1)
yi = yi-1 +

h
[f(xi-1,yi-1) + f(xi,z)]
2

(6.13)

i=0,1,...,n-1, m=1,2,...
Cng thc (6.13) c gi l cng thc Euler ci tin. Nh vy trong (6.13) u tin ngi
ta dng cng thc Euler c lng gi tr ca yi (c k hiu l z) v dng z tnh
yi = yi-1 +

h
[f(xi-1,yi-1) + f(xi,z)]
2

Ta c th m t thut ton Euler ci tin ci t trn my tnh theo cc bc sau:


a.Thut ton cho mt ln chia khong duy nht.
Nhp a, b , y0 v n.
t h =

ba
, x0 = a.
n

Vi i =1,2,..., n tnh
z = yi-1 + hf(xi-1,yi-1)
yi = yi-1 +

h
[f(xi-1,yi-1) + f(xi,z)]
2

xi = xi-1 + h
b.Thut ton cho nhiu ln chia khong.
- Bc 0: Nhp a, b , y0 , kmax v >0.
t h0 =

ba
, x 0( 0 ) = a , y 0( 0 ) = y0
n

Vi i = 1, 2,... tnh
107

Chng 6: Gii gn ng cc phng trnh vi phn


( 0)

x i( 0 ) = x i 1 + h0
z = y i(01) + h0f( x i(01) , y i(01) )

y i( 0 ) = y i(01) +

h0
[f( x i(01) , y i(01) ) + f( x i( 0 ) ,z)]
2

t h1 =

- Bc 1:

h0
, x 0(1) = a , y 0(1) = y0
2

Vi i = 1, 2,... tnh

x i(1) = xi(11) + h1
z = y i(11) + h1f( xi(11) , y i(11) )

y i(1) = y i(11) +

h1
[f( xi(11) , y i(11) ) + f( xi(1) ,z)]
2

d1 = max | y2i (1) - y i (0) |, i=0,1,2,...,n


i

Nu d1 < th dng thut ton v ly mu (x0,y0), (x1,y1), ..., (x2n,y2n) lm nghim xp x.


Nu 2 iu trn y khng xy ra th chuyn qua bc (3).
...
- Bc k:

t hk =

hk 1
, x 0( k ) = a , y 0( k ) = y0
2

Vi i = 1, 2,... tnh

x i( k ) = x i(k1) + hk
z = y i(k1) + hkf( x i(k1) , y i(k1) )

y i(k ) = y i(k1) +

hk
[f( x i(k1) , y i(k1) ) + f( x i( k ) ,z)]
2

dk = max | y2i (k) - y i (k-1) |, i=0,1,2,...,n.2k-1


i

Nu dk < th dng thut ton v ly mu (x0,y0), (x1,y1), ..., (xN,yN), trong


N = n.2k lm nghim xp x.
Nu k kmax th thng bo php lp cha hi t v cng dng thut ton.
Nu 2 iu trn y khng xy ra th chuyn qua bc (k+1).

6.4. PHNG PHP EULER-CAUCHY


Thc cht phng php Euler-Cauchy cng l phng php Euler ci tin. Tuy nhin s
khc bit l khi tnh yi ta dng cng thc (6.13) nhiu ln t c chnh xc cao hn. C
ba
, x0 = a ta tnh cc xi = xi-1 + h.
th t h =
n
108

Chng 6: Gii gn ng cc phng trnh vi phn


T iu kin ban u y0 =y(x0) , cho trc >0, vi i = 1, 2, ... ta thc hin thut ton sau:
- Bc 1:
(a) u = y0 + hf(x0,y0)
(b) v = y0 +

h
[f(x0,y0) + f(x0,u)]
2

(6.14)

Nu |v-u|< th ta chn y1 = v, ngc li ta t u = v v tnh li (b).


Ngi ta chng minh c rng vi h b th qu trnh lp (6.14) hi t. V vy
nu sau ba bn ln lp m vn khng t c s trng nhau n mc i hi ca cc gn
ng lin tip th cn gim bc h v lm li t u.
...
- Bc i:
(a) u = yi-1 + hf(xi-1,yi-1)
(b) v = yi-1 +

h
[f(xi-1,yi-1) + f(xi,u)]
2

(6.15)

Nu |v-u|< th ta chn yi = v, ngc li ta t u = v v tnh li (b).


Ngi ta chng minh c rng vi h b th qu trnh lp (6.15) hi t. V vy nu
sau ba bn ln lp m vn khng t c s trng nhau n mc i hi ca cc gn ng
lin tip th cn gim bc h v lm li t u.
Ta c th m t thut ton Euler - Cauchy ci t trn my tnh theo cc bc sau:
a.Thut ton cho mt ln chia khong duy nht.
Nhp a, b , y0, v n.
t h =

ba
, x0 = a ta tnh cc xi = xi-1 + h.
n

T iu kin ban u y0 =y(x0), vi i = 1, 2, ... ta thc hin thut ton nh (6.14) v (6.15).
b.Thut ton cho nhiu ln chia khong.
- Bc 0:

Nhp a, b , y0 , , n, kmax v .

t h0 =

ba
, x 0( 0 ) = a , y 0( 0 ) = y0
n

Vi i = 1, 2,... tnh cc

- Bc 1:

t h1 =

y i( 0 ) theo (6.14) v (6.15).

h0
, x 0(1) = a , y 0(1) = y0
2

Vi i = 1, 2,... tnh cc

y i(1) theo (6.14) v (6.15).

Tnh d1 = max | y2i (1) - y i (0) |, i=0,1,2,...,n


i

109

Chng 6: Gii gn ng cc phng trnh vi phn


Nu d1 < th dng thut ton v ly mu (x0,y0), (x1,y1), ..., (x2n,y2n) lm nghim xp x.
Nu 2 iu trn y khng xy ra th chuyn qua bc (3).
...
- Bc k:

hk 1
, x 0( k ) = a , y 0( k ) = y0
2

t hk =

y i( k ) theo (6.14) v (6.15).

Vi i = 1, 2,... tnh cc

Tnh dk = max | y2i (k) - y i (k-1) |, i=0,1,2,...,n.2k-1


i

Nu dk< th dng thut ton v ly mu (x0,y0), (x1,y1), ..., (xN,yN), trong N = n.2k
lm nghim xp x.
Nu k kmax th thng bo php lp cha hi t v cng dng thut ton.
Nu 2 iu trn y khng xy ra th chuyn qua bc (k+1).

6.5. PHNG PHP RUNGE - KUTTA


Phng php Runge - Kutta l phng php rt hiu qu: n va c chnh xc cao li
va l phng php hin. thnh lp nhng cng thc Runge-Kutta c chnh xc cao hn
cng thc Euler, ngi ta dng khai trin Taylo nghim y(x) ti xi vi nhiu s hng hn. Xy
dng cng thc Runge-Kutta trong trng hp tng qut kh phc tp, y ta ch xt trng
hp n gin nht.
Tr li xt bi ton (6.1), ta xt khai trin Taylor ca nghim ng y(x) :
y(x) = y(xi) +
Thay

x xi
( x xi ) 2
( x xi ) 3
y'(xi) +
y''(xi) +
y'''(ci) , ci (xi,x)
1!
2!
3!

x =xi+1 = xi +h, ta c
y(xi+1) = y(xi) + hy'(xi) +

h3
h2
y''(xi) +
y'''(ci), c (xi,x)
2
6

(6.16)

Trong
y'(xi) = f(xi,y(xi))
y''(xi) =

f
f dy
+
x=xi
x
y dx
= fx'(xi,yi) +fy'(xi,y(xi))y'(xi)

Thay vo (6.13) ta c
yi+1 = yi + hy'i +

h2
[ fx'(xi,yi) +fy'(xi,yi)y'i] + O(h3)
2

(6.17)

trnh tnh trc tip fx'(xi,yi) v fy'(xi,yi), Runge v Kutta lm nh sau:


t
yi+1 =yi +r1k1(i) + r2k2(i)
110

(6.18)

Chng 6: Gii gn ng cc phng trnh vi phn


Trong
k1(i) = hf(xi, yi)
k2(i) = hf(xi +h, yi + k1(i))

(6.19)

v chn , , r1, r2 sao cho khai trin theo ly tha ca h ca yi+1 xc nh bi (6.18) trng
nhau n 3 s hng u ca v phi cng thc (6.17).
Dng cng thc Taylor ca hm hai bin, ta c:
f(xi +h, yi + k1(i)) = f(xi,yi) + hfx'(xi,yi) + k1(i) fy'(xi,yi) + O(h2) =
= yi' + hfx'(xi,yi) + k1(i) fy'(xi,yi) + O(h2)
T y ta c
k1(i) = hf(xi, yi) = hyi'
k2(i) = hf(xi +h, yi + k1(i)) =
= h yi' + h2 fx'(xi,yi) + h2yi' fy'(xi,yi) + O(h3)
Do (6.18) c th vit di dng
yi+1 = yi + r1h yi' + r2[ h yi' + h2 fx'(xi,yi) + h2yi' fy'(xi,yi)] + O(h3) =
=yi + r1h yi' + r2h yi' + r2h2 fx'(xi,yi) + r2 h2yi' fy'(xi,yi) + O(h3) =
=yi + (r1+ r2) h yi' + h2 (r2fx'(xi,yi) + r2 fy'(xi,yi) yi'] + O(h3) (6.20)
So snh cc h s ly tha ca h trong (6.17) v (6.20) ta c
r1+ r2 = 1
r2 = r2 = 1/2
y l mt h thng 3 phng trnh, 4 n s nn l mt h v nh. Ta xt mt vi h
nghim n gin
(1)

r1 = 0, r2 =1, = = 1/2. Khi (6.18) v (6.19) c dng


y0 =y(x0) bit
k1(i) = hf(xi, yi)
k2(i) = hf(xi +h/2, yi + k1(i)/2)
yi+1 = yi +k2(i) i=0,1,...,n-1

(2)

(6.21)

r1 = r2 = 1/2 , = = 1. Khi (6.18) v (6.19) c dng


y0 =y(x0) bit
k1(i) = hf(xi, yi)
k2(i) = hf(xi +h, yi + k1(i))
yi+1 = yi +(1/2)( k1(i) + k2(i) )

i=0,1,...,n-1

(6.22)

Khi thnh lp cc cng thc (6.18) v (6.19) trn y ta b qua s hng O(h3) trong khai
trin Taylor. Ta c th chng minh c rng sai s ti im xi tha mn:
|yi -y(xi)| Mh2, trong M l hng s dng khng ph thuc h.
Vy cc phng php Runge-Kutta trn y c chnh xc cp hai.
111

Chng 6: Gii gn ng cc phng trnh vi phn


Hon ton tng t, nu trong khai trin Taylor ca y(xi+1) ti xi ta b qua s hng o(h4)
th s nhn c cng thc Runge-Kutta c chnh xc cp ba, ngha l
|yi -y(xi)| Mh3, trong M l hng s dng khng ph thuc h.
y0 =y(x0) bit
k1(i) = hf(xi, yi)
k2(i) = hf(xi +h/2, yi + k1(i)/2)
k3(i) = hf(xi +h, yi -k1(i) + 2k2(i))
yi+1 = yi +(1/6)( k1(i) + 4k2(i) + k3(i)) i=0,1,...,n-1

(6.23)

Nu b qua s hng O(h5) th ta nhn c cng thc Runge-Kutta c chnh xc cp 4:


y0 =y(x0) bit
k1(i) = hf(xi, yi)
k2(i) = hf(xi +h/2, yi + k1(i)/2)
k3(i) = hf(xi +h/2, yi + k2(i)/2)
k4(i) = hf(xi +h/2, yi + k3(i))
yi+1 = yi +(1/6)( k1(i) + 2k2(i) + 2k3(i) + k4(i)) i=0,1,...,n-1

(6.24)

Trong cc cng thc Runge-Kutta nu trn ngi ta thng dng cng thc (6.24) v n c
chnh xc cao m li khng qu phc tp. Trong thc t vic xc nh hng s M trong nh
gi sai s ca phng php Runge-Kutta kh phc tp, do ngi ta thng xc nh sai s
bng cch "tnh 2 ln" nh sau:
Ln u tnh bng cng thc (6.24) vi bc h, nhn c y n( h ) l gi tr gn ng ca
y(b) . Sau ta li tnh vi bc h/2 nhn c

h
( )
2
2n

l gi tr gn ng ca y(b) v sai s c

xc nh bi:
| y

h
( )
2
2n

-y(b) | (1/15) | y

h
( )
2
2n

- y n( h ) |

(6.25)

V d.
Cho bi ton Cauchy nh sau:
y' =x + y, y(0) =1
Hy tm nghim gn ng bng phng php Runge-Kutta (6.24) trn [0,0.5] vi bc
h=0.1
Gii: Ta c xi = 0.1i; i = 0,1,2,3,4,5
y0 =1
k1(0) = 0.1(0+1)=0.1
k2(0) = 0.1(0+0.05) +(1+0.05)]=0.11
k3(0) = 0.1(0+0.05) + (1 + 0.055)] = 0.1105
k4(0) = 0.1(0+0.1) + (1 + 0.1105)] = 0.12105
112

Chng 6: Gii gn ng cc phng trnh vi phn


T
y1 =1+

1
(0.1+2*0.11 +2*0.1105+0.12105) = 1.1103
6

Tng t ta c th tnh y2, y3,y4 v y5.


Ta c th thy rng y(0.5) y5 =1.7974
Nghim ng ca bi ton Cauchy cho l y=2ex - x -1
t :
y(0.5) = 2 e0.5 -0.5 -1 = 1.79744
Nh vy kt qu nhn c dng n 4 s l thp phn.
Cc phng php Runge - Kutta nu trn u c th p dng cho h phng trnh vi phn
cp mt.
Bn c c th t vit chng trnh theo cng thc (6.24) v th in ra cc kt qu trn y.

6.5.

BI TP

Bi 1. Gii phng trnh sau bng phng php Euler


y' =

xy
; x [0,1], y(0) =1; h=0,1
2

Bi 2. Gii phng trnh sau bng phng php Euler


y' = x2 + y2 ; x [0,1], y(0) =1; h=0,2
Bi 3. Gii phng trnh sau bng phng php Runge-Kutta:
y' = y-2x/y ; x [0,1], y(0) =1; h=0,2
Bi 4. Gii bi ton sau bng phng php Euler ci tin v so snh kt qu vi nghim ng:
y' = x2+y2; x [0,1], y(0) =1; h=0,2
Bi 5. Th li hoc vit mi cc chng trnh ci t cc thut ton Euler ri chy th kim
tra cc kt qu trn y.

113

Chng 6: Gii gn ng cc phng trnh vi phn

TM TT NI DUNG CHNG 6

Trong chng ny chng ta cn ch nht l cc vn sau:


1. Bi ton Cauchy
Tm hm y=y(x) tha mn:
y'(x) = f(x,y) x [a,b], x0 = a

(6.1)

y(x0) =y0

(6.1b)

iu kin (6.1b) c gi l iu kin ban u hay iu kin Cauchy.


2. Mt s phng php tm nghim gn ng ca bi ton Cauchy
a.Phng php EULER
b.Phng php EULER ci tin
c. Phng php EULER-CAUCHY
d.Phng php RUNGE-KUTTA

114

Hng dn tr li

HNG DN TR LI

CHNG 1
1. Khi o 1 s gc ta c cc gi tr sau:
a= 21o373

b=1o10

Sai s tng i ca cc s xp x l
a = 0,13.10 4

b = 0,28.10-3

2. Sai s tuyt i ca cc s xp l :
a = 0,13.102

b = 0,16.10-1

3. S cc ch s ng tin trong cc s a,b l:


a) 2

b) 4

4. S nhng ch s ng tin trong cc s a l:


a) 3

b) 1

Cc s qui trn vi 3 ch s c ngha ng tin, sai s tuyt i v sai s tng i


ca chng l:
a) 2,15

= -0,14.10-2

= 0,65.10-3

b) 0,162

= 0,48.10-3

= 0,3.10-2

c) 0,0120

= 0,4.10- 4

= 0,33.10-2

d) 0,00153

= 0,19.10 - 5

= 125.10-26.

5. Gi tr ca cc hm s, sai s tuyt i v sai s tng :


a) u = 0,81

u = 0,27.10-2

u = 0,33.10-2

b) u = 3,665

u = 0,7.10-2

u = 0,20.10-2

CHNG 2
1. Tnh v kim tra bng chng trnh nh thc ca ma trn
+ Da vo thut ton Gauss c m t bng ngn ng lp trnh C hon thin
chng trnh tnh nh thc.
+Det A=52
2. Tm v kim tra bng chng trnh nghch o ca ma trn
+ Ma trn nghch o l:
115

Hng dn tr li

5
4 6

A = 1 1 1

6 9 7
-1

+ Da vo thut ton kh Gauss-Jordan c m t bng ngn ng lp trnh C


hon thin chng trnh tm ma trn nghch o.
3. Nghim ca h phng trnh l:
x1=1;x2=2;x3=3
4. Gii bng cc phng php kh Gauss, kh Gauss-Jordan, phng lp Jacobi v lp
Gauss-Seidel (nu tha mn iu kin) :
+ Phng php Gauss

x=(-2,09;3,977;1,451;-2,401)

+ Phng php Gauss-Jordan

x=(-2,057;3,976;1,451;-2,401)

+H phng trnh cho khng tho mn tnh cht ng cho tri


+ Phn vit chng trnh: Xem phn on chng trnh chnh th hin thut ton
Gauss - Seidel hon thin chng trnh vi d liu c th trong bi ton.
5. Gii bng cc phng php lp h phng trnh sau:
+Phng php lp jacobi qua 3 bc lp; x(3)(1,01;-2,008;3,045)
+Phng php l Gauss Seidel qua 3 bc l; x(3)(1;-2;3)
CHNG 3
1. a thc ni suy Newton tin xut pht t nt 3,50 l:
p 3 (x) | x

3,50 + 0,05t

= 33,115 + 1,698 t + 0,0435 t ( t 1 ) + 0,00083 t ( t - 1)(t - 2)


2. Tch phn xc xut
( 1,43 ) 0,95686
3. Cho hm s y = ex ti x = 0,65 + 0,1i i=0,1,...,5 tun t l 1,91554; 2,11700; 2,33965;
2,58571; 2,85765; 3,15819. Tnh ln2.
Ln 2 = 0,693148
4. Cng thc y biu din qua x l:
y = 5,045 - 4,043x + 1,009 x

5. Xc nh ga tr ca sai s khi x = 12030'.


R(12030) 9,094.10-10
6. Cc a thc xp x c dng tng ng l:
Y=6,373+0,471x
Y=6,36+0,468x+0,0001786x2
Y=2,15x1,31
116

Hng dn tr li
CHNG 4
(Gi )
5. Tm 1 khong phn ly nghim bt b tho mn phng trnh. V d[0,/2]
-

Tm hm (x)=1/2sinx+0,25

Xt o hm (x). Nu (x)<1 th thc hin qu trnh lp theo thut ton xn=(xn1), vi x0=0 qua 4 ln lp ta s tm c x1,x2,x3,x4

6. Tm 1 khong phn ly nghim bt b tho mn phng trnh. V d[1,2]


p dng phng php chia i ta c bng gi tr xn=(an+bn )/2 v cc khong phn ly mi
[an,bn] tng ng qua cc bc lp sau:
N

an

bn

Xn=(an+bn)/2 f(xn)

1.5

0.875

1.5

1.25

-0.29

1.25

1.5

1.375

0.22

1.25

1.375

1.3125

-0.05

1.3125

1.375

1.34375

0.08

x4 1.34375
sai s: x4- (b0-a0)/25=1/25=0.03125.
7. Tm 1 khong phn ly nghim bt k tho mn phng trnh. V d[1,2]
f(x)=3x2-1 f(x)[2,11] = [m,M]
p dng phng php dy cung ta c bng gi tr
xn=(anf(bn)+bnf(an)/(f(bn)-f(an)) v cc khong phn ly mi [an,bn] tng ng qua cc
bc lp sau:
n

an

bn

xn=anf(bn)-bnf(an)/f(bn)-f(an)

f(xn)

1.1667

-0.57

1.1667

1.25313

-0.285

1.25313

1.29345

-0.1295

1.29395

1.31129

-0.06

1.31129

1.31889

-0.02

x4 1.31899
117

Hng dn tr li
sai s
x4- ((M-m)/m)*x4-x3
x4- ((11-2)/2)*1.31899-1.31129=0.03465.
8. tnh 5 bng phng php chia i th ta phi a v gii gn ng phng trnh
f(x)=x2-5=0 (1) trn khong [2,3]
p dng phng php chia i ta c bng gi tr xn=(an+bn )/2 v cc khong phn ly
mi [an,bn] tng ng qua cc bc lp sau
N

an

bn

xn=(an+bn)/2

f(xn)

2.5

1.25

2.5

2.25

0.06

2.25

2.5

2.375

0.64

2.25

2.375

2.3125

0.34

2.25

2.3125

2.28125

0.204

xx4=2.28125
x4- 5 (b0-a0)/25=1/32=0.03125
CHNG 5
1. Cho hm s y = logx vi s cc gi tr ti x = 50; 55; 60; 65 tun t l 1,6990;
1,7404;1,7782; 1,8129. Hy tnh o hm ca y ti x = 50 v so snh vi kt qu
trc tip:
Dng ni suy : y ( 50 ) = 0,0087
Tnh trc tip : y ( 50 ) = 0,43429/ x |x =5 0 = 0,0087
2. Cho tch phn
1

I=

dx

1+ x
0

a)
b) I = 0,69315 0,00002
3. Cho tch phn
1

I=

118

sin x
dx
x

Hng dn tr li
a) n> = 10
b)Vi n = 10 th sai s < 1,2.10 7
c)Theo cng thc hnh thang : I = 0,9458
Theo cng thc Simson ta c : I = 0,94608
CHNG 6
1. Gii phng trnh sau bng phng php Euler
y' =

xy
; x [0,1], y(0) =1; h=0,1
2

p dng cng thc Euler (6.7) ta c bng gi tr sau:


I

xi

yi

0,1

0,2

1,005

0,3

1,0105

0,4

1,030275

0,5

1,05088

0,6

1,07715

0,7

1,109468

0,8

1,148299

0,9

1,194231

10

1,2479715

2. Gii phng trnh sau bng phng php Euler


y' = x2 + y2 ; x [0,1], y(0) =1; h=0,2
p dng cng thc Euler (6.7) ta c bng gi tr sau:
i

xi

yi

0,2

1,2

0,4

1,496

0,6

1,9756

0,8

2,8282

4,5559
119

Hng dn tr li
3. Gii phng trnh sau bng phng php Runge-Kutta:
y' = y-2x/y ; x [0,1], y(0) =1; h=0,2
+ S dng cng thc Runge-Kutta c chnh xc cp 4 ta c bng gi tr:
i

xi

yi

0,0

0,2

1,1832292

0,4

1,3416668

0,6

1,4832847

0,8

1,6124665

1,7320713

4. Gii bi ton sau bng phng php Euler ci tin v so snh kt qu vi nghim ng:
y' = y -

2x
; x [0,1], y(0) =1; h=0,2.
y

Gi : p dng cng thc Euler ci tin (6.13) tm nghim xi=xi-1+h vi x0=0,


sau mi so snh vi nghim ng ti cc im y(0,2), y(0,4), y(0,6), y(0,8), y(1)

120

Ti liu tham
Mckho
lc

TI LIU THAM KHO

1.

Dng Thy V, Phng php tnh, Nh xut bn Khoa hc v K thut, 2001

2.

inh Vn Phong, Phng php s trong c hc, Nh xut bn Khoa hc v K thut, 1999

3.

L Trng Vinh, Gii tch s, Nh xut bn Khoa hc v K thut, 2000.

4.

Phm K Anh , Gii tch s, Nh xut bn i hc Quc gia H Ni, 1966.

5.

Phm Ph Trim - Nguyn Bng, Gii tch s, thut ton, chng trnh Pascal,
Nh xut bn i hc Quc gia H Ni, 2000

6.

Szidarovszky Ferenc, Nhp mn phng php s (ting Hung), Kozgazdasgi s Jogi


Konyvkiado, Budapest 1974.

7.

T Vn nh, Phng php tnh, Nh xut bn Gio dc 1995

8.

Trn Vn Minh, Phng php s v chng trnh bng Turbo Pascal, Nh xut bn
Khoa hc v K thut, 1998.

9.

Phan ng Cu-Phan Th H, Phng php s, Hc vin CNBCVT,2002

121

Mc
lcdn tr li
Hng

MC LC

Gii thiu mn hc...............................................................................................................3


I. Gii thiu chung.....................................................................................................................3
II. Mc ch ...............................................................................................................................3
III. Phm vi nghin cu .............................................................................................................3
IV. Phng php nghin cu .....................................................................................................4
Chng 1 - S xp x v sai s..........................................................................................5
Mc ch, yu cu .....................................................................................................................5
1.1. Tng quan v phng php s ............................................................................................5
1.2. Sai s tuyt i v sai s tng i.....................................................................................6
1.3. Cch vit s xp x..............................................................................................................7
1.4. Cc quy tc tnh sai s ........................................................................................................8
1.5. Sai s tnh ton v sai s phng php ...............................................................................10
1.6. S n nh ca mt qu trnh tnh ton...............................................................................11
1.7. Mt vi iu v mi quan h gia thc t v m hnh........................................................11
Chng 2 - Cc phng php s trong i s tuyn tnh ................................13
Mc ch yu cu ......................................................................................................................13
2.1. Ma trn v nh thc...........................................................................................................13
2.2. H phng trnh i s tuyn tnh ......................................................................................17
2.3. Bi tp.................................................................................................................................38
Tm tt ni dung chng 2........................................................................................................40
Chng 3 - Php ni suy v hi quy..............................................................................42
Mc ch yu cu ......................................................................................................................42
3.1. M u................................................................................................................................42
3.2. Ni suy a thc...................................................................................................................44
3.3. Khp ng cong - Ni suy Spline.....................................................................................59
3.4. Phng php bnh phng cc tiu.....................................................................................60
3.5. Bi tp.................................................................................................................................65
Tm tt ni dung chng 3........................................................................................................66
122

Mc lc
Chng 4 - Tnh gn ng nghim ca phng trnh phi tuyn ..................68
Mc ch yu cu ......................................................................................................................68
4.1. Nghim v khong phn ly nghim ....................................................................................68
4.2. Mt s phng php lp gii phng trnh .........................................................................71
4.3. Bi tp.................................................................................................................................86
Tm tt ni dung chng 4........................................................................................................87
Chng 5 - Tnh gn ng o hm v tch phn xc nh............................89
Mc ch yu cu ......................................................................................................................89
5.1. Tnh o hm......................................................................................................................89
5.2. Tnh gn ng tch phn xc nh ......................................................................................91
5.3. Bi tp.................................................................................................................................97
Tm tt ni dung chng 5........................................................................................................98
Chng 6 - Gii gn ng phng trnh vi phn...................................................99
Mc ch yu cu ......................................................................................................................99
6.1. M u................................................................................................................................99
6.2. Phng php Euler............................................................................................................100
6.3. Phng php Euler ci tin ...............................................................................................106
6.4. Phng php Euler - Cauchy ............................................................................................108
6.5. Phng php Runge - Kutta..............................................................................................110
6.6. Bi tp...............................................................................................................................113
Tm tt ni dung chng 6......................................................................................................114
Hng dn tr li..............................................................................................................115
Chng 1 .................................................................................................................................115
Chng 2 .................................................................................................................................115
Chng 3 .................................................................................................................................116
Chng 4 .................................................................................................................................117
Chng 5 .................................................................................................................................118
Chng 6 .................................................................................................................................119
Ti liu tham kho............................................................................................................121

123

You might also like