You are on page 1of 122

TRNG I HC CN TH

KHOA S PHM
B MN TON

BAI GIANG

NGON NG LAP TRNH

M A PL E
" Bien soan
Th.S Trng Quoc Bao

NM 2004

LI GII THIU
Ngy nay, cng vi nhng thnh tu tuyt vi trong lnh vc cng ngh thng
tin, ngi ta xy dng nhiu phn mm h tr cho cng tc hc tp v nghin
cu. Mt thc tin c bit t lu l nhng bi ton t ra trong thc tin thng
khng c gii quyt bng nhng mo tnh ton th cng m phI dng n nng lc
tnh ton ca my tnh in t. Phn mm tnh ton ra I nhm p ng yu cu ca
thc tin, a cc tnh ton phc tp (c ph thng ln cao cp) tr thnh cng c lm
vic d dng cho mi ngi.
Ton hc l thng nht nn cc phn mm tnh ton cng c cu trc c bn
ging nhau. V vy, nu bit s dng phn mm ton hc no th cng d dng s
dng c cc phn mm khc. Phn mm tnh ton Maple lm cho vic gii cc
bi ton tr nn n gin v nhanh chng gp phn lm tng hiu sut lm vic ca
chng ta trong hc tp, nghin cu v ging dy. Maple l phn mm do mt nhm
cc nh khoa hc ca Canada thuc trng i hc Waterloo lm ra vi mc ch gii
quyt mi cng vic lin quan n tnh ton.
Tp ti liu ny ch cp n nhng vn c bn, ri t chng ta c th
khm ph ra nhng kh nng tnh ton v biu din v cng phong ph ca Maple.
iu cn lu l vic s dng cc phn mm tnh ton hin i khng i hi ngi
dng phi c k nng lp trnh cao cp m ch yu cu ngi s dng nm vng cc
kin thc l thuyt c bn.Vi Maple ta ch cn thc hin nhng cu lnh n gin
ch khng phi nh lp trnh cc ngn ng khc trong tnh ton. Thng qua hm tnh
ton trong mi trng Maple, chng ta rn luyn k nng s dng my tnh gii
quyt vn c th v ton hc. Maple c kh nng tnh ton trn s thc ln s phc,
ngoi cc hm ton hc dng sn trong Maple v mi lnh vc: Lng gic, gii
tch, hnh hc, i s tuyn tnh, l thuyt s, thng k, th, phng trnh vi phn v
o hm ring, Maple cng cho php thit lp thm cc hm hoc th tc chuyn
dng theo mc ch ca ngi s dng.
Nhng yu cu ti thiu khi s dng Maple:
- Bit s dng my tnh (Tt, m my, g vo lnh)
- Bit cch gii cc bi ton
- Bit ting Anh ti thiu.
Yu cu v cu hnh my: Bi ging ny gii thiu Maple Version 6.0 i hi
my c dung lng RAM t 8MB tr ln, dung lng a cng dng ring cho n
khong 70MB i v i cc my chy trn mi trng Windows v c th chy trn
mi trng mng NT, UNIX.
Bi ging ny c vit da trn cc sch hng dn s dng Maple t cc ti
liu ting Anh cng nh ting Vit, nhng ch yu c dch t phn Help ca chnh
chng trnh ny. Do nu c g cha r chng ta c th tham kho phn Help ca
chng trnh (bm t hp phm ALT + H) hiu r hn.

Trang 1

CHNG I

MI TRNG LM VIC CA MAPLE


Khi khi ng Maple c mn hnh giao din nh sau:

Biu
thc
lnh

Cum
x
l

th

Kt
qua
tnh

I.Giao din v mi trng tnh ton


Mt trang lm vic (Worksheet) ca Maple bao gm nhng thnh phn c bn:
1. Cm x l (Execution group)
Nm trong ngoc vung bn tri ca du nhc lnh, mi tnh ton u c
thc hin trn cc cm x l ny. N c th cha cc lnh ca maple, kt qu tnh
ton, th...
Mun a vo Worksheet mt cm x l sau an vn bn ang cha con tr ta
thc hin nh sau:
+ Insert / Execution group / apter cursor hoc
+ Click chut vo nt c biu tng [> trn thanh cng c.
2.Vn bn (Text)
Ta c th nhp vo vn bn text trong worksheet. Ta g ting Vit trong maple
tng t nh g ting vit trong cc phn mm ng dng khc nh: Word, Excel........
Mun a vo Worksheet mt an vn bn mi sau con tr ta thc hin lnh:
+ Insert / Paragraph / Apter cursor. Hoc
+ Click chut vo nt c biu tng ch T trn thanh cng c.
3. th (Graph)
Maple c kh nng ha trc tip c ngha l cho php v th ngay trong
trang worksheet.
Trang 2

4. Siu lin kt: (Hyperlink)


L mt mu vn bn m nu ta kch vo th s dn ta n mt mc khc trong
worksheet hin hnh hoc mt worksheet khc. Mun to siu lin kt ta chn chui
k t cn click vo khi lin kt ri thc hin nh sau:
Format / Convert to / Hyperlink
Sau khi hin ra hp thoi ta a a ch cn lin kt vo
5. Lnh v kt qu trong Maple (Command and Output)
Lnh ca maple c a vo worksheet sau du nhc lnh trong cm x l.
Kt thc dng lnh bng du hai chm : hoc du chm phy ;
+ Nu kt thc dng lnh bng du : th kt qu tnh ton khng hin
th ra mn hnh.
+ Nu kt thc dng lnh bng du ; th kt qu s hin th dng pha
di pha sau cu lnh.
Thng thng lnh ca Maple c hin th bng Font ch Courier mu v
kt qu c hin th bng Font ca Maple Output mu xanh. (y l nh dng mc
nh v chng ta c th thay I bng cc chc nng nh dng ca Maple).
V d:

[> sin(Pi/3):
[> sin(Pi/3);
1
3
2

Mun thc hin dng lnh no th a con tr v dng lnh nhn phm Enter
Nu c nhiu dng lnh trong cm x l th khi ta nhn phm Enter tt c cc
lnh trong cm x l u c thc hin.
Khi cn xung dng vit cc lnh trong cng mt cm x l (Khng phi
thc hin cc lnh trong cm x l) ta dng Ctrl + Enter.
Cn thc hin dng lnh theo th t t trn xung di, v mt s tnh ton
trong cc bc sau c th ly kt qu t bc trc, ngc li th khng th c.
Lnh ca maple c hai loi: Lnh tr v lnh trc tip
+ Lnh trc tip: Cho ta bit ngay kt qu ca lnh.
V d:

[> sum(k,k=1..n);
1
n (n + 1)
2

+ Lnh tr: Khi s dng lnh tr ta ch thu c biu thc tng trng v mun
bit tr s ca biu thc ta dng thm lnh Value( )
V d:

[> S:=Sum(k,k=1..n);
n

S :=

k=1

Trang 3

[> value(S);
1
n (n + 1)
2

Thng th gia lnh tr v lnh trc tip khc nhau k t u l


+Lnh tr k t u ch hoa: Sum(k,k=1..n), Int(expr,x),...
+Lnh trc tip k t u l ch thng: sum(k,k=1..n), int(expr,x),...
6. Maple qui nh cc php ton bng cc k t sau
a. Cc php ton s hc
Php cng

Php tr

Php nhn

Php chia

Php ly tha

Php giai tha

b. Cc php ton quan h


Ln hn

>

Nh hn

<

Nh hn hay bng

<=

Ln hn hay bng

>=

Bng

Khc

<>

c. Cc ton t logic: and, or, not. Kt qu ca cc php ton quan h l:


True(ng), False(sai), FAIL (khng so snh c).
Ch : Cc thnh phn trn c th c xp vo nhng mc (section) cho d
tm hoc mc con (subsection) trong worksheet
II. Cc nhm lnh trong mt chng trnh:
1. Bin (Variable)
a. Tn bin: C th l mt chui k t, s hoc ng gch di (_), c th ch
thng hoc ch hoa, tn bin di ti a l 524.271 k t i vi chun 32 bit, v
34,359,738,335 i vi chun 64 bit. Khng c khong cch gia cc k t.
V d:

Dathuc:=2x+1;
Dathuc:=`dathuc`
Phuongtrinh_12:=x2-x+2;

Khng nn bt u tn bin bng du gch di (_) v n s trng vi tn bin


ton cc trong maple.
Trang 4

Khng nn kt thc bng du ng (~) v n s trng vi tn bin trong maple


khi bin b rng but bi iu kin.
Cc tn bin c th c ghp vi nhau bng ton t || hoc bng hm cat()
Th d: Phuongtrinh:=2x+1:
Delta:=45:
Kt hp hai bin trn bng ton t ||
phuongtrinh||delta
phuongtrinhdelta
Kt hp hai bin trn bng hm cat( )
cat(phuongtrinh,delta)
phuongtrinhdelta
Ch : Maple phn bit k hiu hoa v k hiu thng A a, B b nn khi s
dng bin ta phi ch n vn ny.
Sau khi thc hin xong cc lnh trong mt c m x l ngi ta thng dng
lnh restart khi ng li gi tr cho bin.
b. Khai bo bin
+ Bin cc b:

local <tenbien1>,[<tenbien2>],..;

Th d:

local x, y, tong;

+ Bin ton cc:

global <tenbien1>,[<tenbien2>],..;

Th d:

global

a, b, tongcong;

2.Lnh gn
C php:

<Tn bin> := <gi tr>;

V d 1:

a:=3;
b:=2;
b:= a;

V d 2:
tamthuc:=x^2-3*x+1;
x2-3x+1
delta:= discrim(tamthuc,x);
5
cat(delta cua tam thuc,tamthuc,la,delta);
delta cua tam thuc x2-3x+1 la 5
V d 3:
hamtich:=proc(x,y)
local a,b;
global c;
Trang 5

a:=x*y;
b:=a*x*y
c:=a*b
end proc;
3. Lnh iu kin r nhnh
if <iu kin> then
<Nhm lnh 1>;
else
<Nhm lnh 2>;
end if :
V d: Th tc n gin kim tra s dng hay m
> g:=proc(so)
if so>0 then
print(`So duong`)
else
if so=0 then
`So khong`
else
`So am`
end if
end if
end proc:
4. Cclnh vng lp:
a. Vng lp FOR (vng lp c s ln xc nh)
C php:
[for <tn bin>] [from <gi tr u>] [by <bc tng>] [to <gi tr cui>] do
<nhm lnh thc hin> end do;
Hoc:
[for <bin>] [in <expr>] do <Nhm lnh> end do;
Vi expr l mt chui cc gi tr, hay mt chui cc biu thc no
b.Vng lp While ( vng lp c s ln khng xc nh)
C php:
While <iu kin> do < Nhm lnh> end do;
c. Vng lp hn hp FOR v While
C php:
[for <tn bin>] [from <gi tr u>] [by <bc tng>] [to <gi tr
cui>] [while<iu kin>] do <nhm lnh> end do;
V d:
a. Tnh tng t 6 n 14 vi mi ln tng hai
Trang 6

> for i from 6 by 2 to 14 do print(i) end do;


6
8

10
12
14

b. Tnh tng t 7 ti 9 vi bc tng l 1


> restart:
t := 0;
for a from 7 by 1 while a < 10 do
t:= t+a;
x:=t^2;
end do;
t := 0
t := 7
x := 49

t := 15
x := 225
t := 24

x := 576

c. Tnh tng ca cc s trong mt dy c lit k sn


> restart:
V := 0;
for z in x, y, a, 3 do
V := V+z;
end do;

V := 0
V := x
V := x + y

V := x + y + a
V := x + y + a + 3

d. Ch dng vng lp while


> restart:
a:=10;
while a>5 do
Trang 7

x:=a^2;
a:=a-1;
end do;

a := 10

x := 100
a := 9
x := 81
a := 8

x := 64
a := 7
x := 49
a := 6

x := 36
a := 5

III. Hm v th tc
1. Hm trong maple
Hm trong maple l mt hnh thc c bit ca th tc, c hai loi hm dng
sn v hm do ngi dng xy dng.
a.Hm dng sn:
Trong maple c rt nhiu hm dng sn, mt s c np sn trong b nh
khi chng trnh chy, khi dng ta ch cn goi tn hm, mt s hm khng c np
sn vo b nh m n c cha trong nhng gi cng c (package) hoc trong th
vin khi s dng nhng hm ny th ta phi np n vo b nh ri sau mi gi tn
hm s dng.
Khi s dng nhng hm m maple np sn trong b nh nh sin, cos, exp,
int ta ch cn gi trc tip vo cm x l
V d:

A:= sin(x)+tan(x)-x^2;
B:= exp(34);
C:=int(x^2-1,x=1..4);

Khi s dng hm nm trong gi cng c th ta np hm vo b nh ri sau


mi s dng c.
C php np hm nm trong gi cng c vo b nh: with(Gi cng c):
V d: Dng hm slope trong gi cng c student, ta thc hin
with(student):
slope(y=2*x+5,y,x);

Mun xem tn cc hm trong mt gi cng c th sau with(Gi cng c) ta


dng du chm phy ;
Trang 8

Mt s gi cng c ta thng s dng: student, DEtools, PDEtools,


LinearAlgebra, geometry, linalg, plottools, plots,
+ student: Gi cng c cha cc lnh cho tnh ton tng bc bao gm tch
phn tng phn, quy tc Simpson, tm cc tr,
+ DEtools: Gi cng c cha cc lnh lm vic vi phng trnh vi phn.
+ DEPtools: Gi cng c cha cc lnh cho php lm vic vi phng trnh
o hm ring.
+ LinearAlgebra: Cha cc cng c lin quan n i s tuyn tnh.
+ geometry: Gi cng c cha cc lnh lin quan vi hnh hc Euclide 2 chiu.
+ linalg: Gi cng c cha cc lnh lin quan vi ma trn v vect.
+ stats: Gi cng c cha cc lnh dng trong thng k.
+ plots: Cc lnh cho php v hnh trong khng gian 2 v 3 chiu.
+ plottools: Gi cng c cha cc lnh cho php lm vic vi cc i tng
hnh nh.
Khi s dng hm cc trong th vin th ta cng np hm cn s dng vo b
nh trc ri mi dng.
C php np hm trong th vin vo b nh:

readlib(tn hm)

Th d: Dng hm kh cn mu s trong th vin


readlib(rationalize):
rationalize(1/sqrt(3)+3/sqrt(7));
Mun xem ngha cng nh tp lnh ca gi cng c hay th vin no ta dng
c php:
? <Tn gi cng c >;
hoc
? <Tn th vin >;
b. Hm do ngi dng xy dng
Maple cho php chng ta to thm hm hay th tc mi v lu vo mt file
trong th vin nh nhng hm c sn ca maple.
Mun xy dng hm mi ta c th dng mt trong cc cch sau y:
+ Dng php nh x
C php:
(vars)->expr;
Trong :
vars: cc bin ca hm
expr: l mt biu thc
+ Dng hm unapply( )
C php:
unapply(expr,vars);
expr: biu thc hoc phng trnh
vars: cc bin ca hm s
Trang 9

+ Dng th tc
C php:
proc(vars) expr end proc;
vars: cc bin ca hm
expr: biu thc xc nh hm
V d 1: Xy dng hm hai bin y=3x3+ey-sin(x)+2
+ Dng php nh x:
> f:=(x,y)-> 3*x^3+exp(y)-sin(x)+2;
f := ( x, y ) 3 x3 + e y sin( x ) + 2

+ Dng hm unapply
> g:=unapply(x^3+sqrt(y)+7,x,y);
g := ( x, y ) x3 + y + 7

Sau khi nh ngha hm xong, ta c th tnh gi tr ca hm s ti bt k im


no nu n xc nh ti im .
> f(2,3);
26 + e 3 sin( 2 )

>g(a,1);
a3 + 8

+ Dng th tc
> h:=proc(x,y) x^3+sqrt(y)+7 end proc;
> h(1,4);
10
+ Xy dng hm s a tr
C php:
piecewise(k 1,biu thc1, k 2,Biu thc 2, ..., k N,Biu thc N,
Biu thc cho iu kin cn li);
V d: Xy dng hm du ca x
-1

y = 0

x<0
x=0
otherwise

Ta thc hin nh sau


> y:=x->piecewise(x<0,-1,x=0,0,1);
f := x piecewise( x < 0, -1, x = 0, 0, 1 )
Trang 10

> y(1/2);
1
c. Th tc trong maple
Ta c th to nhng th tc ring cho mnh gii quyt mt cng vic no ,
v lu vo trong th vin dng nh nhng hm c sn trong th vin ca maple.
Cu trc ca mt th tc:
proc (tn bin)
[local <tn bin>;]
[global <tn bin>;]
<Cc cu lnh>
end proc;
V d 1: Th tc v th
> restart:
with(plots):
f := proc (hamso)
plot(hamso,x=10..10);
end proc:

Dng th tc trn v hm x2-x+1


> f(x^2-x+1);

V d 2: Th tc tnh tng v hiu ca hai s c s dng bin ton cc v bin


cc b
> f:=proc(x,y)
global a,b;
local k,m;
k:=x+y:
m:=x*y:
a:=k+m:
b:=k*m:
print(['a','b','k','m']);
[a,b,k,m];
end proc:
Tnh gi tr ca a,b,k,m ti x=2,y=1;
> f(2,1);

[ a, b, k, m ]
[ 5, 6, 3, 2 ]

Gi gi tr ca a t b nh.
> a;
5

Trang 11

Gi gi tr ca b t b nh
> b;
6

Gi gi tr ca k t b nh
> k;
k

Gi gi tr ca m t b nh
> m;
m

Nhn xt:Ta nhn thy rng gi tr ca k v m khng cn c lu trong b nh


v y l bin cc b ch c hiu lc lc th tc thi hnh, khi th tc kt thc th cc
bin cc b ny b xa khi b nh. Cc gi tr ca a v b vn cn c lu trong b
nh khi th tc kt thc.
V d: Th tc v hnh c s dng bin cc b, th tc ny c dng nhng hm
trong hai gi cng c plottools v plots
>

restart:
with(plottools):
with(plots):
dothi := proc( a, b, leq, req )
local r, M, v1, v2, wid, bar, Axesplot, leftpt,
rightpt, pt_color, leftend, rightend, LT, RT, textpos;
r := b-a ;
M := evalf( 1.2 * max( b-a, abs(a), abs(b) ) );
v1 := [a, 0];
v2 := [b, 0];
wid := ceil( M/5) ;
bar := arrow( v1, v2,wid, 0, 0, color = red ):
textpos := max(wid, 2) ;
LT := textplot( [a, textpos, a] ):
RT := textplot( [b, textpos, b] ):
leftend := min( a - 2*wid, 0);
rightend := max( b + 2*wid, 0);
Axesplot := plot( 0, x = leftend..rightend ,
y = (-wid)..(2*wid), axes = none,
thickness = 2,scaling = constrained,
tickmarks = [1,1] ):
if leq=1 then
pt_color := red;
else
pt_color := white;
end if;
leftpt := disk([ a, 0], wid/2, color=pt_color):
if req=1 then
pt_color := red;
else
Trang 12

pt_color := white;
end if;
rightpt := disk([ b, 0], wid/2, color=pt_color ):
display(leftpt, rightpt, bar, Axesplot, LT, RT);
end proc:

Gi th tc thi hnh
dothi(0,20,0,1);

+ C php lu hm hay th tc vo trong th vin:


savelib(name1, name2, name3...);
name1,name2...: tn cc hm, th tc hay bin cn lu vo th vin
V d: xy dng hm tnh tng hai s ri lu vo th vin
- Xy dng hm:
> tinhtong:=proc(x,y)
local a:
a:=x+y:
end proc:
- Lu vo th vin
> savelib(tinhtong):
Khi s dng cc hm lu vo th vin th ta thc hin c php nh cc hm
c sn trong th vin ca maple
> readlib[tinhtong]:
tinhtong(28,43);
71
Mun xem a ch ca th vin th dng hm libname;
V d:

libname;
"C:\\PROGRAM FILES\\MAPLE 6/lib

IV. CC HM S CP C BN V HM TON HC THNG DNG

- sin(x), cos(x), tan(x), cot(x), arctan(x), arcsin(x), arccos(x), arccot(x).


- exp(x)

: hm m c s e

- ln(x)

: hm logarithm c s e ca x

- log[b](x)

: hm logarithm c s b ca x
Trang 13

- log10(x)

: hm logarithm c s 10 ca x

- sqrt()

: hm cn bc 2 ca x

- root[n](x)

: hm cn bc n ca x

- round(x)

: hm lm trn, ly tr nguyn gn nht ca x

- trunc(x)

: hm ct ly phn nguyn ca mt s

- max(x1,x2,..), min(x1,x2,...): hm cho gi tr cc i v cc tiu ca mt dy


cc s c lit k.
- abs

: hm ly tr tuyt i ca mt s.

- Pi

- infinity

(-infinity: - )

Lu :
- Cp du mc n ( ) dng nhm cc phn t ca cng thc, phc ha cc
bin ca hm.
- Cp du mc vung [ ] c ngha nh mt danh sch (list).
- Cp du mc nhn { } c ngha nh mt tp hp (set).
- Khi cn khi ng li b nh ta dng lnh restart:
- Ghi ch cho chng trnh bng #

Trang 14

CHNG II

CC LNH TRC TIP CA MAPLE


I. Tnh ton vi s nguyn
Maple l mt cng c mnh, cho php tnh ton vI nhng s nguyn ln.
1. Hm m
V d:

>P:=2^63;

P := 9223372036854775808

2. Hm tnh giai tha


V d:
> 13!;

6227020800

3. Hm tm c s chung ln nht (gcd)


V d:
> gcd(157940,78864);
212

4. Hm tm bi s chung nh nht (lcm)


V d:
> lcm(24,15,7,154,812);
267960

5. Phn tch mt s ra tha s nguyn t (ifactor)


V d:
> ifactor(32160);
( 2 )5 ( 3 ) ( 5 ) ( 67 )

6. Cc hm lin quan n s nguyn t


a. Tm cc s nguyn t ng trc mt s cho trc (prevprime)
V d:
> prevprime(1234);
1231

b. Tm cc s nguyn t ng sau mt s cho trc (nextprime)


V d:
> nextprime(1234);
1237

c. Xt xem mt s c phi l s nguyn t khng (isprime)


V d:
> isprime(12);
false

7. Tm thng v phn d ca php chia nguyn


a. Php chia ly phn d nguyn
irem(m, n)

irem(m, n,q)

b. Php chia ly phn thng nguyn


Trang 15

iquo(m, n)

iquo(m, n,r)

Trong :

m, n l cc biu thc

V d:

r, q l cc tn.
> irem(23,4,'q');
3

> q;

> irem(23,4,'r');
3

> r;

Ta cng c th dng cc hm ny tm phn thng v s d ca php chia


hai a thc
V d:
> quo(x^3-4,x+2,x,'r');
x2 2 x + 4

> r;

-12

> rem(3*x^2+1,x-1,x,'q');
4

> q;

3x+3

8. Tnh ton vi cng thc truy hi


Maple cho php ta tnh gi tr ca cc biu thc theo cng thc truy hi chng
hn tnh s hng tng qut ca dy Fibonacci bng lnh rsolve
C php:

rsolve (eqns, fcns)


eqns: l phng trnh hay tp cc phng trnh
fcns: l tn hm hoc tp cc tn hm m hm fsolve phi tm.

V d: Tm s hng f(n) ca dy Fibonacci: f (n ) = f (n 1) + f (n 2)


Vi iu kin ban u f(1) = f(2) = 1
> restart:
rsolve({f(n)=f(n-1)+f(n-2),f(1)=1,f(2)=1},{f});

f( n ) =

1
1 + 1 5 2

5
1 5

+
1 5

> simplify(%);

f( n ) =
5

( n )

n
1
1 5 1 2

5

1 + 5

1+ 5

5 2 n ( ( 1 + 5 )
( -1 )n + ( 5 1 )
( 5 1) (1 + 5 )

Trang 16

( n )

Mun c cng thc tng minh ca biu thc truy hi ta phI thc hin hai
bc sau y:
+ Bc 1: Dng mt bin gn tn cho biu thc truy hi.
+ Bc 2: Tm cng thc tng qut bng lnh rsolve.
V d: Tm dng tng minh ca cng thc truy hi f (n + 1) = 3 f (n ) 2 f (n 1)
Vi iu kin ban u f(1) = 2, f(2) = 3
> restart:
reqn:=f(n+1)=3*f(n)-2*f(n-1);
rsolve({reqn,f(1)=2,f(2)=3},f(n));
reqn := f( n + 1 ) = 3 f( n ) 2 f( n 1 )
1 n
2 +1
2

Maple c th gii h phng trnh truy hi


V d: Gii h phng trnh truy hI

y (n + 1) + f (n ) = 2 n + + n
vi iu kin ban u: y (k = 1L5) = 2 k 1 , f (5) = 6

n
f (n + 1) y (n ) = n 2 + 3

> restart:
rsolve({y(n+1)+f(n)=2^(n+1)+n,f(n+1)-y(n)=n2^n+3,y(k=1..5)=2^k-1,f(5)=6},{y,f});
{ y( n ) = 1 + 2 n, f( n ) = n + 1 }

II. Tnh ton vi cc s thp phn


1. Tnh gn ng cc gi tr s hc
Ta c th thc hin cc php tnh s hc trn cc s thp phn (vi du chm
ng) vi chnh xc theo mun. Trong thc t, Maple c th x l cc s vi
chnh xc hng trm nghn ch s thp phn bng hm evalf (f, m)
V d: Ta tnh gi tr ca s vi chnh xc 20 ch s thp phn
> evalf(Pi,20);
3.1415926535897932385

Tnh gi tr ca hm GAMMA ti im 2.5


> evalf(GAMMA(2.5));
1.329340388

2. Tnh tng ca cc s hng


C php:
sum(f, k)

hoc Sum(f, k)

Tnh tng t f(0)..f(k-1)

sum(f, k=m..n) hoc Sum(f, k=m..n)


sum(f, k=alpha) hoc Sum(f, k=alpha)
sum(f, k=expr) hoc Sum(f,k=expr)
Trang 17

Tnh tng t f(m)..f(n)

f: Biu thc cn ly tng


k: ch s ly tng
m..n: cn cn ly tng
alpha:L nghim ca mt phng trnh no . alpha = RootOf(expr=0)
expr: mt biu thc no khng ph thuc vo ch s ly tng v dng
thay vo ch s ly tng.
k1

V d: Tnh tng sau :

k=1

a. Dng lnh tr
> Sum(k,k);

k
k

Xem gi tr ca tng trn


> value(%);

1 2 1
k k
2
2

k1

Ch :

k=k

k=1

b. Dng lnh trc tip


> sum(k,k);

1 2 1
k k
2
2

Hoc
> Sum(k,k)=sum(k,k);

k = 2 k2 2 k
k

Hay ta c th vit
> Sum(k,k):%=value(%);
1

k = 2 k2 2 k
k

c. Tng cc s nguyn t 4 n 6
> s:=Sum(x,x=4..6);
6

s :=

x=4

> value(%);

15

d. Tnh tng v hn sau:

( i + 1 )2

i=1

> Sum(1/(i+1)^2,i=1..infinity):
%=value(%);

( i + 1 )2 = 1 + 6 2

i=1

Trang 18

e. Tnh tng sau (ch cn ca tng)


> Sum(K/(k+1),k=3*x^2+1):%=value(%);

2
k=3x +1

K
K
=
k + 1 3 x2 + 2

f. Tnh tng bnh phng nghim ca c c phng trnh x^2-5*x+6=0


> sum(x^2,x=RootOf(x^2-5*x+6=0));
13

3. Tnh tch ca cc tha s


C php:
product(f, k) hoc Product(f, k)

Tnh tch t f(0)..f(k-1)

product (f, k=m..n) hoc Product (f, k=m..n) Tnh tch t f(m)..f(n)
product (f, k=alpha) hoc Product (f, k=alpha)
product (f, k=expr) hoc Product (f,k=expr)
f: Biu thc cn ly tch
k: ch s ly tch
m..n: cn cn ly tch
alpha:L nghim ca mt phng trnh no . alpha = RootOf(expr=0)
expr: mt biu thc no khng ph thuc vo ch s ly tch v dng
thay vo ch s ly tch.
V d:

Vit k hiu ca tch sau:

(k + 1)

k=1

> Product( k+1, k=1..5 );


5

(k + 1)

k=1
b

Tnh tch sau:

k=a

> Product(k,k = a .. b)=product(k,k=a..b);


b

( b + 1 )
( a )

k=

k=a

e ( t ) t ( z 1 ) dt
GAMMA l hm s sau: ( z ) :=

> product( k+1, k=1..4 );


120

> product( k^2, k=1..n );


( n + 1 )2

> product( k^2, k );


Trang 19

( k ) 2

> product( A[k], k=0..4 );


A0 A1 A2 A3 A4

> product( A[k], k=0..n );


n

Ak

k=0

Tnh tch cc nghim ca phng trnh 2x3+7x+5=0


> restart:
product( k, k=RootOf(2*x^3+7*x+5) );
-5
2

III. Tnh ton vi s phc


Maple cho php thc hin tnh ton vi s phc. Ch I c dng lm k hiu
n v o.
V d: Tnh

3 + 5I
7 + 4I

> (3+5*I)/(7+4*I);

41 23
+ I
65 65

Bng lnh bin i f v dng ta cc convert (f, polar) ta c th bin I


s phc f v dng ta cc (r , ) trong r l mun cn l argument ca s
phc trong biu thc
V d:
> convert((3+5*I)/(7+4*I),polar);
1
23
polar
2210 , arctan
65
41

IV. Tnh ton theo Modul


1. Cc tnh ton Modul thng thng
a. Tnh modul m trn tp s nguyn
C php: e mod m vi cc dng ring:
+ modp (e, m): Ly biu din dng ca e theo modul m (trong tp gi
tr t 0 n m 1 ).
+ mods (e, m): Ly biu din i xng ca e theo modul m (trong tp
m 1
m
n ).
2
2

gi tr t

Vi

+ e l biu thc i s
+ m l mt s nguyn khc 0.

Trang 20

Ton t mod tnh gi tr biu thc e trn tp s nguyn modul m. N hp nht


vic tnh ton trn trng s hu hn v cc php ton s hc i vI a thc, ma trn
trn trng hu hn, k c php phn tch ra tha s.
Vic n nh modp hay mods c thc hin thng qua bin mi trng mod
(gi tr modp c xem l mc nh).
Khi ta cn tnh q mod m vi q l mt s nguyn th khng nn s dng c php
hin nhin nh q^n mod m, bi v php ly tha s chuyn s th nht thnh s
nguyn (c th l rt ln) trc khi rt gn theo modul m. Thay vo nn dng ton
t tr &^ ngha l q&^n mod m. Trong dng ly tha s c bin I kho lo
theo php ly mod. Tng t, Powmod (a,n,b,x) mod m tnh Rem (a^n,b,x) mod m
(a v b l nhng a thc ca x) khng cn tnh a^n mod m.
Nhng php ton modul s hc khc c biu din di dng t nhin ca
chng:
j + i mod m;
j - i mod m;
j * i mod m;
i / j mod m;

j^(-1) mod m

V d: Tnh
> 12 mod 7;

> modp(12,7);

> mods(12,7);

-2

> 5*3 mod 7;

> 11+5*3 mod 7;

> (11+5*3)^(-1) mod 7;


3

> 1/(11+5*3)mod 7;
> 1/3 mod 7;

3
5

> 5&^1000 mod 23;

b. Tnh modul khi e khng l s


Khi biu thc e khng l mt s m l mt a thc th php ly modul ca n
c hiu l php ly modul ca tt c cc h s ca a thc.
V d: Tnh
> a:=15*x^2+4*x-3 mod 11;

a := 4 x2 + 4 x + 8
Trang 21

V php ly modul mc nh s dng biu din dng (modp). Mun chuyn


sang dng i xng th ta dng lnh:
> `mod`:=mods:
b:=3*x^2+8*x+9 mod 11;
b := 3 x2 3 x 2

i vi cc php ton khc nh tm c chung ln nht, phn tch ra tha s


nguyn t (vi c s v a thc), cng c thc hin theo phng thc thng
thng ngoi tr mt khc bit nh l cc lnh trong php tnh modul c bt u
bng ch hoa.
V d:
> Gcd(a,b) mod 11;

x+5

> Factor(x^3+2) mod 5;

( x2 + 2 x 1 ) ( x 2 )

> Expand(%) mod 5;

x3 + 2

2. Gii phng trnh vi modul


C php:

msolve (eqns, vars, q) hoc msolve (eqns, q)

Trong :

+ eqns: Tp cc phng trnh.


+ vars: Tp cc bin.
+ q: S nguyn.

Lnh msolve thc hin vic gii phng trnh trong Z theo m.
Lnh msolve gii cc phng trnh eqns trn cc s nguyn (theo mod q). N
gii theo mi n bt nh c trong cc phng trnh.
Nu l nghim v nh, th h cc nghim c biu din thng qua cc bin c
tn c cho trong tp bin vars, nu nh vars c b qua th c thay th bng cc
tn mc nh ton cc _Z1~, _Z2~, _Z3~,Nhng tn ny khng trng vI cc n v
nh v c php ly mi gi tr nguyn.
V d:
> restart:
msolve({3*x-4*y=1, 7*x+y=2},19);
{ x = 15, y = 11 }

> restart:
msolve(8^i=2,17);

{ i = 3 + 8 _Z1~ }

> msolve(sum(x[i],i=1..9),3);

{ x2 = 2 x1 + 2 x6 + 2 x3 + 2 x4 + 2 x5 + 2 x7 + 2 x8 + 2 x9, x3 = x3, x4 = x4, x5 = x5, x6 = x6,


x7 = x7, x8 = x8, x9 = x9, x1 = x1 }
Trang 22

Nu phng trnh khng c nghim trn cc s nguyn (mod m) th Maple s


khng cho kt qu no.
> msolve(x^2=3,5);
V. Khai trin, n gin, phn tch v bin i mt biu thc i s
1. Khai trin mt biu thc
C php:
expand (expr, expr1, expr2....);
+ expr l biu thc cn khai trin
+ expr1, expr2, l cc dng biu thc m expr khai trin theo nu c
th c.
V d:
> expr:=(x+1)*(x+y)*(x/y);
expr1:=x+1;
(x + 1) (x + y) x
y
expr1 := x + 1

expr :=

> expand(expr);

x3
x2
+ x2 +
+x
y
y

> expand(expr,expr1);

( x + 1 ) x2
+ (x + 1) x
y

Biu thc th hai c phn tch theo tha s dng expr1.


2. Phn tch mt biu thc thnh tch
C php:
factor (expr); hoc
factor (expr, expr1)
+ expr l biu thc cn phn tch
+ expr1l cc dng biu thc m expr phn tch theo nu c th c.
V d:
> Q:=factor(a^3+b^3+c^3-3*a*b*c);
Q := ( b + a + c ) ( b2 a b b c a c + a 2 + c2 )

> factor(x^4-2);

x4 2

Phn tch x4 2 thnh dng cha tha s 2


> factor(x^4-2,sqrt(2));

( x2 + 2 ) ( x2 2 )

> factor(x^4-2,root[4](2));
( x2 + 2 ) ( x 2

( 1/4 )

) (x + 2

( 1/4 )

Phn tch x + 2 thnh tch vi cc tha s c dng s phc


> factor(x^2+2,complex);
( x + 1.414213562 I ) ( x 1.414213562 I )

Gi l nghim ca phng trnh x2- 2 = 0


> alias(alpha = RootOf(x^2-2));

Phn tch biu thc y2 8 thnh tch trong c cc tha s cha s hng
> factor(y^2-8,alpha);
Trang 23

( y + 2 ) ( y + 2 )

3. n gin biu thc


C php:
simplify(expr): n gin biu thc expr
simplify(expr,{n1,n2,..}): n gin biu thc expr theo cc iu kin
n1, n2,....cho trc.
simplify(expr,Option): n gin biu thc expr theo dng ch nh
trong Option
Option:C cc ty chn sau
trig

Lng gic

Power

Ly tha

Ln

Logarit neber

Exp

Hm e m

Radical

Cn thc

RootOf

Cc nghim ca phng trnh...


V d: n gin biu thc e (a + ln (be ))
c

> expr:=exp(a+ln(b*exp(c)));
expr := e

c
( a + ln( b e ) )

n gin thnh dng ly tha (power)


> simplify(expr,power);
b ec ea

n gin thnh dng e m (exp)


> simplify(expr,exp);
be

(a + c)

n gin ri thay cc gi tr ca a v c vo biu thc


> simplify(expr,{y=a,c+1=x});
be

( 1 + x )

ea

> simplify(a*x^2+b*x+c,{a=2,b^2+c=1,b-c=3});
2 x2 + 3 x + ( x + 1 ) c

Da vo tnh cht ny ca simplify ta c th s dng vo tnh tng cc nghim


ca phng trnh:
V d: Cho phng trnh x 2 4 x + 1 = 0 . Gi s rng phng trnh c 2 nghim
x1 v x2. Hy tnh: S = x13 + x 23
Theo nh l Viet ta c x1 + x 2 = 4 v x1 x 2 = 1 . Vy ta thc hin nh sau:
> dk:={x[1]+x[2]=4,x[1]*x[2]=1};
dk := { x1 + x2 = 4, x1 x2 = 1 }

> S:= x[1]^3+x[2]^3;

S := x1 + x2

> S:=simplify(S,dk);
Trang 24

S := 52

Vy nu ta dng tnh cht n gin biu thc S theo dk th ta s nhn c gi


tr S cn tm m khng cn giI phng trnh.
4. Ti gin phn thc
normal (expr): Ti gin biu thc expr

C php:

normal (expr, expanded): Ti gin biu thc expr trnh by kt


qu di dng khai trin.
Ti gin phn thc cng l a n v dng chun tc (normal), tc l gin c
cc tha s chung ca t s v mu s. thc hin iu ny ta dng hm normal
V d 1:
> normal((x^3-y^3)/(x^2+x-y-y^2));
x2 + y x + y2
x+1+y

V d 2: Tnh tng sau:

k=1

> sum(k,k=1..n);

1
1
1
( n + 1 )2 n
2
2
2

> normal(%,expanded);
1 2 1
n + n
2
2

Xem kt qu di dng tch ca cc tha s:


> factor(%);
1
n (n + 1)
2

V d 3:
> f:=(x-1)^2*(x-3)-2*x*sin(x+y);
f := ( x 1 )2 ( x 3 ) 2 sin( x + y ) x

> normal(f);

x3 5 x2 + 7 x 3 2 sin( x + y ) x

Hoc ta dng c php sau:


> normal(f,expanded);

x3 5 x2 + 7 x 3 2 x sin( x ) cos( y ) 2 x cos( x ) sin( y )

5. Thay th gi tr cho bin


C php:
vo biu thc expr.

subs(x = a, expr): Thay gi tr x = a vo biu thc expr.


subs(s1, s2,, sn, expr): Thay th tun t cc gi tr s1, s2,, sn

Trang 25

subs({s1, s2,, sn }, expr): Thay th ng thi cc gi tr s1, s2,,


sn vo biu thc expr.
V d 1: Thay th ln lt cc gi tr x = a v y = c vo biu thc x3 - y
> subs(x=a,y=c,x^3-y);

a3 c

V d 2: Thay th y = x ri th x = a vo biu thc x3 y


> subs(y=x,x=a,x^3-y);
a3 a

V d 3: Thay th ng thi 02 gi tr y = 2*x v x = a vo biu thc x3 y


> subs({y=2*x,x=a},x^3-y);
a3 2 x

> subs({x=a,y=2*x},x^3-y);
a3 2 x

V d 4: Cho hm s y = mx 3 4(m 1)x + 5 tnh gi tr ca y tI x = 3m + 1


> restart:
y:=m*x^3-4*(m-1)*x+5;
y:=subs(x=3*m+1,y);
y:=simplify(%);
y := m x3 4 ( m 1 ) x + 5
y := m ( 3 m + 1 )3 4 ( m 1 ) ( 3 m + 1 ) + 5
y := 27 m4 + 27 m3 3 m 2 + 9 m + 9

V d 5: Vit phng trnh giao im ca hai ng y = (m + 1)x 3 x + m 2 v


ng thng y = 3 x + 5
> restart:
y:=(m+1)*x^3-x+m^2;
y:=3*x+5;
p:=subs(y=3*x+5,y=(m+1)*x^3-x+m^2);
y := ( m + 1 ) x3 x + m 2

y := 3 x + 5
p := 3 x + 5 = ( m + 1 ) x3 x + m2

> vp:=rhs(p);

vp := ( m + 1 ) x3 x + m 2

> vt:=lhs(p);

vt := 3 x + 5

> pt:=vt-vp=0;

pt := 4 x + 5 ( m + 1 ) x3 m2 = 0
Trang 26

> collect(pt,x);

( m 1 ) x3 + 4 x + 5 m2 = 0

6. Hm trch ly v tri v v phi ca mt ng thc


a. Hm trch ly v tri:

lhs (f)

b. Hm trch ly v phi:

rhs (f)

Trong : f l mt phng trnh, bt phng trnh hay mt ng thc no


7. Hm gom nhm cc thnh phn ca mt biu thc
C php:

collect (f, x): Sp xp li biu thc f theo bin ch nh trong x.

collect (f, x, procedure): Sp xp li biu thc f theo bin ch


nh trong x v cc h s c bin i theo dng c ch nh trong procedure.
procedure c th c cc gi tr sau:
+ recursive: u tin gom nhm biu thc theo x1, tip theo trong mi s
hng x1 li gom nhm theo x2,
+ distributed: gom nhm tch bit ra. u tin gom nhm biu thc theo
x1 xong ri n gom nhm biu thc theo x2,
V d:
> f:=m^3*x+x*m-x^4*m+m^4=0;

f := m3 x + x m x4 m + m4 = 0

Gom nhm biu thc theo m:


> collect(m^3*x+x*m-x^4*m+m^4=0,m);
m4 + m3 x + ( x x4 ) m = 0

Gom nhm biu thc theo x, trong cc s hng ca x c phn tch thnh
tch:
> collect(m^3*x+x*m-x^4*m+m^4=0,x,factor);
x4 m + m ( m 2 + 1 ) x + m4 = 0

8. Sp xp thc mt dy cc gi tr hoc mt a thc


C php:
Trong :

sort(L) hoc

sort(L, F)

sort(A) hoc

sort(A, V)

+ L l dy cc gi tr
+ F l kiu sp xp
+ N u L l dy cc s hng th F l > hoc <
+ N u L l dy dng chui th F l lexoder
+ A l a thc hoc mt dy gi tr
+ V l mt hoc nhiu bin ca A

Mc nhin s sp xp theo th t gim dn ca ly tha ca cc bin c


ch nh. Nu c nhiu bin th a thc c sp xp theo tng lu tha ca cc bin.
Trang 27

Nu ta thm thng s plex th a thc c sp xp theo th t tng bin c lit k


trong biu thc.
V d:
> sort([3,2,1]);

[ 1, 2, 3 ]

> sort([3,2,1],`>`);

[ 3, 2, 1 ]

> sort(1+x+x^2,plex);

1 + x + x2

> sort(1+x+x^2);

x2 + x + 1

> restart:
sort([g,c,a,d,e,f],lexorder);
[ a, c, d, e, f, g ]

> p := y^3+y^2*x^2+x^3:
sort(p,[y,x]);
y2 x2 + y3 + x3

> sort(p,[y,x],plex);

y3 + y2 x2 + x3

> sort((y+x)/(y-x),x);

x+y
x + y

9. Chuyn i dng ca biu thc


C php:

conrvert (f, form, vars)

Trong :

+ f l mt biu thc bt k.
+ vars l cc bin mi
+ form c th c cc dng sau y:

Airy,Bessel;D;Ei; GAMMA; Heaviside; Matrix; PLOT3Doptions; PLOToptions


POLYGONS; RootOf; StandardFunctions; Vector; and; array; base; binary;
binomial; bytes; confrac; convert/'*'; convert/'+'; decimal; degrees; diff; disjcyc;
double; equality; erf; erfc; exp; expln; expsincos; factorial; float; fullparfrac; global
;hex; horner; hypergeom; int; list; listlist; ln; local; mathorner; matrix; metric; mod2;
multiset; name; numericproc; octal; or; parfrac; permlist; piecewise; polar; polynom;
pwlist; radians; radical; rational; ratpoly; set; signum; sincos; sqrfree; std; stdle;
string; symbol; table; tan; trig; vector
V d: To mt chui theo quy lut xi ^ I
> f := seq( x[i]^i, i=1..4 );
2

f := x1, x2 , x3 , x4
Trang 28

Nhn cc s trn li vi nhau:


> convert([f], `*`);

x1 x2 x3 x4

Chuyn s thp phn thnh dng phn s


> convert( 1.23456, fraction);
3858
3125

> f := (x^3+x)/(x^2-1);
f :=

x3 + x
x2 1

Chia phn thc hu t


> convert(f, parfrac, x);
x+

1
1
+
x1 x+1

> s := series(f,x,4);

s := x 2 x3 + O( x5 )

Loi b v cng b bc cao:


> convert(s, polynom);

x 2 x3

> f := sinh(x)+sin(x);

f := sinh( x ) + sin( x )

Chuyn i f thnh dng e m:


> convert(f, exp);

1 x 1 1 1 (I x)
1
I e
e
( I x )
x

2
2e
2
e

Chuyn i t radian sang :


> convert(Pi/3,degrees);
60 degrees

Chuyn i t sang radian:


> convert(135*degrees,radians);
3

Chuyn i t biu thc dng sin sang dng tan


> convert(sin(x),tan);
2

1
tan x
2
1
1 + tan x
2
Trang 29

VI. Mt s dng hm khc


1. Trch ly cc phn t trong mt biu thc hay mt danh sch
C php:

op(i, expr);
op(i..j, expr);
op(expr);
op(list, expr);

Trong :

+ i, j l cc s nguyn xc nh v tr ca cc phn t.
+ expr l mt biu thc.

+ List l dy cc s nguyn xc nh v tr c a cc phn t trong


biu thc, cc s ny xc nh v tr ca cc phn t xp lng vo nhau c ly t
ngoi vo trong.
V d: > expr:=sin(x)*y-sin(sqrt(y)+x)+ln(a)-z;
expr := sin( x ) y sin( y + x ) + ln( a ) z

Xem cc phn t cu thnh ca biu thc expr:


> op(expr);

sin( x ) y, sin( y + x ), ln( a ), z

Trch ly phn t th nht trong biu thc expr:


> A:=op(1,expr);
A := sin( x ) y

Trch ly phn t th 2 trong phn t u tin ca expr:


> op(2,op(1,expr));
y

Ta cng c th thc hin lnh sau:


> op([1,2],expr);
Trch ly phn t th nht ca A:
> op([1,1],expr);

sin( x )

Trch ly cc phn t t th 2 n th 4 ca expr:


> op(2..4,expr);
sin( y + x ), ln( a ), z

Trch ly phn t th 3 trong dy sau:


> w := [2,5,36,29];
op(3,w);

w := [ 2, 5, 36, 29 ]
36

2. m s cc phn t trong mt biu thc


Trang 30

C php:

nops (expr)

V d:
> B:=tan(y)*ln(x)+sin(x)-expr(x^2)+2;
B := tan( y ) ln( x ) + sin( x ) expr( x2 ) + 2

> op(B);

tan( y ) ln( x ), sin( x ), expr( x2 ), 2

> nops(B);

3. Tnh bit thc delta ca mt tam thc bc hai


C php:

discrim (expr)

expr l mt tam thc bc hai

4. Trch ly t s v mu s ca mt biu thc hu t


a. Trch ly t s:
C php:

numer (expr)

b. Trch ly m u s:
C php:

denom (expr)

5. Trch ly h s ca mt a thc
a. Trch ly tt c cc h s ca mt a thc:
C php:

coeffs (P, x, t)

Trong :

+ P l mt a thc
+ x l bin ca a thc
+ t l tn lu danh sch cc bc ca bin x

b. Trch ly h s bc n ca a thc p:
C php:

coeff (P, x, n)

V d:
> s := 3*v^2*y^2+2*v*y^3;

s := 3 v2 y2 + 2 v y3

> coeffs( s );

3, 2

> coeffs( s, v, 't' );

2 y3, 3 y2

> t;

v, v2

6. Gn tn cho biu thc hoc hm


C php:

alias (e1, e2,, en)

e1, e2,, en l cc biu thc hoc cc hm m ta mun t tn li.


Trang 31

V d: phi g li nhiu ln mt tn hm no , ngi ta gn cho n mt


tn ngn hn.
> restart;
alias(g=GAMMA,b=BesselJ,F=fibonacci, a=2*x^3+1);
g, b, F, a

T y v sau khi cn dng hm GAMMA ta ch cn g g(), khi cn dng hm


BesselJ ta ch cn g b(),
V d: > g(1/2);

> evalf(b(1,1));

.4400505857

> F(3);

F( 3 )

7. Tnh tng tch dy cc gi tr xc nh


a. Tnh tng dy cc gi tr xc nh
C php:
Trong :

add (f, i = m..n)

Tnh tng dy t f(m),, f(n)

add(f, i = s)

Tnh tng ca f trn cc ton hng s

+ f l mt hoc mt s biu thc


+ i l ch s ly tng
+ s l mt biu thc, mt dy s hoc tp cc nghim ca mt

phng trnh.
V d 1: Tnh tng t 1 n 5
> add(i,i=1..5);

15

V d 2: Tnh tng t 1 n n
> add(i,i=1..n);
Error, unable to execute add

Khng tnh c v n khng xc nh.


> add(i,i={1,4,7,5});
17

Tnh tng 2 nghim ca phng trnh x 2 5 x + 6 = 0


> f:=solve(x^2-5*x+6,x):
add(i,i=f[1..2]);
5

Tnh tng vi bin chy l mt biu thc


> add( i^2-1,i=2*a+y);

4 a 2 2 + y2

Trang 32

b. Tnh tch dy cc gi tr xc nh
C php:
Trong :

mul (f, i = m..n)

Tnh tch dy t f(m),, f(n)

mul(f, i = s)

Tnh tch ca f trn cc ton hng s

+ f l mt hoc mt s biu thc


+ i l ch s ly tch
+ s l mt biu thc, mt dy s hoc tp cc nghim ca mt

phng trnh.
V d: > mul(j,j=3..4);

12

> mul(j,j);
Error, wrong number (or type) of parameters in function mul

> mul(j^2,j=f[1..2]);

36

> mul(1/j,j={1,2,6,4});
1
48

8. Gn gi tr cho bin
C php:

assign (a, b)

Trong :

assign (a = b)

assign (t)

+ a l mt tn bin no
+ b l mt biu thc bt k.
+ t l mt danh sch lit k hoc tp hp cc phng trnh.

V d 1: Gn gi tr a = 2
> restart:
assign(a,2);
> a;

V d 2: Gn gi tr b = e x 2 , sin (x ) = 1 2 , c = 3a
> assign(b=exp(x-2),sin(x)=1/2);
assign(c=3*a);
> a,b,c;
2, e

> sin(x);

(x 2)

,6

1
2

V d 3: Gn cc nghim ca h phng trnh cho cc bin tng ng


> restart:
s := solve( {x+y=1, 2*x+y=3},{x,y} );
Trang 33

s := { y = -1, x = 2 }

> assign(s);
x,y;

2, -1

9. ng nht cc h s ca 2 a thc
C php:

match (p(x) =q(x), var, s)

+ Nu ng nht c th hm cho gi tr true v s l kt qu ng nht cn


ngc li cho gi tr false
+ Mun ly ra cc gi tr ca s ta dng assign(s)
V d: > match(2*x^2-3*x+4=(m+1)*x^2-a*x-y,x,'s');
true

> assign(s);
> a;
> m;

> y;

-4

> match((a-3)*x^2-(b+3)*x+c=0,x,'s');
false

10. Hm cho bc cao nht v thp nht ca a thc


a. Hm cho bc cao nht ca a thc:
C php:

degree (P, x)

+ P l a thc
+ x l bin ca a thc
b. Hm cho bc thp nht ca a thc:
C php:

ldegree (P, x)

V d: > degree(2/x^2+5+7*x^3,x);
3

> degree(x*sin(x),x);

FAIL

> degree(x*sin(x),sin(x));
1

> degree((x+1)/(x+2),x);
FAIL

> ldegree(2/x^2+5+7*x^3,x);
-2

Trang 34

11. Kh cn mu s ca mt biu thc v t


Hm ny nm trong th vin nn trc khi s dng ta phi dng lnh c t th
vin sau mI gi tn hm.
C php:

readlib (rationalize):
rationalize(expr)

expr l biu thc cn trc cn mu s


V d: Kh cn mu s ca biu thc sau: a =

x
x+2 3 5

> a:=x/(sqrt(x+2)-3*sqrt(5));
a :=

x
x+2 3 5

> realib(rationalize):
a:=rationalize(a);
a :=

x (3 5 + x + 2 )
43 + x

12. Cc hm lin quan n iu kin


assume (x, prop): t iu kin cho bin hoc t mI quan h gia cc bin
additonally (x, prop): Tng t nh assume t thm iu kin cho bin x
is (x, prop): Kim tra iu kin ca bin x cho kt qu true, false, FAIL
coulditbe (x, prop): C kh nng tha hay xy ra iu kin khng?
about (x): Cho thng tin v x
Trong :

+ x l mt bin ca mt biu thc no .

+ prop l mt tnh cht no nh positive (dng), negative


(m), real, complex, vector, Square Matrix (ma trn vung), fraction (phn s),
Gi s hm assume t li iu kin cho bin a v bin a c lu trong b
nh trc th n s b xa v c thay bng iu kin c t trong hm assume.
Bin no b rng buc iu kin th s hin th di dng du ~ bn phi a
a~, x x~,
V d: t iu kin cho a> 0 v b<0
> assume( a>0,b<0 );
Mun kim tra li cc iu kin ca bin a v b ta thc hin
> is(a,positive);
true

> is(b,positive);
false

Hoc mun xem thng tin v a


> about(a);
Originally a, renamed a~:
is assumed to be: RealRange(Open(0),infinity)
Trang 35

Mun xa iu kin trong hm assume ta dng lI lnh gn a cho chnh n


> a := 'a';
a := a

> a;
> assume(x<1,y<1);
is(x*y < 1);

false

x<1 v y<1 th khng chc xy<1 nn hm is(x*y<1) cho gi tr false. Nhng


hm coulditbe th li cho gi tr true
> coulditbe(x*y < 1);
true

> assume(x>-1);
additionally(x<1);
is(1-x^2, positive);
true

> coulditbe(1-x^2 = 1.0);


true

t iu kin cho n l s nguyn v ta kim tra xem n c phi l phn s khng


> assume(n, integer);
is(n,fraction);
false

> sin(n*Pi);
> cos(n*Pi);

0
( -1 )n~

> assume(i/2, integer);


is(i/2+1, integer);
true

> coulditbe(i/3, integer);


> assume(z,real);
is(z^2 >= 0);
true

> coulditbe(z^2 <= 0);


true

> is(5,RealRange(5,infinity));
true

> is(5,RealRange(Open(5),infinity));
false
Trang 36

> assume(a,SquareMatrix);
assume(n,integer);
is(a^n,SquareMatrix);
true

> coulditbe(a^n,tridiagonal);
true

Trang 37

CHNG III

PHNG TRNH - BT PHNG TRNH


H PHNG TRNH - H BT PHNG TRNH
I. Tm nghim nguyn ca phng trnh, h phng trnh
C php:

insolve (eqns, vars)

Trong :

+ eqns l mt phng trnh hay mt h phng trnh


+ vars l cc bin ca phng trnh hay h phng trnh

V d 1: Tm nghim ca cc phng trnh sau:


> isolve(3*x-2*y=2,a);
{ y = 1 + 3 a, x = 2 a }

> isolve(2*x^2-4*x-6=0,x);
{ x = -1 }, { x = 3 }

V d 2: Tm nghim nguyn ca h phng trnh sau:


> eqns:={3*x-2*y+z=2,x-y+2*z=5,x+2*y-3*z=-4};
isolve(eqns);
eqns := { 3 x 2 y + z = 2, x y + 2 z = 5, x + 2 y 3 z = -4 }

{ x = 1, y = 2, z = 3 }

Lu :
Nu s phng trnh t hn s n s th ta cn thm vo cc h s t do cho
s bin ca phng trnh.
> eqns:={3*x-2*y+z=2,x-y+2*z=3};
isolve(eqns,{a});

eqns := { 3 x 2 y + z = 2, x y + 2 z = 3 }
{ x = 2 + 3 a, y = 3 + 5 a, z = 2 + a }

Nu s tham bin ta thm vo d th Malpe s t ng b qua cc tham bin d.


> eqns:={3*x-2*y+z=2,x-y+2*z=3};
isolve(eqns,{a,b,c});

eqns := { 3 x 2 y + z = 2, x y + 2 z = 3 }

{ x = 2 + 3 a, y = 3 + 5 a, z = 2 + a }

Nu ta khng thm vo cc tham bin t do th Maple s t ng thm vo ln


lt cc bin _Z1, _Z2, i vi cc version t 5.1 tr i v cc bin _N1, _N2,
i vi cc version c hn.
> eqns:={3*x-2*y+z=2,x-y+2*z=3};
isolve(eqns);

eqns := { 3 x 2 y + z = 2, x y + 2 z = 3 }
Trang 37

{ x = 2 + 3 _Z1, y = 3 + 5 _Z1, z = 2 + _Z1 }

Nu phng trnh khng c nghim nguyn (hoc Maple khng c kh nng


tm nghim nguyn) th my s bo NULL hoc khng tr li.
> eqns:={3*x-2*y+z=2,x-3*y+2*z=5,2*x+2*y-3*z=-4};
isolve(eqns);
eqns := { 3 x 2 y + z = 2, x 3 y + 2 z = 5, 2 x + 2 y 3 z = -4 }

V d 3: Tm phng trnh tham s ca ng thng trong mt phng Oxy c


cho bi phng trnh tng qut sau: 3 x + 4 y 7 = 0
> isolve(3*x+4*y+7=0,{t});

{ x = 5 4 t, y = 2 + 3 t }

V d 4: Tm phng trnh tham s ca mt phng trong khng gian Oxyz c


cho bi phng trnh tng qut sau: 2 x 5 y + 5 z + 3 = 0
> pt:=2*x-5*y+5*z+3=0;
isolve(pt,{t[1],t[2]});

pt := 2 x 5 y + 5 z + 3 = 0

{ y = t1, x = 4 5 t2, z = 1 + t1 + 2 t2 }

II. Tm nghim gn ng
C php:

fsolve (eqns, var, options)

Trong :

+ eqns l mt phng trnh hay mt h phng trnh.


+ vars l cc bin ca phng trnh hay h phng trnh.
+ options l cc ty chn c th l:
maxsols = n: Tm ti a n nghim (nu c)
complex: Tm cc nghim dng s phc.
interval: Tm cc nghim trong khong a ..b no

avoid = s: Tm cc nghim khc iu kin s. s c th l mt


phng trnh, nghim ca mt phng trnh hay l mt chui cc nghim c lit k.
V d:
> p:= 23*x^5 + 105*x^4 - 10*x^2 + 17*x:
fsolve( p, x, -1..1 );
-.6371813185, 0.

> fsolve( p, x, maxsols=2 );

-4.536168981, -.6371813185

> q := 3*x^4 - 16*x^3 - 3*x^2 + 13*x + 16:


fsolve(q, x);
1.324717957, 5.333333333

> fsolve(q, x, 2..5);


Trong khong t 2 n 5 khng c nghim no nn my khng tr li
> fsolve(q, x, 2..6);
Trang 38

5.333333333

> fsolve(q, x, complex);

-.6623589786 .5622795121 I, -.6623589786 + .5622795121 I, 1.324717957 ,


5.333333333

> f:= sin(x+y) - exp(x)*y = 0:


g:= x^2 - y = 2:
fsolve({f,g},{x,y},{x=-1..1,y=-2..0});
{ x = -.6687012050, y = -1.552838698}

> fsolve(sin(x),x,avoid={x=0,x=Pi,x=-Pi}, -10..10);


-6.283185307

Tm nghim gn ng xp x vi gi tr ca x
> fsolve(sin(x),x=7.0);
6.283185307

Ta c th khai bo hm f bng th tc sau y:


> f := proc(x) 2-x^2 end proc;
f := proc (x) 2 x^2 end proc

Tm nghim gn ng xp x vi gi tr 1.0
> fsolve(f,1.0);

-1.414213562, 1.414213562

III. Tm nghim ca h phng trnh - h bt phng trnh


C php:

solve (eqns, vars)

+ eqns l mt phng trnh, bt phng trnh hay mt h phng


Trong :
trnh, h bt phng trnh no
+ vars l cc bin.
Hm Solve gii phng trnh cho c nghim thc v phc
V d: Gii phng trnh 2x2-8x+4=0, ta thc hin nh sau:
> restart:
solve(2*x^2-8*x+4=0);
2 + 2, 2 2

Hay trnh by kt qu di dng ca x:


> solve(2*x^2-8*x+4=0,{x});
{ x = 2 + 2 }, { x = 2 2 }

> restart:
solve(x^3+x-2);

1 1
1 1
1, + I 7 , I 7
2 2
2 2

2x - y = 1
3x + 2y = 0

Gii h phng trnh:

> restart:
solve({2*x-y=1,3*x+2*y=0});

Trang 39

{y =

-3
2
,x= }
7
7

Gii bt phng trnh x2 5x + 6 v trnh by kt qu theo khong


> restart:
solve(x^2-5*x+6<0,x);
RealRange( Open( 2 ), Open( 3 ) )

Ch :
+ RealRange (Open(2), Open(3)) l khong s thc m (2, 3).
+ RealRange (2, 3) l khong s thc ng tc on [2, 3 ].
x 2 2 x < 0
x + 2 > 0

Gii h bt phng trnh:

> restart:
solve({x^2-2*x<0,x+2>0},{x});
{ x < 2, 0 < x }

Gii phng trnh sau theo tng bc: x + m + x + m = 10


> restart:
(x+m+4/(x+m)=10);
x+m+

4
= 10
x+m

> y:=normal(%);
x2 + 2 x m + m 2 + 4
y :=
= 10
x+m

> VT:=lhs(y);
VT :=

x2 + 2 x m + m 2 + 4
x+m

> VP:=rhs(y);

VP := 10

> TU:=numer(VT);
TU := x2 + 2 x m + m2 + 4

> MAU:=denom(VT);

MAU := x + m

iu kin phng trnh c ngha, mu s phi khc 0 do :


> assume(MAU<>0);
Quy ng mu s, chuyn v:
> y:=TU-VP*MAU=0;
y := x~2 + 2 x~ m~ + m~2 + 4 10 x~ 10 m~ = 0

> y:=collect(y,x);
y := x~2 + ( 10 + 2 m~ ) x~ 10 m~ + m~2 + 4 = 0

> delta:=discrim(lhs(y),x);
:= 84

Xc nh cc h s a, b, c:
> a:=coeff(lhs(y),x,2);
Trang 40

a := 1

> b:=coeff(lhs(y),x,1);

b := 10 + 2 m~

> c:=coeff(lhs(y),x,0);
c := 10 m~ + m~2 + 4

Tm nghim ca phng trnh:


> x[1]:=(-b+sqrt(delta))/(2*a);
x1 := 5 m~ + 21

> x[2]:=(-b-sqrt(delta))/)(2*a);
x2 := 5 m~ 21

Ch :
+ My thng cho ta tt c cc nghim k c nghim phc i vi phng trnh
i s.
+ Khi gii cc phng trnh lng gic, i khi my ch cho ta mt vi nghim
tng qut i din ch khng phi l tt c cc nghim).
+ Kt qu ca vic gii h s c hin th dng kt qu nu my tm c
nghim chnh xc (nghim c th c biu din thng qua cc hm chun c sn ca
Maple nh SQRT, EXP, GAMMA, BESSEL,). Nu khng tm c nghim chnh
xc, hoc khng tm c nghim th kt qu s khng hin th ln mn hnh. Khi ,
ta c th tm nghim ca phng trnh bng cch tm nghim gn ng bng hm
fsolve(), hm cho gi tr gn ng evalf() hoc mt s phng php gn ng khc.
V d: Tm nghim ca phng trnh sau:
> y:=2*x+x^x-5=0;
y := 2 x + xx 5 = 0

> solve(y,x);
RootOf( 2 _Z + _Z _Z 5 )

Hm solve( ) khng tm c nghim chnh xc do nghim ca phng trnh


c lu tr di dng hm RootOf(). Mun xem gi tr ca nghim ny ta dng thm
hm nh gi evalf( )
> solve(y,x):
evalf(%);
1.534888777

Hoc ta gii trc tip bng hm fsolve(y, x) th ta c nghim gn ng ca


phng trnh trn:
> fsolve(y,x);
1.534888777

IV. Tm nghim ca h phng trnh bng hm RootOf


C php:
Trang 41

RootOf (expr)

Tm tt c cc nghim ca phng trnh expr = 0.

RootOf (expr, x)

Tm nghim ca phng trnh expr = 0 theo bin x.

RootOf (expr, x, c)

Tm nghim ca phng trnh expr = 0 theo bin x


v gi tr ca x gn vi gi tr c.
Tm nghim ca phng trnh expr = 0 theo bin x

RootOf (expr, x, a..b)

v gi tr ca x nm trong khong a...b.


RootOf (expr, x, index = i) Tm nghim th i ca phng trnh expr = 0 theo
bin x.
RootOf (expr, x, label = e) Tm nghim th i ca phng trnh expr = 0 theo
bin x v gn cc nghim vi tn trong label phn bit nghim phng trnh
ny vi nghim ca phng trnh khc.
Cc thng s:
+ expr

Mt biu thc i s hoc phng trnh.

+x

Bin

+ a, b, c

Cc gi tr hng s

+i

Ch s nghim th i ca phng trnh.

+e

Mt biu thc no .

Ch : Hm RootOf khng hin th nghim ca phng trnh do , xem


nghim ca cc phng trnh th ta dng thm mt trong cc hm sau:
+ allvalues (f)

Xem tt c cc nghim ca phng trnh f.

+ evalf (f)

Xem nghim gn ng ca f vi 10 ch s c ngha.

+ evalf (f, n)

Xem nghim gn ng ca f vi n ch s c ngha.

V d: Tm nghim ca phng trnh x3 2 = 0


> RootOf(x^3-2);
RootOf( _Z 3 2 )

Tm nghim ca phng trnh theo bin c ch nh


> RootOf(3*x^3-6=0, x);
RootOf( _Z 3 2 )

> RootOf(a*x^2+b*x+c,x);
RootOf( a _Z 2 + b _Z + c )

Nu trong phng trnh c nhiu tham s th ta phi ch nh tham s no l


bin cn cc tham s cn li c xem nh hng s.
Tm nghim ca phng trnh vi bin ca phng trnh c ch nh l b
> RootOf(y*b^2-y/x,b);
Trang 42

RootOf( _Z 2 x 1 )

Tm nghim ca phng trnh bng hm RootOf ri sau ly modulo theo m


> RootOf(2*x-1, x) mod 7;
4

Ch : Quy tc tnh modulo a mod b vi a l s hu t


+ Ly t s ca a cng vi b ri chia cho mu s, nu chia ht th dng.
+ Ngc li ly t s ca phn s mi tm c cng vi b ri em chia
cho mu s ca a. Lp li qu trnh trn cho n khi chia ht th dng.
+ Phn d ca php chia thng ca phn s va tm c vi b chnh l
kt qu cn tm ca a mod b.
V d: Tnh gi tr ca

1
mod 7
3

1+ 7 8
=
3
3

tip tc

8 + 7 15
=
=5
3
3

dng

+ 5 mod 7 = 5 vy

1
mod 7 = 5
3

> (x^3+1/3) mod 7;


x3 + 5

Tm nghim ca phng trnh x2 = 2 gn vi gi tr x = 1.4 ta thc hin


> RootOf(x^2=2, x, -1.4);
RootOf ( _Z 2 2, -1.4 )

xem kt qu ta dng hm evalf( )


> evalf(%);
-1.414213562

Tm tt c cc nghim ca phng trnh x3 2 = 0


> RootOf( x^3-2, x):
allvalues(%);
2

( 1/3 )
( 1/3 )
1 ( 1/3 ) 1
1 ( 1/3 ) 1
, 2
+ I 3 2 , 2
I 32
2
2
2
2

( 1/3 )

Phng trnh ny c 03 nghim. Mun ly nghim trong khong (1, 2) ta thc


hin nh sau:
> RootOf(x^3-2,x,1..2);
allvalues(%);
Trang 43

RootOf( _Z 3 2, 1 .. 2 )

( 1/3 )

ly nghim th 2 trong s 03 nghim trn, ta thc hin


> r2 := RootOf(x^3-2, index=2):
allvalues(r2);

( 1/3 )
1 ( 1/3 ) 1
2
+ I 32
2
2

ly kt qu nghim 02 gn ng n 4 s, ta thc hin


> evalf(r2,4);
-.6300 + 1.091 I

> r3 := RootOf(_Z^4-_Z^2-1, label=1);


r3 := RootOf( _Z 4 _Z 2 1, label = 1 )

> evalf(r3);
RootOf( _Z 4 _Z 2 1, label = 1 )

> allvalues(r3);

1
1
1
1
2+2 5,
2+2 5,
22 5,
22 5
2
2
2
2

> RootOf(x*exp(x)-y, x);


RootOf( _Z e _Z y )

> series(%, y);


3
8
125 5
y y2 + y3 y4 +
y + O( y6 )
2
3
24

Trang 44

CHNG IV

TH TRONG MAPLE
I. th trong khng gian 02 chiu (02 Dimension)
1. th hm thng thng y = f (x)
C php:

with (plots):
plot([expr1,expr2..], rangeH,rangeV, options)

Trong :
+ expr1,expr2: Biu thc biu din mt hay nhiu hm s hay cc hm
dng tham s.
+ rangeH: Xc nh min v th trn trc honh (x = a ..b)
+ rangeV: Xc nh min v th trn trc tung (y = c..d)
V d:

plot(x^2+1,x=-1..3,y=-2..10);

+ options: Cc ty chn v dng th, gm c cc ty chn sau:


a. Dng ca h trc to (axes): C cc ty chn: none, normal, boxed, frame
+ axes = none:

khng hin th h trc to

+ axes = normal:

hin th h trc to dng to cc

+ axes = boxed:

hin th h trc to dng hnh ch nht

+ axes = frame:

hin th h trc to dng frame

+ Mc nhin l normal
b. T mu cho th (color): color = red, green, blue, black,....
c. Chn kiu ng cho th (linestyle): linestyle = 0, 1, 2, 3, 4
+ 1: ng lin (solid)
+ 2: ng chm (dot)
+ 3: ng gch (dash)
+ 4: ng chm gch (dash-dot)
+ Gi tr mc nhin l 1.
d.Chn s lng im v cho mt th:
numpoints= <n>
Mc nhin l 50
e. Kiu im v th: ng, im hay symbol
+ style = line, point, patch , patchnogrid
style=line: th dng ng
style=point: th dng im
Trang 45

+ patch: ch dng khi th c cha hnh a gic


+ patchnogrid: patch v khng c li
+ Mc nhin l style= line
Nu style = point th ta c th chn thm kiu ca im
+ symbol=circle (trn), cross (gch cho), box(hnh vung), diamond
(ht kim cng)
+ Mc nhin l symbol = diamond
Ta cng c th chn kch thc ca cc symbol
+ symbolsize = <n>
+ Mc nhin l 10
f. dy ca ng v th (thickness):
+ thickness = 0,1,2,3
+ Mc nhin l 0
Chc nng ny ch c hiu lc khi style = line
g. T l co gin trn cc trc to (scaling):
+ constrained: cc trc c cng t l v di n v
+ unconstrained: cc trc khng b rng buc v t l di n v
+ Mc nhin l scaling = unconstrained
h. Chn h trc to v th (coords):
+ coords = cartesian

to cc

+ coords = polar

to cc

+ Mc nhin l to cc
Mt s cc h to khc: bipolar, cardioid, cassinian, elliptic, hyperbolic,
invcassinian, invelliptic, logarithmic, logcosh, maxwell, parabolic, polar, rose, tangent
i.Tiu ca th (title):
title = tn tiu ca th
j. Ch gii cho th (legend):
legend = text
k.Vit tiu cho trc tung v trc honh:
labels=[Tiu trc x,Tiu trc y]
V d: labels=[thi gian,qung ng]
l. Hng vit ch cho tiu trc tung v trc honh:
labeldirections = [x, y]
x,y: nhn cc gi tr l horizontal (ngang) hoc vertical (dc)
Mc nhin l horizontal
Trang 46

V d: vit tiu trc x nm ngang, tiu trc y hng thng ng


Labeldirections = [horizontal, vertical]
2. Hin th th hai chiu
Khi v th i khi ta khng mun cho hin th ngay th m ta gn
th cho mt bin ri khi cn thit th ta s dng hm display( ) hin th cc th
, c bit hm ny dng hin th cc th trong gi cng c plottools, v hin
th cc ghi ch trn th.
C php:

with (plottools):
display (L, insequence = true, options)

Trong :
+ L: mt th hoc nhiu th
+ options: cng c cc ty chn nh trong plot
+ insequence = true: cho hin th nhiu th th cc th s hin th
theo th t trong dy lit k L. th c lit k trc s hin th trc, tu chn ny
ch c tc dng trong v th ng (animation), cn trong th tnh th n ch hin
th th u tin trong dy lit k.
+ insequence=false: hin th cng mt lc tt c cc th trong dy L.
3. Vit ch trong th
C php:

with(plots):
textplot ([x, y, text])

Trong :
+ (x, y): V tr bt u xut chui k t ra mn hnh.
+ text: Chui cn xut ra mn hnh.
V d :

textplot([2,3,Do thi ham bac hai])

V d 1:V th hai hm s sau y=x2 v y=sin(x) trong min x [-2,2], trong


cng h to cc
> with(plots):
plot([x^2,sin(x)], x=-2..2,color=[red,blue],
linestyle=[1,1], numpoints=50, style=line,
labels=["truc x","truc y"],
labeldirections=[horizontal,vertical],
thickness=3,scaling=constrained);

Trang 47

V d 2: V th ng trn dng tham s


> restart:
with(plots):
plot([sin(t),cos(t),t=-Pi..Pi],color=blue,
scaling=constrained, thickness=2,axes=frame,
labels=["truc y","truc x"],
labeldirections=[horizontal,vertical],
title="DO THI DUONG TRON");

V d 3: V th hai hm sin(t) v cos(t) trn cng mt h trc to


> restart:
with(plots):
plot([sin(t),cos(t)],t= Pi..Pi,
thickness=[1,3],linestyle=[1,2]);

Ch s khc nhau khi t bin t trong ngoc vung cng vi hai hm (trong
v d 2) v t bin t ngoi ngoc vung (trong v d 3)
V d 4: V th hai hm sin(t) v cos(t) trn cng mt h trc to , min v
c xc nh trn trc tung v trc honh
> restart:
with(plots):
plot([sin(t),cos(t)],t=-Pi..Pi,-2..2,
thickness=[1,3],linestyle=[1,2]);

Trang 48

> restart:
with(plots):
plot([sin(t),cos(t)],t=-Pi..Pi,-2..1,
view=[-2..2,-1..1]);

V d 5: V th hm y= sin(3x) trong h to cc
> restart:
with(plots):
plot (sin(3*x), x = -Pi..Pi, coords = polar, scaling = constrained);

V d 6: V th hm s gin on c xc nh
1

f( x ) := -1

2<x
x<2
otherwise

Bc 1: khai bo hm s
> f(x):= piecewise(x>2,1,x<2,-1,0);
1

f( x ) := -1

2<x
x<2
otherwise

Bc 2: V th
plot(f(x),x=-5..5);

Nhn xt: th hm s ny gin on ti x=2, nhng khi v th chng trnh


t ng ni lin cc im gin on li. V vy ta thm thng s discont=true
Mc nhin s l discont=false
> plot(f(x),x=-5..5,discont=true);
Trang 49

V d 7: V hai ng c,d trn cng mt h trc to


> restart:
with(plots):
d:=plot(x-1,x=-1..2,numpoints=20,color=black):
c:=implicitplot(exp(y)+exp(x)=8,x=-2..10,
y=-2..10, color=blue):
tc:=textplot([2,2.3,exp(x)+exp(y)=8]):
td:=textplot([1,0.6,"y=x-1"]):
display([c,d,tc,td],insequence=false,thickness=1,
view=[-0.5..3,-2..3],scaling=constrained);

3. V ng cong vi tip tuyn


C php:

with (student):
showtangent (f(x), x = a)

Trong :
+ f (x) l hm s cn v
+ a l honh tip im.
V d:
> with(student):
showtangent(x^2+5, x = 2);

Trang 50

4. V ng cong theo tham s


C php:

with (plots):
plot ([x (t), y(t), t = a..b], options)
x = t sin(t )
y = 1 cos(t )

V d: V ng xycloide

> restrat:
with(plots):
plot([t-sin(t),1-cos(t),t=2*Pi..2*Pi],
scaling=constrained);

5. ng cong trong ta cc
Mc ch: V ng cong trong ta cc r = f ( ) vi [a, b]
C php:

with (plots):
polarplot ( r(theta), theta = a..b, options)

V d: V ng xon c Archimede r =
> restart:
with(plots):
polarplot(theta,theta=0..4*Pi);

6. th hm n
Hm n l hm khng c cng thc biu din mt cch tng minh m ch bit
c phng trnh biu din mi quan h chng v cc bin c lp f(x,y,z,...) = 0
V d: phng trnh Ellipse:
x2 y2
+
1 = 0
9 16
Trang 51

Ta dng hm implicitplot( ) trong gi cng c plots v th ca hm n


C php:

with(plots):
Implicitplot (f (x,y) = 0, x = a..b,y = c..d, option)

Trong :
+ x = a..b: min v th trn trc honh
+ y = c..d: min v th trn trc tung
+ option: tng t nh khi v th vi hm thng thng m ta s
dng phn trn.
Khi s dng cc hm trong gi cng c th ta ch np gi cng c (package) mt
ln v cc hm ca gi cng c vn cn lu trong b nh cho n khi ta dng lnh
restart khi ng li b nh.
V d1: V ellipse c phng trnh

x2 y2
+
=1
9
4

> restart:
with(plots):
implicitplot(x^2/9+y^2/4=1,x=-4..4,y=-3..3,
scaling=constrained,view=[-5..5,-3..3]);

V d 2: V th hm s c xc nh bi phng trnh

1 2 1 2
x y =1
3
4

> restart:
with(plots):
implicitplot(x^2/3-y^2/4=1,x=-5..5,
y=-5..5,coords=cartesian);

V d 3: v th ca hm s c xc nh bi phng trnh r = 1- cos( ),


= 0..2 trong h to cc.
Trang 52

> restart:
with(plots):
implicitplot(r = 1 - cos(theta),r=0..2,
theta=0..2*Pi,coords=polar,
scaling=constrained);

V d 4: V th ca hai hm s trn cng mt h trc to


x2 + y2 = 2
v y = ex
> restart:
p:=x^2+y^2=2:
q:=y=exp(x):
with(plots):
implicitplot({p,q},x=-Pi..Pi,y=-Pi..Pi,
scaling=constrained);

II. th trong khng gian 03 chiu (03 Dimension)


1. th hm thng thng z = f(x, y)
C php:

plot3d([f,g,h], x = a..b, y = c..d, options)

Trong :
+ f,g,h

nhng hm v th

+ a, b

hng s thc.

+ c, d

hng s thc, th tc hoc biu thc theo x

+ x, y

tn cc bin ca hm

+ options: Cc ty chn gm c cc tu chn sau y:


a. Trn mu cho th (ambientlight=[r,g,b]): Trn mu cho th theo 3 mu
[red, green, blue]
b. Kiu hin th ca h trc to (axes): axes = BOXED; NORMAL;
FRAME; v NONE. Mc nhin l NONE.
c. Mu cho th (color): color =red, green, blue, black,...
Trang 53

d. ng vin ca th (contours): contours = n. Mc nhin n =10


e. Chn kiu ca h trc ta (coord): coords = c: h trc to v th.
Mc nhin l to cc (cartesian)
c c th l mt trong cc h trc to sau cylindrical (tr), cartesian ( cc),
spherical (cu), ellipsoidal (elipxoit), ellcylindrical(elip tr), hypercylindrical
(hyperbol tr), logcylindrical (logicthm tr), maxwellcylindrical (maxwell tr),
oblatespheroidal (cu dt), paraboloidal (paraboloit), paracylindrical (parabol tr),
bipolarcylindrical (tr hai cc)...
f. T mu cho th (filled):
+ filled = true: v c t mu
+ filled = false: v khng t mu
g. Chn s im li cho th (grid): grid=[m,n]
+ m: s ng li trc x
+ n: s ng li trc y
h. Chn dng ca li (gridstyle): gridstyle gm mt trong hai gi tr
'rectangular' (hnh ch nht) ; 'triangular' (hnh tam gic).
i. Chn hng vit nhn trn cc trc ta :
+ labeldirections = [x,y,z]: hng vit nhn trn cc trc to

+ x,y,z nhn mt trong hai gi tr HORIZONTAL or VERTICAL. Mc


nhin l HORIZONTAL.
j. t nhn cho cc trc ta :
+ labels=[x,y,z] : t nhn cho cc trc to
+ x, y, z: dng chui.
k. chiu sng ca th:
+ light=[phi,theta,r,g,b]: chiu sng cho th.
+ phi, theta: cc gc trong to cu.
+ r,g,b: (red, green, blue): nhn gi tr t 0..1
l. Kiu chiu sng:
+ lightmodel = x: kiu chiu sng
+ x = 'none', 'light1', 'light2', 'light3', v 'light4'.
m. Chn kiu ng v c a th:
+ linestyle = n: kiu ng v th
+ n = 0, 1: kiu ng lin nt
+ n = 2: kiu ng chm chm (dots)
+ n = 4: kiu ng gch (dashes)
n. Xc nh s im v cho th: numpoints=n. Mc nhin l 252 = 625. S
im trn mi chiu s l sqrt(n)
Trang 54

o. Hng nhn ca th:


+ orientation=[theta,phi]: hng nhn th.
+ theta, phi: l cc gc c xc nh trong to cu, gi tr ca theta
v phi c tnh theo . Mc nhin l theta=phi=450
p. Php chiu th
+ projection = r: php chiu ca th
+ r nhn cc gi tr t 0 n 1, r cng c th nhn cc tn c sn nh l
FISHEYE (r = 0, mt c), NORMAL(r = 0.5), ORTHOGONAL (r =1, vung gc).
Mc nhin l r = 1.
q. T l di n v trn cc trc:
+ scaling = s: t l di n v trn cc trc
+ s gm mt trong hai gi tr sau
UNCONSTRAINED. Mc nhin l UNCONSTRAINED

CONSTRAINED

or

r. To bng cho th:


+ shading = s: bng cho th
+ s c cc gi tr sau XYZ, XY, Z, ZGREYSCALE, ZHUE, NONE
s. Kiu th:
+ style = s: kiu th
+ s gm mt trong cc gi tr sau POINT, HIDDEN, PATCH,
WIREFRAME, CONTOUR, PATCHNOGRID, PATCHCONTOUR, hoc LINE
+ Mc nhin l style = PATCH
t. Chn biu tng cho th:
+ symbol = s: biu tng cho th kiu point
+ s c cc gi tr sau BOX, CROSS, CIRCLE, POINT, and DIAMOND.
u. Kch thc ca biu tng:
+ symbolsize = n : kch thc cho symbol
+ n: s thc.
+ Mc nhin n = 10
v. B dy ca nt v:
+ thickness = n: b dy ca ng trong th
+ n = 0, 1, 2, 3
+ Mc nhin n = 0
w. nh s trn cc trc ta :
+ tickmarks = [k, n, m]: nh s trn cc trc to
+ k, n, m: l cc s nguyn dng
+ Mc nhin tickmarks = default
Trang 55

x. Vit tiu cho th:


+ title=text: vit tiu cho th
+ Dng k hiu \n bt u cho mt dng mi trong tiu . Mc nhin
l khng c tiu .
y. Chn font ch cho tiu :
+ titlefont=font name: font cho tiu ca th
+ font name: TIMES, COURIER, HELVETICA, and SYMBOL
z. Khung nhn ca th:
+ view =[xmin..xmax, ymin..ymax, zmin..zmax]: Xem mt vng trn th
+ Mc nhin l xem ton b th
2. Hin th cc th 3D
C php:

with (plots):
display3d (L,options)

Trong :
+ L: mt hoc nhiu th.
+ options: Cc ty chn tng t nh hm plot3d
V d 1: V mt phng z = x 2*y trong h to cc.
> restart:
with (plots):
plot3d(x-2*y,x=-2..2,y=-2..2,axes=box);

V d 2: V th hm s z = e x

y2

. Ta thc hin nh sau.

> restart:
with(plots):
plot3d(exp(-x^2-y^2),x=-2..2,y=-2..2,
title="MAT HAM MU",axes=frame,
gridstyle=triangular,
labels=["truc-x","truc-y","truc-z"],
scaling=constrained,shading=xyz,
light=[30,30,1,0.8,0.5],scaling=constrained,
filled=true, contours=30,
orientation=[60,30], thickness=1);
Trang 56

V d 3: V th hm s z=sin(xy) trong to cc.


> restart:
with(plots):
plot3d(sin(x*y),x=-2..2,y=-2..2,
title="MAT HAM SIN(X*Y)",axes=frame,
gridstyle=triangular,
labels=["truc-x","truc-y","truc-z"],
scaling=constrained, orientation=[30,45],
thickness=1,grid=[30,10],gridstyle=rectangular,
numpoints=1600,projection=1,
style=patchcontour,light=[30,45,0.3,0.9,0.8],
lightmodel=light4);

V d 4: V hai th trong cng mt h trc to cc


> restart:
with(plots):
plot3d({x/2+y,sin(x-y)},x=-5..5,y=-5..5,
axes=box,labels=["truc-x","truc-y","truc-z"],
scaling=constrained,orientation=[152,71]);

Trang 57

Th d 5: V th trong to cu (coords=spherical)
> restart:
with(plots):
plot3d({r*sin(phi)},r=0..2*Pi,phi=0..2*Pi,
axes=box,labels=["truc-x","truc-y","truc-z"],
scaling=constrained,orientation=[119,71],
coords=spherical);

V d 6: V th trong to tr (coords=cylindrical)
> restart:
with(plots):
plot3d({2},phi=0..2*Pi,r=0..2,axes=box,
labels=["truc-x","truc-y","truc-z"],
scaling=constrained,orientation=[119,71],
coords=cylindrical);

Trang 58

3. th hm 3D n
C php:

with (plots):
implicitplot3d ({exprs}, x =a..b, y = c..d, z = p..q,< options >)

Trong :
+ exprs: mt hay nhiu phng trnh v th
+ x = a..b, y = c..d, z = p..q: min v th.
+ a, b, c, d, p, q: l cc s thc
+ < options >: cc ty chn (nh phn th 3D)
V d 1: V hai th ca hai hm n x2 + y2 + z2 = 4, y = e-xz trn cng mt h
trc to .
> with(plots):
implicitplot3d({x^2 +y^2 + z^2 = 4,y = exp(-x*z)},
x=-1..2,y=-1..2,z=-1..1,axes=box,orientation=[161,60]);

V d 2: V hnh cu trong h to tr
> with(plots):
implicitplot3d(r^2+z^2 = 9, r=0..3,theta=-Pi..Pi,z=-3..3,
coords=cylindrical,scaling=constrained);

4. V th trong h ta tr
x = r cos( )

Mc ch: V ng cong trong h ta tr c phng trnh y = r sin ( )


z = z

Trang 59

C php:

with (plots):
cylinderplot (r = a..b, theta = c..d, z = e.. f, options)

Trong :
+ r, theta, z l cc bin ca phng trnh.
+, a..b, c..d, e..f l cc khong bin thin ca r, theta, z.
+ options: Cc ty chn nh plot3D
V d:
> restrat:
with(plots):
cylinderplot(1,theta=0..2*Pi,z=-1..1);

> restrat:
with(plots):
cylinderplot(1+z^2,theta=0..2*Pi,z=-1..1,style=patch,
shading=zhue,thickness=1);

5. V th trong h ta cu
Mc ch: V ng cong trong h ta cu c phng trnh
x = r cos( )sin ( )

y = r sin ( )sin ( )
z = r cos( )

C php:

with (plots):
with (plottools):
sphereplot (r = a..b, theta = c..d, phi = e..f, options)

Trang 60

Trong :
+ r, theta, phi l cc bin ca phng trnh.
+, a..b, c..d, e..f l cc khong bin thin ca r, theta, phi.
+ options: Cc ty chn nh plot3D
V d:
> restart:
with(plots):
with(plottools):
sphereplot(1,theta=0..2*Pi,phi=0..Pi/2,
axes=boxed,style=patch);

> restart:
with(plots):
with(plottools):
display(sphere([0,0,2]),torus([0,0,-2]),
style=patch,axes=frame,scaling=constrained);

III. th ng
1. th 02 chiu ng
C php:

with (plots):
animate(expr, x =a..b, t =c..d, options);
Trang 61

Trong :
+ expr: hm v th ng
+ x = a..b: khong v trn trc honh
+ t: bin thay i dng ca th
+ t = c..d: khong thay i ca bin t.
+ options: Cc ty chn nh th 2D
+ frames = n: s lng frame dng cho hin th ng
Khi mun cho th chuyn ng sau khi v xong ta click chut vo th ta
s thy mt dy cc nt dng
iu khin cho vic
chuyn ng ca th xut hin,
click vo nt play th
th s chuyn ng.
V d: V th hm sin(x) v cho th chuyn ng di ngang mt chu k
(t=0..2* Pi), s frame hin th l 100 frame
> with(plots):
animate(sin(x+t),x=0..2*Pi,t=0..2*Pi,frames=100);

V d 2: V th hm s y=e-x/t bin i
> with(plots):
animate(exp(-x/t),x=0..2,t=1..100,frames=100);

V d 3: V hai ng trn c bn knh tng dn thay phin nhau hin th


> with(plots):
a:=animate([t*cos(x),t*sin(x),x=0..2*Pi],
t=1..10,frames=10,scaling=constrained):
b:=animate([t*cos(x),t*sin(x),x=0..2*Pi],t=1..10,
frames=10,scaling=constrained,color=blue):
display([a,b],insequence=true);

Trang 62

2. th 03 chiu ng
C php:

with (plots):
animate3d (F, x = a..b, y =c..d, t =e..f, options)

Trong :
+ F: hm v th ng
+ x, y: khong v trn trc x v y
+ t: bin ng
+ t = e..f: khong gii hn ca frame
+ options: Cc ty chn tng t nh plot3d
Cch cho th chuyn ng tng t nh th ng hai chiu
V d 1:V th ng trong to cc, bin ng l u
> restart:
with(plots):
animate3d([x*u,t-u,x*cos(t*u)],x=1..3,t=1..4,u=2..4);

V d 2:V th ng trong to cu, bin ng l u


>with(plots):
animate3d([x,y,(1.3)^x * sin(u*y)],
x=1..3,y=1..4,u=1..2,coords=spherical);

Trang 63

V d 3:V ng thi hai th ng trong to tr


> p:=animate3d([x*u,u*t,x*cos(t*u)],x=1..3,t=1..4,
u=2..4,coords=cylindrical):
> q:=animate3d(cos(t*x)*sin(t*y),x=-Pi..Pi,
y=-Pi..Pi,t=1..2,color=cos(x*y)):
> plots[display](p,q);

IV. Mt s dng th c bit


Ta c th v nhng th dng c bit nh ng trn, ellipse, hyperbal...bng
nhng hm nm trong gi cng c plottools.
1. Hm v ng trn
C php:

circle(c,r,options): v ng trn tm c bn knh r

Trong :
+ c: to ca tm ng trn

+ r: di bn knh ca ng trn. Mc nhin r = 1


+ options: cc ty chn nh hm plot()
V d: V ng trn c tm [2,1] bn knh r=3
> restart:
with(plottools):
dt:=circle([2,1], 3, scalling=constrained,
style=line,thickness=2):
Trang 64

plots[display](dt);

2. Hm v Ellipse
C php:

ellipse(c, a, b, options)

Trong :
+ c: tm ellipse
+ a: na di ca trc ellipse trn trc honh
+ b: na di ca trc ellipse trn trc tung
+ filled = true: t ellipse (false: khng t). Mc nhin l filled = false
1
4

V d: v ellipse c t eq := x2 + y2 = 1
>restart:
with(plottools):
eq := (x-x0)^2/a^2 + (y-y0)^2/b^2 = 1;
a := 2: b := 1: x0 := 0; y0:=0;
e := ellipse([x0,y0], a, b, filled=true, color=gold):
plots[display](e, scaling=constrained);
1
eq := x2 + y2 = 1
4

x0 := 0
y0 := 0

3. Hm v hnh ch nht
C php:

rectangle([x1, y1],[x2,y2],options);

Trong :
+ [x1, y1]: to nh di bn tri
+ [x2, y2]: to nh trn bn phi
+ options: tng t nh hm plot( )
Trang 65

V d: v hnh ch nht c nh trn bn tri v nh di bn phi ln lt l:


A = [1,2] ,C = [4,5]
> cn:=plottools[rectangle]([1,1],[4,3],color=blue):
plots[display](cn,scaling=constrained,view=[0..5,0..4]);

4. V on thng ni hai im
C php:

with (plottools):
line([x1,y1], [x2,y2], options);

Trong
+ [x1, y1] l im u ca on thng
+ [x2, y2] l im cui ca on thng
V d: V on thng t A:=[-1,1] n B:=[3,4]
> dt:=plottools[line]([-1,1],[3,4],style=line):
plots[display](dt,view=[-2..5,0..5],
color=red,thickness=2);

5. V hyperbol
C php:

with(plottools):
Hyperbola ( [x0,y0], a, b, range);

Trong :
+ [x0, y0]: to tm i xng
+ a, b: l mt n a di cc cnh ca hnh ch nht c s a^2+b^2=c^2
+ range: min v x = a..b,y = c..d
V d: V hyperbol c xc nh bi phng trnh
> restart:
with(plottools):
with(plots):
Trang 66

x2
y2 = 1
4

a := 2: b := 1: x0 := 0: y0 := 0:
eq := (x-x0)^2/a^2 - (y-y0)^2/b^2 = 1;
h := hyperbola([x0,y0], a, b, -2..2):
display(h);

6. V a gic
C php: with (plottools):
polygon([[x1,y1], [x2,y2], [x3,y3],....], options);
V d: V a gic bn cnh
> with(plottools):
dagiac := polygon([[0,1], [3,4], [3,1],[1,0]],
color=red, thickness=2, scaling=constrained):
plots[display](dagiac, view=[-1..4,-1..5]);

7. V cung ellipse
C php:

with (plottools):
ellipticArc([x0,y0], a, b, arc1..arc2, options);

Trong :
+ [x0, y0]: to tm ellipse
+ a, b: di mt na cnh ca hnh ch nht c s
+ arc1: gc u
+ arc2: gc cui
V d: V cung ellipse t gc u 00 n gc cui 4 /3
> restart:
with(plottools):
d := ellipticArc([0,0], 4, 2, 0..4*Pi/3,
filled=true, color=green):
plots[display](d,scaling=constrained,
view=[-5..5,-5..5]);

Trang 67

8. V cung trn
C php:

with(plottools):
arc(c, r, a..b, options);

Trong :
+ c: to tm cung trn
+ r: bn knh
+ a..b: t gc bt u n gc cui
V d: V cung trn tm [1,0] bn knh r=1 t gc

> with(plottools):
a := arc([1,0], 1, Pi/2..Pi):
plots[display](a,scaling=constrained);

9. V th theo cc im cho trc


C php:

with(plots):
PLOT(CURVES([[x1,y1],[x2,y2],[x3,y3],..]));

V d: V th qua cc im sau
> A:=[1,2]:B:=[3,5]:C:=[3,2]:E:=[1,2]:
PLOT(CURVES([A,B,C,E]),COLOR(RGB,0,0.5,1));

Trang 68

CHNG V

GII HN - O HM TCH PHN


I. Gii hn
1. C php

Limit(f, x=a): Hm tr
Limit(f, x=a, dir): Hm tr
limit(f, x=a): Hm cho gi tr trc tip
limit(f, x=a, dir) : Hm cho gi tr trc tip
Trong :
+ f l mt biu thc i s (an algebraic expression)
+ x l bin ca hm f
+ a l mt gi tr, hoc infinity ( + ), hoc -infinity (- )
+ dir ch hng ly gii hn
left - gii hn bn tri
right - gii hn bn phi
real - gii hn thc
complex - gii hn phc
V d 1:Vit gii hn di dng hm tr
> f:=Limit(sin(x)/x, x=0);
f := lim

x 0

sin( x )
x

Mun tnh gi tr ca gii hn trn ta thc hin


> f:=value(f);

f := 1

Hoc ta tnh bng lnh trc tip


> f:=limit(sin(x)/x, x=0);
f := 1

Ta cng c th thc hin nh sau


>Limit((x^2-3*x+3)/(x*(5*x-1)),x=infinity):%=value(%);
x2 3 x + 3 1
lim
=
5
x x (5 x 1)

V d 2:Tnh gii hn lim e x


x

Trang 69

> limit(exp(x), x=-infinity);


0

V d 3: Tnh gii hn ca hm s y =

1
khi x 0
x

> limit(1/x, x=0);


undefined

V kt qu ny c nhiu gi tr nn my khng tnh c. Nhng nu ta tnh c


th cho tng trng hp th my s tnh c.
1
x

Tnh gii hn phc ca

> Limit(1/x, x=0,complex):%=value(%);


1
=I
x

lim

x 0,complex

Tnh gii hn bn tri im 0


> Limit(1/x, x=0,left):%=value(%);
lim

x 0-

1
=
x

Tnh gii hn bn phi im 0


> Limit(1/x, x=0,right):%=value(%);
lim

x 0+

V d 4: Tnh gii hn: lim


x 1

1
=
x

x +1 2
x

> limit((sqrt(x+1)-sqrt(2))/(x^(1/3)-1),x=1);
3
2
4

> (Limit(1/x,x=0)*Limit(x,x=0));
lim 1 ( lim x )
x 0 x x 0

> combine(%);
lim 1

x 0

2. V d ng dng
2
3

Dng nh ngha vit on chng trnh tnh o hm ca hm s x 2 + x


ti im x0 = 0.
Trang 70

> restart:
with(student):
f:=x->-2/3*x^2+x;

2
f := x x2 + x
3

> (f(x+h)-f(x))/h;

2
2
( x + h )2 + h + x2
3
3
h

> Limit(%,h=0);

2
2
( x + h )2 + h + x2
3
3
lim
h
h0

> value(%);

4
x+1
3

> kq:=subs(x=0,%);

kq := 1

>print(`Vay ta co:(`,Diff(2/3*x^2+x,x),`x=0)= `,kq);


Vay ta co : (,

2 2
x + x , x = 0 ) = , 1
x 3

II. O HM CA HM S
1. o hm ca hm thng thng
a. o hm mt bin
C php:

diff (f,var): hm cho gi tr trc tip


Diff (f,var): Hm tr
D(f)(var): ton t vi phn

Trong
+ f l hm s cn ly o hm
+ var l bin ly o hm
x2 + x +1
V d 1: Tnh o hm ca hm s f =
x 1

> f:=(x^2+x+1)/(x-1);
f :=

x2 + x + 1
x1

> diff(f,x);
2 x + 1 x2 + x + 1

x1
( x 1 )2
Trang 71

Rt gn li biu thc trn


> normal(%);
x2 2 x 2
( x 1 )2

V d 2: Tnh o hm ca hm s y=xsin(cos(x))
> Diff(x*sin(cos(x)),x):%=value(%);

x sin( cos( x ) ) = sin( cos( x ) ) x cos( cos( x ) ) sin( x )


x
x 3 + x x 0
V d 3: Tnh o hm ca hm s g ( x) =
2( x 1)2 x > 0

> g:=piecewise(x>=0,x^3+x,2*(x-1)^2);
g := {

x3 + x
2 (x 1)

0x
2

otherwise

> diff(g,x);
4x4

undefined
3 x2 + 1

x<0
x=0
0<x

> Diff(g,x);
x3 + x

{
x 2 ( x 1 ) 2

0x

otherwise

b. o hm bc cao v o hm ring:
C php:

diff(expr,x1,x2,...,xn);
diff(expr,[x1,x2,...,xn]);
Diff(expr,x1,x2,...,xn);
Diff(expr,[x1,x2,...,xn]);

Trong :
+ expr l biu thc cn ly o hm
+ x1,x2... cc bin ly o hm
V d 1: Tnh o hm

2
(xy sin (x ) sin ( y )) ta thc hin nh sau
x 2

> expr:=x*y-sin(x)-sin(y);
expr := x y sin( x ) sin( y )

> diff(expr,[x,x]);
sin( x )
Trang 72

V d 2: Vit cng thc tnh o hm ca

3
f ( x, y , z )
y 2 x

> Diff(f(x,y,z),x,y,y);
3
y 2 x

f( x, y, z )

> Diff(y^3*cos(y),y$2):%=value(%);
2
y

y3 cos( y ) = 6 y cos( y ) 6 y2 sin( y ) y3 cos( y )

2. o hm ca hm n
Hm n l hm khng c cng thc biu din mt cch tng minh m ch bit
c phng trnh biu din mi quan h gia chng v cc bin c lp.
a. Hm n v hng:
L hm xc nh bi phng trnh f(x,y)=0, trong y l bin ph thuc mt
chiu (hm) cn x l bin c lp.
C php:

implicitdiff(f, y, x): Ly o hm cp 1 ca y theo mt bin x


implicitdiff(f,y,x$k): Ly o hm bc k ca y theo mt bin x

implicitdiff(f, y, x1,...,xk): Ly o hm ring bc k ca y theo


cc bin x1,x2,....,xk.
x2
= 0 ta
V d 1: Tnh o hm ca hm y c xc nh bi biu thc y
z

thc hin
>

f:=y - x^2/z=0;
f := y

x2
=0
z

> implicitdiff(f,y,x);
2

Vy ta c

x
z

2x
y=
x
z

x2
=0
o hm ca y theo z c xc nh bi phng trnh y
z

> implicitdiff(f,y,z);

Vy ta c

x2
z2

x2
y= 2
z
z
Trang 73

V d 2: Cho x 2 + y 3 = 1
> g:=x^2+y^3=1;
g := x2 + y3 = 1

Tnh

y ta thc hin
x

> implicitdiff(g,y,x);

2 x
3 y2

Ta c th tnh tun t nh sau:


+ Rt y theo x
> y:=(1-x^2)^(1/3);
y := ( 1 x2 )

( 1/3 )

+ Ly o hm ca y theo bin x
> Diff(y,x):%=value(%);
( 1/3 )
2

( 1 x2 )
=
3
x

Tnh

x
( 1 x2 )

( 2/3 )

x
y

> implicitdiff(g,x,y);
3 y2

2 x

Tnh

y
z

> implicitdiff(g,y,z);
0

> implicitdiff(g,y(x),x);

2 x
3 y2

Ch
> implicitdiff(f,y(a),x);
Error, (in implicitdiff) 2nd argument, y(a), must be a function of, x
My bo li v y=y(a) bin theo a cn ly o hm th theo x
Trang 74

V d 3 : Tnh o hm cp hai ca hm y theo x ca biu thc g = x 2 + y 3 = 1


> restart:
g:=x^2+y^3=1;
g := x2 + y3 = 1

> implicitdiff(g,y,x,x);
2 3 y3 + 4 x2

9
y5

Hoc ta c th vit nh sau


> implicitdiff(g,y,x$2);

2 3 y3 + 4 x2
9
y5

V d 4: Cho x,y,z c xc nh bi biu thc ax 3 y

2y
z2 = 0
z

> f := a*x^3*y-2*y/z-z^2=0;
f := a x3 y

o hm ring

2y
z2 = 0
z

y ( x, z )
x

> implicitdiff(f,y(x,z),x);
3

a x2 y z
a x3 z 2

y ( x, z ) . Trong y,
zx

o hm ring ca hm y(x,z) theo hai bin x v z


x, z c xc nh bi phng trnh ax 3 y

2y
z 2 = 0 . Ta thc hin nh sau:
z

> implicitdiff(f,y(x,z),x,z);
6

a x2 ( 2 y z 3 )
a 2 x6 z 2 4 a x3 z + 4

b. Hm n vect:
Hm n vect c xc nh bi h phng trnh {f1, f2,,fm}, trong mi fi
l mt phng trnh theo bin ph thuc {y1, y2,,yn} (cc hm n) v cc bin c
lp x1,x2,, xk.
ly o hm ca hm n vect ta thc hin nh sau:
+ Tnh o hm ca cc hm thnh phn {u1 , u 2 ,L, u r } trong vect hm
{y1 , y 2 ,L, y n } theo bin x
Trang 75

implicitdiff({ f1 ,..., fm },{ y1 ,...., yn },{ u1 ,..., ur },x);


+ Tnh o hm ring cp k theo cm bin x1,x2,...,xk ca cc hm thnh
phn {u1 , u 2 ,L, u r } trong vect hm {y1 , y 2 ,L, y n }
implicitdiff({ f1 ,..., fm },{ y1 ,...., yn },{ u1 ,..., ur },x1,x2....,xk);
Trong :
+ fi : cc biu thc i s hoc cc phng trnh
+ yi : cc bin ph thuc (cc hm)
+ ui : Nhm cc hm m ta s ly o hm
+ xi : Tn cc bin m ta cn ly o hm ring
V d 1: Cho f v g c xc nh nh sau
> restart:
f:=x^2+2*y^2=z^2+1;g:=y^2-2*x^3-z=0;
f := x2 + 2 y2 = z 2 + 1
g := y2 2 x3 z = 0

> implicitdiff({f,g},{y(x),z(x)},{z,y},x);
{ D( y ) =

1 x (1 + 6 z x)
x (1 + 6 x)
, D( z ) =
}
1 + z
2 y ( 1 + z )

Hoc ta c th dng lnh sau y t cho biu tng D(y) l k hiu o hm

dng

y
x

> implicitdiff({f,g},{y(x),z(x)},{z,y},x,notation=diff);
{

1 x (1 + 6 z x)
x (1 + 6 x)

y=
, z=
}
x
1 + z
2 y ( 1 + z ) x

V d 2: Cho hai phng trnh f v g c xc nh bi:


> f := y^2-2*x*z = 1;g := x^2-exp(x*z) = y;
f := y2 2 z x = 1

g := x2 e

(z x)

=y

Trong y=y(x) v z=z(x).


Tnh o hm ca y theo x. Bit x, y, z c xc nh theo g
> implicitdiff({g},{y(x),z(x)},{y},x,notation=Diff);
{

(z x)
(z x)

D( z ) x e
z}
y=2xe
x

Tnh o hm ca y theo x. Bit x, y, z c xc nh trong h {f,g}


Trang 76

> implicitdiff({f,g},{y,z},{y},x,notation=Diff);
{

Ta tnh cng mt lc

x
}
y=2
(
z
x)
x
ye
+1

z v
y . Bit x, y, z c xc nh trong h {f,g}
x
x

> implicitdiff({f,g},{y(x),z(x)},{y,z},x,notation=Diff);
(z x)

z+z
x

z = 2 y x + y e
,
y
2
=

x
(z x)
(z x)

x (y e
+ 1)
ye
+ 1

V d 3: Cho 3 phng trnh f, g, h c xc nh nh sau:


> f := a*sin(u*v)+b*cos(w*x)=c;
f := a sin( u v ) + b cos( w x ) = c

> g := u+v+w+x=z;
g := u + v + w + x = z

> h := u*v+w*x=z;
h := u v + w x = z

Trong cc hm u=u(x,z), v=v(x,z), w=w(x,z)


+ u = u(x,z): Ngha l u l hm ph thuc vo hai bin x v z
Tnh o ring ca hm u theo bin z xem x l hng s. Bit u, v, w, z ,x c
xc nh t h 3 phng trnh {f, g, h} trn.Ta thc hin nh sau:
> implicitdiff({f,g,h},{u(x,z),v(x,z),w(x,z)},{u},z,
notation=diff);
a cos( u v ) u + cos( u v ) a x u b sin( w x ) x + x b sin( w x ) u

{ u =
}
( a cos( u v ) + b sin( w x ) ) ( u v ) x
z x

o ring ca cc hm u, v, w theo bin x xem z l hng s. Bit u, v, w, z ,x


c xc nh t h 3 phng trnh {f, g, h}.Ta thc hin nh sau:
> implicitdiff({f,g,h},{u(x,z),v(x,z),w(x,z)},{u,v,w},x);
{ D1( w ) =

w
u ( w + x )
v (w x)
, D1( u ) =
, D1( v ) =
}
x
x (v u)
(u v) x

> implicitdiff({f,g,h},{u(x,z),v(x,z),w(x,z)},{u,v,w},
x,notation=Diff);

u ( w + x )
w
v (w x)
{ u =
, w = , v =
}
x x
x ( v u ) x
(u v) x
x z
z
z

o ring ca cc hm u, v, w theo bin z xem x l hng s. Bit u, v, w, z ,x


c xc nh t h 2 phng trnh {g, h}.Ta thc hin nh sau:
Trang 77

> implicitdiff({g,h},{u(x,z),v(x,z),w(x,z)},{u,v,w},
x,notation=diff);


x v =

z

u x + u v + w x
x z
x z
ux

, w =
x z

u v u u u + w

x z
x z
ux

u = u
x x
z
z

III. TCH PHN


1. Tch phn mt lp
a. Tch phn bt nh:(nguyn hm ca hm s)
C php:

int(f, var);
Int(expr, x);

Trong :
+ f: biu thc di du tch phn.
+ var: bin ly tch phn.
V d 1: Tnh tch phn (nguyn hm) ca hm f (x ) = 2 x 2 + sin x
> f:=2*x^2+sin(x);
f := 2 x2 + sin( x )

> int(f,x);

2 3
x cos( x )
3

Ta cng c th thc hin nh sau:


> A:=Int(f,x);
2
A :=

2 x + sin( x ) d x

> value(A);

2 3
x cos( x )
3

Hoc ta vit nh sau:


> Int(f,x):%=value(%);

2 x2 + sin( x ) d x = 2 x3 cos( x )

4 x2 + x 2
d x ta thc hin nh sau:
3
3
x
+

2
x
5

V d 2: Tnh tch phn

> f:=(4*x^2+x-2)/(3*x^3+2*x-5);

Trang 78

4 x2 + x 2
f :=
3 x3 + 2 x 5

> B:=int(f,x);
B :=

3
35
13
1
ln( x 1 ) + ln( 3 x2 + 3 x + 5 ) +
51 arctan ( 6 x + 3 ) 51
11
66
187
51

Rt gn biu thc li ta c:
> B:=normal(B);
B :=

3
35
13
1
ln( x 1 ) + ln( 3 x2 + 3 x + 5 ) +
51 arctan ( 2 x + 1 ) 51
11
66
187
17

kim tra li ta ly o hm ca B
> diff(B,x);

35
78
(6 x + 3)
66
187
3 1
+
+
2
11 x 1 3 x + 3 x + 5
3
1 + ( 2 x + 1 )2
17

Rt gi li biu thc ta c:
> normal(%);

4 x2 + x 2
( x 1 ) ( 3 x2 + 3 x + 5 )

2
V d 3: Tnh tch phn

ln( x + 1 + x ) d x

> C:=int(ln(x+sqrt(1+x^2)),x);
C := ln( x +

1 + x2 ) x

1 + x2

> Int(ln(x+sqrt(1+x^2)),x):%=value(%);

ln( x + 1 + x2 ) d x = ln( x + 1 + x2 ) x 1 + x2

x
V d 4: Tnh tch phn

sin( x ) e d x

> E:=int(sqrt(1-x^2)*sin(x),x);
E :=
1 x2 sin( x ) d x

My khng tnh c tnh phn ny do n hin ln biu thc nguyn thy,


nhng nu ta ch cho n phng php tnh thch hp (i bin, tng phn, nghim
chui) th n s tnh c.
Ta tm nghim tch phn trn di dng chui bng cch khai trin biu thc
tch phn trn theo chui ly tha ca x
> E:=series(E,x,6);
E :=

1 2 1 4
1 6
x x
x + O( x7 )
2
6
180

Trang 79

( x )
ln( x ) d x
V d 5: Tnh tch phn
e
2

> F:= exp(-x^2)*ln(x);


F := e

2
( x )

ln( x )

> P:=int(F,x);
( x2 )
P :=
ln( x ) d x
e

My khng tnh c tch phn ny chnh xc do n khng hin th kt qu,


do ta tm nghim gn ng ca tch phn trn di dng chui nh sau
Khai hm di du tch phn thnh chui ly tha
> F:=series( F, x, 4 );
F := ln( x ) ln( x ) x2 + O( x4 )

Tnh tch phn ca hm khai trin ny


> P:=int(F,x);

1
1
P := x ln( x ) x ln( x ) x3 + x3 + O( x5 )
3
9

Hoc ta cng c th lm nh th d 4 l ta khai trin tch phn thnh chui th


ta cng tm c kt qu:
> P:=series(P,x);
1
1
P := ( ln( x ) 1 ) x + ln( x ) + x3 + O( x5 )
9
3

Ly phn chnh trong biu thc trn:


>convert(P,polynom);

1
1
P := x ln( x ) x ln( x ) x3 + x3
3
9

b. Tch phn xc nh
C php:

int(f, x=a..b);
Int(f, x=a..b );

Trong :
+ f: biu thc cn tnh tch phn.(f phi lin tc trn an [a,b] hoc c
im gin an loi 1 trn an [a,b])
+ x: bin ly tch phn
+ a..b: khong ly tch phn

V d 1: Tnh tch phn sau:

1
2

cos( x )
dx
1 + sin( x ) 2

Trang 80

> int(cos(x)/(1+sin(x)^2),x=0..Pi/2);
1

Hoc ta mun nhn dng tng minh ca biu thc tch phn ta dng hm Int():
> p:=Int(cos(x)/(1+sin(x)^2),x=0..Pi/2);
1/2

p :=

cos( x )
dx
1 + sin( x )2

Mun xem kt qu tnh trn ta dng hm value():


> value(p);
1

( 1 + sin( x ) ) e x dx ta thc hin


V d 2: Tnh B:=

> f:=(1+sin(x))*exp(x);
f := ( 1 + sin( x ) ) e x

> B:=int(f,x=0..1);
1
1
1
B := e e cos( 1 ) + e sin( 1 )
2
2
2

Mun nhn tr gn ng ca biu thc trn ta thc hin:


> evalf(%,4);
.7855

V d 3: Tnh tch phn:

dx

1 + x4

> Int(1/sqrt(1+x^4),x=0..1):%=value(%);
1

1
1+x

dx =

1
1
EllipticK
2
2
2

Kt qu tnh c c biu din qua hm EllipticK hm Elliptic c nh


z

ngha nh sau:

EllipticF(z,k) =

1
1 t2

EllipticK(k)=EllipticF(1,k)
b

sin( x )
dx
V d 4: Tnh tch phn

a
Trang 81

1 k2 t 2

dt

> Int(sin(x)/x,x=a..b)=int(sin(x)/x,x=a..b);
b

sin( x ) d x = Si( b ) Si( a )

Tch phn c biu din qua hm Si(x). Hm ny c nh ngha


x

sin( t )
dt
Si(x)=

t
0
2

1x
Tnh tch phn sau
f( x ) d x
0
otherwise

1
V d 1: Cho hm s f( x ) := {
2

> f:=piecewise(x>=1,1,2);
f := {

1
2

1x
otherwise

V ng biu din ca hm s:
> plot(f,x=0..2,y=-2..2,discont=true);
Ta nhn thy rng x=1 l im gin an loi 1 nn n kh tch trong an [0,2]

> s:=int(f,x=0..2);

s := 3

> plot(f,x=0..2,y=-2..2,discont=false,filled=true);

Nhn xt: s chnh l din tch phn hnh t mu ca th.


Trang 82

c. Tch phn suy rng: l tch phn c cc dng sau:

c1. Khong ly tch phn l v hn:


f( x ) d x ,
f( x ) d x ,
f( x ) d x
a

+ Nu khong ly tch phn l [a, )

f( x ) d x = lim
f( x ) d x
a
b
a

+ Nu khong ly tch phn l (- ,b]


b

f( x ) d x = lim
f( x ) d x

a ( )
a

+ Nu khong ly tch phn l (- ,+ ) th ta chia khong ra lm hai


khong (- , a] v [a,+ ) ri ly tch phn nh trn.
c2. Hm cn ly tch phn c im gin an v cc trong khang ly tch phn
2

1
1
gin an v cc ti x = 0 trong on [-1, 2]
V d:
d x hm y =

x
x

-1

tan( x ) d x hm tan(x) gin an v cc ti x =


trong on [0, ]

0
2

Nu hm f(x) lin tc trn na on [a,b) v gin on v cc ti x = b. Gi s


c

tn ti gii hn lim
f( x ) d x hu hn th tch phn l hi t v:
c b-
a
b

f( x ) d x = lim

f( x ) d x
a
c b-
a

Nu hm f(x) lin tc trn na an (a,b] v gin on v cc ti x = a. Gi s


b

tn ti gii hn lim
f( x ) d x hu hn th tch phn l hi t v
c a+
c

f( x ) d x = lim
f( x ) d x
a
c a+
c

Nu hm f(x) lin tc trong khong [a,b), (b,d] v b gin on v cc ti x = b.

c
d

Gi s tn ti gii hn lim f( x ) d x + lim f( x ) d x hu hn th tch phn trn


c b- a
c a+ c

d
c
d

l hi t v
f( x ) d x = lim
f( x ) d x + lim
f( x ) d x
a
c a+ c

c b- a

dx
V d 1: Tnh tch phn sau:
2

1+x
0
Trang 83

> f:=1/(1+x^2);
f :=

1
1 + x2

Dng thc tch phn


> A:=Int(f,x=0..infinity);

A :=
dx
1 + x2

Gi tr ca tch phn ny l
> A:=value(A);
A :=

dx
V d 2: Tnh tch phn sau:
( x a )2

> int( 1/(x-a)^2, x=0..2 );

a 0
0

a < 2 a +


2 a
0
( 2 + a ) a

0
2 2

0

a 0

a < 2 a 2

2 a

Ta nhn thy rng gi tr ca tch phn trn ph thuc vo gi tr ca a: cn


tri, cn phi, hay a nm trong on [0,2].
Nu a khng thuc khong ly tch phn th cho biu thc n gin ta b qua
im gin an ca hm s ti a.
> int( 1/(x-a)^2, x=0..2,continuous );
2

1
( 2 + a ) a

Ch : Kt qu ny ch ng trong trng hp a khng thuc khong ly tch phn.


1

V d 3: Tnh tch phn sau:

x 1 dx
0

> int(1/(1-x), x=0..1);


1

x 1 dx
0

My khng tnh c tch phn ny.


Nhn xt: Hm di du tch phn c im gin an v cc ti im x = 1
nm trong khong ly tch phn.
y l tch phn suy rng loi 2, mun tnh tch phn ny th dng cng thc
tnh tch phn suy rng tnh.
> restart:
Trang 84

g:=1/(1-x);
f:=Int(1/(1-x), x=0..c):
g :=

1
1x

>Limit(f,c=1,left):%=value(%);
c

1
lim
dx =

c 1-
1x
0

Vy tch phn ny phn k


2. Tch phn bi
Ta c th tnh tch phn hai lp, ba lp bng cc hm trong gi cng c student.
a. Tch phn 2 lp
C php:

with(student):
Doubleint (f, x, y): tch phn bt nh
hoc Doubleint (g, x, y, Domain)
hoc Doubleint (g, x = a..b, y = c..d ): tch phn xc nh.

Trong :
+ f:biu thc ly tch phn.
+ x, y: Cc bin ca f.
+ a, b, c ,d: Cn ly tch phn.
+ Domain: Tn min ly tch phn.
V d 1:Vit cng thc tnh tch phn bt nh sau:

f( x, y ) d x d y

> with(student):
Doubleint(f(x,y),x,y);

f( x, y ) d x d y

x2 y sin( y ) d x d y
V d 2: Tnh tch phn sau

Ta thc hin
> f(x,y):=x^2*y-sin(y);
with(student):
Doubleint(f(x,y),x,y);
f( x, y ) := x2 y sin( y )

x2 y sin( y ) d x d y

Mun bit gi tr ca tch phn tnh c ta dng hm value( )


> value(%);
Trang 85

1 3 2
x y + x cos( y )
6

Hoc ta c th vit nh sau:


> with(student):
Doubleint(x^2*y-sin(y),x,y):%=value(%);
x2 y sin( y ) d x d y = 1 x3 y2 + x cos( y )

V d 3: Vit cng thc tnh tch phn sau

x2 y sin( y ) dx d y

Ta thc hin
> with(student):
Doubleint(f(x,y),x=a..b,y=c..d);
d

x2 y sin( y ) dx d y

V d 4: Tnh tch phn sau :

x y sin( y ) dx d y

0
1

> with(student):
Doubleint(x^2*y-sin(y),x=1..a,y=0..Pi);

x2 y sin( y ) dx d y

0 1

Kt qu tnh c l:
> value(%);
1 2 3 1 2
a 2a+2
6
6

V d 5: Vit cng thc tnh tch phn trong min D


> with(student):
> Doubleint(x-3*y,x,y,D);

x 3 y dx dy
D

b.Tch phn 3 lp
C php:

with (student):
Tripleint (g, x, y, z) : tch phn bt nh
Tripleint (g, x, y, z, Domain)

Tripleint(g, x = a..b, z = e..f, y = c..d ) ; : tch phn xc nh.


Trong :
Trang 86

+ g: biu thc di du tch phn.


+ x, y, z: Cc bin ly tch phn.
+ a, b, c , d, e, f : Cc cn ca min ly tch phn.
+ Domain: Min ly tch phn.

f( x, y, z ) d x d y d z
V d 1: Vit cng thc tnh tch phn sau

Ta thc hin
> with(student):
Tripleint(f(x,y,z),x,y,z);

f( x, y, z ) d x d y d z

sin( y ) x z d x d y d z
V d 2: Tnh tch phn bt nh sau

> with(student):
Tripleint(sin(y)*x-z,x,y,z);

sin( y ) x z d x d y d z

> value(%);

1
1
x2 cos( y ) z z 2 x y
2
2

f( x, y, z ) d x d y d z
V d 3: Vit cng thc tnh tch phn sau

e
c
a

> with(student):
Tripleint(f(x,y,z),x=a..b,y=c..d,z=e..f);
f

f( x, y, z ) d x d y d z

e
c
a

1 dx dy dz
V d 4: Tnh tch phn sau

0
0
0

> with(student):
Tripleint(1,x=0..1,y=0..1,z=0..1);
1

1 dx dy dz

0
0
0

> value(%);
1
1

x2 + y2 + z 2 d x d y d z
V d 5: Tnh tch phn sau

-1-1-1

> with(student):
Trang 87

Tripleint(x^2+y^2+z^2,x=-1..1,y=-1..1,z=-1..1);
value(%);
1

x2 + y2 + z 2 d x d y d z

-1-1-1

3. Phng php i bin v tch phn tng phn


a. Phng php i bin s:
C php:

with (student):
changevar (s, f);
changevar (s, f, u);
changevar (t, g, v);

Trong :
+ s l mt biu thc dng h(x) = g(u) xc nh x nh hm ca u.
+ f L biu thc c cho di dng thc nh Int(F(x), x = a...b)
+ u Tn bin mi.
+ t - Tp cc phng trnh xc nh php bin i nhiu n.
+ g K hiu hnh thc ca tch phn bi.
+ v Danh sch cc bin mi.
Ch :
Tham s th nht trong cc lnh trn l mt hay nhiu phng trnh xc nh bin
mi theo bin c. Nu c nhiu hn 2 bin th bin mi phi c cho v tr ca tham s
th ba. Tham s th hai l biu thc cha Int, Sum, Limit hay Doubleint hoc Tripleint.
3
V d 1: Dng phng php i bin s tnh tch phn

( cos( x ) + 1 ) sin( x ) d x

Ta thc hin i bin x thnh bin u vi u = cos(x) + 1


> with(student):
changevar(cos(x)+1=u,Int((cos(x)+1)^3*sin(x),x),u);
3

u d u

Mun bit gi tr ca tch phn trn ta dng hm value()


> f:=value(%);
1
f := u 4
4

Mun tr v kt qu vi bin x, ta thc hin nh sau:


>subs(u=cos(x)+1,f);

1
( cos( x ) + 1 )4
4
Trang 88

x2 + y2 d x d y
V d 2: Dng phng php i bin tnh tch phn sau

> with(student):
assume(r>0);
changevar({x=r*cos(phi),y=r*sin(phi)},
Doubleint(x^2+y^2,x,y),[phi,r]);
3

r d d r

with assumptions on r

> value(%);
1 4
r
4
with assumptions on r

b. Phng php tch phn tng phn


C php:

with(student):
Intparts (f, u);

Trong :
+ f: l biu thc c dng Int (udv, x)
+ u: l tha s kh vi ca biu thc di du tch phn.
Lnh trn s cho kt qu di dng uv-Int (vdu, x)
V d 1: Dung phng php tch phn tng phn, tnh tch phn
5
sau

x cos( x ) d x

> with(student):
intparts(Int(x^5*cos(x),x),x^5);
4
x5 sin( x )

5 x sin( x ) d x

2 x
V d 2: Tnh tch phn tng phn sau K :=

x e d x

> restart:
with(student):
K:=Int(x^2*exp(x),x);
2 x
K :=

x e d x

Trang 89

Ly tch phn tng phn vi u = x2, dv = exdx v = ex


> P:=intparts(K,x^2);
x
P := x2 e x

2 x e d x

Trch ly phn th nht ca biu thc P


> p1:=op(1,P);
p1 := x2 e x

Trch ly phn th hai ca biu thc P


> c1:=op(2,P);
x
c1 :=

2 x e d x

Ta tip tc ly tch phn tng phn ca tch phn ny vi u = x, dv = exdx v = ex


> c1:=intparts(c1,x);
x
c1 := 2 x e x +

2 e d x

Trch ly phn th nht ca biu thc c1


> p2:=op(1,c1);
p2 := 2 x e x

Trch ly phn th hai ca biu thc c1


c2:=op(2,c1);
x
c2 :=

2 e d x

Tnh gi tr ca tch phn cui cng:


p3:=value(c2);
p3 := 2 e x

> K:=p1+p2+p3;
K := x2 e x 2 x e x + 2 e x

V d 3: Tnh tch phn tng phn sau


> with(student):
intparts(Int(sin(x)*x+sin(x), x=0..Pi/2), sin(x));
1/2

1 2 1
+

8
2

> expand(%);
1 2 1
1
+

8
2
2

1
cos( x ) x2 + x d x

1/2

1/2

cos( x ) x2 d x

Trang 90

x cos( x ) d x

Ta c th ln lt tnh cc tch phn cn li bng phng php tch phn tng


phn c kt qu cui cng.

Trang 91

CHNG VI

I S TUYN TNH
Maple cho php ta tnh nh thc ma trn, gii h phng trnh tuyn tnh,
Ngoi ra Maple cn cho php ta tm gi tr ring, vect ring, a thc c trng, tm
dng chnh tc ca ma trn v tnh rt nhiu ma trn c bit nh Hilbert, Toeplitz,
Cc lnh ca i s tuyn tnh c ci t sn trong gi cng c linalg do
trc khi s dng ta phi np gi cng c ny vo trong b nh bng lnh:
> with(linalg):
Warning, the
unprotected

protected

names

norm

and

trace

have

been

redefined

and

I. Cc php ton i s trn ma trn v vect


1. Cc lnh to ma trn cp m x n
a. matrix (m, n, L)
Trong
+ L: Bng lit k cc phn t ca ma trn theo th t t tri sang phi v
t trn xung di.
+ L = [[a11 , a12 ,L, a1n ], [a 21 , a 22 ,L, a 2 n ],L, [a m1 , a m 2 ,L, a mn ]]
+ Trong trng hp L c xc nh bi cc phn t c th th ta c th
b qua cc ch s m, n.
V d: To ma trn 3 dng, 4 ct sau (m = 3, n = 4)
> matrix(3,4,[[1,2,1,2],[3,5,4,6],[3,4,0,2]]);
1

2
5
4

1
4
0

Hoc ta c th vit:
> matrix(3,4,[1,2,1,2,3,5,4,6,3,4,0,2]);
1

2
5
4

1
4
0

Hoc ta b ch s hng, ct:


> matrix([[1,2,1,2],[3,5,4,6],[3,4,0,2]]);
1

2
5
4

1
4
0

Trong trng hp ny ta thy hng ca ma trn c xc nh ngay t s lng


vect trong danh mc L (3 vect) v s lng cc phn t trong mi vect (4 phn t).
b. matrix (m, n, f)
To ma trn cp m x n vi cc phn t ca ma trn l cc gi tr hm ca f xc
nh trn cc ch s hng v ct ca ma trn.

Trang 92

f( 1, 1 )
f( 2, 1 )

V d 1: To ma trn C :=
> C:=matrix(2,2,f);

V d 2: To ma trn

f( 1, 2 )

f( 2, 2 )

f( 1, 1 )
C :=
f( 2, 1 )

f( 1, 2 )

f( 2, 2 )

x3
x2

A := 2 x3 2 x4

3 x4 3 x5

> g:=(i,j)->i*x^(i+j);
A:=matrix(3,2,g);
g := ( i, j ) i x

(i + j)

x3
x2

A := 2 x3 2 x4

4
5

3
x
3
x

c. Matrix (m, n, init): To ma trn cp m x n vi cc phn t c xc nh


trong init.
Matrix (n, init): To ma trn vung cp n vi cc phn t c xc nh
trong init.
V d:
> init:=(x,y)->x-y;
B:=Matrix(1..2,1..2,init);
init := ( x, y ) x y

> B:=Matrix(3,2,init);

0
B :=
1

-1

B := 1

-1

> init:={(1,1)=a,(1,2)=b,(2,1)=2,(2,2)=2};
C:=Matrix(2,2,init);
init := { ( 1, 2 ) = b, ( 1, 1 ) = a, ( 2, 1 ) = 2, ( 2, 2 ) = 2 }
a
C :=
2

Phn t no khng c khai bo th n s t ng gn gi tr 0


V d:
> init:={(1,1)=a,(2,1)=2,(2,2)=2};
C:=Matrix(2,2,init);
init := { ( 1, 1 ) = a, ( 2, 1 ) = 2, ( 2, 2 ) = 2 }
a
C :=
2
Trang 93

> Matrix(2,3,[[6,2],[2,5,1]]);
6
2

2
5

V d: Khai bo ma trn vung cp 3 ca hm f vi f c xc nh bi cng


thc sau: f ( j, k ) = j + k
> f:=(j,k)->(j+k);
Matrix(3,f);

f := ( j, k ) j + k
2

3
4
5

4
4

4
4

Khai bo mt ma trn 2 x 3 c cc phn t ging nhau ta thc hin:


> Matrix(2,3,4);
4

d. To ma trn bng lnh to mng:


C php:

array (1..m, 1..n, L) vi L l cc phn t ca ma trn.

V d:
> A:=array(1..3,1..2,[[1,2],[2,6],[4,23]]);
1

A := 2

23

> v := array(1..3,1..3);
for i from 1 to 3 do
for j to 2 do
v[i,j] := i^2+j^2
end do;
end do;
print(v);
v := array( 1 .. 3, 1 .. 3, [ ] )
2 5 v1, 3

5 8 v
2, 3

10 13 v
3
,
3

> v[2,3]:=b: print(v);

10

5
8
13

v1, 3

v3, 3

> v[2,5]:=a:print(v);

Trang 94

2
5

10

17

26

10 17

8
13

13 20
18 25

20

25 32

29

34 41

v1, 5

v3, 5

v4, 5

v5, 5

e. To vect:
C php:

vector (n, K): To vect vi cc phn t c xc nh trong K.


Vector [O] (n, init): To mt vect vi cc phn t ban u c
xc nh trong init.

Trong :
+ n l s phn t ca vect.
+ O: Ty chn row hoc column (mc nhin l column).
V d:
> vector(3,[2,3,32]);
> vector([2,3,32]);

[ 2, 3, 32 ]
[ 2, 3, 32 ]

> s:={(1)=1,(2)=5}:
Vector(2,s);

1
5

> Vector(2,[1,2]);

1
2

> Vector[column]([2,3]);

2
3

> Vector[row](3,[1,2,4]);

[ 1, 2, 4 ]

> Vector[row](3,[1,2]);
> Vector(3);

[ 1, 2, 0 ]
0

0

0

> vector(3);
[ ?1, ?2, ?3 ]

Trang 95

2. Cc php tnh trn ma trn v vect


a. So snh 2 ma trn: so snh hai ma trn A v B c cng s hng v s ct
ta dng lnh sau:
equal (A, B)
V d: So snh 02 ma trn A v B
> A:=matrix([[1,2],[3,4]]);
B:=matrix(2,2,[[1,2],[3,4]]);
equal(A,B);
1 2
A :=

3 4
1
B :=
3

true

b. Tng hai ma trn: Dng lnh nh gi evalm tnh tng ca hai ma trn
C php:

evalm (expr)

Trong expr l biu thc tng, hiu, tch ca cc ma trn.


V d: Tnh tng cc ma trn sau:
> restart:
with(linalg):
C:=matrix([[2,3],[4,7]]);
E:=matrix([[1,a],[9,1]]);
F:=matrix([[b,0],[1,0]]);
Warning, the protected names norm and trace have been redefined and
unprotected

> evalm(C+E);

2
C :=
4
1
E :=
9

b
F :=
1

3
13

3 + a

> evalm(C+2*E-F);
4 b 3 + 2 a

21
9

c. Tch ca cc ma trn: C th dng mt trong hai hm sau:


multiply (A, B,): Nhn cc ma trn A, B, vi nhau.
evalm (A&*B&*C): Nhn cc ma tn A, B, C li vi nhau bng lnh nh
gi evalm.
My s thc hin php nhn ny t tri sang phi.
Trang 96

V d: Nhn hai ma trn sau y A := [ 3, 4 ] v B :=


> A:=array([3,4]);
B:=array([1,2]);
evalm(B&*A);

A := [ 3, 4 ]

B := [ 1, 2 ]
11

> multiply(A,B);

11

> C:=matrix(3,2,[[1,2],[2,1],[1,3]]);
E:=matrix(2,3,[[0,2,1],[2,0,2]]);
F:=matrix([[2,0,0],[1,2,3],[4,2,1]]);
1 2

C := 2 1

1 3
0 2 1
E :=

2 0 2
2

F := 1

> multiply(C,E);

2
6

> multiply(E,C);

5
4

0
2
2
2
4
2

1
5

10

Nhn v tnh tng cng mt lc bng lnh lng gi, my s thc hin theo th
t nhn trc ri cng tr sau.
V d:
> evalm(C&*E-2*F);

0 2 5

0 0 -2

-2 -2 5

> A:=matrix(1,2,[1,2]);
B:=matrix(3,1,[1,3,2]);
A := [1 2]
1

B := 3

2

> multiply(A,B);
Trang 97

Error, (in multiply) non matching dimensions for vector/matrix product

> multiply(B,A);

d. Tnh tch trong ca ma trn v vect


C php:

innerprod (u, A1, A2,, An, v)

Trong :
+ u, v l cc vect.
+ A1, A2,, An l cc ma trn.
V d:
> u:= vector(2, [1,2]);
> w:=Vector([1,3]);

u := [ 1, 2 ]
1
w :=
3

> v:= vector(3, [1,2,3]);

v := [ 1, 2, 3 ]

> A:= matrix(2,3, [1,1,1,2,0,1]);


1
A :=
2

> innerprod(u,A,v);

1
0

16

> innerprod(A,v);

[ 6, 5 ]

> innerprod(u,w);
7

e. Tch c hng ca 02 vect:


C php:

crossprod (u, v)

Trong :
+ u, v l cc vect cn nhn c hng
+ Mi vect c 3 thnh phn.
V d:
> u:= vector([1,2,0]);
> v:= vector([2,1,4]);

u := [ 1, 2, 0 ]
v := [ 2, 1, 4 ]

Trang 98

>
uxv:=c(matrix([[2,0],[1,4]]),matrix([[0,1],[4,2]]),matrix([[1,
2],[2,1]]));
2 0 0 1 1 2
uxv := c
,
,

1 4 4 2 2 1

> crossprod(u,v);

[ 8, -4, -3 ]

Ch : u x v = (u[2]* v[3] u[3]* v[2], u[3]* v[1] u[1]* v[3], u[1]* v[2] u[2]* v[1])
f. Tnh tch v hng ca 02 vect
C php:

dotprod (u, v)

hoc

dotprod (u, v, orthogonal)

Ch :
+ i vi s phc tch v hng ca u v v bng tng cc tch ca u[i]
nhn vi lin hip phc ca v[i]: u.v = u i (conjugate(v i ))
i

+ Nu trong lnh c thm tham s orthogonal th tch c tnh nh tng


ca u[i] v v[i]: u.v = u i vi
i

+ i vi s thc th hai nh ngha trn l trng nhau.


V d:
> u:= vector([2+I,3-2*I]);

u := [ 2 + I, 3 2 I ]

> v:= vector([1-I,2-I]);

v := [ 1 I, 2 I ]

> dotprod(u,v);

9+2I

> dotprod(u,v,orthogonal);
78I

g. Tm vt ca ma trn (tch ca cc phn t thuc ng cho chnh):


C php:

trace (T)

vi T l mt ma trn

V d: Tm vt ca ma trn sau:
> A:=matrix(2,2,[1,2,4,a]);

1
A :=
4

> trace(A);

1+a

h. To ma trn con t mt ma trn cho trc:


C php:

submatrix (A, Rrange, Crange)


submatrix (A, RList, CList)

Trong :
Trang 99

+ A l ma trn cho trc.


+ Rrange, Crange: Khong ch s dng, ct.
+ Rlist, Clist: Danh sch ch s dng, ct.
V d: To ma trn con P t A
> with(linalg):
A:=matrix(2,3,[8,2,5,2,0,3]);
8 2 5
A :=

2 0 3

> P:=submatrix(A,1..2,2..3);
2
P :=
0

> P:=submatrix(A,[1,2],[1]);

8
P :=
2

i. To mt vect t mt ma trn:
C php:

subvector (A, r, c)

To vect t cc phn t ca A vi ch s dng trong r v ch s ct trong c.


Trong :
+ A l ma trn
+ r, c l bng, vng hoc s nguyn ch s dng, ct.
V d:
> subvector(A,1,1..3);

[ 8, 2, 5 ]

> subvector(A,1..2,2);

[ 2, 0 ]

j. Trch mt dng, ct ca ma trn:


C php:

row (A, i)

Trch dng th i ca ma trn A.

row (A, i..k)

Trch t dng i n dng k ca ma trn A.

col (A, i)

Trch ct th i ca ma trn A.

col (A, i..k)

Trch t ct i n ct k ca ma trn A.

Trong :
+ A l mt ma trn
+ i, k l cc ch s nguyn.
V d:
> A:=matrix(3,3,[2,2,5,9,8,5,2,7,2]);
2

A := 9

2
8
7

Trang 100

> u:=row(A,3);

u := [ 2, 7, 2 ]

> v:=row(A,1..3);

v := [ 2, 2, 5 ], [ 9, 8, 5 ], [ 2, 7, 2 ]

> v[2];

[ 9, 8, 5 ]

> c:=col(A,2);
> d:=col(A,1..2);

c := [ 2, 8, 7 ]
d := [ 2, 9, 2 ], [ 2, 8, 7 ]

> d[1];

[ 2, 9, 2 ]

k. Hon v dng ct ca mt ma trn:


C php:

swaprow (A, r1, r2) Hon v 02 dng r1 v r2 ca ma trn A.


swapcol (A, c1, c2) Hon v 02 ct c1 v c2 ca ma trn A.

V d: Cho ma trn A nh sau:


> f:=(i,j)->2*(i+j);
A:=Matrix(3,4,f);

f := ( i, j ) 2 i + 2 j
4

A := 6

6
8
10

8
10
12

10

12

14

Hon v gia 2 dng 1 v 2 ta c ma trn B:


> B:=swaprow(A,1,2);
6

B := 4

8
6
10

10
8
12

12

10

14

Hon v 02 ct 2 v 3 ca ma trn B ta c ma trn C


> C:=swapcol(B,2,3);
6 10 8 12

C := 4 8 6 10

8 12 10 14

l. Cng dng v ct ca ma trn:


C php:

addrow (A, r1, r2, m): r2 = r1*m + r2


addcol (A, c1, c2, m): c2 = c1*m + c2

Trong :
+ A l mt ma trn
+ r1, r2, c1, c2: Cc dng ct ca ma trn A
Trang 101

V d:
> f:=(i,j)->a(i,j);
A:=Matrix(3,4,f);

f := a

a( 1, 1 ) a( 1, 2 ) a( 1, 3 ) a( 1, 4 )

A := a( 2, 1 ) a( 2, 2 ) a( 2, 3 ) a( 2, 4 )

a( 3, 1 ) a( 3, 2 ) a( 3, 3 ) a( 3, 4 )

Ly dng 2 nhn vi 5 cng vi dng 1 ri vit kt qu vo dng 1


> B:=addrow(A,2,1,5);

5 a( 2, 1 ) + a( 1, 1 ) 5 a( 2, 2 ) + a( 1, 2 ) 5 a( 2, 3 ) + a( 1, 3 ) 5 a( 2, 4 ) + a( 1, 4 )

B :=
a( 2, 1 )
a( 2, 2 )
a( 2, 3 )
a( 2, 4 )

a( 3, 1 )
a( 3, 2 )
a( 3, 3 )
a( 3, 4 )

Ly ct 1 ca ma trn A nhn vi t, cng vi ct 3 ri ghi kt qu vo ct 3


> C:=addcol(A,1,3,t);
a( 1, 1 ) a( 1, 2 ) t a( 1, 1 ) + a( 1, 3 ) a( 1, 4 )

C := a( 2, 1 ) a( 2, 2 ) t a( 2, 1 ) + a( 2, 3 ) a( 2, 4 )

a( 3, 1 ) a( 3, 2 ) t a( 3, 1 ) + a( 3, 3 ) a( 3, 4 )

> C[2,3];

t a( 2, 1 ) + a( 2, 3 )

m. Nhn mt dng (ct) ca ma trn vi mt biu thc:


C php:

mulrow (A, i, expr): Nhn dng th i ca A vi biu thc expr.


mulcol (A, j, expr): Nhn ct th j ca A vi biu thc expr.

V d:
> f:=(i,j)->2*(i+j);
A:=Matrix(3,2,f);

f := ( i, j ) 2 i + 2 j
4

A := 6

10

Nhn dng th 2 ca ma trn A vi a + x 2


> B:=mulrow(A,2,a+x^2);

4
6

B := 6 a + 6 x2 8 a + 8 x2

8
10

Nhn ct th 1 ca A vi 3, ta c:
> C:=mulcol(A,1,3);

12

C := 18

24

10

Trang 102

n. Ghp ma trn theo chiu dc, chiu ngang:


C php:

stackmatrix (A, B,)

Ghp nhiu ma trn theo chiu dc.

concat (A, B,)

Ghp nhiu ma trn theo chiu ngang.

Ch : Cc ma trn c ghp theo th t t tri sang phi


V d:
> with(linalg):
A:=matrix(3,2,[2,5,3,2,4,5]);
> B:=matrix(1,2,[2,5]);
E:=matrix(3,1,[1,23,4]);
2

A := 3

B := [2 5]
1

E := 23
4

Ghp ma trn A, B theo chiu dc ta c ma trn C


> C:=stackmatrix(A,B);
2

3
C :=
4

5
5

Ghp 02 ma trn A v E theo chiu ngang ta c ma trn F


> F:=concat(E,A);
1

F := 23

2
3
4

o. Tm ma trn chuyn v:
C php:

transpose (A)

V d: Tm ma trn chuyn v ca ma trn C


> G:=transpose(C);
2
G :=
5

3
2

4
5

p. Tm ma trn lin hp:


C php:

adjoint (A)

V d: Tm ma trn lin hp ca ma trn A


> A:=matrix(2,2,[5,1,2,3]);
5
A :=
2

Trang 103

> adjoint(A);

3
-2

-1

q. Tm ma trn c trng:
C php:
charmat (C, x)
by kt qu theo bin x

Tm ma trn c trng ca ma trn C trnh

V d:
> C:=matrix(3,3,[2,2,3,2,3,4,5,0,9]);
2

C := 2

> charmat(C,lambda);

-2

-5

2
3
0

-2
3
0

-3

-4

r. Tm a thc c trng ca mt ma trn:


C php:
charpoly (C, x)
by kt qu theo bin x.

Tm a thc c trng ca ma trn C trnh

V d: Tm a thc c trng ca ma trn C


> charpoly(C,lambda);

3 14 2 + 32 13

s. Bin i ma trn v dng bc thang:


C php:

with (linalg):
rref (A);

V d:
> with (linalg):
A:=matrix(3,4,[2,1,3,2,3,5,2,1,1,2,3,5]);
rref(A);
Warning, the protected names norm and trace have been redefined and
unprotected

A := 3

1
5
2

3
2
3

Trang 104

5
-20
9
7
9
17
9

t. Php kh Gauss Jordan:


C php:

with (linalg):
gaussjord (A, r);

Trong :
+ A l ma trn cn bin i.
+ r cho bit hng ca ma trn.
V d:
2

A := 3

Cho ma trn A c xc nh nh sau:

1
5
2

3
2
3

Bin i ma trn trn bng php kh Gauss jord:


> with(linalg):
A:=matrix(3,4,[2,1,3,2,3,5,2,1,1,2,3,5]);
2 1 3 2

A := 3 5 2 1

1 2 3 5

Dng php kh Gauss Jord:


gaussjord(A,r);

Hng ca ma trn trn l:


> r;

-20
9
7
9
17
9

u. Tm vect ring ca ma trn A:


C php:

with (linalg):
eigenvectors (A);

V d:
> with(linalg):
Warning, the protected names norm and trace have been
redefined and unprotected

> A := matrix(3,3, [1,-3,3,3,-5,3,6,-6,4]);

Trang 105

A := 3

-3 3

-5 3

-6 4

> v := [eigenvectors(A)];

v := [ [ -2, 2, { [ 1, 1, 0 ], [ -1, 0, 1 ] } ], [ 4, 1, { [ 1, 1, 2 ] } ] ]

v. Tm gi tr ring ca ma trn:
C php:

with (linalg):
eigenvalues (A);

V d: Tm gi tr ring ca ma trn A
> e := eigenvalues(A);

e := 4, -2, -2

w. Tm hng ca ma trn A:
C php:

with (linalg):
rank (A);

x. Tnh nh thc ca ma trn vung A:


C php:

with (linalg):
det (A);

y. Tm ma trn nghch o ca ma trn A:


C php:

with (linalg):
inverse (A);

z. Bin i ma trn v dng tam gic:


C php:

with (linalg):

gausslim (A, r, d);

Trong :
+ A l ma trn vung.
+ r, d: l cc tham s cho bit hng v nh thc ca A (c hoc khng).
V d:
> with(linalg):
A := matrix(3,3, [3,1,0,2,3,1,1,9,1]);
3 1 0

A := 2 3 1

1 9 1

> gausselim(A, 'r', 'd');


3

1
7
3
0

-19

> r;
Trang 106

> d;

-19

3. Gii phng trnh i s tuyn tnh:


a. Lp h phng trnh i s tuyn tnh t cc h s ca ma trn:
C php:

with(linalg):
geneqns(A, vars);
geneqns(A, vars, b);

Trong :
+ A l ma trn
+ vars: Tn cc bin ca h phng trnh.
+ b: Vect v phi ca h.
V d:
> with(linalg):
A := matrix(3,3, [3,1,0,3,1,1,1,3,5]);
b:=array([2,9,2]);
3 1 0

A := 3 1 1

1 3 5
b := [ 2, 9, 2 ]

> geneqns(A,[x,y,z],b);

{ 3 x + y + z = 9, x + 3 y + 5 z = 2, 3 x + y = 2 }

b. Lp ma trn t h phng trnh cho trc:


C php:

with (linalg):
genmatrix (eqns, vars, b);
genmatrix (eqns, vars, flag);

Trong :
+ eqns: H phng trnh
+ vars: Tn cc bin ca h phng trnh.
+ b: Vect v phi ca h.
+ flag: nu c tham s flag th ct vect bn phi cng c ghp chung
vo ma trn.
V d: Lp ma trn t h 02 phng trnh f1 v f2 sau y:
> with(linalg):
f1:=2*x+3*y=13;
f2:=x+y=5;
Warning, the protected names norm and trace have been redefined and
unprotected
Trang 107

f1 := 2 x + 3 y = 13

f2 := x + y = 5

> B:=genmatrix({f1,f2},[x,y],flag);
2 3 13
B :=

5
1 1
> C:=genmatrix({f1,f2},[x,y],`b`);
2 3
C :=

1 1

Mun xem vect v phi ca h phng trnh, ta thc hin:


> print(b);

[ 13, 5 ]
> E:=genmatrix({f1,f2},[x,y]);
2 3
E :=

1 1

c. Gii h phng trnh i s tuyn tnh:


Phng trnh i s tuyn tnh c dng Ax = u c nhiu phng php gii khc
nhau thng qua cc php bin i. C php lnh trc tip gii h phng trnh i s
tuyn tnh l:
linsolve (A, u)
Trong :
+ A: ma trn xc nh v tri ca h phng trnh.
+ u: Vect xc nh v phi.
V d: Gii h phng trnh sau:

f1 := 2 x + 3 y = 13
f2 := x + y = 5

> restart:
with(linalg):
f1:=2*x+3*y=13;
f2:=x+y=5;
Warning, the protected names norm and trace have been redefined and
unprotected

f1 := 2 x + 3 y = 13

f2 := x + y = 5

Trch cc h s ca phng trnh thnh ma trn:


> C:=genmatrix({f1,f2},[x,y]);
To vect v phi ca h:
U:=matrix(2,1,[13,5]);

2
C :=
1

13
U :=
5

Gii h phng trnh i s tuyn tnh:


Trang 108

linsolve(C,U);

2
3

Vy nghim ca h l: x = 2 v y = 3

Trang 109

CHNG VI
PHNG TRNH VI PHN V O HM RING
I. Phng trnh vi phn
Maple cho php ta tm nghim tng qut ca phng trnh vi phn, v nghim
c th nu c iu kin ban u no , hay tm nghim gn ng ca phng trnh
bng phng php s, phng php th, phng php tm nghim dng chui...
Nhc li mt s k hiu:
D() : Ton t vi phn
D(y)(x): vi phn cp mt ca hm y theo bin x
D(D(y))(x): vi phn cp hai ca hm y theo bin x [ ]
(D@@k)(y): vi phn cp k ca hm y theo bin x [ ]
diff(y(x),x):
1. Mt s php bin i
a. Bin i Laplace
i. bin i laplace thun
C php:
with(inttrans):
laplace(expr, t, s);
Trong
expr: biu thc cn bin i
t: bin ca hm gc
s: bin ca hm nh
Th d:
> with(inttrans):
> laplace(t^2+sin(t)=y(t), t, s);
2
1
+ 2
= laplace( y( t ), t, s )
3
s
s +1

> laplace(t^(3/2)-exp(t)+sinh(a*t), t, s);


3
1
a

+
4 s ( 5/2 ) s 1 s 2 a 2

> laplace(diff(y(t), t$2)-y(t)=sin(a*t), t, s-2);


( s 2 ) ( ( s 2 ) laplace( y( t ), t, s 2 ) y( 0 ) ) D( y )( 0 ) laplace( y( t ), t, s 2 ) =
a
( s 2 )2 + a 2

86

ii. Bin i laplace nghch


C php:
with(inttrans):
invlaplace(expr,s,t);
Trong :
expr: biu thc ca hm nh
s: bin ca hm nh
t: bin ca hm gc
Th d:
> with(inttrans):
> invlaplace(1/(s-a)+1/(s^2+b)+1, s, t);
e

(a t)

sin( b t )
+ Dirac( t )
b

b. Bin i Fourier
i. Bin i fourier thun
+ Bin i Fourier
> with(inttrans):
fourier(expr,t,w);
trong :
expr: biu thc hm cn bin i
t: bin ca hm gc
w: bin ca hm nh fourier
Th d:
> with(inttrans):
> assume(a>0):
fourier(3/(a^2 + t^2),t,w);
3

( a~ w )

Heaviside( w )
e
+3
a~

( a~ w )

Heaviside( w )
a~

> fourier(diff(f(x),x$4),x,w);
w4 fourier( f( x ), x, w )

> F:= int(g(x)*h(t-x),x=-infinity..infinity):


fourier(3*F,t,w);
3 fourier( g( t ), t, w ) fourier( h( t ), t, w )

87

+. Bin i fouriersin
C php:
> with(inttrans):
fouriersin(expr,t,w);
Th d:
> with(inttrans):
> fouriersin(f(t),t,u);
fouriersin( f( t ), t, u )

> fouriersin(%,u,s);
f( s )

> F:= int(g(x)*sin(x*s),x=0..infinity):


fouriersin(3*F,s,t);
3
2
2

g( t )

> fouriersin(t*exp(-3*t)*Heaviside(t),t,w);
2

2 w ( 27 + w2 )
( 9 + w2 )

+. Bin i fouriercos
C php:
> with(inttrans):
fouriercos(expr,t,w);
Th d:
> with(inttrans):
> fouriercos(3/(t + a),t,w);
3

2 ( sin( a w ) Ssi( a w ) cos( a w ) Ci( a w ) )

> fouriercos(1/(t^2 + 1),t,s);


( s )
1
2 e
2

> fouriercos(%,s,x);
1
1 + x2

ii. Bin i Fourier ngc


88

C php:
with(inttrans);
invfourier(expr,w,t);
Th d:
> with(inttrans):
> invfourier( fourier(f(x),x,w),w,x-2);
f( x 2 )

> invfourier(3/(1 + t^2),t,w);


3 ( w )
3
e
Heaviside( w ) + e w Heaviside( w )
2
2

> invfourier(t*exp(-3*t)*Heaviside(t),t,w);
1
1
2 ( 3 + I w )2

> convert(Heaviside(t),piecewise);
>
0

undefined

t<0
t=0
0<t

b. Khai trin mt biu thc thnh mt chui


C php:
series(expr, eqn, n)
trong :
expr: biu thc cn khai trin
eqn: phng trnh xc nh gi tr khai trin ti (x=a..)
n: khai trin gn ng ti bc n
Th d:
> series(x/(1-x-x^2), x=0);
x + x2 + 2 x3 + 3 x4 + 5 x5 + O( x6 )

> convert(%,polynom);
x + x2 + 2 x3 + 3 x4 + 5 x5

> series(x+1/x, x=1, 3 );


2 + ( x 1 )2 + O( ( x 1 )3 )

89

> series(exp(x), x=0, 8 );


1
1
1
1 5
1 6
1 7
1 + x + x2 + x3 + x4 +
x +
x +
x + O( x8 )
2
6
24
120
720
5040

2. Gii phng trnh v h phng trnh vi phn


C Php:
dsolve(ODE)

: gii phng trnh vi phn ODE

dsolve(ODE, var)

: gii phng trnh vi phn ODE theo bin var


: gii phng trnh vi phn ODE vi iu kin ban
u ICs theo bin var

dsolve({ODE, ICs}, var)

dsolve({sysODE, ICs}, {vars}) : gii h phng trnh vi phn sysODE vi cc


iu kin ban u ICs
Th du 1: gii phng trnh :
Ta thc hin:
+ Khai bo phng trnh
> ODE:=diff(y(x),x)=1/(x-1);
ODE :=

1
y( x ) =
x
x1

+ Gii phng trnh


> dsolve(ODE,y(x));
y( x ) = ln( x 1 ) + _C1

y l nghim tng qut ca phng trnh vi _C1 l hng s


Th d 2: gii phng trnh
Vi iu kin u: u(0)=0
Ta thc hin
+ Khai bo phng trnh v iu kin u
> ODE:=diff(u(t),t)+2*t=0;

ODE := u( t ) + 2 t = 0
t

> ICs:=u(0)=0;
ICs := u( 0 ) = 0

+ Gii phng trnh ODE vi iu kin u ICs


> dsolve({ODE,ICs},u(t));
u( t ) = t 2

Th d 3: Gii phng trnh vi phn cp 2


90

+ Khai bo phng trnh


> ODE:=diff(y(t),t$2)+4*diff(y(t),t)+y(t)=0;

ODE := 2 y( t ) + 4 y( t ) + y( t ) = 0
t

+ Gii phng trnh


> dsolve(ODE,y(t));
y( t ) = _C1 e

( ( 2 + 3 ) t )

+ _C2 e

( ( 2 + 3 ) t )

Th d 4: Gii h hai phng trnh vi phn vi iu kin ban u cho trc


> restart:
pt1:=diff(y(x),x)=z(x)-y(x)-x;
pt2:=diff(z(x),x)=y(x);
ini:=y(0)=0,z(0)=1;
pt1 :=

y( x ) = z( x ) y( x ) x
x

pt2 :=

z( x ) = y( x )
x

ini := y( 0 ) = 0, z( 0 ) = 1

> dsolve({pt1,pt2,ini},{y(x),z(x)});
{ z( x ) = 1 + x
+

( ( 1/2
1
5e
5

( ( 1/2
1
5e
10

5 1/2 ) x )

5 1/2 ) x )

( ( 1/2
1
5e
5

1 ( ( 1/2
e
2

5 1/2 ) x )

1 ( ( 1/2
, y( x ) = 1 e
2

5 1/2 ) x )

( ( 1/2
1
5e
10

5 1/2 ) x )

5 1/2 ) x )

Nu ta tm nghim di dng chui th nghim s n gin hn


> dsolve({pt1,pt2,ini},{y(x),z(x)},type=series);
1
1
1
1
1
5
1
{ z( x ) = 1 + x2 x3 + x4 x5 + O( x6 ), y( x ) = x x2 + x3 x4 + x5 + O( x6 )
2
3
8
24
2
24
15
}

2. Gii phng trnh vi phn bng php bin i laplace, fourier


Php bin i laplace v fourier lm gim phc tp ca phng trnh
khi gii.
Cch gii nh sau: T phng trnh ban u ta dng php bin i Laplace hay
Fourier a n mt phng trnh i s n gin hn gii, sau ta dng php
bin i Laplace hay Fourier ngc c kt qu cn tm
C php:
dsolve(ODEs, vars, method=transform)
91

Trong :
transform: c cc hnh thc sau y : laplace, fourier, fouriercos, fouriersin
Th du1: Gii phng trnh bng phng php bin i Laplace vi iu kin ban
u y(0)=0,
Cch 1: Gii bng hm dsolve()
+ Khai bo phng trnh
> ODEs:=diff(y(x),x,x)+5*diff(y(x),x)+6*y(x)=0;

ODEs := 2 y( x ) + 5 y( x ) + 6 y( x ) = 0
x

+ Khai bo iu kin u
> ini:=y(0)=0,D(y)(0)=1;
ini := y( 0 ) = 0, D( y )( 0 ) = 1

+ Tm nghim tng qut phng trnh bng phng php bin i Laplace
> dsolve({ODEs},y(x),method=laplace);
y( x ) = e

( 3 x )

D( y )( 0 ) 2 e

( 3 x )

y( 0 ) + 3 e

( 2 x )

y( 0 ) + e

( 2 x )

D( y )( 0 )

- Nghim ring vi iu kin u ini cho


> dsolve({ODEs,ini},y(x),method=laplace);
y( x ) = e

( 2 x )

( 3 x )

Cch 2: Gii tng bc bng php bin i Laplace


> restart:
Khai bo phng trnh
f:=diff(y(x),x,x)+5*diff(y(x),x)+6*y(x)=0;

f := 2 y( x ) + 5 y( x ) + 6 y( x ) = 0
x

Khai bo iu kin u
assign(y(0)=0,D(y)(0)=1);
Bin i Laplace hai v ca phng trnh
> with(inttrans):
A:=laplace(f,x,s);
A := s 2 laplace( y( x ), x, s ) 1 + 5 s laplace( y( x ), x, s ) + 6 laplace( y( x ), x, s ) = 0

Phng trnh lc ny l mt phng trnh i s theo bin laplace(y(x),x,s), gii


phng trnh A tm nghim theo bin s
> solve(A,{laplace(y(x),x,s)});
92

{ laplace( y( x ), x, s ) =

1
}
s +5s+6
2

Ly bin i laplace ngc ta c nghim cn tm


> invlaplace(%,s,x);
{ y( x ) = e

( 2 x )

( 3 x )

Th d 2: Gii phng trnh bng phng php bin i Fourier


Thc hin:
+ Khai bo phng trnh
> ODE:=diff(y(x),x,x)-y(x)=exp(-x);
( x )
2

ODE := 2 y( x ) y( x ) = e
x

+ Gii phng trnh


> dsolve(ODE,y(x),method=fouriersin);
( x )
1 ( x )
y( x ) = x e
+ y( 0 ) e
2

Th d 2: Gii phng trnh vi phn sau y bng hai cch


Cch 1: dng hm dsolve( ) gii bng phng php Fourier
> dsolve(pt,y(x),method=fourier);
(I x)
( I x )
1
y( x ) = I ( e
e
)
4

Cch 2: dng php bin i Fourier


> restart:
pt:=diff(y(x),x,x)-y(x)=sin(x);
2

pt := 2 y( x ) y( x ) = sin( x )
x

> with(inttrans):
assume(x>=0);
fourier(pt,x,w);
w2 fourier( y( x ), x, w ) fourier( y( x ), x, w ) = I Dirac( w 1 ) + I Dirac( w + 1 )

> N:=solve(%,{fourier(y(x),x,w)});
N := { fourier( y( x ), x, w ) =

I ( Dirac( w 1 ) Dirac( w + 1 ) )
}
w2 + 1

> invfourier(N,w,x);
93

(I x)
( I x )
1
{ y( x ) = I ( e
e
)}
4

Vn :
3. Tm nghim phng trnh di dng chui v dng s
4. V th nghim ca phng vi phn
II. Phng trnh o hm ring
C php:
> with(PDEtools):
pdesolve(PDE);
Trong :
PDE: phng trnh o hm ring
Th du 1: Tm nghim hnh thc ca phng trnh sau
f( x, y )2 g( x )

PDE := x f( x, y ) f( x, y ) =
h( y )
y
x

Thc hin
Khai bo phng trnh
> PDE := x*diff(f(x,y),y)-diff(f(x,y),x)=f(x,y)^2*g(x)/h(y);

f( x, y ) 2 g( x )

PDE := x f( x, y ) f( x, y ) =
h( y )
y
x

Gii phng trnh


> ans := pdsolve(PDE);
1

ans := f( x, y ) =

g( _a )

1
d _a + _F1 y + x2
2
1
1

h _a 2 + y + x2
2
2

Ta c th kim tra kt qu trn vi hm pdetest():


>with(PDEtools):
> pdetest(ans,PDE);
0

Th d 2. Cho phng trnh laplace trong to cu


> PDE := Diff(r^2*Diff(F(r,phi,theta),r),r)
+ 1/sin(phi)*Diff(sin(phi)*Diff(F(r,phi,theta),phi),phi)
94

+ 1/sin(phi)^2*Diff(Diff(F(r,phi,theta),theta),theta) = 0;
with(PDEtools):
ans := pdsolve(PDE,F(r,phi,theta));

F( r, , )
sin( ) F( r, , )

2
2

PDE := r F( r, , ) +
+
=0
sin( )
sin( )2

r r

ans := ( F( r, , ) = _F1( r ) _F2( ) _F3( ) ) &where

_F1( r ) _c1 2 r _F1( r ) 2


2
,
_F1
(
r
)
=

_F3( ) = _c3 _F3( ),
2
2
r
r
r
2

cos( ) _F2( ) _F2( ) _c


2


_F2
(

_F2
(

)
_c

1
sin( )
2
sin( )2

Th d 3: Gii phng trnh


> PDE := diff(f(x,y),y)*Diff(arctan(x^(1/2)*y),y)
+ diff(f(x,y),x)*Diff(arctan(x^(1/2)*y),x)=0;

PDE := f( x, y ) arctan( x y ) + f( x, y ) arctan( x y ) = 0


y
y
x
x

> ans := pdsolve(PDE);


ans := f( x, y ) = _F1( 2 x2 + y2 )

Th d 4: Tm nghim hnh thc ca phng trnh sng mt chiu


> restart:
with(PDEtools):
PDE := Diff(U(x,t),t$2)-C^2*Diff(U(x,t),x,x)=0;
ans := pdsolve(PDE,U(x,t));
2

PDE := 2 U( x, t ) C 2 2 U( x, t ) = 0
t

ans := U( x, t ) = _F1( C t + x ) + _F2( C t x )

95

TI LIU THAM KHO CHNH


1. Andr Heck (1993). Introduction to Maple Spinger - Verlag, NewYork.
2. K.M.Heal M.L. Hansen K.M. Rickard. (1996 1998) Maple V
Learning Guide Waterloo Maple Inc.
3. M.B.Monagan K.O. Geddes K.M. Heal G.Labahn S.M.Vorkoetter
(1996 1998) Maple V Programming Guide Waterloo Maple Inc.
4. Phm Huy in (Ch bin) Tnh Ton, Lp Trnh v ging dy ton hc trn
Maple Nh xut bn Khoa hc v k thut, H NI, 2002
5. Nguyn Hu in. Hng dn s dng Maple V Nh xut bn Thng K,
H Ni, 1999

You might also like