160 likes | 341 Views
Maple Vs. Sage Vs. Geogebra. Mit tudunk Lineáris algebrából???. Sipos Csaba. Geogebra. Mátrixok, illetve vektorok definiálása: MatrixFromvectors [{lista},{ lista }] VectortFromPoints [{x, y }] A geogebra 2 dimenziós vektorokat kezel Néhány fontosabb művelet: Transpose [Mátrix]
E N D
Maple Vs. Sage Vs. Geogebra Mit tudunk Lineáris algebrából??? Sipos Csaba
Geogebra • Mátrixok, illetve vektorok definiálása: MatrixFromvectors[{lista},{lista}] VectortFromPoints[{x,y}] • A geogebra 2 dimenziós vektorokat kezel • Néhány fontosabb művelet: Transpose[Mátrix] Eigenvalue[Mátrix] Eigenvector[mátrix] MatrixTimesVectorMatrixTimesMatrixDeterminantInverse
Sage PointFromVectorVectorFromPointMatrixFromVectors • Az eszköz egyébként nagyon szemléletes, elég sok mindent meg lehet rajta érteni. • Sage egy kicsit komolyabb eszköz, mint a GeoGebra • Mátrix, vektor definiálás A = Matrix([[1,2,3],[3,2,1],[1,1,1]]) w = vector([1,1,-4]) • Műveltek Mátrixokkal, vektorokkal w*A A*w
Sage • A.eigenvalues() – A sajátértékei • A.eigenvectors_left() - sajátértékek, sajátvektorok, algebrai multiplicitás • Mátrix definíciójánál megadhatjuk, hogy mi felett legyen értelmezve: • AZ = matrix(ZZ, [[2,0], [0,1]]) • AQ = matrix(QQ, [[2,0], [0,1]]) • AR = matrix(RR, [[2,0], [0,1]]) • Lehetőség van Mátrix terek létrehozásáre Q, Z, R felett • M = MatrixSpace(QQ,3) • B = M.basis() - bázisrendszer • A = M(range(9)) – mátrix létehozása • M = MatrixSpace(GF(2),4,8) – kettes számrendszerben 4x8-as mátrixok
Sage • A.rows() – A-nak a sorai • A.columns() – A-nak az oszlopai • A.transpose() – A transzponáltja • fA.charpoly(’t’) - a karakterisztikus polinom . • A.inverse() - inverz • A.conjugate() - konjugált • A[i,j] - i. sor j.eleme • A.nrows() • A.ncols() • A.determinant() • A.trace
Sage • A.norm() • A.norm(1) • A.norm(Infinity) • A.norm(‚Frob’) • A.jordan_form(transformation=True) – Jordan alak, A=P^(-1)*J*P • A.LU() (p permutáció mátrix, L alsó, U felső háromszög mátrix), PA=LU • A.QR() (Q-ortogonális mátrix, R felsőháromszög mátrix ) A=QR • A.SVD() - A=USV^(konjugált v. transzponált) Vektor Műveletek: u.dot_product(v) - <u,v>
Sage u.norm() =u.norm(2) - euklideszi norma u.norm(1) – 1-es (összeg) -norma u.norm(Infinity) – végtelen(maximum) norma Összegzés: Véleményem szerint a Sage elég jól alkalmazható lineáris algebrai feladatok megoldására, elég sok függvényt tartalmaz, amely alkalmazható és segíti a programozó munkáját
Maple • A maple –ben két csomag is található a lineáris algebrai feladatokat kedvelő emberek számára • A maple-ben néhány függvényhez van írva grafikus oktatófelület, ami nagyon jól használhatók a fogalmak megértésére • A Linear Algebra csomagban megtalálható függvények: • Basis(V) – V vektortér bázisa • CharacteristicPolynomial(M,x) – Az M matrix karakterisztikus polinomja
Maple • CrossProduct (v1,v2) - kiszámolja két vektor vektoriális szorzatát • Determinant(M) – az M mátrix determinánsa • Dimension(M) – az M mátrix dimenziója • DotProduct(v1,v2) - <v1,v2> • Eigenvalues(M) – M mátrix sajátértékei • Eigenvectors(M) - M mátrix sajátértékei • GaussianElimination(M) – Felsőháromszög alakra hozaa az M mátrixot
Maple • LinearSolve(M) – A*x=b egyenlet megoldása • MatrixInverse(M) - M-nek az inverze • MatrixScalarMultiply(M,a) – kiszámítja az a*M-et, ahol a az skalár • Transpose(M) – az M mátrix transzponáltjának a kiszámítása • QRDecomposition(M) – Az M QR felbontása • JordanForm(M) – Jordan felbontás
Maple • MatrixVectorMultiply(M,v) – Mátrix –vektor szorzás • Trace(M) – diagonális elemek összege • VectorNorm(v) – norma • MatrixNorm(M) - mátrix norma Összegzés: A maple-t kényelmesebbnek tartom a Sage-néllineáris algebrában, de sajnos a Maple-ért fizetni kell!!!
Maple A Maple nagy segítségre lehet a programozónak a help-jével, amelyben példákkal illusztrálva könnyen megtalálhatjuk azt, amire szükségünk van. Van még egy programcsomag, ami Szimbolikus számításokra szintén alkalmas. A Maple inputjára tekintve biztosan jobb, mert a Maple újabb verzióiban szerintem igen csak nem sikerült megoldani az input bevitelt. Ha van még egy kis idő, akkor ejtenék pár szót a Mathematica nevű programcsomag lineáris algebrában való használhatóságáról.
Mathematica • Úgy mint a Maple-ben, vagy a Sage-ben itt is megtalálhatók a legfontosabb lineáris algebrai műveletek: • EigenValues • Norm • Cross • Dot (.) – van operátor a skaláris szorzatra, ami nem hátrányos, a v1.v2 = <v1,v2> • MatrixNorm • LinearSolve
Mathematica • SingularValueDecomposition • QRDecomposition • SchurDecomposition • Inverse • Transpose • Det • Stb. • A Mathematica-nak is nagyon jó a helpje, talán még jobb is mint a Maplé. Mostanában dolgoztam Maplben és Mathematica-ban is és az utóbbi jobban tetszett. Lehet azért mert gyorsabb, vagy talán az input de nekem jobban tetszett.