abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 03:44 | IT novinky

    Od března budou mít uživatelé Discordu bez ověření věku pouze minimální práva vhodná pro teenagery.

    Ladislav Hagara | Komentářů: 0
    včera 23:43 | IT novinky

    Evropská komise (EK) předběžně shledala čínskou sociální síť pro sdílení krátkých videí TikTok návykovým designem v rozporu s unijním nařízením o digitálních službách (DSA). Komise, která je exekutivním orgánem Evropské unie a má rozsáhlé pravomoci, o tom informovala v tiskovém sdělení. TikTok v reakci uvedl, že EK o platformě vykreslila podle něj zcela nepravdivý obraz, a proto se bude bránit.… více »

    Ladislav Hagara | Komentářů: 3
    včera 18:33 | Nová verze

    Offpunk byl vydán ve verzi 3.0. Jedná se o webový prohlížeč běžící v terminálu a podporující také protokoly Gemini, Gopher a RSS. Přibyl nástroj xkcdpunk pro zobrazení XKCD v terminálu.

    Ladislav Hagara | Komentářů: 0
    včera 18:22 | Zajímavý projekt

    Promethee je projekt, který implementuje UEFI (Unified Extensible Firmware Interface) bindingy pro JavaScript. Z bootovacího média načítá a spouští soubor 'script.js', který může používat UEFI služby. Cílem je vytvořit zavaděč, který lze přizpůsobit pomocí HTML/CSS/JS. Repozitář se zdrojovými kódy je na Codebergu.

    NUKE GAZA! 🎆 | Komentářů: 0
    včera 12:44 | Bezpečnostní upozornění

    Zpráva Justičního výboru Sněmovny reprezentantů upozorňuje na cenzurní kampaň Evropské komise, mířenou proti svobodě projevu na sociálních sítích. V dokumentu se uvádí, že se Evropská komise během posledních šesti let účastnila více než 100 uzavřených jednání, během nichž po platformách požadovala úpravy pravidel moderování obsahu, přičemž toto úsilí Komise zahrnovalo i cenzuru politických názorů a pravdivých informací. Výbor zdůrazňuje, že tento přístup Bruselu ohrožuje ústavou zaručená práva Američanů na svobodu projevu.

    NUKE GAZA! 🎆 | Komentářů: 11
    včera 04:33 | Nová verze

    Linus Torvalds vydal jádro Linux 6.19. Podrobný výčet změn je ke zhlédnutí na stránce Kernel Newbies, stručné výběry v LWN (část první, druhá).

    |🇵🇸 | Komentářů: 0
    8.2. 03:33 | IT novinky

    Do prodeje jde tichá bezdrátová herní myš Logitech PRO X2 SUPERSTRIKE s analogovými spínači s haptickou odezvou (HITS, Haptic Inductive Trigger System). Cena je 4 459 Kč.

    Ladislav Hagara | Komentářů: 8
    7.2. 21:00 | Zajímavý projekt

    Microsoft na GitHubu zveřejnil zdrojový kód projektu LiteBox, jedná se o 'knihovní operační systém' (library OS) zaměřený na bezpečnost, využívající systémovou architekturu LVBS k ochraně jádra před útoky z uživatelského prostoru. LiteBox je napsán v Rustu a uvolněný pod licencí MIT. Projekt je teprve v rané fázi vývoje.

    NUKE GAZA! 🎆 | Komentářů: 3
    7.2. 16:11 | Zajímavý software

    BreezyBox je open-source shell a virtuální terminál pro populární jednočip ESP32. Nabízí základní unixové příkazy, sledování aktuálního pracovního adresáře (CWD), jednoduchý instalátor a spouštěč aplikací v podobě ELF binárních souborů, zabudovaný HTTP server nebo třeba ovládání WiFi - ukázka použití coby 'malého osobního počítače'. Ačkoliv je BreezyBox inspirovaný BusyBoxem, oproti němu má tento projekt několik externích závislostí, zejména na ESP-IDF SDK. BreezyBox je dostupný pod licencí MIT.

    NUKE GAZA! 🎆 | Komentářů: 0
    7.2. 16:00 | Humor

    Byl představen cross-assembler xa.sh, napsaný čistě v Bourne shell skriptu. Tento nástroj umožňuje zpracovávat assemblerový kód pro Intel 8080, přičemž je možné snadno přidat podporu i pro další architektury, například 6502 a 6809. Skript využívá pouze různé běžné unixové příkazy jako jsou awk, sed nebo printf. Skript si lze stáhnout z GitHubového repozitáře projektu.

    NUKE GAZA! 🎆 | Komentářů: 6
    Které desktopové prostředí na Linuxu používáte?
     (19%)
     (5%)
     (0%)
     (11%)
     (26%)
     (3%)
     (5%)
     (2%)
     (12%)
     (28%)
    Celkem 819 hlasů
     Komentářů: 25, poslední 3.2. 19:50
    Rozcestník

    Octave - 16 (a co dál?)

    31. 5. 2006 | Jiří Poláček | Programování | 13209×

    Poslední díl seriálu o Octave stručně seznamuje s dalšími knihovnami funkcí, které jsou v Octave (a pro Octave) k dispozici.

    Funkce, na které se zatím nedostalo

    Poslední špetka z repertoáru (autorem) často používaných funkcí: následující program vseznalek jich předvede několik, kterými je možno funkce v Octave vyšperkovat, přidat interaktivitu apod.:

    function vseznalek
      clc;
      cas_spusteni = clock();
      disp('Vítejte v programu Všeználek!');
      x=input('Zadejte výraz, který chcete spočítat: ');
      disp('Momentíček, počítám ...');
      fflush (stdout);
      pause(5);
      disp(['Výsledek je ',num2str(x)]);
      celkovy_cas = etime(clock(), cas_spusteni);
      disp(['Program běžel ',num2str(celkovy_cas),' sekund.']);
    endfunction
    

    Pokusné spuštění:

    >> vseznalek
    Vítejte v programu Všeználek!
    Zadejte výraz, který chcete spočítat: sin(pi/2)+sqrt(7)
    Momentíček, počítám ...
    Výsledek je 3.646
    Program běžel 8.13 sekund.
    

    Funkce clc smaže terminál; clock vrátí vektor čísel zaznamenávajících aktuální čas – funkce etime pak dokáže spočítat rozdíl mezi dvěma takovými vektory v sekundách. Funkce input vypíše zadaný text a čeká na interaktivní vstup od uživatele – ten se následně pokusí zpracovat jako běžný výraz v Octave; výsledek výrazu tedy můžeme uložit do libovolné proměnné. Funkce pause pozastaví běh programu po zadaný počet sekund; aby se nám před pauzu určitě vypsal text žádající o strpení, je pomocí funkce fflush požádáno o neodkladné vypsání dosavadního výstupu programu na standardní výstupní zařízení.

    Funkce input může mít volitelný druhý parametr – písmeno 's', které zapříčiní, že vstup od uživatele bude chápán jako řetězec:

    >> t=input('Něco zadej: ', 's')
    Něco zadej: 1+1
    t = 1+1
    >> eval(t)
    ans = 2
    

    Funkce eval se pokouší provést obsah zadaného řetězce jako běžný výraz v Octave (v případě, že řetězec není platným výrazem, zahlásí syntaktickou chybu).

    Další oblasti výpočtů v Octave

    O Octave by se toho ještě dalo napsat hodně – dostáváme se však k již úzce specializovaným sadám funkcí vyšší matematické a fyzikální. Pokud v následujícím stručném přehledu něčí srdce u některé položky zaplesá, nechť následuje odkaz do oficiální nápovědy.

    Řídké matice (sparse matrices)

    Existují odvětví matematických problémů, které ústí v používání objemných matic, jejichž prvky jsou z valné části rovny nule. Pro tyto případy je výpočetně i paměťově výhodnější reprezentovat si takové matice výčtem prvků (souřadnice + hodnota), které jsou nenulové:

    >> M=[1 2 0; 0 0 -4; 1 0 0]
    M =
       1   2   0
       0   0  -4
       1   0   0
    >> sparse(M)
    ans =
    Compressed Column Sparse (rows=3, cols=3, nnz=4)
      (1 , 1) -> 1
      (3 , 1) -> 1
      (1 , 2) -> 2
      (2 , 3) -> -4
    
    Diferenciální rovnice (differential equations)

    Octave obsahuje dvě funkce pro řešení běžných i algebraických diferenciálních rovnic. Více viz ukázkový příklad.

    Nelineární rovnice (nonlinear equations)

    S pomocí funkce fsolve lze řešit například takovéto matematické příklady: najděte řešení soustavy x2 + y2 − x = 0, x2 − y2 − y = 0, je-li zadán výchozí bod x0 = 0,8 a y0 = 0,4:

    function y=zadani(x)
      y(1) = x(1)^2 + x(2)^2 - x(1);
      y(2) = x(1)^2 - x(2)^2 - x(2);
    endfunction
    >> fsolve ("zadani", [0.8; 0.4])
    ans =
      0.77184
      0.41964
    
    Kvaterniony (quaternions)

    Jedná se o nekomutativní zobecnění komplexních čísel, viz například pojem ve Wikipedii. V Octave lze využít pár funkcí pro práci s těmito matematickými objekty, zkusme například a = (6 + 4j), b = (−1 + i + j + 7k) a násobit a·b a b·a:

    >> a=[0 4 0 6]; b=[1 1 7 -1];
    >> qmult(a, b)
    ans =
       34    2   38  -10
    >> qmult(b, a)
    ans =
      -22    2   46  -10
    
    Teorie řízení (control theory)

    Octave obsahuje ucelenou sadu nástrojů včetně interaktivních programů, které zjednodušeně řečeno umožňují uživatelům přidávat popisy dynamických systémů ve vybrané formě. Sadou nástrojů uživatele interaktivně provede program DEMOcontrol:

    >> DEMOcontrol
    Octave Controls System Toolbox Demo
    
      [ 1] System representation
      [ 2] Block diagram manipulations
      [ 3] Frequency response functions
      [ 4] State space analysis functions
      [ 5] System model manipulations
      [ 6] Root locus functions
      [ 7] LQG/H2/Hinfinity functions
      [ 8] End
    
    pick a number, any number:
    
    Zpracování obrazových dat (image processing)

    Pokud na bitmapový obrázek nazíráme jako na matici hodnot barevných složek, není ani „kreslení“ v Octave nemyslitelné – pro praktické využití však tato knihovna funkcí čeká na nějaké rozumné importní funkce.

    Zpracování zvukových dat (audio processing)

    Digitální zvuk lze pojmout jako vektor vzorků snímaných v čase se stanovenou vzorkovací frekvencí a typem formátování. Octave je schopno takový vektor posílat na zařízení /dev/dsp či /dev/audio, respektive vektor se zvukovými daty z těchto zařízení plnit. Samozřejmě je možné zvuk také nahrát ze souboru (pokud je kódován nějakým primitivním způsobem) a naopak do souboru uložit:

    >> x=record(5); % Nahrání pěti sekund z mikrofonu
    Please hit ENTER and speak afterwards!
    5+0 vstoupivších záznamů
    5+0 vystoupivších záznamů
    cmd = dd if=/dev/dsp of="/tmp/oct-ZKkZDd" bs=8000 count=5
    >> playaudio(x); % Přehrání zvukového záznamu
    >> saveaudio('zvuk', x, 'raw') % Uložení do souboru zvuk.raw
    >> x=loadaudio('symph', 'au'); % Nahrání zvuku ze souboru
    >> plot(x) % Vykreslení křivky zvuku
    

    octave 16 - graf zvukové nahrávky

    Zpracování signálu (signal processing)

    Ucelená sbírka funkcí týkajících se především Fourierových transformací.

    Chybějící funkce: Octave-forge

    Matlabu znalý uživatel velice záhy u Octave zjistí, že řada funkci jemu důvěrně známých zde prostě chybí. Největší absenční známky základní instalace Octave se snaží napravit repozitář funkcí Octave-forge sídlící na adrese octave.sourceforge.net, které lze doinstalovat k již instalovanému základnímu Octave. V praxi to funguje tak, že si uživatel stáhne celý balík funkcí včetně instalačních skriptů, v průběhu instalace si volitelně zvolí, o které funkce má zájem, následně kompiluje, a pokud se vše zdaří, může si užívat větší kompatibility s Matlabem.

    Konkrétně si tak uživatel může dopomoci k sadě funkcí z ekonometrie, paralelního zpracování dat, třírozměrné vizualizaci (VRML), spoustě nových typů grafů, ale též k symbolickým výpočtům a samozřejmě mnohému dalšímu. Neboli kdo to myslí s Octave vážně, je pro něj instalace doplňkových funkcí de facto povinností.

    Přeji mnoho úspěšně vyřešených problémů s pomocí Oktávy!

    Nejčtenější články posledního měsíce

    Týden na ITBiz: Prodeje serverů prudce rostou a dodavatelé hlásí i další rekordní objednávky
    Týden na ScienceMag.cz: Mimozemské civilizace ve stavu dilatace času
    Událo se v týdnu 3/2026

    Nejkomentovanější články posledního měsíce

      všechny statistiky »

    Seriál Octave (dílů: 16)

    Octave - 1 (je to kalkulačka) (první díl)
    <—« Octave - 15 (špetka matematiky)
    Octave - 16 (a co dál?) (poslední díl)

    Související články

    Octave - 1 (je to kalkulačka)
    Octave - 2 (počítání s maticemi)
    Octave - 3 (přístup k jednotlivým položkám matice)
    Octave - 4 (je to pravda?)
    Octave - 5 (práce s řetězci)
    Octave - 6 (práce se soubory)
    Octave - 7 (vlastní skripty a funkce)
    Octave - 8 (větvení programu)
    Octave - 9 (cykly)
    Octave - 10 (zbylé řídicí struktury)
    Octave - 11 (kreslíme grafy)
    Octave - 12 (měřítko os a speciální grafy)
    Octave - 13 (dokončení grafiky)
    Octave - 14 (finance a statistika)
    Octave - 15 (špetka matematiky)
    Vektorový elegán Ipe
    Recenze: Kniha kódů a šifer
    Awk & sed: Příručka pro dávkové zpracování textu
    SETI@home
    Jak se píše procesor
    GnuCash - domácí účetnictví na úrovni
    Použití gnuplot pro tvorbu grafů v PHP
    Hra s písmenky - wxMaxima

    Odkazy a zdroje

    Octave

    Další články z této rubriky

    LLVM a Clang – více než dobrá náhrada za GCC
    Ze 4 s na 0,9 s – programovací jazyk Vala v praxi
    Reverzujeme ovladače pro USB HID zařízení
    Linux: systémové volání splice()
    Programování v jazyce Vala - základní prvky jazyka
           

    Hodnocení: -

    zatím nehodnoceno
            špatnédobré        

    Nástroje: Tisk bez diskuse

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

    Komentáře

    Vložit další komentář

    31.5.2006 07:17 Pinky | skóre: 30
    Rozbalit Rozbalit vše Re: Octave - 16 (a co dál?)
    x2 + y2 − x = !!!0,!!! x2 − y2 − y = 0 asi je tem chybicka u fsolve
    31.5.2006 09:10 JaSel | skóre: 17 | blog: kseles
    Rozbalit Rozbalit vše Re: Octave - 16 (a co dál?)
    Co takhle vydat celý seriál jako PDF? Třeba jako monotematické ábíčko speciál.
    31.5.2006 17:06 Robert Krátký | skóre: 94 | blog: Robertův bloček
    Rozbalit Rozbalit vše Re: Octave - 16 (a co dál?)
    Chystáme to. Seriálů je hodně, ale Vlasta už připravil první. Zanedlouho bude k dispozici.
    JiK avatar 31.5.2006 16:01 JiK | skóre: 13 | blog: Jirkoviny | Virginia
    Rozbalit Rozbalit vše Re: Octave - 16 (a co dál?)
    take bych byl pro vydani PDF verze.
    14.3.2012 16:10 Honza N
    Rozbalit Rozbalit vše Re: Octave - 16 (a co dál?)
    Dobry den,

    Váš seriál o Octave mě zaujal. Asi před týdnem jsem jej začal používat místo Matlabu a protože nějakým řízením osudu jsem nenašel na českém webu řešené příklady, vyšel jsem z kurzu Matlabu a zkoušel ... a zároveň psal - nazval jsem to řešené příklady, což je dosti nadnesené. A dnes, když jsem náhodou objevil tento seriál, tak se chci zeptat, zda mate již celý seriál v pdf ? Dále, nestálo by, když o Matlabu vychází u BENa již 3.kniha, něco podobného nechat vydat - líbil se mi název Octave - aneb Matlab zdarma, řešené příklady ? (kdyz jsem videl tento serial, tak uz nic takoveho psat nebudu:), nebot to mate napsane pekne a proc delat neco, co uz nekdo udelal.)

    Diky predem za odpoved.

    Honza

    Založit nové vláknoNahoru

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