際際滷

際際滷Share a Scribd company logo
204
Ch測ng 12 : Tnh gn 速坦ng 速孫o h袖m v袖 tch ph息n x存c 速nh
則1. 則孫o h袖m Romberg
則孫o h袖m theo ph測ng ph存p Romberg l袖 m辿t ph測ng ph存p ngo孫i suy 速 x存c 速nh 速孫o
h袖m v鱈i m辿t 速辿 chnh x存c cao . Ta xt khai trin Taylor c単a h袖m f(x) t孫i (x+h) v袖 (x-h) :
++霞霞+霞++=+ )x(f
!4
h
)x(f
!3
h
)x(f
2
h
)x(fh)x(f)hx(f )4(
432
(1)
+霞霞霞霞+霞= )x(f
!4
h
)x(f
!3
h
)x(f
2
h
)x(fh)x(f)hx(f )4(
432
(2)
Tr探 (1) cho (2) ta c達 :
++霞霞+=+ )x(f
!5
h2
)x(f
!3
h2
)x(fh2)hx(f)hx(f )5(
53
(3)
Nh vy r坦t ra :
霞霞霞
+
= )x(f
!5
h
)x(f
!3
h
h2
)hx(f)hx(f
)x(f )5(
42
(4)
hay ta c達 th vit l孫i :
[ ] +++++= 6
6
4
4
2
2 hahaha)hx(f)hx(f
h2
1
)x(f (5)
trong 速達 c存c h s竪 ai ph担 thu辿c f v袖 x .
Ta 速t :
)]hx(f)hx(f[
h2
1
)h( + =
(6)
Nh vy t探 (5) v袖 (6) ta c達 :
== 6
6
4
4
2
2 hahaha)x(f)h()1,1(D (7)
=





=
64
h
a
16
h
a
4
h
a)x(f
2
h
)1,2(D
6
6
4
4
2
2 (8)
v袖 t脱ng qu存t v鱈i hi = h/2i-1
ta c達 :
== 6
i6
4
i4
2
i2i hahaha)x(f)h()1,i(D (9)
Ta t孫o ra sai ph息n D(1,1) - 4D(2,1) v袖 c達 :
霞=





 6
6
4
4 ha
16
15
ha
4
3
)x(f3
2
h
4)h( (10)
Chia hai v c単a (10) cho -3 ta nhn 速樽c :
+++=

= 6
6
4
4 ha
16
5
ha
4
1
)x(f
4
)1,1(D)1,2(D4
)2,2(D (11)
Trong khi D(1,1) v袖 D(2,1) sai kh存c f(x) ph担 thu辿c v袖o h2
th D(2,2) sai kh存c f(x) ph担
thu辿c v袖o h4
. B息y gi棚 ta l孫i chia 速束i b鱈c h v袖 nhn 速樽c :
D f x a h a h(2, ) ( ) ( / ) ( / ) ...2
1
4
2
5
16
24
4
6
6
= + + +
(12)
v袖 kh旦 s竪 h孫ng c達 h4
b損ng c存ch t孫o ra :
D D f x a h(2, ) ( , ) ( ) ( ) ...2 16 32 15
15
64 6
6
  = + + +
(13)
Chia hai v c単a (13) cho -15 ta c達 :
D
D D
f x a h(3, )
(3, ) (2, )
( ) . ...3
16 2 2
15
1
64 6
6
= =  


(14)
205
V鱈i ln tnh n袖y sai s竪 c単a 速孫o h袖m ch cn ph担 thu辿c v袖o h6
. L孫i tip t担c chia 速束i b鱈c h
v袖 tnh D(4,4) th sai s竪 ph担 thu辿c h8
. S測 速奪 tnh 速孫o h袖m theo ph測ng ph存p Romberg l袖 :
D(1,1)
D(2,1) D(2,2)
D(3,1) D(3,2) D(3,3)
D(4,1) D(4,2) D(4,3) D(4,4)
. . . . . . . . . . . .
trong 速達 m巽i gi存 tr sau l袖 gi存 tr ngo孫i suy c単a gi存 tr tr鱈c 速達 谷 h袖ng tr捉n .
V鱈i 2  j  i  n ta c達 :
D j
D j D jj
j(i, )
(i, ) (i , )
=


   

1
1
4 1 1 1
4 1
v袖 gi存 tr kh谷i 速u l袖 :
D h
h
f x h f x hi
i
i i
(i, ) ( ) [ ( ) ( )]1
1
2
= = +  
v鱈i hi = h/2i-1
.
Ch坦ng ta ng探ng l孫i khi hiu gi歎a hai ln ngo孫i suy 速孫t 速辿 chnh x存c y捉u cu.
V d担 : Tm 速孫o h袖m c単a h袖m f(x) = x2
+ arctan(x) t孫i x = 2 v鱈i b鱈c tnh h = 0.5 . Tr chnh
x存c c単a 速孫o h袖m l袖 4.2
201843569.4)]75.1(f)25.2(f[
25.02
1
)1,2(D
207496266.4)]5.1(f)5.2(f[
5.02
1
)1,1(D
=

=
=

=
200458976.4)]875.1(f)125.2(f[
125.02
1
)1,3(D =

=
200492284.4
14
)2,2(D)2,3(D4
)3,3(D
200458976.4
14
)1,2(D)1,3(D4
)2,3(D
19995935.4
14
)1,1(D)1,2(D4
)2,2(D
21
2
1
1
1
1
==
==
==






Ch測ng trnh tnh 速孫o h袖m nh d鱈i 速息y . D誰ng ch測ng trnh tnh 速孫o h袖m c単a h袖m
cho trong function v鱈i b鱈c h = 0.25 t孫i xo = 0 ta nhn 速樽c gi存 tr 速孫o h袖m l袖 1.000000001.
Ch測ng trnh12-.1
//Daoham_Romberg;
#include <conio.h>
#include <stdio.h>
#include <math.h>
#define max 11
float h;
void main()
{
float d[max];
int j,k,n;
float x,p;
float y(float),dy(float);
206
clrscr();
printf("Cho diem can tim dao ham x = ");
scanf("%f",&x);
printf("Tinh dao ham theo phuong phap Rombergn");
printf("cua ham f(x) = th(x) tai x = %4.2fn",x);
n=10;
h=0.2;
d[0]=dy(x);
for (k=2;k<=n;k++)
{
h=h/2;
d[k]=dy(x);
p=1.0;
for (j=k-1;j>=1;j--)
{
p=4*p;
d[j]=(p*d[j+1]-d[j])/(p-1);
}
}
printf("y'= %10.5fn",d[1]);
getch();
}
float y(float x)
{
float a=(exp(x)-exp(-x))/(exp(x)+exp(-x));
return(a);
}
float dy(float x)
{
float b=(y(x+h)-y(x-h))/(2*h);
return(b);
}
則2. Kh存i nim v tch ph息n s竪
M担c 速ch c単a tnh tch ph息n x存c 速nh l袖 速存nh gi存 速nh l樽ng biu th淡c :
J f x
a
b
=  ( )dx
trong 速達 f(x) l袖 h袖m li捉n t担c trong kho其ng [a,b] v袖 c達
th biu din b谷i 速棚ng cong y= f(x). Nh vy tch
ph息n x存c 速nh J l袖 din tch SABba , gi鱈i h孫n b谷i 速棚ng
cong f(x) , tr担c ho袖nh , c存c 速棚ng th村ng x = a v袖 x = b
. Nu ta chia 速o孫n [a,b] th袖nh n phn b谷i c存c 速im xi
th J l袖 g鱈i h孫n c単a t脱ng din tch c存c hnh ch歎 nht
f(xi).(xi+1 - xi) khi s竪 速im chia tin t鱈i , ngha l袖 :
a a
b
A
B
y
x
207
J f x x x
n
i
i
n
i i
= 
 =
+lim ( )( )
0
1
Nu c存c 速im chia xi c存ch 速u , th ( xi+1- xi ) =
h . Khi 速t f(xo) = fo , f(x1) = f1 ,... ta c達 t脱ng :
n i
i
n
S h f=
=

0
Khi n rt l鱈n , Sn tin t鱈i J . Tuy nhi捉n sai s竪 l袖m trn l孫i 速樽c tch lu端 . Do vy cn
ph其i tm ph測ng ph存p tnh chnh x存c h測n . Do 速達 ng棚i ta t khi d誰ng ph測ng ph存p hnh
ch歎 nht nh v探a n捉u .
則3. Ph測ng ph存p hnh thang
Trong ph測ng ph存p hnh thang , thay v chia din tch SABba th袖nh c存c hnh ch歎 nht ,
ta l孫i d誰ng hnh thang . V d担 nu chia th袖nh 3 速o孫n nh hnh v th :
S3 = t1 + t2 + t3
trong 速達 ti l袖 c存c din tch nguy捉n t竪 . M巽i din tch n袖y l袖 m辿t hnh thang :
ti = [f(xi) + f(xi-1)]/ (2h)
= h(fi - fi-1) / 2
Nh vy :
S3 = h[(fo+f1)+(f1+f2)+(f2+f3)] / 2
= h[fo+2f1+2f2+f3] / 2
M辿t c存ch t脱ng qu存t ch坦ng ta c達 :
)f2f2f2f(
n
ab
S n1n1on
++++= 

hay :
}f2ff{
n
ab
S
n
1i
ion n ++

=
=
M辿t c存ch kh存c ta c達 th vit :
f x dx f x hf a kh f a k h
a
b
a kh
a k h
k
n
k
n
( ) ( )dx { ( ) / [ ( ) ] / }
( )
  =  + + + +
+
+ +
=

=
1
1
1
0
1
2 1 2
hay :
f x h f a f a h f a n h f b
a
b
( )dx { ( ) / ( ) [ ( ) ] ( ) / }= + + +  + +  + 2 1 2
Ch測ng trnh tnh tch ph息n theo ph測ng ph存p hnh thang nh sau :
Ch測ng trnh 12-2
//tinh tich phan bang phuong phap hinh_thang;
#include <conio.h>
#include <stdio.h>
#include <math.h>
float f(float x)
{
float a=exp(-x)*sin(x);
return(a);
};
208
void main()
{
int i,n;
float a,b,x,y,h,s,tp;
clrscr();
printf("Tinh tich phan theo phuong phap hinh thangn");
printf("Cho can duoi a = ");
scanf("%f",&a);
printf("Cho can tren b = ");
scanf("%f",&b);
printf("Cho so buoc n = ");
scanf("%d",&n);
h=(b-a)/n;
x=a;
s=(f(a)+f(b))/2;
for (i=1;i<=n;i++)
{
x=x+h;
s=s+f(x);
}
tp=s*h;
printf("Gia tri cua tich phan la : %10.6fn",tp);
getch();
}
D誰ng ch測ng trnh n袖y tnh tch ph息n c単a h袖m cho trong function trong kho其ng [0 ,
1] v鱈i 20 速im chia ta c達 J = 0.261084.
則4. C束ng th淡c Simpson
Kh存c v鱈i ph測ng ph存p hnh thang , ta chia 速o孫n [a,b] th袖nh 2n phn 速u nhau b谷i
c存c 速im chia xi :
a = xo < x1 < x2 < ....< x2n = b
xi = a+ih ; h = (b - a)/ 2n v鱈i i =0 , . . , 2n
Do yi = f(xi) n捉n ta c達 :
 

+++=
x
x
fdx...
x
x
fdx
b
a
x
x
fdxdx)x(f
n2
2n2
4
2
2
0
則 tnh tch ph息n n袖y ta thay h袖m f(x) 谷 v ph其i b損ng 速a th淡c n辿i suy Newton tin
bc 2 :
y
t2
)1t(t
yty)x(P 0
2
002 

 ++=
v袖 v鱈i tch ph息n th淡 nht ta c達 :
dx)x(Pdx)x(f
x
x
x
x
2
0
2
0
2 =
則脱i bin x = x0+th th dx = hdt , v鱈i x0 th t =0 v袖 v鱈i x2 th t = 2 n捉n :
209
|]y)
2
t
3
t(
2
1
y
2
tty[h
dt)y
2
)1t(1
yty(hdx)x(P
2t
0t0
2
23
0
2
0
0
2
0
2
0
02
x
x
2
0
=
=



++=
++=
]yy4y[
3
h
]y)
2
4
3
8(
2
1
y2y2[h
210
0
2
00
++=
++= 
則竪i v鱈i c存c tch ph息n sau ta c嘆ng c達 kt qu其 t測ng t湛 :
]yy4y[
3
h
dx)x(f 2i21i2i2
x
x
2i2
i2
++
++=
+
C辿ng c存c tch ph息n tr捉n ta c達 :
]y)yyy(2)yyy(4y[
3
h
dx)x(f n22n2421n231o
b
a
+++++++++=

Ch測ng trnh d誰ng thut to存n Simpson nh sau :
Ch測ng trnh 12-3
//Phuong phap Simpson;
#include <conio.h>
#include <stdio.h>
#include <math.h>
float y(float x)
{
float a=4/(1+x*x);
return(a);
}
void main()
{
int i,n;
float a,b,e,x,h,x2,y2,x4,y4,tp;
clrscr();
printf("Tinh tich phan theo phuong phap Simpsonn");
printf("Cho can duoi a = ");
scanf("%f",&a);
printf("Cho can tren b = ");
scanf("%f",&b);
printf("Cho so diem tinh n = ");
scanf("%d",&n);
h=(b-a)/n;
x2=a+h;
x4=a+h/2;
y4=y(x4);
y2=y(x2);
for (i=1;i<=n-2;i++)
{
210
x2+=h;
x4+=h;
y4+=y(x4);
y2+=y(x2);
}
y2=2*y2;
y4=4*(y4+y(x4+h));
tp=h*(y4+y2+y(a)+y(b))/6;
printf("Gia tri cua tich phan la : %10.8fn",tp);
getch();
}
D誰ng ch測ng trnh n袖y tnh tch ph息n c単a h袖m trong function trong 速o孫n [0,1] v鱈i 20
kho其ng chia cho ta kt qu其 J = 3.14159265.
Ad

Recommended

Toan pt.de058.2010
Toan pt.de058.2010
B畉O H鱈
Luong giac
Luong giac
Huynh ICT
373
373
Mourad Karoudi
惘悋悴惺悸 悸 悋悋惠忰悋 惘悋惷悸 惶 悋悖 悋惓悋
惘悋悴惺悸 悸 悋悋惠忰悋 惘悋惷悸 惶 悋悖 悋惓悋
慍惠
Toan pt.de080.2010
Toan pt.de080.2010
B畉O H鱈
12 悋忰愕悋惡 悋惓惓 悋悴慍悄 悋惓悋
12 悋忰愕悋惡 悋惓惓 悋悴慍悄 悋惓悋
AHMED ENNAJI
Kts c2-dai so boole
Kts c2-dai so boole
Wang Ruan
[Cdxd3.com] cong thuc xstk
[Cdxd3.com] cong thuc xstk
Trinh Yen
Integral definida clase2
Integral definida clase2
Silver Mendoza A.
Chuyen de phuong trinh bac hai doi voi sin va cos
Chuyen de phuong trinh bac hai doi voi sin va cos
Huynh ICT
Phuong trinh nghiem nguyen
Phuong trinh nghiem nguyen
lovemathforever
Chuy棚n 畛 6 g坦c l動畛ng gi叩c v c担ng th畛c l動畛ng gi叩c
Chuy棚n 畛 6 g坦c l動畛ng gi叩c v c担ng th畛c l動畛ng gi叩c
phamchidac
Luonggiac chuong4
Luonggiac chuong4
Huynh ICT
惺 慍惠 - 惘悋悴惺悸 悸 悋悋惠忰悋 惆愕悸 惶 悋悖 悋惓悋
惺 慍惠 - 惘悋悴惺悸 悸 悋悋惠忰悋 惆愕悸 惶 悋悖 悋惓悋
慍惠
Luonggiac chuong3
Luonggiac chuong3
Huynh ICT
Luonggiac chuong2
Luonggiac chuong2
Huynh ICT
Luong giac chuong 8
Luong giac chuong 8
Huynh ICT
Bai 3 thietke_csdlpt
Bai 3 thietke_csdlpt
H畛 L畛i
Bai6 stacks
Bai6 stacks
H畛 L畛i
Bai9 caycanbang
Bai9 caycanbang
H畛 L畛i
Bo sung
Bo sung
H畛 L畛i
Bai3 timkiem sapxep
Bai3 timkiem sapxep
H畛 L畛i
Bai4 binsort
Bai4 binsort
H畛 L畛i
Bi t畉p CTDL v GT 2
Bi t畉p CTDL v GT 2
H畛 L畛i
Presentation project healthdata.be for hospitals in Limburg (dd. 2015.11.30.)...
Presentation project healthdata.be for hospitals in Limburg (dd. 2015.11.30.)...
healthdata be
Jose raul
Jose raul
Raul Lopez
El agua en el mundo
Jnc Locuci坦n y Comunicaci坦n
oracion
Pquia.Ntra.Sra.De Fatima
The RIGHT Way to Approach Long-Term Care Insurance
The RIGHT Way to Approach Long-Term Care Insurance
DavidK051

More Related Content

What's hot (10)

Integral definida clase2
Integral definida clase2
Silver Mendoza A.
Chuyen de phuong trinh bac hai doi voi sin va cos
Chuyen de phuong trinh bac hai doi voi sin va cos
Huynh ICT
Phuong trinh nghiem nguyen
Phuong trinh nghiem nguyen
lovemathforever
Chuy棚n 畛 6 g坦c l動畛ng gi叩c v c担ng th畛c l動畛ng gi叩c
Chuy棚n 畛 6 g坦c l動畛ng gi叩c v c担ng th畛c l動畛ng gi叩c
phamchidac
Luonggiac chuong4
Luonggiac chuong4
Huynh ICT
惺 慍惠 - 惘悋悴惺悸 悸 悋悋惠忰悋 惆愕悸 惶 悋悖 悋惓悋
惺 慍惠 - 惘悋悴惺悸 悸 悋悋惠忰悋 惆愕悸 惶 悋悖 悋惓悋
慍惠
Luonggiac chuong3
Luonggiac chuong3
Huynh ICT
Luonggiac chuong2
Luonggiac chuong2
Huynh ICT
Luong giac chuong 8
Luong giac chuong 8
Huynh ICT
Chuyen de phuong trinh bac hai doi voi sin va cos
Chuyen de phuong trinh bac hai doi voi sin va cos
Huynh ICT
Phuong trinh nghiem nguyen
Phuong trinh nghiem nguyen
lovemathforever
Chuy棚n 畛 6 g坦c l動畛ng gi叩c v c担ng th畛c l動畛ng gi叩c
Chuy棚n 畛 6 g坦c l動畛ng gi叩c v c担ng th畛c l動畛ng gi叩c
phamchidac
Luonggiac chuong4
Luonggiac chuong4
Huynh ICT
惺 慍惠 - 惘悋悴惺悸 悸 悋悋惠忰悋 惆愕悸 惶 悋悖 悋惓悋
惺 慍惠 - 惘悋悴惺悸 悸 悋悋惠忰悋 惆愕悸 惶 悋悖 悋惓悋
慍惠
Luonggiac chuong3
Luonggiac chuong3
Huynh ICT
Luonggiac chuong2
Luonggiac chuong2
Huynh ICT
Luong giac chuong 8
Luong giac chuong 8
Huynh ICT

Viewers also liked (20)

Bai 3 thietke_csdlpt
Bai 3 thietke_csdlpt
H畛 L畛i
Bai6 stacks
Bai6 stacks
H畛 L畛i
Bai9 caycanbang
Bai9 caycanbang
H畛 L畛i
Bo sung
Bo sung
H畛 L畛i
Bai3 timkiem sapxep
Bai3 timkiem sapxep
H畛 L畛i
Bai4 binsort
Bai4 binsort
H畛 L畛i
Bi t畉p CTDL v GT 2
Bi t畉p CTDL v GT 2
H畛 L畛i
Presentation project healthdata.be for hospitals in Limburg (dd. 2015.11.30.)...
Presentation project healthdata.be for hospitals in Limburg (dd. 2015.11.30.)...
healthdata be
Jose raul
Jose raul
Raul Lopez
El agua en el mundo
Jnc Locuci坦n y Comunicaci坦n
oracion
Pquia.Ntra.Sra.De Fatima
The RIGHT Way to Approach Long-Term Care Insurance
The RIGHT Way to Approach Long-Term Care Insurance
DavidK051
Opini坦n sobre las TIC
Gloria Liliana Mendez
Desarrollo muscular de forma correcta
Marcos Salas
Cpl test1%20key
Cpl test1%20key
H畛 L畛i
Resumen: Cient鱈ficos y cient鱈ficas colombianas
kimberlysierra94
C9 templates
C9 templates
H畛 L畛i
Aaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Aaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Abhishek Singha
Cuenta nica del Tesoro en Panam叩
Gobierno Abierto Ministerio de Economia y Finanzas de Panama
Bai 3 thietke_csdlpt
Bai 3 thietke_csdlpt
H畛 L畛i
Bai6 stacks
Bai6 stacks
H畛 L畛i
Bai9 caycanbang
Bai9 caycanbang
H畛 L畛i
Bai3 timkiem sapxep
Bai3 timkiem sapxep
H畛 L畛i
Bai4 binsort
Bai4 binsort
H畛 L畛i
Bi t畉p CTDL v GT 2
Bi t畉p CTDL v GT 2
H畛 L畛i
Presentation project healthdata.be for hospitals in Limburg (dd. 2015.11.30.)...
Presentation project healthdata.be for hospitals in Limburg (dd. 2015.11.30.)...
healthdata be
El agua en el mundo
Jnc Locuci坦n y Comunicaci坦n
The RIGHT Way to Approach Long-Term Care Insurance
The RIGHT Way to Approach Long-Term Care Insurance
DavidK051
Opini坦n sobre las TIC
Gloria Liliana Mendez
Desarrollo muscular de forma correcta
Marcos Salas
Cpl test1%20key
Cpl test1%20key
H畛 L畛i
Resumen: Cient鱈ficos y cient鱈ficas colombianas
kimberlysierra94
C9 templates
C9 templates
H畛 L畛i
Aaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Aaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Abhishek Singha
Ad

More from H畛 L畛i (20)

Xu ly chuoi
Xu ly chuoi
H畛 L畛i
T坦m t畉t c叩c hm chu畉n c畛a c
T坦m t畉t c叩c hm chu畉n c畛a c
H畛 L畛i
T4
T4
H畛 L畛i
Nguyen lyoop
Nguyen lyoop
H畛 L畛i
Lect04 functions
Lect04 functions
H畛 L畛i
Ky thuatkhudequy
Ky thuatkhudequy
H畛 L畛i
Itt epc assignment
Itt epc assignment
H畛 L畛i
Huong danontapc
Huong danontapc
H畛 L畛i
H hai epc_baitap
H hai epc_baitap
H畛 L畛i
Gtrinh oop
Gtrinh oop
H畛 L畛i
Giaotrinhbaitapkythuatlaptrinh
Giaotrinhbaitapkythuatlaptrinh
H畛 L畛i
Giao trinh ky thuat lap trinh 2
Giao trinh ky thuat lap trinh 2
H畛 L畛i
Giao trinh c c++
Giao trinh c c++
H畛 L畛i
File trong c_
File trong c_
H畛 L畛i
Epc assignment
Epc assignment
H畛 L畛i
Epc test practical
Epc test practical
H畛 L畛i
De thic++ --th
De thic++ --th
H畛 L畛i
Dethi c++ -lt
Dethi c++ -lt
H畛 L畛i
Debug trong c
Debug trong c
H畛 L畛i
D05 stl
D05 stl
H畛 L畛i
Xu ly chuoi
Xu ly chuoi
H畛 L畛i
T坦m t畉t c叩c hm chu畉n c畛a c
T坦m t畉t c叩c hm chu畉n c畛a c
H畛 L畛i
Nguyen lyoop
Nguyen lyoop
H畛 L畛i
Lect04 functions
Lect04 functions
H畛 L畛i
Ky thuatkhudequy
Ky thuatkhudequy
H畛 L畛i
Itt epc assignment
Itt epc assignment
H畛 L畛i
Huong danontapc
Huong danontapc
H畛 L畛i
H hai epc_baitap
H hai epc_baitap
H畛 L畛i
Giaotrinhbaitapkythuatlaptrinh
Giaotrinhbaitapkythuatlaptrinh
H畛 L畛i
Giao trinh ky thuat lap trinh 2
Giao trinh ky thuat lap trinh 2
H畛 L畛i
Giao trinh c c++
Giao trinh c c++
H畛 L畛i
File trong c_
File trong c_
H畛 L畛i
Epc assignment
Epc assignment
H畛 L畛i
Epc test practical
Epc test practical
H畛 L畛i
De thic++ --th
De thic++ --th
H畛 L畛i
Dethi c++ -lt
Dethi c++ -lt
H畛 L畛i
Debug trong c
Debug trong c
H畛 L畛i
Ad

Chuong12

  • 1. 204 Ch測ng 12 : Tnh gn 速坦ng 速孫o h袖m v袖 tch ph息n x存c 速nh 則1. 則孫o h袖m Romberg 則孫o h袖m theo ph測ng ph存p Romberg l袖 m辿t ph測ng ph存p ngo孫i suy 速 x存c 速nh 速孫o h袖m v鱈i m辿t 速辿 chnh x存c cao . Ta xt khai trin Taylor c単a h袖m f(x) t孫i (x+h) v袖 (x-h) : ++霞霞+霞++=+ )x(f !4 h )x(f !3 h )x(f 2 h )x(fh)x(f)hx(f )4( 432 (1) +霞霞霞霞+霞= )x(f !4 h )x(f !3 h )x(f 2 h )x(fh)x(f)hx(f )4( 432 (2) Tr探 (1) cho (2) ta c達 : ++霞霞+=+ )x(f !5 h2 )x(f !3 h2 )x(fh2)hx(f)hx(f )5( 53 (3) Nh vy r坦t ra : 霞霞霞 + = )x(f !5 h )x(f !3 h h2 )hx(f)hx(f )x(f )5( 42 (4) hay ta c達 th vit l孫i : [ ] +++++= 6 6 4 4 2 2 hahaha)hx(f)hx(f h2 1 )x(f (5) trong 速達 c存c h s竪 ai ph担 thu辿c f v袖 x . Ta 速t : )]hx(f)hx(f[ h2 1 )h( + = (6) Nh vy t探 (5) v袖 (6) ta c達 : == 6 6 4 4 2 2 hahaha)x(f)h()1,1(D (7) = = 64 h a 16 h a 4 h a)x(f 2 h )1,2(D 6 6 4 4 2 2 (8) v袖 t脱ng qu存t v鱈i hi = h/2i-1 ta c達 : == 6 i6 4 i4 2 i2i hahaha)x(f)h()1,i(D (9) Ta t孫o ra sai ph息n D(1,1) - 4D(2,1) v袖 c達 : 霞= 6 6 4 4 ha 16 15 ha 4 3 )x(f3 2 h 4)h( (10) Chia hai v c単a (10) cho -3 ta nhn 速樽c : +++= = 6 6 4 4 ha 16 5 ha 4 1 )x(f 4 )1,1(D)1,2(D4 )2,2(D (11) Trong khi D(1,1) v袖 D(2,1) sai kh存c f(x) ph担 thu辿c v袖o h2 th D(2,2) sai kh存c f(x) ph担 thu辿c v袖o h4 . B息y gi棚 ta l孫i chia 速束i b鱈c h v袖 nhn 速樽c : D f x a h a h(2, ) ( ) ( / ) ( / ) ...2 1 4 2 5 16 24 4 6 6 = + + + (12) v袖 kh旦 s竪 h孫ng c達 h4 b損ng c存ch t孫o ra : D D f x a h(2, ) ( , ) ( ) ( ) ...2 16 32 15 15 64 6 6 = + + + (13) Chia hai v c単a (13) cho -15 ta c達 : D D D f x a h(3, ) (3, ) (2, ) ( ) . ...3 16 2 2 15 1 64 6 6 = = (14)
  • 2. 205 V鱈i ln tnh n袖y sai s竪 c単a 速孫o h袖m ch cn ph担 thu辿c v袖o h6 . L孫i tip t担c chia 速束i b鱈c h v袖 tnh D(4,4) th sai s竪 ph担 thu辿c h8 . S測 速奪 tnh 速孫o h袖m theo ph測ng ph存p Romberg l袖 : D(1,1) D(2,1) D(2,2) D(3,1) D(3,2) D(3,3) D(4,1) D(4,2) D(4,3) D(4,4) . . . . . . . . . . . . trong 速達 m巽i gi存 tr sau l袖 gi存 tr ngo孫i suy c単a gi存 tr tr鱈c 速達 谷 h袖ng tr捉n . V鱈i 2 j i n ta c達 : D j D j D jj j(i, ) (i, ) (i , ) = 1 1 4 1 1 1 4 1 v袖 gi存 tr kh谷i 速u l袖 : D h h f x h f x hi i i i (i, ) ( ) [ ( ) ( )]1 1 2 = = + v鱈i hi = h/2i-1 . Ch坦ng ta ng探ng l孫i khi hiu gi歎a hai ln ngo孫i suy 速孫t 速辿 chnh x存c y捉u cu. V d担 : Tm 速孫o h袖m c単a h袖m f(x) = x2 + arctan(x) t孫i x = 2 v鱈i b鱈c tnh h = 0.5 . Tr chnh x存c c単a 速孫o h袖m l袖 4.2 201843569.4)]75.1(f)25.2(f[ 25.02 1 )1,2(D 207496266.4)]5.1(f)5.2(f[ 5.02 1 )1,1(D = = = = 200458976.4)]875.1(f)125.2(f[ 125.02 1 )1,3(D = = 200492284.4 14 )2,2(D)2,3(D4 )3,3(D 200458976.4 14 )1,2(D)1,3(D4 )2,3(D 19995935.4 14 )1,1(D)1,2(D4 )2,2(D 21 2 1 1 1 1 == == == Ch測ng trnh tnh 速孫o h袖m nh d鱈i 速息y . D誰ng ch測ng trnh tnh 速孫o h袖m c単a h袖m cho trong function v鱈i b鱈c h = 0.25 t孫i xo = 0 ta nhn 速樽c gi存 tr 速孫o h袖m l袖 1.000000001. Ch測ng trnh12-.1 //Daoham_Romberg; #include <conio.h> #include <stdio.h> #include <math.h> #define max 11 float h; void main() { float d[max]; int j,k,n; float x,p; float y(float),dy(float);
  • 3. 206 clrscr(); printf("Cho diem can tim dao ham x = "); scanf("%f",&x); printf("Tinh dao ham theo phuong phap Rombergn"); printf("cua ham f(x) = th(x) tai x = %4.2fn",x); n=10; h=0.2; d[0]=dy(x); for (k=2;k<=n;k++) { h=h/2; d[k]=dy(x); p=1.0; for (j=k-1;j>=1;j--) { p=4*p; d[j]=(p*d[j+1]-d[j])/(p-1); } } printf("y'= %10.5fn",d[1]); getch(); } float y(float x) { float a=(exp(x)-exp(-x))/(exp(x)+exp(-x)); return(a); } float dy(float x) { float b=(y(x+h)-y(x-h))/(2*h); return(b); } 則2. Kh存i nim v tch ph息n s竪 M担c 速ch c単a tnh tch ph息n x存c 速nh l袖 速存nh gi存 速nh l樽ng biu th淡c : J f x a b = ( )dx trong 速達 f(x) l袖 h袖m li捉n t担c trong kho其ng [a,b] v袖 c達 th biu din b谷i 速棚ng cong y= f(x). Nh vy tch ph息n x存c 速nh J l袖 din tch SABba , gi鱈i h孫n b谷i 速棚ng cong f(x) , tr担c ho袖nh , c存c 速棚ng th村ng x = a v袖 x = b . Nu ta chia 速o孫n [a,b] th袖nh n phn b谷i c存c 速im xi th J l袖 g鱈i h孫n c単a t脱ng din tch c存c hnh ch歎 nht f(xi).(xi+1 - xi) khi s竪 速im chia tin t鱈i , ngha l袖 : a a b A B y x
  • 4. 207 J f x x x n i i n i i = = +lim ( )( ) 0 1 Nu c存c 速im chia xi c存ch 速u , th ( xi+1- xi ) = h . Khi 速t f(xo) = fo , f(x1) = f1 ,... ta c達 t脱ng : n i i n S h f= = 0 Khi n rt l鱈n , Sn tin t鱈i J . Tuy nhi捉n sai s竪 l袖m trn l孫i 速樽c tch lu端 . Do vy cn ph其i tm ph測ng ph存p tnh chnh x存c h測n . Do 速達 ng棚i ta t khi d誰ng ph測ng ph存p hnh ch歎 nht nh v探a n捉u . 則3. Ph測ng ph存p hnh thang Trong ph測ng ph存p hnh thang , thay v chia din tch SABba th袖nh c存c hnh ch歎 nht , ta l孫i d誰ng hnh thang . V d担 nu chia th袖nh 3 速o孫n nh hnh v th : S3 = t1 + t2 + t3 trong 速達 ti l袖 c存c din tch nguy捉n t竪 . M巽i din tch n袖y l袖 m辿t hnh thang : ti = [f(xi) + f(xi-1)]/ (2h) = h(fi - fi-1) / 2 Nh vy : S3 = h[(fo+f1)+(f1+f2)+(f2+f3)] / 2 = h[fo+2f1+2f2+f3] / 2 M辿t c存ch t脱ng qu存t ch坦ng ta c達 : )f2f2f2f( n ab S n1n1on ++++= hay : }f2ff{ n ab S n 1i ion n ++ = = M辿t c存ch kh存c ta c達 th vit : f x dx f x hf a kh f a k h a b a kh a k h k n k n ( ) ( )dx { ( ) / [ ( ) ] / } ( ) = + + + + + + + = = 1 1 1 0 1 2 1 2 hay : f x h f a f a h f a n h f b a b ( )dx { ( ) / ( ) [ ( ) ] ( ) / }= + + + + + + 2 1 2 Ch測ng trnh tnh tch ph息n theo ph測ng ph存p hnh thang nh sau : Ch測ng trnh 12-2 //tinh tich phan bang phuong phap hinh_thang; #include <conio.h> #include <stdio.h> #include <math.h> float f(float x) { float a=exp(-x)*sin(x); return(a); };
  • 5. 208 void main() { int i,n; float a,b,x,y,h,s,tp; clrscr(); printf("Tinh tich phan theo phuong phap hinh thangn"); printf("Cho can duoi a = "); scanf("%f",&a); printf("Cho can tren b = "); scanf("%f",&b); printf("Cho so buoc n = "); scanf("%d",&n); h=(b-a)/n; x=a; s=(f(a)+f(b))/2; for (i=1;i<=n;i++) { x=x+h; s=s+f(x); } tp=s*h; printf("Gia tri cua tich phan la : %10.6fn",tp); getch(); } D誰ng ch測ng trnh n袖y tnh tch ph息n c単a h袖m cho trong function trong kho其ng [0 , 1] v鱈i 20 速im chia ta c達 J = 0.261084. 則4. C束ng th淡c Simpson Kh存c v鱈i ph測ng ph存p hnh thang , ta chia 速o孫n [a,b] th袖nh 2n phn 速u nhau b谷i c存c 速im chia xi : a = xo < x1 < x2 < ....< x2n = b xi = a+ih ; h = (b - a)/ 2n v鱈i i =0 , . . , 2n Do yi = f(xi) n捉n ta c達 : +++= x x fdx... x x fdx b a x x fdxdx)x(f n2 2n2 4 2 2 0 則 tnh tch ph息n n袖y ta thay h袖m f(x) 谷 v ph其i b損ng 速a th淡c n辿i suy Newton tin bc 2 : y t2 )1t(t yty)x(P 0 2 002 ++= v袖 v鱈i tch ph息n th淡 nht ta c達 : dx)x(Pdx)x(f x x x x 2 0 2 0 2 = 則脱i bin x = x0+th th dx = hdt , v鱈i x0 th t =0 v袖 v鱈i x2 th t = 2 n捉n :
  • 6. 209 |]y) 2 t 3 t( 2 1 y 2 tty[h dt)y 2 )1t(1 yty(hdx)x(P 2t 0t0 2 23 0 2 0 0 2 0 2 0 02 x x 2 0 = = ++= ++= ]yy4y[ 3 h ]y) 2 4 3 8( 2 1 y2y2[h 210 0 2 00 ++= ++= 則竪i v鱈i c存c tch ph息n sau ta c嘆ng c達 kt qu其 t測ng t湛 : ]yy4y[ 3 h dx)x(f 2i21i2i2 x x 2i2 i2 ++ ++= + C辿ng c存c tch ph息n tr捉n ta c達 : ]y)yyy(2)yyy(4y[ 3 h dx)x(f n22n2421n231o b a +++++++++= Ch測ng trnh d誰ng thut to存n Simpson nh sau : Ch測ng trnh 12-3 //Phuong phap Simpson; #include <conio.h> #include <stdio.h> #include <math.h> float y(float x) { float a=4/(1+x*x); return(a); } void main() { int i,n; float a,b,e,x,h,x2,y2,x4,y4,tp; clrscr(); printf("Tinh tich phan theo phuong phap Simpsonn"); printf("Cho can duoi a = "); scanf("%f",&a); printf("Cho can tren b = "); scanf("%f",&b); printf("Cho so diem tinh n = "); scanf("%d",&n); h=(b-a)/n; x2=a+h; x4=a+h/2; y4=y(x4); y2=y(x2); for (i=1;i<=n-2;i++) {
  • 7. 210 x2+=h; x4+=h; y4+=y(x4); y2+=y(x2); } y2=2*y2; y4=4*(y4+y(x4+h)); tp=h*(y4+y2+y(a)+y(b))/6; printf("Gia tri cua tich phan la : %10.8fn",tp); getch(); } D誰ng ch測ng trnh n袖y tnh tch ph息n c単a h袖m trong function trong 速o孫n [0,1] v鱈i 20 kho其ng chia cho ta kt qu其 J = 3.14159265.