Đồ án Toán 1
1
TNG VIT NAM
I HC THNG
KHOA TOÁN THNG KÊ
ÁN TOÁN 1
TÀI:
- GII G NGHIM CA H N TÍNH VÀ
I SUY HÀM S BNG NGÔN NG C
++
Ging dn: ThS.
Sinh viên thc hin:
NG NGC MS: C1201002
PHM THANH TÂM MS: C1201104
LP: 120C0101
LP: 120C0101
NIÊN KHÓA: 2012 - 2016
TP. H
Đồ án Toán 1
2
TNG VIT NAM
I HC THNG
KHOA TOÁN THNG KÊ
ÁN TOÁN 1
TÀI
- GII G NGHIM H N TÍNH VÀ CÁC
I SUY HÀM S BNG NGÔN NG C
++
Gingdn: ThS.
Sinh viên thc hin:
NG NGC MS: C1201002
PHM THANH TÂM MS: C1201104
LP: 120C0101
LP: 120C0101
NIÊN KHÓA: 2012 - 2016
TP. H Chí Minh
Đồ án Toán 1
3
NHN XÉT CA GING DN
Đồ án Toán 1
4
LI C
Trong quá trình thc hi án này chúng em nhc nhiu s t
các thy cô trong khoa Toán Thi hc Thng. Các th
ng dn tn tình ch bo nhng kinh nghim quý báu. Trong quá trình hc tp chúng em
ng hc tp, cùng vi s ca b
thành án n này. c gi li cn các
thc bit là th - ng dn tn tình, tu kin tt
nh có th hoàn thành tt cu
c gi li cng viên khuyn khích trong nhng lúc
t. Mt ln na chúng em xin chân thành c! Chúc tt c mi sc
khe và thành công!
Đồ án Toán 1
5
LU
Trong cun báo cáo này, chúng em xin trình bày hai phn:
Phn 1: i vi mt h , chúng ta luôn có cách gii tìm ra nghim chính xác
ci ta xây dng cách tính nghim chính xác thông qua công thc Cramer. Tuy
nhiên khi gp mt h n ln thì vic áp dng công thc Cramer không
gii quyt v i ta xây dng công thc khác là Gauss và
p Seidel. c s so
vCramer v chính xác theo m t thn cao. Vì vy trong
phn này, chúng em trình bày ni dung cGII G
TUYN TÍNH BP SEIDEL
Phn 2: Trong toán hc, ng gn kho sát và tính giá tr
cc t ng hc
biu thc ca hàm f(x) mà ch nhc giá tr ca f(x
i
) ri rc tm nút x
i
ng. V c các giá tr ca hàm f(x) tm còn li.
gii quyt v ng mt hàm
i
) = y
i
= f(x
i
) v
i mi x
i
.
ta xây di là bài toán nội suyi thiu
lp các công thc thc nghim. Khi tìm mi liên h ging x và y
phi tin hành thí nghim rc. Ri da vào d lic, ta lp mi
liên h hàm s y = f(x) c th gi là lp công thc thc nghim. Nói chung vic tìm ra hàm
f(x) là g c tìm ra hàm s xp x ca hàm s f(x) b
nht s rt phc tp nu ta không bic dng ca hàm s xp x. Trong
phn này chúng em trình bày dung n NI SUY LAGRANGE, NEWTON VÀ
NH
tìm ra nghim xp x c có rt nhiu. Chúng
em ch lit kê mt s ng có ng dng thc t.
Đồ án Toán 1
6
MC LC Trang
PHN 1: TÌM NGHIM CA H N TÍNH
1. Gii thiu chung 7
2. Cramer 7
3. 8
3.1. N 8
3.2. Thut toán 9
3.3. Code 10
4. p Seidel 12
4.1. Ni dung pháp 12
4.2. Thut toán 15
4.3. Code trình 16
PHN 2: NI SUY VÀ LY XP X HÀM S 19
1. Gii thiu chung v 19
2. Ni suy Lagrange 20
2.1. c ni suy Lagrange 20
2.2. Thut toán 22
2.3. Code 23
3. Ni suy Newton 24
3.1. c ni suy Newton 24
3.2. Thut toán 30
3.3. Code 31
4. nht Ly xp x hàm s 32
4.1. N và các dp 32
4.2. Thut toán 41
4.3. Code 43
KT LUN 46
TÀI LIU THAM KHO 47
Đồ án Toán 1
7
PHN 1: TÌM NGHIM CA H
TUYN TÍNH
1. Gii thiu chung.
Cho h tuyn tính:
(1)
H c cho bi ma trn:
(2)
V t ra là tìm nghim = ( x
1
, x
2
, , x
n
)
- Cramer ) m c
pháp này là sau mt s hu hc tính. Ta nhc nghi
nu trong quá trình tính toán không làm tròn s.
- pháp gGauss Siedel, ging ta cho n s
mt giá tr u, t giá tr này tính giá tr nghim g
mt quy tQuá c lp li nhiu ln và vi mt s u
kin nhnh, ta nhc nghim g
2. .
S tn ti và nghim duy nht ca h:
= det(A)s
Nthì ma trn A suy bi (1) suy bin.
suy ra t : Bng cách thay ct th i bng ct v phi.
nh lý Cramer : Nếu ∆ ≠ 0 thì hệ (1) không suy biến và có nghiệm duy nhất được
tính bởi công thức:
(3)
Nhn xét: Công thc thu gn d nhp. ln phi thc hin s
ng ln các phép tính. Vinh thc s gp nhiu khó kh.
N
c
(n) s ng phép tính cn làm khi h
N
c
(n) = (n +1)!n
Vi n = 15 ta có N
c
(15) = 3.10
14
.
Đồ án Toán 1
8
3. .
3.1. N
Ni dung kh dn các n v h ng tam giác trên ri gii t
i lên mà không phnh thc.
Ví d: Xét h :
(4)
Kh các n
(5)
Gic t c các n.
: s dng các phép bii p trên dòng ca ma trn.
Quá trình (5): c.
Khng phép tính
N
c
(n) =
Vi n = 15 ta có N
c
(15) = 2570 nh u so v Cramer.
Ví d: Gii h
Gii: ma trn:
Ta dùng các phép bip trên dòng ca ma trn v dng bc
thang:
Đồ án Toán 1
9
Vy h i h sau:
Vy h có nghim duy nht là: x* = ( 2 ; 1 ; 5 ; -3)
3.2. Thut toán:
Bước 1:
- Nhp s liu.
- Nhp vào s n.
- Nhp các phn t ca ma trn h s m rng.
Bước 2:
- Bii ma trn v dng tam giác trên.
- Kim tra phn t a
ii
+ Nu a
ii
i dòng i.
+ Nu a
ii
c h s kh.
Thc hin vòng lp cho i chy t n n (s dòng).
Thc hin vòng lp cho j chy t n n+1(s ct).
t c =
(h s kh)
Lp cho k chy t n n+1: a
j,k
=c*a
i,k
+a
j,k
Bước 3:
- Tìm nghic.
- s=0.
Đồ án Toán 1
10
- Vòng lp j=i+1n. s=s+ a
ij
*x
j
. (s nghim luôn <= s n)
- In ra nghim x
i
3.3. :
Đồ án Toán 1
11
Đồ án Toán 1
12
4. p Seidel.
4.1. N
- Cho h ng trình: Ax = f (6)
Bii v d (7)
B
suy ra t A và g suy ra t f (8)
- Chn x
(0)
m gu tiên c
và tính các nghim gp theo: x
(1)
, x
(2)
x
(m)
pháp l
x
(m)
= Bx
(m-1)
+ g ; (m>=1) (9)
Vi x
(0)
c. (10)
T:
(Bx)
i
=
(11)
P
(m)
theo (9) gi là phương pháp lặp đơn
B là ma trận lặp.
Đồ án Toán 1
13
S hi t và sai s c
hôi t
Gi s
là nghim ca h c (6) nu
x
i
(m)
; i = 1, 2, , n
p hi t.
nh lý v s hi t c
i vi ma trn B nu chun hàng:
r
0
= max
(12)
hoc chun ct:
r
1
= max
(13)
hoc chuclit:
r
2
=
(14)
hi t bu x
(0)
nào và sai s
; (15)
- r
0
,
- r
1
- r
2
c tính:
1. Cho h .
2. nh sai s .
3. .
4. Kim tra thu kin hi t (12), (13), (14).
5. Chn x
(0)
tùy ý (là vecto không hay là g).
6. Tính x
(m+1)
= Bx
(m)
+ g, vi m = 1, 2, 3,
cho ti khi
(m)
7. Sai s:
Đồ án Toán 1
14
Ví d: Xét h :
Tìm nghim g
-3
b.
Gii: dng x = Bx + g
Ma trc là: B =
và g =
Kiu kin hi t (12), (13), (14).
Chp hi t vi mi x
(0)
c.
Chn x
(0)
=
kt qu c cho trong bng sau:
m
x
1
(m)
1
x
2
(m)
2
x
3
(m)
3
0
1
2
3
4
0
2
1,92
1,9094
1,90923
2
0,08
0,0106
0,00017
0
3
3,19
3,1944
3,19495
3
0,19
0,0044
0,00055
0
5
5,04
5,0446
5,04480
5
0,04
0,0046
0,0002
Ta nhn xét rng vi m = 4 thì
;
Đồ án Toán 1
15
max
th bài ta dng quá trình tính.
Sai s:
=
Vy kt lun:
4.2. Thut toán
Bước 1:
Nhp d liu.
Nhp ma trn h s ca h ma trn A).
Kim tra d liu va nhp.
Nhp ct h s t do (ma trn B).
Kim tra d liu va nhp.
Nhp s ln lp.
Bước 2:
Chn nghiu x=(0, 0, , 0)
x
i
= 0. Dùng vòng lp (for) cho i chy 1n.
Quá trình lp:
S dng vòng lp do {} while ( ) (lp n khi tha không u kin
thì dng).
Các lnh trong vòng lp do {} while ():
Dùng vòng lp for cho i = 1n.
{
t S = 0;
Dùng vòng lp for cho j = 1n
S = S + a
ij
*x
j
t d = x
i
X
i
= (-S + a
ii
*d + b
i
)/a
ii
Denta=|d-x
i
|
}
Vòng lp do { } while ( ) dng khi s ln lp l ln quy
nh và khi Denta 0.
Có hai kh y ra khi vòng lp do { } while ( ) dng là
Đồ án Toán 1
16
Nu Denta < 0 thì nghi chính xác trong s ln lp
c.
Nu Denta = 0 thì nghi chính xác sau s ln lp cho
c.
Bước 3: Xut nghim.
4.3.
Đồ án Toán 1
17
Đồ án Toán 1
18
Đồ án Toán 1
19
PHN 2: NI SUY VÀ LY XP X HÀM S
1. Gii thiu chung v .
1.1. Ni suy
1.1.1. t v:
Cho hàm s y = f(x) mà không bit biu thc ca gii tích hàm, ch bit giá tr
ca hàm ti mt s hu hn [a ; b] (bc hoc thc nghim).
x
x
0
x
x
x
n-1
x
n
y = f(x)
y
0
y
1
y
i
y
n-1
y
n
Tìm giá tr ca hàm s ti mt s m trung gian khác.
1.1.2. Bài toán ni suy:
Xây dng m có biu thn, có giá tr trùng vi giá tr ca
hàm f(x) tm x
0
, x
1
,
n
, còn tn [a ; b] thì hàm
n f(x) (phn t f(x)) suy ra giá tr ga
hàm f(x) tm bt kì tha mãn x
0
< x < x
n
.
c gi là hàm nội suy cn [a ; b]
c: Tc
(x
i
; y
i
); i = 0, n
1.2. c ni suy
ng chc làm hàm ni suy vì:
- c là lon.
- o hàm và nguyên hàm.
Bài toán:
, chn mm chia (m nút) x
i
; i = 0, 1, 2, n vi
a
0
, x
1
, x
2
x
n
.
Cho các giá tr ng ca hàm y = f(x) ti các nút:
x
x
0
x
x
i
x
n-1
x
n
y = f(x)
y
0
y
1
y
i
y
n-1
y
n
Cn xây dng mc bc n:
(1)
Sao cho P
n
(x) trùng vi f(x) ti các nút x
i
Đồ án Toán 1
20
1.3. S duy nht cc ni suy
c ni suy P
n
(x) c trên nu có thì ch có mt mà
c ni suy có th có nhiu cách xây dt nên
các dng cu có th quay v nhau.
2. Ni suy Lagrange.
2.1. c ni suy Lagrange
(2)
l
i
(x) - c b
n
(x) c bc n
(2): c ni suy Lagrange
Ni suy tuyn tính (n = 1)
x
x
0
x
1
y
y
0
y
1
T
(3)
Có dng P
1
(x) = Ax + B bc nhi vi x
Ni suy bc 2 (n = 2)
x
x
0
x
1
x
2
y
y
0
y
1
y
2
(4)
Đồ án Toán 1
21
P
2
(x) có dng: P
2
(x) = Ax
2
+ Bx + C bi vi x.
Sai s ni suy.
nh lý: Nếu hàm f(x) liên tục trên [a ; b] và có trong [a ; b] đạo hàm liên tục đến
cấp n+1 thì sai số nội suy r
n
(x) = f(x) – P
n
(x) có biểu thức sau:
(5)
([a ; b] khong cha các nút x
i
)
Gọi
Thì
o m cc ni suy Lagrangen.
o m: Thêm mt nút thì phi tính li toàn b.
Ví d: sau:
x
1
2
3
4
y
5
7
8
9
Vit ra biu thc n, tính giá tr ca bng ti x = 3,5.
c ni suy bng:
Đồ án Toán 1
22
P
3
(x) = 5l
0
(x) + 7l
1
(x) + 8l
2
(x) + 9l
3
(x) => P
3
(3,5) = 8,4375
Ghi chú: Viết biểu thức l
i
(x) ( không tính ! ) Thay x → Giá trị.
2.2. Thut toán (Ni suy Lagrange)
c 1:
Nhp d liu.
Nhps ng mc ni suy.
Nhp giá tr x
i
và f(x
i
).
Nhp giá tr x cn tính.
c 2:
Da vào công thc:
Hàm tính L
n
(x):
+ Vòng lp for cho in
+ Vòng lp for cho jn
+ N
- t u = u*(x - x[j]).
- t v = v*(x[i] - x[j]).
- t L
n
(x) = w = w + ((u/v)*y[i]).
c 3:
Xut ra tr giá ca hàm f(x
i
) cn tìm.
Đồ án Toán 1
23
2.3. (Ni suy Lagrange)
Đồ án Toán 1
24
3. Ni suy Newton.
3.1. c ni suy Newton.
3.1.1. Ni suy Newton vi mu.
Tỉ sai phân (tỉ hiệu) hữu hạn :
Cho y = f(x) có giá tr y
i
= f(x
i
) ti các nút x
i
u nhau.
T sai phân cp 1 (hng 1):
T sai phân cp 2:
Đồ án Toán 1
25
T sai phân cp n:
3.1.2. c ni suy Newton vi mu.
Dạng tiến:
Dạng lùi:
Ví d: Cho bng ni suy sau:
x
-1
2
3
5
6
y
0
1
-2
1
3
a) Hy lp bng tính các t hiu.
b) Vic ni suy y = P(x) và tính y(4).
Giải: Ta lp bng sau:
Ghi chú: u TH
i
là t hiu tin cp i vàTH
i
*
là t hiu lùi cp i.