Komputeralgebra Rendszerek Filekezelés Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék 2014. február 23. TARTALOMJEGYZÉK 1 of 135
TARTALOMJEGYZÉK I 1 TARTALOMJEGYZÉK 2 A felhasználói interfész File-típusok Dokumentum-kezelés A MAPLE környezet beállítása 3 Könyvtárkezelés MAPLE package-ek MAPLE repository SAGE package ok 4 Filekezelés MAPLE magasszintű I/O Numerikus adatok tárolása a MAPLE -ben A SAGE I/O kezelése A MAPLE alacsony szintű I/O-ja 5 Kapcsolat más rendszerekkel A MAPLE kódgenerálása A MAPLE és a többi komputeralgebra-rendszer Az MmaTranslator csomag TARTALOMJEGYZÉK 2 of 135
TARTALOMJEGYZÉK II A Matlab csomag A SAGE és egyéb rendszerek 6 További példák TARTALOMJEGYZÉK 3 of 135
A felhasználói interfész 4 of 135 A MAPLE FILE-JAI *.valami Kiterjesztés *.mw Tartalom Standard MAPLE, ez a 10.0 verziótól létezik
A felhasználói interfész 5 of 135 A MAPLE FILE-JAI *.valami Kiterjesztés *.mw Tartalom Standard MAPLE, ez a 10.0 verziótól létezik
A felhasználói interfész 6 of 135 A MAPLE FILE-JAI *.valami Kiterjesztés *.mw *.mws Tartalom Standard MAPLE, ez a 10.0 verziótól létezik Klasszikus MAPLE
A felhasználói interfész 7 of 135 A MAPLE FILE-JAI *.valami Kiterjesztés *.mw *.mws *.mpl Tartalom Standard MAPLE, ez a 10.0 verziótól létezik Klasszikus MAPLE MAPLE input batch-hez, kötelező az utasítászáró ;
A felhasználói interfész 8 of 135 A MAPLE FILE-JAI *.valami Kiterjesztés *.mw *.mws *.mpl *.maplet Tartalom Standard MAPLE, ez a 10.0 verziótól létezik Klasszikus MAPLE MAPLE input batch-hez, kötelező az utasítászáró ; Mapletek
A felhasználói interfész 9 of 135 A MAPLE FILE-JAI *.valami Kiterjesztés *.mw *.mws *.mpl *.maplet *.txt Tartalom Standard MAPLE, ez a 10.0 verziótól létezik Klasszikus MAPLE MAPLE input batch-hez, kötelező az utasítászáró ; Mapletek MAPLE text (importhoz)
A felhasználói interfész 10 of 135 A SAGE FILE-JAI Interaktív shell: Mivel ez egy terminál, ennek a history-pufferjét tudjuk lementeni; ennek mérete magában a terminál-menűben állítható.
A felhasználói interfész 11 of 135 A SAGE FILE-JAI Interaktív shell: Mivel ez egy terminál, ennek a history-pufferjét tudjuk lementeni; ennek mérete magában a terminál-menűben állítható. Notebook interfész: A notebook( dirname.sagenb ) paranccsal hívható be, ezt a felhasználó home-könyvtárában tárolja, egy notesz munkalapokból áll (worksheet).
A felhasználói interfész 12 of 135 A SAGE FILE-JAI Interaktív shell: Mivel ez egy terminál, ennek a history-pufferjét tudjuk lementeni; ennek mérete magában a terminál-menűben állítható. Notebook interfész: A notebook( dirname.sagenb ) paranccsal hívható be, ezt a felhasználó home-könyvtárában tárolja, egy notesz munkalapokból áll (worksheet). egy munkalapot vagy az egész noteszt tudjuk menteni
A felhasználói interfész 13 of 135 A SAGE FILE-JAI Interaktív shell: Mivel ez egy terminál, ennek a history-pufferjét tudjuk lementeni; ennek mérete magában a terminál-menűben állítható. Notebook interfész: A notebook( dirname.sagenb ) paranccsal hívható be, ezt a felhasználó home-könyvtárában tárolja, egy notesz munkalapokból áll (worksheet). egy munkalapot vagy az egész noteszt tudjuk menteni a munkalap mentése bzip-tömörítéssel történik, a file-neve a noteszlap neve, SWS kiterjesztéssel
A felhasználói interfész 14 of 135 A SAGE FILE-JAI Interaktív shell: Mivel ez egy terminál, ennek a history-pufferjét tudjuk lementeni; ennek mérete magában a terminál-menűben állítható. Notebook interfész: A notebook( dirname.sagenb ) paranccsal hívható be, ezt a felhasználó home-könyvtárában tárolja, egy notesz munkalapokból áll (worksheet). egy munkalapot vagy az egész noteszt tudjuk menteni a munkalap mentése bzip-tömörítéssel történik, a file-neve a noteszlap neve, SWS kiterjesztéssel a teljes notesz mentése úgy történik, hogy a tömörített munkalapokat egy zip file-ba csomagolja, a név fix, download_worksheets.zip
A felhasználói interfész 15 of 135 A MAPLE UTASÍTÁSBLOKK BEVITELE Egyszerű sorszerkesztés A parancssor lezárása csak a régi verziókban kötelező a ; vagy : karakterekkel (A kettőspont egyben az echozás elnyomása)
A felhasználói interfész 16 of 135 A MAPLE UTASÍTÁSBLOKK BEVITELE Egyszerű sorszerkesztés A parancssor lezárása csak a régi verziókban kötelező a ; vagy : karakterekkel (A kettőspont egyben az echozás elnyomása) túl hosszú sor: a sor folytatását \ jelzi
A felhasználói interfész 17 of 135 A MAPLE UTASÍTÁSBLOKK BEVITELE Egyszerű sorszerkesztés A parancssor lezárása csak a régi verziókban kötelező a ; vagy : karakterekkel (A kettőspont egyben az echozás elnyomása) túl hosszú sor: a sor folytatását \ jelzi Kommentár beszúrása #
A felhasználói interfész 18 of 135 A MAPLE UTASÍTÁSBLOKK BEVITELE Egyszerű sorszerkesztés A parancssor lezárása csak a régi verziókban kötelező a ; vagy : karakterekkel (A kettőspont egyben az echozás elnyomása) túl hosszú sor: a sor folytatását \ jelzi Kommentár beszúrása # Utasításblokk beszúrása: Ctrl-K az aktuális elé, Ctrl-J mögé
A felhasználói interfész 19 of 135 A MAPLE UTASÍTÁSBLOKK BEVITELE Egyszerű sorszerkesztés A parancssor lezárása csak a régi verziókban kötelező a ; vagy : karakterekkel (A kettőspont egyben az echozás elnyomása) túl hosszú sor: a sor folytatását \ jelzi Kommentár beszúrása # Utasításblokk beszúrása: Ctrl-K az aktuális elé, Ctrl-J mögé Az aktuális blok törlése: Ctrl-Del (az ouputot is törölni kell, vagy az üres blokkban ENTER)
A felhasználói interfész 20 of 135 A MAPLE UTASÍTÁSBLOKK BEVITELE Egyszerű sorszerkesztés A parancssor lezárása csak a régi verziókban kötelező a ; vagy : karakterekkel (A kettőspont egyben az echozás elnyomása) túl hosszú sor: a sor folytatását \ jelzi Kommentár beszúrása # Utasításblokk beszúrása: Ctrl-K az aktuális elé, Ctrl-J mögé Az aktuális blok törlése: Ctrl-Del (az ouputot is törölni kell, vagy az üres blokkban ENTER) Utasításblokk végén Enter, többsoros utasításblokk, pl. programozáshoz: Shift-Enter
A felhasználói interfész 21 of 135 A MAPLE UTASÍTÁSBLOKK BEVITELE Egyszerű sorszerkesztés A parancssor lezárása csak a régi verziókban kötelező a ; vagy : karakterekkel (A kettőspont egyben az echozás elnyomása) túl hosszú sor: a sor folytatását \ jelzi Kommentár beszúrása # Utasításblokk beszúrása: Ctrl-K az aktuális elé, Ctrl-J mögé Az aktuális blok törlése: Ctrl-Del (az ouputot is törölni kell, vagy az üres blokkban ENTER) Utasításblokk végén Enter, többsoros utasításblokk, pl. programozáshoz: Shift-Enter Az újraszámolás nem automatikus (Az eszköztárban a felkiáltójelek segítenek)
A felhasználói interfész 22 of 135 A MAPLE UTASÍTÁSBLOKK BEVITELE Egyszerű sorszerkesztés A parancssor lezárása csak a régi verziókban kötelező a ; vagy : karakterekkel (A kettőspont egyben az echozás elnyomása) túl hosszú sor: a sor folytatását \ jelzi Kommentár beszúrása # Utasításblokk beszúrása: Ctrl-K az aktuális elé, Ctrl-J mögé Az aktuális blok törlése: Ctrl-Del (az ouputot is törölni kell, vagy az üres blokkban ENTER) Utasításblokk végén Enter, többsoros utasításblokk, pl. programozáshoz: Shift-Enter Az újraszámolás nem automatikus (Az eszköztárban a felkiáltójelek segítenek) Hivatkozás az előző eredményekre (három szintig): "%,%%, %%%"
A felhasználói interfész 23 of 135 A MAPLE STRUKTURÁLT BEVITELE Lehetőségünk van többszintű strukturált szöveg bevitelére Struktúraelemek: section, subsection. Beszúrásuk a menűből
A felhasználói interfész 24 of 135 A MAPLE STRUKTURÁLT BEVITELE Lehetőségünk van többszintű strukturált szöveg bevitelére Struktúraelemek: section, subsection. Beszúrásuk a menűből Egy paragrafus lehet szöveg illetve végrehajtási blokk.
A felhasználói interfész 25 of 135 A MAPLE STRUKTURÁLT BEVITELE Lehetőségünk van többszintű strukturált szöveg bevitelére Struktúraelemek: section, subsection. Beszúrásuk a menűből Egy paragrafus lehet szöveg illetve végrehajtási blokk. A szöveges és matematikai írásmód között az F5 vált; lehet szövegben matematikai formulákat írni, ezek nem értékelődnek ki.
A felhasználói interfész 26 of 135 SAGE INTERAKTÍV SHELL Az interaktív shell lényegében az ipython A szokásos terminálkezelő
A felhasználói interfész 27 of 135 SAGE INTERAKTÍV SHELL Az interaktív shell lényegében az ipython A szokásos terminálkezelő Az előző eredményekre hívatkozás: _,
A felhasználói interfész 28 of 135 SAGE INTERAKTÍV SHELL Az interaktív shell lényegében az ipython A szokásos terminálkezelő Az előző eredményekre hívatkozás: _, A teljes előzménylista a %hist utasítással
A felhasználói interfész 29 of 135 SAGE NOTEBOOK-INTERFÉSZ I Egy web-szerver által menedzselt web-lap a munkalap cellákból áll, ezt Enter rel tehetjük többsorossá, Shift-Enter a kiértékelés
A felhasználói interfész 30 of 135 SAGE NOTEBOOK-INTERFÉSZ I Egy web-szerver által menedzselt web-lap a munkalap cellákból áll, ezt Enter rel tehetjük többsorossá, Shift-Enter a kiértékelés egy cellán belül szabadon szerkeszthetünk (a megszokott beszúrási, visszavonási funkciók működnek)
A felhasználói interfész 31 of 135 SAGE NOTEBOOK-INTERFÉSZ I Egy web-szerver által menedzselt web-lap a munkalap cellákból áll, ezt Enter rel tehetjük többsorossá, Shift-Enter a kiértékelés egy cellán belül szabadon szerkeszthetünk (a megszokott beszúrási, visszavonási funkciók működnek) A cella fölött területeb Shift tel kattintva szövegblokkot kapunk; ez egy tinyhtml szerkesztő, sok HTML-es tudással. (Módosítás: dupla kattintással)
A felhasználói interfész 32 of 135 SAGE NOTEBOOK-INTERFÉSZ I Egy web-szerver által menedzselt web-lap a munkalap cellákból áll, ezt Enter rel tehetjük többsorossá, Shift-Enter a kiértékelés egy cellán belül szabadon szerkeszthetünk (a megszokott beszúrási, visszavonási funkciók működnek) A cella fölött területeb Shift tel kattintva szövegblokkot kapunk; ez egy tinyhtml szerkesztő, sok HTML-es tudással. (Módosítás: dupla kattintással) Az eredmény megjelenítése alaphelyzetben minden cifrázást nélkülöz.
A felhasználói interfész 33 of 135 SAGE NOTEBOOK-INTERFÉSZ I Egy web-szerver által menedzselt web-lap a munkalap cellákból áll, ezt Enter rel tehetjük többsorossá, Shift-Enter a kiértékelés egy cellán belül szabadon szerkeszthetünk (a megszokott beszúrási, visszavonási funkciók működnek) A cella fölött területeb Shift tel kattintva szövegblokkot kapunk; ez egy tinyhtml szerkesztő, sok HTML-es tudással. (Módosítás: dupla kattintással) Az eredmény megjelenítése alaphelyzetben minden cifrázást nélkülöz. A show() vagy a view() függvényekbe téve a megjelenítendő eredményt a MathJax formázó grafikusan jelenít meg
A felhasználói interfész 34 of 135 SAGE NOTEBOOK-INTERFÉSZ II A grafikus megjelenés Typeset kapcsoló beállításával automatikus lesz.
A felhasználói interfész 35 of 135 SAGE NOTEBOOK-INTERFÉSZ II A grafikus megjelenés Typeset kapcsoló beállításával automatikus lesz. Nemcsak SAGE -et lehet szerkeszteni és futtatni
A felhasználói interfész 36 of 135 SAGE NOTEBOOK-INTERFÉSZ II A grafikus megjelenés Typeset kapcsoló beállításával automatikus lesz. Nemcsak SAGE -et lehet szerkeszteni és futtatni A file-kezelés, munkalap-kezelés a legördülő menükből érhető el.
A felhasználói interfész 37 of 135 SAGE NOTEBOOK-INTERFÉSZ II A grafikus megjelenés Typeset kapcsoló beállításával automatikus lesz. Nemcsak SAGE -et lehet szerkeszteni és futtatni A file-kezelés, munkalap-kezelés a legördülő menükből érhető el. a debugoláson kívül minden funkció működik
A felhasználói interfész 38 of 135 A MAPLE KÖRNYEZET BEÁLLÍTÁSA kernelopts és társai
A felhasználói interfész 39 of 135 A MAPLE KÖRNYEZET BEÁLLÍTÁSA kernelopts és társai kernelopts
A felhasználói interfész 40 of 135 A MAPLE KÖRNYEZET BEÁLLÍTÁSA kernelopts és társai kernelopts interface, pl. interface(prompt= > )
A felhasználói interfész 41 of 135 A MAPLE KÖRNYEZET BEÁLLÍTÁSA kernelopts és társai kernelopts interface, pl. interface(prompt= > ) errorbreak - 0: folytatás, 1 :szintaktikus hiba után megáll,2: bármely hiba után leáll
A felhasználói interfész 42 of 135 A MAPLE KÖRNYEZET BEÁLLÍTÁSA kernelopts és társai kernelopts interface, pl. interface(prompt= > ) errorbreak - 0: folytatás, 1 :szintaktikus hiba után megáll,2: bármely hiba után leáll getenv( rendszerváltozó ), pl. HOME
A felhasználói interfész 43 of 135 A MAPLE KÖRNYEZET BEÁLLÍTÁSA kernelopts és társai kernelopts interface, pl. interface(prompt= > ) errorbreak - 0: folytatás, 1 :szintaktikus hiba után megáll,2: bármely hiba után leáll getenv( rendszerváltozó ), pl. HOME currentdir
MAPLE PACKAGE-EK Csomagok Könyvtárkezelés 44 of 135
MAPLE PACKAGE-EK Csomagok A standard és az update könyvtárak: csak a szükséges van a memóriában Könyvtárkezelés 45 of 135
MAPLE PACKAGE-EK Csomagok A standard és az update könyvtárak: csak a szükséges van a memóriában A package-ok. Könyvtárkezelés 46 of 135
MAPLE PACKAGE-EK Csomagok A standard és az update könyvtárak: csak a szükséges van a memóriában A package-ok.?index,packages Könyvtárkezelés 47 of 135
MAPLE PACKAGE-EK Csomagok A standard és az update könyvtárak: csak a szükséges van a memóriában A package-ok.?index,packages Az újabb csomak moduláris csomagok: with(linearalgebra[modular]) (Vagy a stats) Könyvtárkezelés 48 of 135
MAPLE PACKAGE-EK Csomagok A standard és az update könyvtárak: csak a szükséges van a memóriában A package-ok.?index,packages Az újabb csomak moduláris csomagok: with(linearalgebra[modular]) (Vagy a stats) Share vagy user-contributed library: www.mapleapps.com Könyvtárkezelés 49 of 135
MAPLE PACKAGE-EK Csomagok A standard és az update könyvtárak: csak a szükséges van a memóriában A package-ok.?index,packages Az újabb csomak moduláris csomagok: with(linearalgebra[modular]) (Vagy a stats) Share vagy user-contributed library: www.mapleapps.com Csomag használata: with(). Könyvtárkezelés 50 of 135
MAPLE PACKAGE-EK Csomagok A standard és az update könyvtárak: csak a szükséges van a memóriában A package-ok.?index,packages Az újabb csomak moduláris csomagok: with(linearalgebra[modular]) (Vagy a stats) Share vagy user-contributed library: www.mapleapps.com Csomag használata: with(). Ha csak ritkán és kevés fügvény kell: csomagnév[függvénynév] illetve a use...in... szerkezet Könyvtárkezelés 51 of 135
MAPLE REPOSITORY Mi hol van? Könyvtárkezelés 52 of 135
MAPLE REPOSITORY Mi hol van? Inicializálás induláskor :../src/init és.mapleinit, illetve /lib/maple.ini Könyvtárkezelés 53 of 135
MAPLE REPOSITORY Mi hol van? Inicializálás induláskor :../src/init és.mapleinit, illetve /lib/maple.ini libname : hol van a MAPLE könyvtár? Könyvtárkezelés 54 of 135
MAPLE REPOSITORY Mi hol van? Inicializálás induláskor :../src/init és.mapleinit, illetve /lib/maple.ini libname : hol van a MAPLE könyvtár? currentdir(...) : a munkakönyvtár megadása, lekérdezése Könyvtárkezelés 55 of 135
MAPLE REPOSITORY Mi hol van? Inicializálás induláskor :../src/init és.mapleinit, illetve /lib/maple.ini libname : hol van a MAPLE könyvtár? currentdir(...) : a munkakönyvtár megadása, lekérdezése Könyvtárkezelés 56 of 135
MAPLE REPOSITORY Mi hol van? Bővítés Inicializálás induláskor :../src/init és.mapleinit, illetve /lib/maple.ini libname : hol van a MAPLE könyvtár? currentdir(...) : a munkakönyvtár megadása, lekérdezése Könyvtárkezelés 57 of 135
MAPLE REPOSITORY Mi hol van? Bővítés Inicializálás induláskor :../src/init és.mapleinit, illetve /lib/maple.ini libname : hol van a MAPLE könyvtár? currentdir(...) : a munkakönyvtár megadása, lekérdezése Könyvtárainkat vagy egy.lib és.ind kiterjesztésű file-párosban, vagy egy.lib kiterjesztésű file-ban tárolhatjuk Könyvtárkezelés 58 of 135
MAPLE REPOSITORY Mi hol van? Bővítés Inicializálás induláskor :../src/init és.mapleinit, illetve /lib/maple.ini libname : hol van a MAPLE könyvtár? currentdir(...) : a munkakönyvtár megadása, lekérdezése Könyvtárainkat vagy egy.lib és.ind kiterjesztésű file-párosban, vagy egy.lib kiterjesztésű file-ban tárolhatjuk mkdir(...) : könyvtár létrehozása Könyvtárkezelés 59 of 135
MAPLE REPOSITORY Mi hol van? Bővítés Inicializálás induláskor :../src/init és.mapleinit, illetve /lib/maple.ini libname : hol van a MAPLE könyvtár? currentdir(...) : a munkakönyvtár megadása, lekérdezése Könyvtárainkat vagy egy.lib és.ind kiterjesztésű file-párosban, vagy egy.lib kiterjesztésű file-ban tárolhatjuk mkdir(...) : könyvtár létrehozása libname lib1,lib2,... - könyvtárak megadása Könyvtárkezelés 60 of 135
MAPLE REPOSITORY Mi hol van? Bővítés Inicializálás induláskor :../src/init és.mapleinit, illetve /lib/maple.ini libname : hol van a MAPLE könyvtár? currentdir(...) : a munkakönyvtár megadása, lekérdezése Könyvtárainkat vagy egy.lib és.ind kiterjesztésű file-párosban, vagy egy.lib kiterjesztésű file-ban tárolhatjuk mkdir(...) : könyvtár létrehozása libname lib1,lib2,... - könyvtárak megadása A march paranccsal saját archívumot hozhatunk létre Könyvtárkezelés 61 of 135
MAPLE REPOSITORY Mi hol van? Bővítés Inicializálás induláskor :../src/init és.mapleinit, illetve /lib/maple.ini libname : hol van a MAPLE könyvtár? currentdir(...) : a munkakönyvtár megadása, lekérdezése Könyvtárainkat vagy egy.lib és.ind kiterjesztésű file-párosban, vagy egy.lib kiterjesztésű file-ban tárolhatjuk mkdir(...) : könyvtár létrehozása libname lib1,lib2,... - könyvtárak megadása A march paranccsal saját archívumot hozhatunk létre march( create, "privatelib", 100) Könyvtárkezelés 62 of 135
MAPLE REPOSITORY Mi hol van? Bővítés Inicializálás induláskor :../src/init és.mapleinit, illetve /lib/maple.ini libname : hol van a MAPLE könyvtár? currentdir(...) : a munkakönyvtár megadása, lekérdezése Könyvtárainkat vagy egy.lib és.ind kiterjesztésű file-párosban, vagy egy.lib kiterjesztésű file-ban tárolhatjuk mkdir(...) : könyvtár létrehozása libname lib1,lib2,... - könyvtárak megadása A march paranccsal saját archívumot hozhatunk létre march( create, "privatelib", 100) Törlés, bővítés, tömörítés, stb :?march Könyvtárkezelés 63 of 135
MAPLE REPOSITORY Mi hol van? Bővítés Inicializálás induláskor :../src/init és.mapleinit, illetve /lib/maple.ini libname : hol van a MAPLE könyvtár? currentdir(...) : a munkakönyvtár megadása, lekérdezése Könyvtárainkat vagy egy.lib és.ind kiterjesztésű file-párosban, vagy egy.lib kiterjesztésű file-ban tárolhatjuk mkdir(...) : könyvtár létrehozása libname lib1,lib2,... - könyvtárak megadása A march paranccsal saját archívumot hozhatunk létre march( create, "privatelib", 100) Törlés, bővítés, tömörítés, stb :?march savelibname=s1,s2,...; savelib(név1,név2,...); Könyvtárkezelés 64 of 135
A SAGE CSOMAGJAI Standard csomagok: automatikusan belekerülnek a disztribúcióba, frissítéskor is. A frissítés sage -upgrade Könyvtárkezelés 65 of 135
A SAGE CSOMAGJAI Standard csomagok: automatikusan belekerülnek a disztribúcióba, frissítéskor is. A frissítés sage -upgrade Opcionális csomagok a sage -i csomagnév paranccsal telepíthetők Könyvtárkezelés 66 of 135
A SAGE CSOMAGJAI Standard csomagok: automatikusan belekerülnek a disztribúcióba, frissítéskor is. A frissítés sage -upgrade Opcionális csomagok a sage -i csomagnév paranccsal telepíthetők Huge -csomag: elliptikus görbe adatbázis, ugyanúgy telepítendő, mint az opcionálisak Könyvtárkezelés 67 of 135
A SAGE CSOMAGJAI Standard csomagok: automatikusan belekerülnek a disztribúcióba, frissítéskor is. A frissítés sage -upgrade Opcionális csomagok a sage -i csomagnév paranccsal telepíthetők Huge -csomag: elliptikus görbe adatbázis, ugyanúgy telepítendő, mint az opcionálisak Kísérleti csomagok: nem teljesen tesztelt csomagok Könyvtárkezelés 68 of 135
A SAGE CSOMAGJAI Standard csomagok: automatikusan belekerülnek a disztribúcióba, frissítéskor is. A frissítés sage -upgrade Opcionális csomagok a sage -i csomagnév paranccsal telepíthetők Huge -csomag: elliptikus görbe adatbázis, ugyanúgy telepítendő, mint az opcionálisak Kísérleti csomagok: nem teljesen tesztelt csomagok Maguk a csomagok Könyvtárkezelés 69 of 135
A SAGE CSOMAGJAI Standard csomagok: automatikusan belekerülnek a disztribúcióba, frissítéskor is. A frissítés sage -upgrade Opcionális csomagok a sage -i csomagnév paranccsal telepíthetők Huge -csomag: elliptikus görbe adatbázis, ugyanúgy telepítendő, mint az opcionálisak Kísérleti csomagok: nem teljesen tesztelt csomagok Maguk a csomagok Saját csomag készítése: a GNU licencelés szabályai szerint, a Developer s Guide alapján. Könyvtárkezelés 70 of 135
Filekezelés 71 of 135 MAGASSZINTŰ I/O Munkalap és elemeinek írása/olvasása
Filekezelés 72 of 135 MAGASSZINTŰ I/O Munkalap és elemeinek írása/olvasása
Filekezelés 73 of 135 MAGASSZINTŰ I/O Munkalap és elemeinek írása/olvasása
Filekezelés 74 of 135 MAGASSZINTŰ I/O Munkalap és elemeinek írása/olvasása Munkafüzetek outputja
Filekezelés 75 of 135 MAGASSZINTŰ I/O Munkalap és elemeinek írása/olvasása Munkafüzetek outputja MAPLE repository
Filekezelés 76 of 135 MAGASSZINTŰ I/O Munkalap és elemeinek írása/olvasása Munkafüzetek outputja MAPLE repository MAPLE programok
Filekezelés 77 of 135 MAGASSZINTŰ I/O Munkalap és elemeinek írása/olvasása Munkafüzetek outputja MAPLE repository MAPLE programok Más alkalmazások felé
Filekezelés 78 of 135 MAGASSZINTŰ I/O Munkalap és elemeinek írása/olvasása Munkafüzetek outputja MAPLE repository MAPLE programok Más alkalmazások felé
Filekezelés 79 of 135 MAGASSZINTŰ I/O Munkalap és elemeinek írása/olvasása Munkafüzetek outputja MAPLE repository MAPLE programok Más alkalmazások felé
Filekezelés 80 of 135 MAGASSZINTŰ I/O Munkalap és elemeinek írása/olvasása Munkafüzetek outputja MAPLE repository MAPLE programok Más alkalmazások felé writeto("<outputfile")
Filekezelés 81 of 135 MAGASSZINTŰ I/O Munkalap és elemeinek írása/olvasása Munkafüzetek outputja MAPLE repository MAPLE programok Más alkalmazások felé writeto("<outputfile") appendto("outputfile")
Filekezelés 82 of 135 MAGASSZINTŰ I/O Munkalap és elemeinek írása/olvasása Munkafüzetek outputja MAPLE repository MAPLE programok Más alkalmazások felé writeto("<outputfile") appendto("outputfile") writeto("terminal")
Filekezelés 83 of 135 MAGASSZINTŰ I/O Munkalap és elemeinek írása/olvasása Munkafüzetek outputja MAPLE repository MAPLE programok Más alkalmazások felé writeto("<outputfile") appendto("outputfile") writeto("terminal") save varseq,"file" <-> read varseq,"file"
Filekezelés 84 of 135 MAGASSZINTŰ I/O Munkalap és elemeinek írása/olvasása Munkafüzetek outputja MAPLE repository MAPLE programok Más alkalmazások felé writeto("<outputfile") appendto("outputfile") writeto("terminal") save varseq,"file" <-> read varseq,"file" save varseq,"file.m" <-> read varseq,"file.m"
Filekezelés 85 of 135 MAGASSZINTŰ I/O Munkalap és elemeinek írása/olvasása Munkafüzetek outputja MAPLE repository MAPLE programok Más alkalmazások felé writeto("<outputfile") appendto("outputfile") writeto("terminal") save varseq,"file" <-> read varseq,"file" save varseq,"file.m" <-> read varseq,"file.m" ssystem("more datafile")[2] Az op.rendszer hívása
Filekezelés 86 of 135 NUMERIKUS ADATOK TÁROLÁSA Nagytömegű adatok feldolgozása
Filekezelés 87 of 135 NUMERIKUS ADATOK TÁROLÁSA Nagytömegű adatok feldolgozása Adatok kiírása: writedata( outputfile,data,típuslista). Utána fclose()!
Filekezelés 88 of 135 NUMERIKUS ADATOK TÁROLÁSA Nagytömegű adatok feldolgozása Adatok kiírása: writedata( outputfile,data,típuslista). Utána fclose()! Alternatíva: writeline
Filekezelés 89 of 135 NUMERIKUS ADATOK TÁROLÁSA Nagytömegű adatok feldolgozása Adatok kiírása: writedata( outputfile,data,típuslista). Utána fclose()! Alternatíva: writeline Beolvasás: readdata ( file-név,oszlopok száma)
Filekezelés 90 of 135 NUMERIKUS ADATOK TÁROLÁSA Nagytömegű adatok feldolgozása Adatok kiírása: writedata( outputfile,data,típuslista). Utána fclose()! Alternatíva: writeline Beolvasás: readdata ( file-név,oszlopok száma) Alternatíva readline utána sscanf()
Filekezelés 91 of 135 NUMERIKUS ADATOK TÁROLÁSA Nagytömegű adatok feldolgozása Adatok kiírása: writedata( outputfile,data,típuslista). Utána fclose()! Alternatíva: writeline Beolvasás: readdata ( file-név,oszlopok száma) Alternatíva readline utána sscanf() Másik lehetőség a stats csomag : ImportMatrix, ExportMatrix utasítása
Filekezelés 92 of 135 NUMERIKUS ADATOK TÁROLÁSA Nagytömegű adatok feldolgozása Adatok kiírása: writedata( outputfile,data,típuslista). Utána fclose()! Alternatíva: writeline Beolvasás: readdata ( file-név,oszlopok száma) Alternatíva readline utána sscanf() Másik lehetőség a stats csomag : ImportMatrix, ExportMatrix utasítása ExportMatrix(file,Mátrix(ok),opciók)
Filekezelés 93 of 135 NUMERIKUS ADATOK TÁROLÁSA Nagytömegű adatok feldolgozása Adatok kiírása: writedata( outputfile,data,típuslista). Utána fclose()! Alternatíva: writeline Beolvasás: readdata ( file-név,oszlopok száma) Alternatíva readline utána sscanf() Másik lehetőség a stats csomag : ImportMatrix, ExportMatrix utasítása ExportMatrix(file,Mátrix(ok),opciók) ImportMatrix(file,opciók)
Filekezelés 94 of 135 A SAGE FILEKEZELÉSE I Naplózás
Filekezelés 95 of 135 A SAGE FILEKEZELÉSE I Naplózás %logstart Automatikusan naplózódik minden, alaphelyzetben a "ipython_log.py"file ba. Lehet append és rotate módja is.
Filekezelés 96 of 135 A SAGE FILEKEZELÉSE I Naplózás %logstart Automatikusan naplózódik minden, alaphelyzetben a "ipython_log.py"file ba. Lehet append és rotate módja is. %logstop A naplózás leállítása
Filekezelés 97 of 135 A SAGE FILEKEZELÉSE I Naplózás %logstart Automatikusan naplózódik minden, alaphelyzetben a "ipython_log.py"file ba. Lehet append és rotate módja is. %logstop A naplózás leállítása %logstate naplózunk e vagy sem
Filekezelés 98 of 135 A SAGE FILEKEZELÉSE I Naplózás %logstart Automatikusan naplózódik minden, alaphelyzetben a "ipython_log.py"file ba. Lehet append és rotate módja is. %logstop A naplózás leállítása %logstate naplózunk e vagy sem %logoff, %logon A naplózás ideiglenes felfüggesztése és újraindítása
Filekezelés 99 of 135 A SAGE FILEKEZELÉSE I Naplózás %logstart Automatikusan naplózódik minden, alaphelyzetben a "ipython_log.py"file ba. Lehet append és rotate módja is. %logstop A naplózás leállítása %logstate naplózunk e vagy sem %logoff, %logon A naplózás ideiglenes felfüggesztése és újraindítása Állapot mentése A save_session(sessionname) paranccsal mentjük le minden változó aktuális állapotát, a load_session(sessionname)-el töltjük vissza.
Filekezelés 100 of 135 A SAGE FILEKEZELÉSE II Egyedi objektumok mentés A save(obj, filename, compress=none) paranccsal meteni, a load(*filename, compress=true, verbose=true) paranccsal pedig viszatölteni lehet egyedi objektumot. A naplózás nem megy a notebook-ban.
Filekezelés 101 of 135 A SAGE FILEKEZELÉSE II Egyedi objektumok mentés A save(obj, filename, compress=none) paranccsal meteni, a load(*filename, compress=true, verbose=true) paranccsal pedig viszatölteni lehet egyedi objektumot. Alacsonyszintű I/O A naplózás nem megy a notebook-ban.
Filekezelés 102 of 135 A SAGE FILEKEZELÉSE II Egyedi objektumok mentés A save(obj, filename, compress=none) paranccsal meteni, a load(*filename, compress=true, verbose=true) paranccsal pedig viszatölteni lehet egyedi objektumot. Alacsonyszintű I/O Az egyéb file-kezelés open és close Python függvényekkel történik A naplózás nem megy a notebook-ban.
Filekezelés 103 of 135 A SAGE FILEKEZELÉSE II Egyedi objektumok mentés A save(obj, filename, compress=none) paranccsal meteni, a load(*filename, compress=true, verbose=true) paranccsal pedig viszatölteni lehet egyedi objektumot. Alacsonyszintű I/O Az egyéb file-kezelés open és close Python függvényekkel történik Kiíratás write, beolvasás a read_data függvényekkel A naplózás nem megy a notebook-ban.
Filekezelés 104 of 135 A SAGE FILEKEZELÉSE II Egyedi objektumok mentés A save(obj, filename, compress=none) paranccsal meteni, a load(*filename, compress=true, verbose=true) paranccsal pedig viszatölteni lehet egyedi objektumot. Alacsonyszintű I/O Az egyéb file-kezelés open és close Python függvényekkel történik Kiíratás write, beolvasás a read_data függvényekkel Egyéb output: print, pretty_print A naplózás nem megy a notebook-ban.
Filekezelés 105 of 135 A SAGE FILEKEZELÉSE II Egyedi objektumok mentés A save(obj, filename, compress=none) paranccsal meteni, a load(*filename, compress=true, verbose=true) paranccsal pedig viszatölteni lehet egyedi objektumot. Alacsonyszintű I/O Az egyéb file-kezelés open és close Python függvényekkel történik Kiíratás write, beolvasás a read_data függvényekkel Egyéb output: print, pretty_print Rendszerparancs a! segítségével adható ki. A naplózás nem megy a notebook-ban.
Filekezelés 106 of 135 ALACSONY SZINTŰ I/O Stream-kezelés
Filekezelés 107 of 135 ALACSONY SZINTŰ I/O Stream-kezelés STREAM - fopen, fclose
Filekezelés 108 of 135 ALACSONY SZINTŰ I/O Stream-kezelés STREAM - fopen, fclose RAW - open, close
Filekezelés 109 of 135 ALACSONY SZINTŰ I/O Stream-kezelés STREAM - fopen, fclose RAW - open, close PIPE - pipe, close
Filekezelés 110 of 135 ALACSONY SZINTŰ I/O Stream-kezelés STREAM - fopen, fclose RAW - open, close PIPE - pipe, close PROCESS - popen, pclose
Filekezelés 111 of 135 ALACSONY SZINTŰ I/O Stream-kezelés STREAM - fopen, fclose RAW - open, close PIPE - pipe, close PROCESS - popen, pclose
Filekezelés 112 of 135 ALACSONY SZINTŰ I/O Stream-kezelés STREAM - fopen, fclose RAW - open, close PIPE - pipe, close PROCESS - popen, pclose I/O formázás
Filekezelés 113 of 135 ALACSONY SZINTŰ I/O Stream-kezelés STREAM - fopen, fclose RAW - open, close PIPE - pipe, close PROCESS - popen, pclose I/O formázás fprintf(stream,format,args), nprintf(format,args)
Filekezelés 114 of 135 ALACSONY SZINTŰ I/O Stream-kezelés STREAM - fopen, fclose RAW - open, close PIPE - pipe, close PROCESS - popen, pclose I/O formázás fprintf(stream,format,args), nprintf(format,args) printf(format,argf), sprintf(format,args)
Filekezelés 115 of 135 ALACSONY SZINTŰ I/O Stream-kezelés STREAM - fopen, fclose RAW - open, close PIPE - pipe, close PROCESS - popen, pclose I/O formázás fprintf(stream,format,args), nprintf(format,args) printf(format,argf), sprintf(format,args) fscanf(stream,format), scanf(format), sscanf(string,format)
KÓDGENERÁLÁS Kapcsolat más rendszerekkel Kapcsolat más rendszerekkel 116 of 135
KÓDGENERÁLÁS Kapcsolat más rendszerekkel Használt package-ok: codegen (cost és optimize), valamint a CodeGeneration Kapcsolat más rendszerekkel 117 of 135
KÓDGENERÁLÁS Kapcsolat más rendszerekkel Használt package-ok: codegen (cost és optimize), valamint a CodeGeneration Cél-nyelvek: FORTRAN, Java, C, MatLab, VisualBasic Kapcsolat más rendszerekkel 118 of 135
KÓDGENERÁLÁS Kapcsolat más rendszerekkel Használt package-ok: codegen (cost és optimize), valamint a CodeGeneration Cél-nyelvek: FORTRAN, Java, C, MatLab, VisualBasic L A TEX export Kapcsolat más rendszerekkel 119 of 135
KÓDGENERÁLÁS Kapcsolat más rendszerekkel Használt package-ok: codegen (cost és optimize), valamint a CodeGeneration Cél-nyelvek: FORTRAN, Java, C, MatLab, VisualBasic L A TEX export Export az automatikus differenciálás felé( pl. jacobi mátrix generálás) Kapcsolat más rendszerekkel 120 of 135
A MAPLE ÉS A MATHEMATICA A MAPLE bizonyos korlátokkal képes önállóan futtatni a fenti két rendszer munkalapjait. Mathematica Az MmaTranslator csomag értelmezi a Mathematica utasításait, munkalapjait, de nem futtat programot. Kapcsolat más rendszerekkel 121 of 135
A MAPLE ÉS A MATHEMATICA A MAPLE bizonyos korlátokkal képes önállóan futtatni a fenti két rendszer munkalapjait. Mathematica Az MmaTranslator csomag értelmezi a Mathematica utasításait, munkalapjait, de nem futtat programot. FromMma input sort input sorba konvertál Kapcsolat más rendszerekkel 122 of 135
A MAPLE ÉS A MATHEMATICA A MAPLE bizonyos korlátokkal képes önállóan futtatni a fenti két rendszer munkalapjait. Mathematica Az MmaTranslator csomag értelmezi a Mathematica utasításait, munkalapjait, de nem futtat programot. FromMma input sort input sorba konvertál FromMmaNotebook munkalapot munkalappá konvertál Kapcsolat más rendszerekkel 123 of 135
A MAPLE ÉS A MATHEMATICA A MAPLE bizonyos korlátokkal képes önállóan futtatni a fenti két rendszer munkalapjait. Mathematica Az MmaTranslator csomag értelmezi a Mathematica utasításait, munkalapjait, de nem futtat programot. FromMma input sort input sorba konvertál FromMmaNotebook munkalapot munkalappá konvertál MmaToMaple egy maplet, interaktív transzlátor Kapcsolat más rendszerekkel 124 of 135
A MAPLE ÉS A MATLAB Matlab csomag, csomag egy részéhez installált Matlab kell Matlab Kapcsolat más rendszerekkel 125 of 135
A MAPLE ÉS A MATLAB Matlab csomag, csomag egy részéhez installált Matlab kell Matlab Elsődleges kommunikációs függvények: változók kiértékeltetése a Matlabon keresztül Kapcsolat más rendszerekkel 126 of 135
A MAPLE ÉS A MATLAB Matlab csomag, csomag egy részéhez installált Matlab kell Matlab Elsődleges kommunikációs függvények: változók kiértékeltetése a Matlabon keresztül Másodlagos kommunikációs függvények: az adatátvitelt végzik Kapcsolat más rendszerekkel 127 of 135
A MAPLE ÉS A MATLAB Matlab csomag, csomag egy részéhez installált Matlab kell Matlab Elsődleges kommunikációs függvények: változók kiértékeltetése a Matlabon keresztül Másodlagos kommunikációs függvények: az adatátvitelt végzik Transzlációs függvények: Matlab kód fordítása Maple ra, önállóan futtathatók. Kapcsolat más rendszerekkel 128 of 135
A SAGE ÉS EGYÉB RENDSZEREK A SAGE interfészt biztosít sok rendszer felé Kapcsolat más rendszerekkel Eredetileg a SAGE minden szimbolikus funkcióját a maxima végezte. Kapcsolat más rendszerekkel 129 of 135
A SAGE ÉS EGYÉB RENDSZEREK A SAGE interfészt biztosít sok rendszer felé Kapcsolat más rendszerekkel A pari, gap, gp, maxima interfész beépített Eredetileg a SAGE minden szimbolikus funkcióját a maxima végezte. Kapcsolat más rendszerekkel 130 of 135
A SAGE ÉS EGYÉB RENDSZEREK A SAGE interfészt biztosít sok rendszer felé Kapcsolat más rendszerekkel A pari, gap, gp, maxima interfész beépített Opcionális package: pl. Singular Eredetileg a SAGE minden szimbolikus funkcióját a maxima végezte. Kapcsolat más rendszerekkel 131 of 135
A SAGE ÉS EGYÉB RENDSZEREK A SAGE interfészt biztosít sok rendszer felé Kapcsolat más rendszerekkel A pari, gap, gp, maxima interfész beépített Opcionális package: pl. Singular Fizetős programok: Maple, Mathematica, Magma, MatLab Eredetileg a SAGE minden szimbolikus funkcióját a maxima végezte. Kapcsolat más rendszerekkel 132 of 135
A SAGE ÉS EGYÉB RENDSZEREK A SAGE interfészt biztosít sok rendszer felé Kapcsolat más rendszerekkel A pari, gap, gp, maxima interfész beépített Opcionális package: pl. Singular Fizetős programok: Maple, Mathematica, Magma, MatLab Futtatás: vagy konzolként (a másik programban fogunk dolgozni), vagy interakcióban (a SAGE -en keresztül kommunikálunk) Eredetileg a SAGE minden szimbolikus funkcióját a maxima végezte. Kapcsolat más rendszerekkel 133 of 135
A SAGE ÉS EGYÉB RENDSZEREK A SAGE interfészt biztosít sok rendszer felé Kapcsolat más rendszerekkel A pari, gap, gp, maxima interfész beépített Opcionális package: pl. Singular Fizetős programok: Maple, Mathematica, Magma, MatLab Futtatás: vagy konzolként (a másik programban fogunk dolgozni), vagy interakcióban (a SAGE -en keresztül kommunikálunk) Példa : gap.console(), gap.interact() Eredetileg a SAGE minden szimbolikus funkcióját a maxima végezte. Kapcsolat más rendszerekkel 134 of 135
PÉLDÁK Lásd a munkalapokon További példák 135 of 135