FreeMat



    Obsah 2. kapitoly


    2. Základy práce v prostredí FreeMat
    2.1. Pracovná plocha
    2.1.1. Command Window
    2.1.2. Okno History
    2.1.3. Navigačné okno File Browser
    2.1.4. Okno Variables
    2.2. Základné operácie s číslami
    2.2.1. Číselné formáty
    2.2.2. Operátory a elementárne matematické funkcie
    2.3. Premenné
    2.4. Reťazce znakov


    2. Základy práce v prostredí FreeMat


    2.1. Pracovná plocha

    Prácu s programom FreeMat môžeme začať niekoľkými spôsobmi, a to:
  • spustením súboru „FreeMat.exe“ (.../FreeMat/bin/FreeMat.exe)
  • dvojklikom na ikonu FreeMat (teda na zástupcu FreeMat.exe vytvoreného pri inštalácii) na pracovnej ploche
  • prípadne zadaním príkazu „FreeMat.exe“ do príkazového riadka operačného systému (v Linuxe tiež možné aplikáciu spustiť príkazom z dobre známeho terminálu)
    Po spustení sa nám zobrazí tzv. Command Window (prekl. Príkazové okno) so štyrmi podoknami (obr.7), a to:
  • File Browser (navigačné okno)
  • History (história príkazov)
  • Variables (používané premenné)
  • Okno pre zadávanie príkazov, ktoré nemá špeciálne pomenovanie, ale v ďalšom texte bude stotožnené toto okno s názvom Command Window.
    Ďalším oknom, ktoré však nie je v základe nastavené ako zobrazené, je tzv. Debug Window, ktoré sa využíva na zobrazenie hlásení o chybách pri ladení (z angl. debugging – doslova „odchrobákovanie“) programov a funkcií.


Obr. 7 – Command Window po spustení programu


    Ukončiť prácu s FreeMat-om môžete:
  • príkaz „quit“ v okne pre zadávanie príkazov
  • kliknutím chronicky známeho „windowsáckeho“ červeného štvorčeka „X“ v pravom hornom rohu hlavného okna
    Dôležitou súčasťou FreeMat-u je možnosť tvorby m-súborov. Sú to textové súbory s príponou „*.m“, ktoré slúžia na zápis postupnosti príkazov a ich uloženie na disk, sú využívané pri riešení rôznych problematík, plnia dôležitú úlohu pri programovaní a pod.


Obr. 8 – Ukážka *.m - súboru





    2.1.1. Command Window

    Dalo by sa povedať, že toto okno tvorí hlavnú časť pracovnej plochy. Zobrazujú sa tu systémové hlásenia FreeMat-u, ale tou najdôležitejšou funkciou je písanie príkazov. Užívatelia Linuxu vedia nájsť ekvivalent v podobe súčasti OS Linux – terminálu, pre priblíženie predstavy pre užívateľov MS Windows: všetky príkazy sa píšu do tohto okna, dá sa tu písať zdrojový kód rôznych vami vytvorených funkcií, definovať premenné...teda niečo ako inteligentná superkalkulačka s veľkým množstvom funkcií.


Obr. 9 – Command Window





    2.1.2. Okno History

    Príkazy, ktoré užívateľ použije, teda ich napíše do Command Window a potvrdí ich stlačením klávesy enter, sa automaticky ukladajú do histórie príkazov. Výhoda použitia Command History spočíva v tom, že už raz zadané príkazy stačí nalistovať v tomto okne a následne kliknúť na ne, ak ich chceme opätovne použiť a teda ich nemusíme opäť vypisovať. Rýchle vyvolanie už použitého príkazu je tiež možné pomocou šípiek hore a dole stláčaných v Command Window, avšak len pokiaľ sú príkazy, ktoré chceme opäť použiť, použité len nedávno. Inak by sme strácali čas x-násobným klikaním šípky hore, resp. dolu.


Obr. 10 – Okno History





    2.1.3. Navigačné okno File Browser

    Ako hovorí názov okna, ukazuje súčasný priečinok a teda aj súbory v ňom, ktoré je možno otvoriť vo vstavanom editore. Základné nastavenie cieľovej zložky je do priečinku FreeMat, čo však ľahko zmeníme na ...\FreeMat\Work), kde sa predpokladá ukladanie vašej práce. Toto nastavenie je možné zmeniť podľa potreby.


Obr. 11 – Navigačné okno File Browser





    2.1.4. Okno Variables

    Ako hovorí názov okna, ukazuje súčasný priečinok a teda aj súbory v ňom, ktoré je možno otvoriť vo vstavanom editore. Základné nastavenie cieľovej zložky je do priečinku FreeMat, čo však ľahko zmeníme na ...\FreeMat\Work), kde sa predpokladá ukladanie vašej práce. Toto nastavenie je možné zmeniť podľa potreby.


Obr. 12 – Okno Variables





    2.2. Základné operácie s číslami




    2.2.1. Číselné formáty

    Je nutné si hneď na začiatok povedať, že vo FreeMat-e sa miesto desatinnej čiarky píše bodka. Ak by ste teda napísali príkaz 11,5 + 14 tak by ste dostali výpis ako na obr. 13.


Obr. 13 – výpis príkazu s desatinnou čiarkou miesto bodky


    Teda je zrejmé, že takto zadaný príkaz FreeMat pochopí ako dvojicu príkazov 11 a 5 + 14, čo nie je náš výsledok. Preto musíme napísať 11.5 + 14.
    Premenná „ans“ je implicitná premenná do ktorej je vždy uložený výsledok pokiaľ nie je definovaná iná premenná pre uloženie nášho výsledku. Po zadaní správne formátovaného vyššie uvedeného príkazu zistíte, že výsledok je zobrazený na štyri desatinné miesta. Tento formát je základný a je používaný dovtedy, kým ho neprestavíte. Môžete si vyskúšať aj iné základné algebraické operácie, fantázii sa medze nekladú :). FreeMat sa teraz správa ako kalkulačka s pamäťou príkazov (samozrejmé je použitie zátvoriek pri zápise výrazov).
    Tak a teraz sa môžeme venovať vlastným formátom čísiel vo FreeMat-e. Ako bolo vyššie spomenuté, implicitným formátom je formát s fixnými štyrmi desatinnými miestami, short. Prehľad formátov získame zapísaním príkazu „help format“ do Command Window (obr. 14). Zmenu formátu uskutočníme napr. pomocou príkazu „format long e“. V tabuľke 1 je uvedený prehľad číselných formátov.


Obr. 14 – Výpis Command Window po zadaní „help format“




Tabuľka 1 – Prehľad formátov čísiel





    2.2.2. Operátory a elementárne matematické funkcie

    Operátory vo FreeMat-e:
  • aritmetické operátory
  • relačné operátory
  • logické operátory
  • bitové operátory
  • množinové operátory
  • špeciálne znaky
    Elementárne matematické funkcie vo FreeMat-e:
  • trigonometrické funkcie (tab.2)
  • exponenciálne funkcie (tab.3)
  • komplexné funkcie (tab.5)
  • špeciálne funkcie (tab.6)


Tabuľka 2 – základné trigonometrické funkcie




Tabuľka 3 - základné exponenciálne a zaokrúhľovacie funkcie




Tabuľka 4 - práca s reálnymi číslami




Tabuľka 5 - základné operácie s komplexnými číslami




Tabuľka 6 – Zvláštne typy čísel





    2.3. Premenné

    V prvom rade si musíme ozrejmiť čo chápeme pod pojmom premenná. Premennou rozumieme názov, ktorý pozostáva z písmen a číslic (vo FreeMat-e vždy začína písmenom). Tomuto názvu je možné priradiť číselný (ale aj iný napr. textový, štruktúrny) obsah, ktorý je cez meno premennej dosažiteľný. Teda pre lepšiu predstavu – máme skriňu so šuplíkmi označenými písmenami a v nich sú naše hodnoty. Ak chcem niektorú hodnotu získať, musím najprv šuplík otvoriť (dôležité je poznať ktorý šuplík :)). FreeMat rozlišuje v názvoch premenných veľké a malé písmená.


Tabuľka 7 – Použitie premenných a príkazov


    Ak definujeme premennú a zapíšeme za ňou bodkočiarku, premenná sa zadefinuje, ale jej obsah sa nevypíše do Command Window. Toto platí aj pri definovaní vektorov, matíc, príkazov ...
    Pri vytváraní programov vo FreeMat-e sú nemálo dôležité aj relačné – teda porovnávacie operátory a logické operátory uvedené v tabuľke 8.


Tabuľka 8 – Relačné a logické operátory





    2.4. Reťazce znakov

    FreeMat používa pre odlíšenie textových reťazcov znak apostrofu „’ “. Tento spôsob je podobný aj pre iné systémy FreeMat-u podobné, ako aj niektoré programovacie jazyky. Ak chceme textovú premennú definovať a naplniť ju nejakým reťazcom, príkaz sa od bežného príkazu pri číselných premenných bude líšiť práve uvedením textu medzi dvoma apostrofmi (viď obr.15).


Obr. 15 – Textová premenná


    Ako je z obrázku zrejmé, rozmer premennej je pole 1x27 typu char array – znakové pole a v pamäti zaberá 54 byte-ov. Ku definovaniu znakových polí je možné použiť aj príkaz „char“ – v tomto prípade sa jedná o konverziu napríklad troch premenných do jednej (obr. 16). Príkazom „char“ teda naplníme premennú R hodnotami premenných a, b, c, avšak ako ste si iste všimli, týmto príkazom sa vytvorilo pole 3x11 znakov. 11 pre každý prvok premennej R z toho dôvodu, že matica má dva nemenné rozmery a teda logicky FreeMat si zistil počet znakov najdlhšej premennej a túto hodnotu použil ako druhý rozmer matice R. Práve na tento fakt si musíte dávať pozor, nakoľko ak by ste zadefinovali pole s rôznym počtom znakov v riadkoch do stĺpcovej matice, objavilo by sa chybové hlásenie ako na obr. 17. Všimnite si, že priradenie dvoch premenných do jednej je možné pomocou hranatých zátvoriek, v ktorých sú dané reťazce oddelené čiarkou – vtedy sa spája „do riadku“, alebo bodkočiarkou, vtedy ide o tvorbu stĺpcov. V tabuľke 9 je uvedený prehľad príkazov používaných pri práci s reťazcami.


Tabuľka 9 – Prehľad príkazov pre prácu s reťazcami




Obr. 16 – Použitie „char“ pre vytvorenie textovej premennej




Obr.17 – Tvorba znakových premenných, chybové hlásenie pri rôznom počte znakov