abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 17:11 | Humor

    Počítačová hra XBill (Wikipedie) oslavila v létě 30 let. V devadesátkách Linuxáci poctivě bránili Billovi v instalaci Windows. Bohužel hry XSteve a XSatya nevznikly. A nemáme ani hru XTim. Proto není Linux na desktopu tak rozšířený ☺. Mimochodem, po 25 letech byl aktualizován XBill pro PalmOS.

    Ladislav Hagara | Komentářů: 2
    dnes 11:55 | Zajímavý software

    Počítačová hra Elite (Wikipedie), 3D vesmírní simulátor, byla vydána před 40 lety, 20. září 1984. Při té příležitosti byly zveřejněny další zdrojové kódy Elite pro platformy Apple, Atari, C64, NES a SNES a nedokončené Elite II pro BBC Micro.

    Ladislav Hagara | Komentářů: 5
    včera 22:00 | Zajímavý software

    V květnu bylo oznámeno, že dnes budou zveřejněny zdrojové kódy přehrávače Winamp. Stalo se tak (𝕏). Zdrojové kódy jsou k dispozici na GitHubu. Nejedná se ale o svobodný a otevřený software (licence).

    Ladislav Hagara | Komentářů: 5
    včera 13:55 | IT novinky

    Fiala navrhne odvolání Bartoše z postu vicepremiéra pro digitalizaci a ministra pro místní rozvoj ke 30. září. Důvodem je nezvládnutí digitalizace stavebního řízení, podle premiéra ji Bartoš není schopen dotáhnout do konce. „Po projednání analýzy digitálního stavebního řízení na vládě minulou středu a po dnešním ranním rozhovoru s panem vicepremiérem Ivanem Bartošem jsem bohužel nabyl jistoty, že není schopen tuto digitalizaci

    … více »
    Ladislav Hagara | Komentářů: 38
    včera 12:33 | IT novinky

    Komunikační platforma Telegram začne po tlaku úřadů poskytovat vládám více informací o svých uživatelích. V pondělí to oznámil její zakladatel a generální ředitel Pavel Durov. Ten už několik týdnů ve Francii čelí obvinění, že nedělá dost pro to, aby platformu nevyužívaly i kriminální živly. To chce Durov nyní také změnit, informují tiskové agentury.

    Ladislav Hagara | Komentářů: 31
    včera 12:22 | Zajímavý článek

    Nová čísla časopisů od nakladatelství Raspberry Pi: MagPi 145 (pdf) a Hello World 25 (pdf).

    Ladislav Hagara | Komentářů: 0
    včera 04:44 | Nová verze

    Programovací jazyk Hy (Wikipedie) dospěl do verze 1.0.0. Po téměř dvanácti letech vývoje. Jedná se o dialekt programovacího jazyka LISP navržený pro interakci s programovacím jazykem Python.

    Ladislav Hagara | Komentářů: 0
    23.9. 20:00 | Zajímavý software

    Zen je webový prohlížeč vycházející z Firefoxu. Vývoj probíhá na GitHubu. Instalovat lze také z Flathubu.

    Ladislav Hagara | Komentářů: 1
    23.9. 15:11 | Nová verze

    Organizace Apache Software Foundation (ASF) vydala verzi 23 integrovaného vývojového prostředí a vývojové platformy napsané v Javě NetBeans (Wikipedie). Přehled novinek na GitHubu. Instalovat lze také ze Snapcraftu a Flathubu.

    Ladislav Hagara | Komentářů: 0
    23.9. 12:44 | Nová verze

    Byla vydána verze 24.3 aneb čtvrtletní aktualizace open source počítačového planetária Stellarium (Wikipedie, GitHub). Vyzkoušet lze webovou verzi Stellaria na Stellarium Web.

    Ladislav Hagara | Komentářů: 0
    Rozcestník

    Octave (1) – je to kalkulačka

    2.1.2006 15:09 | Přečteno: 2360× | Octave | poslední úprava: 2.1.2006 21:33

    Octave je volně šiřitelný klon Matlabu běžně dostupný jako balíček i pro vaši oblíbenou distribuci. K dispozici je i verze pro Widnows. Následující text představuje první seznámení s tímto systémem pro práci s maticemi, který je zároveň programovacím jazykem podobným Pascalu.

    Základním komunikačním prostředkem v Octave je příkazová řádka, do které uživatel zapisuje své požadavky. V následujícím textu zejména v ukázkách, bude příkazový řádek signalizován znaky „>>“1. Jistou představu o popisovém programu zajisté vyvolá následující obrázek:

    Nápověda v Octave

    Vestavěnou nápovědu v Octave lze zobrazit pomocí příkazu help:

    >> help
    
    Na základě tohoto požadavku může program vypsat například následující text:
    help is available for the topics listed below.
    
    Additional help for built-in functions, operators, and variables
    is available in the on-line version of the manual.  Use the command
    `help -i topic' to search the manual index.
    
    Help and information about Octave is also available on the WWW
    at http://www.octave.org and via the help-octave@bevo.che.wisc.edu
    mailing list.
    

    Podrobnější nápovědu k vestavěným funkcím a rezervovaným slovům je možné vypsat příkazem help s odpovídajícím argumentem:

    >> help fix
    
    Jak sděluje úvodní text zabudované nápovědy, informace o Octave a další nápovědu je možné také získat na webových stránkách programu, konkrétně na adrese www.octave.org/doc.

    Octave jako kalkulačka

    Na té nejjednodušší úrovni lze Octave využít jako kalkulačku. Na příkazový řádek stačí zadat výraz, který se má spočítat, po odeslání Octave vypíše výsledek:

    >> 1+2*3
    ans = 7
    >> 4563*1.22
    ans = 5566.9
    >> (5-3)^2
    ans = 4
    >> 5**3
    ans = 125
    
    Aby bylo možné výraz vyhodnotit, musí samozřejmě být správně zkonstruován. Při vyhodnocování má podle běžných pravidel aritmetiky nejvyšší prioritu umocňování, pro které se používá znak „^“ (stříška) nebo dva těsně vedle sebe zapsané znaky hvězdička „**“; následuje násobení „*“ a dělení „/“; nejmenší prioritu mají sčítaní „+“ a odčítání „-“. Následuje‑li po sobě více operandů se stejnou prioritou, vyhodnocuje se také obvyklým způsobem, tj. zleva doprava. Prioritu operandů lze upravit pomocí kulatých závorek2. Pro druhou odmocninu existuje v Octave funkce sqrt, vhodnější však bývá použití umocňování na přepočítaný zlomek, tj. sqrt(9) vrátí tentýž výsledek jako 9^(1/2).

    Zápis a zobrazování čísel v Octave

    Při práci s reálnými čísly se jako oddělovač celé a desetinné části používá podle amerických zvyklostí tečka, nikoliv čárka. Zapisujeme‑li reálné číslo v absolutní hodnotě menší jak 1, například 0,589, lze nulu z celé části vynechat:

    >> -.25+.5
    ans = 0.25000
    

    Pro zápis typicky hodně velkých (respektive hodně malých) čísel se používá tzv. exponenciální tvar, tj. zápis s mocninou čísla deset. Například číslo 1,458 · 1045 se v Octave zapíše (a vypíše) jako 1.458e45, oddělovačem mezi základem čísla a exponentem tedy je písmeno e.
    Vězme také, že Octave umí pracovat s komplexními čísly:

    >> (5+2i) * (1-j)
    ans = 7 - 3i
    
    Písmena i a j v zápise mají stejnou hodnotu – znamenají imaginární jednotku a formálně v Octave figurují jako vestavěné konstanty, o kterých bude řeč dále.

    Počet desetinných míst, které bude Octave zobrazovat u reálných čísel, se dá nastavit s pomocí příkazu format. Výchozí nastavení, které odpovídá parametru short, zobrazuje výsledek s pěti významnými ciframi, parametr long si vynutí 15 významných cifer a parametr bank zaokrouhluje na dvě desetinná místa:

    >> r=sqrt(2);
    >> format short
    >> r
    r = 1.4142
    >> format long
    >> r
    r = 1.41421356237310
    >> format bank
    >> r
    r = 1.41
    

    Existují ještě další parametry, které umožňují výpis čísel v binární či hexadecimální podobě, vynucení si vědeckého zápisu s mantisou a další speciality – viz help format.

    Ukládání výsledku do proměnných

    Výsledek výpočtu si lze nejenom nechat zobrazit, ale také uložit do proměnné pro jeho pozdější využití. Proměnné v Octave vytváříme za chodu podle jejich potřeby, není nutné předem definovat jejich typ a velikost:

    >> p=13
    p = 13
    >> P=12-6
    P = 6
    
    Předchozími dvěma příkazy byly vytvořeny dvě proměnné pojmenované p a P. Vzhledem k tomu, že Octave rozlišuje malá a velká písmena v názvech proměnných, jedná se o dvě různé proměnné. Do proměnné p bylo přímo uloženo číslo 13, do proměnné P pak výsledek výrazu 12-6. Stojí za povšimnutí, že výsledek výpočtu nyní nezačíná „ans =“, ale názvem proměnné, do které jsme výsledek uložili. Ono ans, které je možno chápat jako zkratku z anglického answer – odpověď, v Octave funguje jako název implicitní proměnné, do které se uloží každý poslední výsledek, u kterého nebylo specifikováno, do jaké proměnné by se měl uložit. Necháme‑li si nyní vypsat obsah této proměnné, měli bychom dostat číslo 0,25 z příkladu z předchozí sekce:
    >> ans
    ans = 0.25000
    
    Z příkladu je vidět, že aktuální obsah proměnné lze zjistit po odeslání jejího názvu. S vytvořenými proměnnými samozřejmě lze dále pracovat ve výrazech:
    >> P+p
    ans = 19
    >> ans^2
    ans = 361
    

    Seznam doposud uživatelem vytvořených proměnných zjistíme příkazem who:

    >> who
    *** local user variables:
    P  p
    
    Vytvořenou proměnnou samozřejmě lze také zrušit, provádí se to příkazem clear následovaným seznamem proměnných, které se mají zrušit:
    >> clear p P
    
    Spuštění příkazu clear bez parametrů má za následek zrušení všech proměnných.

    Konstanty

    Kromě proměnné ans obsahuje Octave po spuštění ještě celou řadu dalších speciálních proměnných3, z nichž některé plní úlohu konstant, například těch matematických, jako jsou Ludolfovo číslo π, Eulerovo číslo e4 apod:

    >> pi
    pi = 3.1416
    >> e
    e = 2.7183
    >> i
    i = 0 + 1i
    >> j
    j = 0 + 1i
    >> realmin
    realmin =  2.2251e-308
    >> realmax
    realmax =  1.7977e+308
    >> realmax + realmax
    ans = Inf
    >> Inf/Inf
    ans = NaN
    
    Konstanty i a j představují již zmiňovanou imaginární jednotku při práci s komplexními čísly; realmin ukazuje přesnost, s jakou je Octave schopno počítat; realmax nese hodnotu největšího čísla, s kterým je Octave schopno pracovat; Inf je vyjádřením nekonečna a konečně zkratka NaN znamená Not a Number – není číslo. Z uvedených příkladů je také vidět, kdy je možné poslední dvě jmenované konstanty získat jako výsledek výpočtu.

    Je nanejvýš vhodné pro vlastní proměnné nepoužívat názvy těchto konstant, obzvláště v případech, že bychom jejich hodnoty potřebovali k výpočtu. Není totiž problém vytvořit si stejně pojmenovanou uživatelskou proměnnou:

    >> pi=3+5
    pi = 8
    
    K původnímu obsahu konstanty se lze vrátit zrušením stejně pojmenované proměnné.

    Základní matematické funkce

    Stejně jako vědecké kalkulačky umí také Octave vracet funkční hodnoty běžných matematických funkcí, jako například:

    >> sin(pi/2)
    ans = 1
    
    Funkce se volají svým jménem, argument se uvádí za jménem v kulatých závorkách. Pokud je třeba počítat s mocninu dané funkce, v matematice zapsáno jako sin2 x, v Octave je toto třeba zapsat takto:
    >> (sin(x))^2
    
    Uveďme přehled základních funkcí, kterými Octave disponuje: Přehled všech dostupných funkcí lze nalézt v nápovědě programu.

    Poznámky pod čarou

    1) Tzv. prompt příkazového řádku lze nejrůzněji měnit nastavením obsahu proměnné PS1. Uvedený prompt získáme příkazem PS1=">> ", více možností nastavení je popsáno v nápovědě programu.
    2) Pouze kulaté závorky. Není možné zde používat závorky hranaté [ ] a složené {}, ty Octave používá pro jiné účely.
    3) Jejich seznam je uveden v nápovědě programu, mnohé z nich se týkají programového prostředí a mají vliv na správný běh Octave.
    4) Matlab tuto konstantu ve svém repertoáru nemá.
           

    Hodnocení: 100 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    2.1.2006 15:41 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
    Rozbalit Rozbalit vše Re: Octave (1) – je to kalkulačka
    Moc pěkné, ale tohle je už spíše na článek, než blogpost. A pokud to bude seriál, tak tím lépe.
    When your hammer is C++, everything begins to look like a thumb.
    2.1.2006 15:43 Veritas | skóre: 13 | blog: veritas
    Rozbalit Rozbalit vše Re: Octave (1) – je to kalkulačka
    To by klidně mohlo po lehkém přepracování vyjít jako článek...
    Nehledej hry v Linuxu. Linux je hra!
    Josef Kufner avatar 2.1.2006 17:25 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Octave (1) – je to kalkulačka
    Souhlasím. Takový seriál článků by se mi tu celkem i hodil :)
    Hello world ! Segmentation fault (core dumped)
    2.1.2006 15:44 Käyttäjä 11133 | skóre: 58 | blog: Ajattelee menneisyyttä
    Rozbalit Rozbalit vše Re: Octave (1) – je to kalkulačka
    Výborné, ač sám nepoužívám Octave, ale scilab.
    2.1.2006 16:29 jam001 | skóre: 19
    Rozbalit Rozbalit vše Re: Octave (1) – je to kalkulačka
    Octave som kedysi skusal, rozmyslali sme to nasadit na cluster namiesto matlabu (hlavne koli licenciam). Nazor som zmenil potom ako som porovnaval rychlost s matlabam. Ten isty kod trval v octave niekolkonasobne dlhsie : (. Inak je to urcite zaujimavy program.
    2.1.2006 16:31 jam001 | skóre: 19
    Rozbalit Rozbalit vše Re: Octave (1) – je to kalkulačka
    4) Matlab tuto konstantu ve svém repertoáru nemá

    staci napisat:
    exp(1)
    wamba avatar 2.1.2006 18:19 wamba | skóre: 38 | blog: wamba
    Rozbalit Rozbalit vše Re: Octave (1) – je to kalkulačka
    Dobrý d.

    Nefunguje mi odkaz.

    Nemá spíše být http://www.octave.org/doc/index.html.
    This would have been so hard to fix when you don't know that there is in fact an easy fix.
    Jiří Poláček avatar 2.1.2006 21:36 Jiří Poláček | skóre: 47 | blog: naopak | Sivice
    Rozbalit Rozbalit vše Re: Octave (1) – je to kalkulačka
    Opravdu, původní odkaz již nefunguje. Ale byly časy, kdy fungoval. Děkuji za upozornění, opraveno.
    Sudoku omrzelo? Zkuste bobblemaze! | Statistiky jsou jak bikiny. Napoví hodně, všechno ale neukážou.
    2.1.2006 20:21 Martin Baleja | skóre: 13 | blog: Segmentation_Fault
    Rozbalit Rozbalit vše Re: Octave (1) – je to kalkulačka
    Ještě bych dodal, že kompilace Octave trvá skoro hodinu a půl (Duron 700MHz) :-)
    Why are hemorrhoids called "hemorrhoids" instead of "assteroids"?
    3.1.2006 09:28 anicka | blog: ze_zivota
    Rozbalit Rozbalit vše Re: Octave (1) – je to kalkulačka
    Ještě bych upřesnila, že je třeba si velmi pečlivě vybrat verzi gcc (určitě ne 4.x), pokud u toho nechcete strávit mládí opravováním chyb. Já jsem si s tím hrála asi 14 dní...
    ^D
    3.1.2006 21:00 janosh | skóre: 8 | blog: janosh_blog | Třebíč
    Rozbalit Rozbalit vše Re: Octave (1) – je to kalkulačka
    s kompilací jsem neměl problémy :-) kompiloval sem to ale nějakým gcc asi 3.3.něco. A co se týče rychlosti trvalo to tak půl hoďky na pentiu M 1.4 GHz. Ten fortran byl přeloženej hned ale to c++ to byla doba. Spíš mě zarazilo kolik octave zabírá po přeložení. Tuším že snad 300 MB.
    Linux is like teepee, no windows, no gates, apache inside!
    10.1.2006 20:56 Käyttäjä 11133 | skóre: 58 | blog: Ajattelee menneisyyttä
    Rozbalit Rozbalit vše Re: Octave (1) – je to kalkulačka
    No vidíš, Matlab zabírá na Linux něco kolem 1,2GB.
    10.11.2009 18:13 Hela
    Rozbalit Rozbalit vše Re: Octave (1) – je to kalkulačka
    Chtěla bych se zeptat. Mam Vistu a Octave(3.0.0) se mi zobrazuje bez horní lišty s nabídkou jako úpravy, relace apod. Mám docela problém s tím, jak uložit program.:) Poradíte mi?

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.