ProgramcsomagokA Maple-ben sok, a m\341r megismert plots csomaghoz hasonl\363 parancscsomag tal\341lhat\363. Ismerkedj\374nk meg ezek k\366z\374l n\351h\341nnyal.A networks csomag (gr\341felm\351let)Gr\341fokkal kapcsolatos f\374ggv\351nyeket a networks csomagban tal\341ljuk.with(networks);\334res gr\341f l\351trehoz\341sa, cs\372cs \351s \351l hozz\341ad\341sa, gr\341f kirajzol\341sa.new(G):
addvertex({1,2,3,4},G):
addedge([{1,2},{3,4}],G):
draw(G);addedge([{2,3}],G):
edges(G);
draw(G);szomsz\351doss\341gi m\341trix.with(networks):
G := cube():
draw3d(G);
A := adjacency(G);V\303\251letlen gr\303\241f, \303\266sszef\303\274gg\305\221 komponensek.G := random(20,30):
C := components(G);
nops(C);Fesz\355tett r\351szgr\341f.C1 := induce(C[1],G):
C2 := induce(C[2],G):
draw(C1);
draw(C2);S\355kbarjazolhat\363s\341g eld\366nt\351se.isplanar(petersen());isplanar(icosahedron());Teljes gr\341f l\351trehoz\341sa, komplemens.G:=complete(5,3):
draw(G);
H:=complement(G):
draw(H);
\311l t\366rl\351se.G:=petersen():
delete({e5},G):
draw(G);
Folyamprobl\351ma megold\341sa. (A p\351ld\341ban speci\341lisan minden \351l s\372lya 1.)eset:='eset'; comp:='comp';
flow(G,1,2,eset,comp);eset;
comp;eweight(e1,G);A LinearAlgebra csomag (line\341ris algebra)Line\341ris algebr\341val kapcsolatos f\374ggv\351nyeket a Linear Algebra csomagban tal\341ljukwith(LinearAlgebra);M\341trix megad\341sa.A := Matrix([[1,-2,-3],[2,-2,3],[3,-3,3]]);
B := Matrix([[2,3,6],[3,3,6],[6,6,6]]);M\305\261veletek m\303\241trixokkal.3*A+2*B;
A.B;
A^5;Transzpon\341l\341s.C:=Matrix(2,3,5);
Transpose(C);Determin\341ns, inverz.M := Matrix([[1,3,7],[8,4,2],[4,6,2]]);
Determinant(M);
evalf(MatrixInverse(M));
M\341trix megad\341sa v\341ltoz\363 elemekkel.V:=Matrix(2,3,symbol=m);
solve({Determinant(V.Transpose(V))=0,m[1,1]=6});Fels\305\221h\303\241romsz\303\266g m\303\241trix megad\303\241sa.R := Matrix([[611,196,-192,407,-8,-52,-49,29], [899,113,-192,-71,-43,-8,-44],
[899,196,61,49,8,52], [611,8,44,59,-23], [411,-599,208,208],
[411,208,208], [99,-911], [99]], shape=symmetric,
scan=triangular[upper]);Saj\341t\351rt\351kek.Eigenvalues(R);Karakterisztikus polinom.CharacteristicPolynomial(R,x);
solve(%,x);Determinant(R);Saj\341tvektorok.A := <<-1,-3,-6>|<3,5,6>|<-3,-3,-4>>;
(v, e) := Eigenvectors(A);Eigenvectors(A,output=list);A . e[1..-1,2] = v[2] . e[1..-1,2];A := <<8,3,-1,-5>|<4,-5,0,-2>|<-5,8,3,-1>|<-5,5,-4,-9>>;b := <4,0,-8,-5>;Gauss elimin\341ci\363.GaussianElimination(A);Reduk\303\241lt l\303\251pcs\305\221s alak.ReducedRowEchelonForm(A);ReducedRowEchelonForm(<A|b>);Egyenletrendszer megold\341s.M := <<1,1,1,4>|<1,1,-2,1>|<3,1,1,8>|<-1,1,-1,-1>|<0,1,1,0>>:
LinearSolve(M);M[1..-1,1..-2] . % = M[1..-1,-1];Skal\341rszorz\341s.DotProduct(<1,2,3>,<4,5,6>);Vektori\341lis szorz\341s.CrossProduct(<1,2,3>,<4,5,6>);Anal\355zisIntergr\341l\341s:Int( x/(x^3-1), x ) = int( x/(x^3-1), x );Deriv\341l\341sDiff(tan(x),x) = diff(tan(x),x);Ha a sin f\303\274ggv\303\251nyt szeretn\303\251nk deriv\303\241lni \303\251s nem a sin(x) kifejez\303\251st, akkor a k\303\266vetkez\305\221 megold\303\241st haszn\303\241ljuk.D(sin)(3);El\305\221nye, hogy az eredm\303\251ny egy f\303\274ggv\303\251ny, melynek azonnal megk\303\251rdezhetj\303\274k egy adott helyen felvett \303\251rt\303\251k\303\251t. M\303\255g a els\305\221 megold\303\241s \303\241ltal kapott kifejez\303\251st el\305\221bb f\303\274ggv\303\251ny\303\251 kell alak\303\255tani.unapply(diff(sin(x),x),x)(3);Hat\341r\351rt\351k sz\341m\355t\341s:limit(sin(x)/x, x=0);limit(exp(x), x=infinity);limit(exp(x), x=-infinity);limit(1/x, x=0, real);A numtheory csomag (sz\341melm\351let)A sz\341melm\351lettel kapcsolatos bonyolultabb parancsokhoz a numtheory csomag bet\366lt\351s\351vel juthatunk.with(numtheory);Az itt tal\341lhat\363 parancsok k\366z\374l az isprime haszn\341lat\341val m\341r kor\341bban megismerkedt\374nk.Az ithprime(i) utas\355t\341ssal az i-edik pr\355msz\341mot kaphatjuk meg, a nextprime parancs pedig az argumentumak\351nt megadott eg\351sz sz\341mhoz legk\366zelebbi, n\341la nagyobb pr\355mmel t\351r vissza:ithprime(1), ithprime(2), ithprime(26);nextprime(9), nextprime(11), nextprime(1000);Egy sz\303\241m pr\303\255mt\303\251nyez\305\221kre bont\303\241s\303\241t az ifactor vagy az ifactors parancsokkal v\351gezhetj\374kifactor(100);ifactors(100);A divisors paranccsal egy sz\341m oszt\363inak halmaz\341hoz juthatunk:divisors(30);A Fermat \351s Mersenne sz\341mokat illetve pr\355meket ki\355rja. A fermat parancs a megadhat\363 opcion\341lis argumentumban visszaadja a Fermat-sz\341m felbont\341s\341t. fermat(n);fermat(5,'w');w;mersenne(7); # 7-edik Mersenne-sz\341m, mert az pr\355mmersenne(8); # a 8-adik Mersenne-sz\341m nem pr\355mmersenne([7]); # 7-edik Mersenne-pr\355mIsmeri a fontosabb sz\341melm\351leti f\374ggv\351nyeket, pl. az Euler-f\351le phi f\374ggv\351nyt:phi(10);Az isolve a kapott egyenletet az eg\351sz sz\341mok k\366r\351ben oldja meg.isolve(x^2=3,x);Azaz az x^2=3-nak eg\351sz megold\341sa nincs. (Val\363s persze van.)isolve(3*x-4*y=7);A fenti egyenletnek minden _Z1 eg\351sz sz\341mra megold\341sa a megadott x \351s y.Az msolve paranccsa kongruenci\341kat oldhatunk meg.msolve(x^2=1, 5);msolve(x^2=3, 5);1(=1^2) \351s 16(=4^2) is 5-tel osztva 1 marad\351kot ad, de nincs olyan sz\341m, melynek n\351gyzet\351nek 5-\366s marad\351ka 3 lenne.msolve(2^i=3, 19);A megold\341st modulo 18 kapjuk meg, hiszen phi(19)=18.A combinat csomag (kombinatorika)A bonyolultabb kombinatorikai parancsok kiad\341s\341hoz sz\374ks\351g\374nk van az \372gy nevezett combinat csomagra, melyet a m\341r tanult with parancs seg\355ts\351g\351vel t\366lthet\374nk be a mem\363ri\341ba: with(combinat);A bet\303\266lt\303\251s megt\303\266rt\303\251nt\303\251vel egy id\305\221ben a Maple a k\303\251perny\305\221re \303\255rja az \303\272jonnan felhaszn\303\241hat\303\263 parancsokat - n\303\251zz\303\274k most ezek k\303\266z\303\274l a fontosabbakat.A binomi\341lis egy\374tthat\363kat a binomial paranccsal sz\341m\355thatjuk ki:binomial(10,4);10!/(4!*6!);A choose parancs alkalmas egy halmaz vagy lista \366sszes k-adoszt\341ly\372 ism\351tl\351s n\351lk\374li kombin\341ci\363inak ki\355rat\341s\341ra:choose({1,3,5,7},3);choose([2,4,6,8],3);Ha a parancsnak nem adunk meg m\341sodik argumentumot, akkor a halmaz vagy lista \366sszes r\351szhalmazait kapjuk eredm\351ny\374l:choose({1,3,5,7});choose([2,4,6]);Ha list\303\241t haszn\303\241lunk, ism\303\251tl\305\221d\305\221 elemeket is haszn\303\241lhatunk: (ism\351tl\351ses kombin\341ci\363)choose([1,1,2,2,3,3],2);choose([1$4,2$4],4);Ha az alaphalmazt az {1, 2, ... n} sz\341moknak szeretn\351nk v\341lasztani, akkor \351lhet\374nk az al\341bbi r\366vid\355t\351ssel:choose(6,2);nops(choose(10,4))=binomial(10,4); evalb(%);evalb(nops(choose(7))=2^7);Egy halmaz vagy lista \366sszes k-adoszt\341ly\372 ism\351tl\351s n\351lk\374li vari\341ci\363inak ki\355rat\341s\341ra a permute parancs alkalmas:permute({1,4,7,10},2);permute([2,4,6,8],3);Itt ha elhagyjuk a m\341sodik argumentumot, akkor a halmaz vagy lista elemeinek \366sszes lehets\351ges ism\351tl\351s n\351lk\374li permut\341ci\363j\341t kapjuk:permute({3,6,9,12});Ezen parancs eset\351ben is \351lhet\374nk a fent m\341r l\341tott r\366vid\355t\351ssel:permute(4,2);permute(4);Az ism\303\251tl\303\251ses vari\303\241ci\303\263 \303\251s permut\303\241ci\303\263 ebben az esetlben is list\303\241k megad\303\241s\303\241val \303\251rhet\305\221 el.nops(permute([1$5,2$5,3$5,4$5,5$5,6$5],5)) = 6^5; evalb(%);nops(permute([1$3,2$4,3$5])) = (3+4+5)!/(3!*4!*5!); evalb(%);Egy sz\341m \366sszes lehets\351ges \366sszegre bont\341s\341t is felsorolhatjuk:partition(7);Fibonacci sz\303\241moknak nevezz\303\274k azt a sz\303\241msorozatot, melynek nulladik eleme 0, els\305\221 eleme 1, \303\251s minden tov\303\241bbi elemet az \305\221t megel\305\221z\305\221 k\303\251t elem \303\266sszegek\303\251nt kapunk(azaz: f [0] = 0, f [1] = 1, f [k] = f [k-1] + f [k-2] ).A Fibonacci sz\341mokra a fibonacci paranccsal k\351rdezhet\374nk: fibonacci(0), fibonacci(1), fibonacci(2), fibonacci(15);Nem a csomag r\351sze, de hasznos az rsolve parancs, mely rekurz\355v egyenletek megold\341s\341ra szolg\341l.rsolve({f(n)=f(n-1)+f(n-2),f(0)=1,f(1)=1},f(k));TTdSMApJNlJUQUJMRV9TQVZFLzEzNDc1MjIwOFgsJSlhbnl0aGluZ0c2IjYiW2dsISIlISEhIyoiJCIkIiIiIiIjIiIkISIjRiohIiRGK0YpRik2CiIKTTdSMApJNlJUQUJMRV9TQVZFLzEzNDc1NzA2OFgsJSlhbnl0aGluZ0c2IjYiW2dsISIlISEhIyoiJCIkIiIjIiIkIiInRihGKEYpRilGKUYpNiIKTTdSMApJNlJUQUJMRV9TQVZFLzEzNDc2MDc5NlgsJSlhbnl0aGluZ0c2IjYiW2dsISIlISEhIyoiJCIkIiIoIiM3IiNAIiIhRioiIiRGK0YpRik2CiIKTTdSMApJNlJUQUJMRV9TQVZFLzEzNDc2NjE2MFgsJSlhbnl0aGluZ0c2IjYiW2dsISIlISEhIyoiJCIkISNBIiM7IiM6ISNAIiM9RishI0NGK0YrCjYiCg==TTdSMApJNlJUQUJMRV9TQVZFLzEzNDc3MTUyNFgsJSlhbnl0aGluZ0c2IjYiW2dsISIlISEhIyoiJCIkIiU1NSEjNiIkbiMhJUI2IiR3IiEjeSIkCipbIiRNKSIlXjc2Igo=TTdSMApJNlJUQUJMRV9TQVZFLzEzNDc3NTM0MFgsJSlhbnl0aGluZ0c2IjYiW2dsISIlISEhIyciIyIkIiImRidGJ0YnRidGJzYiCg==TTdSMApJNlJUQUJMRV9TQVZFLzEzNDc3Njg0MFgsJSlhbnl0aGluZ0c2IjYiW2dsISIlISEhIyciJCIjIiImRidGJ0YnRidGJzYiCg==TTdSMApJNlJUQUJMRV9TQVZFLzEzNDc4MDUzNlgsJSlhbnl0aGluZ0c2IjYiW2dsISIlISEhIyoiJCIkIiIiIiIpIiIlIiIkRikiIiciIigiIiNGCi02Igo=TTdSMApJNlJUQUJMRV9TQVZFLzEzNDc4Njg3MlgsJSlhbnl0aGluZ0c2IjYiW2dsISIlISEhIyoiJCIkJCErRmoiMy8jISM2JCErYEVqIjMlRikkCiIraElsSzshIzUkIislcE1uJD1GLiQhKzcxYEU4Ri4kIishXEM3MSRGKSQhKyEpKltDNyJGLiQiK1Q/NWJGRi4kIStqIjMvLSJGLjYiCg==TTdSMApJNlJUQUJMRV9TQVZFLzEzNDc5MjIzNlgsJSlhbnl0aGluZ0c2IjYiW2dsISIlISEhIyciIyIkJiUibUc2JCIiIkYqJkYoNiQiIiNGKiZGCig2JEYqRi0mRig2JEYtRi0mRig2JEYqIiIkJkYoNiRGLUY0NiIKTTdSMApJNlJUQUJMRV9TQVZFLzEzNDc5NDk2MFgsJSlhbnl0aGluZ0c2IyUqc3ltbWV0cmljRzYiW2dsISImISEhI0UiKSIpIiQ2JyIkJz4iJCoqCikhJCM+IiQ4IkYqIiQyJUYrRilGKCEiKSEjciIjaCIiKSIkNiUhI18hI1YiI1wiI1chJCpmRjIhI1xGLkYxIiNmIiQzI0Y6IiMqKiIjSCEKI1ciI18hI0JGOkY6ISQ2KkY7NiIKTTdSMApJNlJUQUJMRV9TQVZFLzEzNDY1MDY2NFgqJSlhbnl0aGluZ0c2IjYiW2dsISMlISEhIikiKSIiISIlPzUsJCokIiYwLyIjIiIiIiIjIiM1CiwkRiohIzUsJiIkNSZGLSokIiNFRiwiJCsiLCZGM0YtRjQhJCsiIiUrNUY5NiIKTTdSMApJNlJUQUJMRV9TQVZFLzEzNDgwNTE2NFgsJSlhbnl0aGluZ0c2IjYiW2dsISIlISEhIyoiJCIkISIiISIkISInIiIkIiImIiInRihGKCEiCiU2Igo=TTdSMApJNlJUQUJMRV9TQVZFLzEzNDY1MDc4NFgqJSphbGdlYnJhaWNHNiI2IltnbCEjJSEhISIkIiQhIiUiIiNGKDYiCg==TTdSMApJNlJUQUJMRV9TQVZFLzEzNDgxMTU4NFgsJSphbGdlYnJhaWNHNiI2IltnbCEiJSEhISMqIiQiJCMiIiIiIiNGJ0YoRihGKCIiISEiIkYqCkYoNiIKTTdSMApJNlJUQUJMRV9TQVZFLzEzNDY1MDkwNFgqJSlhbnl0aGluZ0c2IjYiW2dsISMlISEhIiQiJCEiIiIiISIiIjYiCg==TTdSMApJNlJUQUJMRV9TQVZFLzEzNDY1MDk4NFgqJSlhbnl0aGluZ0c2IjYiW2dsISMlISEhIiQiJCIiIkYnIiIhNiIKTTdSMApJNlJUQUJMRV9TQVZFLzEzNDY1MTA2NFgqJSlhbnl0aGluZ0c2IjYiW2dsISMlISEhIiQiJCMiIiIiIiNGJ0YoNiIKTTdSMApJNlJUQUJMRV9TQVZFLzEzNDgzMDAzNlgsJSlhbnl0aGluZ0c2IjYiW2dsISIlISEhIzEiJSIlIiIpIiIkISIiISImIiIlRioiIiEhIiNGCipGJ0YoRilGKiIiJiEiJSEiKjYiCg==TTdSMApJNlJUQUJMRV9TQVZFLzEzNDY1MTE4NFgqJSlhbnl0aGluZ0c2IjYiW2dsISMlISEhIiUiJSIiJSIiISEiKSEiJjYiCg==TTdSMApJNlJUQUJMRV9TQVZFLzEzNDgzNjU1NlgsJSlhbnl0aGluZ0c2IjYiW2dsISIlISEhIzEiJSIlIiIpIiIhRihGKCIiJSMhIzgiIiNGKEYoCiEiJiMiI3pGJyMiJGoiIiNfRihGLSMiI2JGJyMhJDgjRjIjISUyRUYxNiIKTTdSMApJNlJUQUJMRV9TQVZFLzEzNDg0MDQ3MlgsJSlhbnl0aGluZ0c2IjYiW2dsISIlISEhIzEiJSIlIiIiIiIhRihGKEYoRidGKEYoRihGKEYnCkYoRihGKEYoRic2Igo=TTdSMApJNlJUQUJMRV9TQVZFLzEzNDg0NzQ4NFgsJSlhbnl0aGluZ0c2IjYiW2dsISIlISEhIzUiJSImIiIiIiIhRihGKEYoRidGKEYoRihGKEYnCkYoRihGKEYoRicjIiU6PCIlMkUjISVvT0YrIyElWDgiJHApIyIlZjxGKzYiCg==TTdSMApJNlJUQUJMRV9TQVZFLzEzNDY1MTM4NFgqJSlhbnl0aGluZ0c2IjYiW2dsISMlISEhIiUiJSMiI0QiIicjIiIlIiIkIyEiJiIiIyEiIzYiCg==TTdSMApJNlJUQUJMRV9TQVZFLzEzNDY1MTQ2NFgqJSlhbnl0aGluZ0c2IjYiW2dsISMlISEhIiUiJSIiISIiIkYoRic2Igo=TTdSMApJNlJUQUJMRV9TQVZFLzEzNDY1MTU0NFgqJSlhbnl0aGluZ0c2IjYiW2dsISMlISEhIiUiJSIiISIiIkYoRic2Igo=TTdSMApJNlJUQUJMRV9TQVZFLzEzNDY1MTYyNFgqJSlhbnl0aGluZ0c2IjYiW2dsISMlISEhIiQiJCEiJCIiJ0YnNiIK