You are on page 1of 4

S dng MAPLE

a dng ton phng v dng chnh tc



PHAN C CHU
i hc Kinh doanh v Cng ngh H Ni

Dng ton phng l mt trong nhng khi nim c bn ca Ton cao cp.
Dng ton phng c nhiu ng dng trong k thut v kinh t nh nhn dng
cc ng v mt bc hai, a ra cc iu kin trong cc bi ton ti u
S dng phn mm MAPLE gip cho vic nghin cu cc dng ton phng
d dng v hiu qu hn.


Gi s
n
V l mt khng gian n chiu v S l mt c s ca n. Trong c s S mt dng
ton phng l biu thc c dng
Ax x x x a x x Q
n
i i
j i ij
' ) , (
1 ,
= =

=

trong ma trn A = (
ij
a ) l mt ma trn i xng. Nu trong Q(x,x) ch cha cc s
hng bnh phng th ni Q(x,x) c dng chnh tc trong c s S.
Rt gn mt dng ton phng l tm mt c s S trong Q c dng chnh tc.
a mt dng ton v v dng chnh tc thng dng 3 cch: Phng php cho ha
trc giao, phng php Jacobi v phng php Lagrange.
Bi ny nu vic s dng phn mm MAPLE a Q v dng chnh tc theo phng
php cho ha trc giao.
Gi P l ma trn chuyn t c s trc chun S sang c s trc chun S: x = Py. Trong
S dng ton phng tr thnh (Py)A(Py) = y(PAP)y. Do S v S l trc chun nn P
l mt ma trn trc giao theo ngha PP = E , E l ma trn n v. Vy P' P
1
=

. Nu
AP P
1
l mt ma trn ng cho, th Q ch cha cc s hng bnh phng hay Q c
dng chnh tc trong c s S. Khi ni P l ma trn lm cho ha trc giao ma trn A.
p dng qu trnh trc giao ha Gram-Schmidt tm ma trn P.

on chng trnh sau trong MAPLE s thc hin vic trn. C hai th tc:
a) cheohoatrucgiao cho ha trc giao mt ma trn i xng bt k, ngoi ra a
thm mt s thng tin v a thc c trng, gi tr ring, vect ring ca ma trn
,
b) chinhtac a dng ton phng v dng chnh tc. Trong th tc ny c mt
phn nhn ng ma trn A ca dng ton phng, nu Q a vo sai s bo li.

> restart:with(linalg):with(LinearAlgebra):
> cheohoatrucgiao:=proc(M::Matrix)
local dt,n,lambda,vt,i,G,v,gt,u:
global P,T:
n:=ColumnDimension(M):
dt:=CharacteristicPolynomial(M,lambda):
print(`Da thuc dac trung: `,factor(dt));
(gt,vt):=Eigenvectors(M):
print(`Gia tri rieng: `,gt,`Cot vecto rieng : `,
simplify(vt));
for i from 1 to n do v[i]:=Vector[column](col(vt,i)): od:
G:=GramSchmidt([seq(v[i],i=1..n)],normalized):
P:=augment(seq(G[i],i=1..n)): P:=convert(P,Matrix):
print(`Ma tran lam cheo hoa P =`,simplify(P));
T:=DiagonalMatrix(gt): print(`Ma tran cheo hoa P'AP = `,T);
end proc:
> chinhtac:=proc(tp)
local n,A,i,j,Ct,Ctrg,tp1,k:
n:=nops(indets(tp)):
tp1:=tp: for i from 1 to n do tp1:=subs(x[i]=k*x[i],tp1) od:
if is(tp1=(k^2)*tp)=false then ERROR(`Dang toan phuong cho
sai`) fi:
A:=Matrix(n,n):
for i from 1 to n do A[i,i]:=coeff(tp,x[i]^2):
for j from (i+1) to n do
A[i,j]:=coeff(coeff(tp,x[i]),x[j])/2:
A[j,i]:=A[i,j] :
od :
od:
print(`Ma tran dang toan phuong A =`,A):
cheohoatrucgiao(A);
Ct:=add(T[i,i]*y[i]^2,i=1..n);
print(`Dang chinh tac sau khi cheo hoa truc giao :`,Ct);
Ctrg:=add(sign(evalf(T[i,i]))*z[i]^2,i=1..n);
print(`Dang chinh tac rut gon :`,Ctrg);
end proc:

Sau khi vit on trn, a cc dng ton phng bt k v dng chnh tc, trc
ht cn np dng ton phng ang xt, tip theo gi th tc chinhtac. Di y nu mt
s v d:

> `DANG TOAN PHUONG 2 AN`;
tp:=5*x[1]^2-4*x[1]*x[2]+8*x[2]^2:
`Vi du 1: Dang toan phuong `:=tp; chinhtac(tp);
tp:=-x[1]^2-x[2]^2+6*x[1]*x[2]+3:
`Vi du 2: Dang toan phuong `:=tp; chinhtac(tp):
tp:=5*x[1]^2+5*x[2]^2+4*x[1]*x[2]-2*x[2]:
`Vidu 3: Dang toan Phuong `:=tp; chinhtac(tp):

DANG TOAN PHUONG 2 AN

Vi du 1: Dang toan phuong := 5 x
1
2
- 4 x
1
x
2
+ 8 x
2
2

Ma tran dang toan phuong A =,
5 -2
-2 8


Da thuc dac trung: , - 4 ( ) - 9 ( )

Gia tri rieng: ,
4
9

, Cot vecto rieng :,


2
-1
2
1 1


Ma tran lam cheo hoa P =,
2
5
5 -
1
5
5
1
5
5
2
5
5


Ma tran cheo hoa P'AP = ,
4 0
0 9


Dang chinh tac sau khi cheo hoa truc giao :, 4 y
1
2
+ 9 y
2
2

Dang chinh tac rut gon :, z
1
2
+ z
2
2

Vi du 2: Dang toan phuong := -x
1
2
- x
2
2
+ 6 x
1
x
2
+ 3

Error, (in chinhtac) Dang toan phuong cho sai
Vidu 3: Dang toan phuong := 5 x
1
2
+ 5 x
2
2
+ 4 x
1
x
2
- 2 x
2

Error, (in chinhtac) Dang toan phuong cho sai

Kt qu V d 1 cho bit l dng ton phng xc nh dng, cn cc dng ton
phng V d 2 v 3 cho sai, cn np li.

> `DANG TOAN PHUONG 3 AN`;
tp:=x[1]^2+x[2]^2+x[3]^2-2*x[1]*x[2]-2*x[1]*x[3]-
2*x[2]*x[3]:
`Vidu 4: Dang toan phuong`:=tp; chinhtac(tp);

DANG TOAN PHUONG 3 AN

Vidu 4: Dang toan phuong := x
1
2
+ x
2
2
+ x
3
2
- 2 x
1
x
2
- 2 x
1
x
3
- 2 x
2
x
3

Ma tran dang toan phuong A =,
1 -1 -1
-1 1 -1
-1 -1 1


Da thuc dac trung: , + 1 ( ) - 2 ( )
2

Gia tri rieng: ,
-1
2
2

, Cot vecto rieng :,


1 -1 -1
1 1 0
1 0 1


Ma tran lam cheo hoa P =,
1
3
3 -
1
2
2 -
1
6
6
1
3
3
1
2
2 -
1
6
6
1
3
3 0
1
3
6


Ma tran cheo hoa P'AP = ,
-1 0 0
0 2 0
0 0 2


Dang chinh tac sau khi cheo hoa truc giao :, -y
1
2
+ 2 y
2
2
+ 2 y
3
2

Dang chinh tac rut gon :, -z
1
2
+ z
2
2
+ z
3
2


Hy th p dng i vi dng ton phng 4 n sau:
> `DANG TOAN PHUONG 4 AN`;
tp:=x[1]^2+x[2]^2+x[3]^2+x[4]^2+2*x[1]*x[2]+2*x[1]*x[3]+2*x[
1]*x[4]-2*x[2]*x[3]-2*x[2]*x[4]-2*x[3]*x[4]:
`Vi du 5: Dang toan phuong`:=tp; chinhtac(tp);

MAPLE l mt phn mm tnh ton kh mnh c kh nng tnh ton trn s v trn cc
k hiu. Vic s dng MAPLE s em li mt cng c rt hiu qu trong nghin cu
khoa hc v ging dy trn nhiu lnh vc khc nhau.

TI LIU
[1] B.W.CHAR, K.O.GEDDES, G.H.GONNET, B.L.LEONG, M.B.MANAGAN,
S.M.WATT, Maple V Library Reference Manual, Springer-Verlag, 1993
[2] PHAN C CHU, S dng MAPLE trong Ton s cp v Ton cao cp, Nxb Khoa
hc v k thut, 2005
[3] NGUYN NH TR , T VN NH, NGUYN H QUNH, Ton hc cao cp,
Nxb Gio dc, 2004

You might also like