Implementace numerických metod v jazyce C a Python
|
|
- Dominika Svobodová
- před 8 lety
- Počet zobrazení:
Transkript
1 Fakulta elektrotechnická Katedra matematiky Dokumentace k semestrální práci Implementace numerických metod v jazyce C a Python 2013/14 Michal Horáček a Petr Zemek Vyučující: Mgr. Zbyněk Vastl Předmět: Matematika pro FEL 4
2 Obsah 1 Zadání semestrální práce Název Zadání Analýza úlohy Ošetření uživatelského vstupu Zjištění vlastností matic Kontrola špatně podmíněných matic Matematický popis jednotlivých úloh Gausova eliminace Jacobiho metoda Metoda Gausse-Seidela Metoda sdružených gradientů Popis implementace v C Ošetření vstupu Datové typy a správa paměti Přenositelnost Debugování kódu Přehled návratových kódů Popis implementace v Pythonu 9 6 Uživatelská příručka programu v jazyce C Překlad a spuštění Chybové hlášky Nápověda Formát matice soustavy Závěr Výkonnost programu Program v jazyce C Program v jazyce Python Možný problém na určitých systémech Vysvětlení nestandardních konstrukcí Kódování zdrojových souborů
3 1 Zadání semestrální práce 1.1 Název Implementace numerických metod v jazyce C a Python 1.2 Zadání Naprogramujte v jazyce C a Python přenositelnou konzolovou aplikaci, která jako vstup načte z parametru na příkazové řádce jméno souboru s maticí soustavy a ostatní potřebné údaje pro spuštění výpočtu. Implementujte Gausovu eliminační metodu, metodu sdružených gradientů, Jacobbiho metodu a Gauss-Seidelovu metodu řešení soustav linárních algebraických rovnic. Implementaci v jazyce C řeší Petr Zemek a v jazyce Python Michal Horáček. 3
4 2 Analýza úlohy 2.1 Ošetření uživatelského vstupu Představme si, co všechno může BFU uživatel zkoušet zadávat do vstupu programu. Je vhodné ošetřit případy, kdy je očekáváno číslo. Pokud uživatel zadá nečíselný znak, měla by se použít defaultní hodnota. Matice je vhodné načítat spíše ze souboru než z výchozího vstupu pro jejich rozsáhlost. Program by měl umět parsovat soubor s maticí soustavy. Následně by měl umět ověřit, jestli matice v souboru je opravdu čtvercová a nechybí-li některý člen. 2.2 Zjištění vlastností matic Pro celistvost programu by bylo vhodné zjišťovat vlastnosti matic a na základě získaných informací se rozhodnout, jaký algoritmus pro řešení zvolit. 2.3 Kontrola špatně podmíněných matic Před spuštěním algoritmu Jacobiho metody nebo Metody Gausse-Seidela je vhodné ověřit, že se v matici soustavy na hlavní diagonále nenachází nula, protože se v těchto metodách vektor neznámých dělí prvkem na hlavní diagonále. 4
5 3 Matematický popis jednotlivých úloh 3.1 Gausova eliminace Matici soustavy je třeba převést do stupňovitého tvaru na horní trojúhelníkovou matici. Pod hlavní diagonálou musí zbýt nuly. Čili na konci eliminace musí zbýt na posledním řádku a sloupci matice jedno číslo, které po vynásobení neznámou z posledního řádku a sloupce se rovná poslednímu řádku vektoru pravé strany. Pokud při eliminaci vyjde nulový řádek, soustava má nekonečně mnoho řešení. Obecný algoritmus: for k = 1... m: #Najít sloupec, kde je největší číslo (pivot): i_max := argmax (i = k... m, abs(a[i, k])) if A[i_max, k] = 0 error "Matice je singulární!" swap rows(k, i_max) # pro každý prvek pod pivotem: for i = k m: # pro všechny zbývající prvky v daném sloupci for j = k n: A[i, j] := A[i, j] - A[k, j] * (A[i, k] / A[k, k]) endfor # Naplnit spodní trojúhelníkovou matici nulami: A[i, k] := 0 endfor endfor 3.2 Jacobiho metoda Jacobiho metoda je iterační metoda, která konverguje pouze pro ryze řádkově nebo sloupcově diagonálně dominantní matice. x k+1 i = b i A ii n j=i+1 A ij A ii x k i, k 0; i = 1,..., n 5
6 3.3 Metoda Gausse-Seidela Je téměř shodná s Jacobiho metodou. Liší se v tom, že v každé iteraci se od vektoru neznámých odečítá aproximace z předchozího kroku. Tím se sníží počet potřebných iterací k dosažení stejné přesnosti jako při použití Jacobiho metody. x k+1 i = b i A ii i 1 j=1 A ij A ii x k+1 i n A ij A j=i+1 ii x k i, k 0; i = 1,..., n 3.4 Metoda sdružených gradientů Obecný matematický zápis: ε> 0, x 1, k = 1 b 1 = Ax 1 b, v 1 = r 1, α 1 = b1 2 Ar 1, r 1, x 2 = x 1 + α 1 v 1 while x k+1 x k > ε k = k + 1 r k = r k 1 + α k 1 Av k 1 β k 1 = rk,av k 1 Av k 1,v k 1 v k = r k + β k 1 v k 1 α = rk,v k 1 Av k,v k x k+1 = x k + α k v k end while 6
7 4 Popis implementace v C 4.1 Ošetření vstupu Nejdříve se ověřují parametry příkazové řádky - jestli uživatel zadal cestu k matici a číslo metody řešení (soubor rozcestnik.c; ř ). Potom se ověří, jestli existuje soubor s maticí a uživatel, pod kterým běží tento program, má oprávnění ke čtení souboru (rozcestnik.c; ř ). V případě, že uživatelský vstup prošel těmito kritérii, zjistí se počet sloupců matice(rozcestnik.c; ř ) a provede se alokace množství paměti, které odpovídá druhé mocnině zjištěných sloupců matice bez pravé strany plus jednoho sloupce navíc (pravá strana). Nyní je vytvořena matice, která se musí naplnit daty ze souboru. To řeší funkce nacist_matici() v souboru jednoduche_fce/nacist_soubor.c. Zde se provádí rozřazování prvků matice ze souboru do matice v paměti a zároveň se provádí jednoduché testování na přítomnost znaku " " oddělující matici soustavy od pravé strany (jednoduche_fce/nacist_soubor.c; ř ). Nakonec se porovná počet řádků a sloupců. Pokud počet nesouhlasí, matice není čtvercová a program skončí s návratovým kódem Datové typy a správa paměti Nejpodstatnějšími proměnnými v programu jsou matice soustavy a ostatní vektory. Program byl vyvíjen na 32-bitové architektuře a proto pro tyto proměnné byl zvolen datový typ float. Práce s tímto datovým typem na této architektuře je optimální z hlediska rychlosti běhu programu. Pokud bychom chtěli na stejné architektuře např. zdvojnásobit přesnost výpočtu, můžeme zvolit datový typ matic a vektorů s dvojnásobou přesností (double float) a nebo dvojnásobně zmenšit ε. V prvním případě docílíme toho, že se jedno desetinné číslo bude kopírovat dva procesorové cykly dlouho. Matematické operace mohou trvat až několikanásobně více procesorových cyklů déle než při použití jednoduché přesnosti. V druhém případě sice vzroste režije algoritmu, která se skládá pouze z inkrementace proměnných typu unsigned int a udržovacích podmínek, ale hlavně vzroste počet iterací, které jsou závislé na použité metodě. Efektivnější je tedy buď změnit ε, a nebo použít procesor s širší sběrnicí a přepsat konstantu datového typu v souboru headers/konstanty.h. Paměť je z většiny přidělována staticky. Ta, která se alokuje dynamicky by se mohla alokovat staticky, protože v průběhu běhu programu ji není kde dealokovat. Paměť se alokuje na začátku funkce main() (ř ) hned po zjištění rozměrů matice soustavy. Dealokuje se na konci programu - ať už skončí chybou nebo ne. 7
8 4.3 Přenositelnost Program není závislý na softwarové ani hardwarové platformě a neobsahuje ani absolutní cesty k souborům. Jako parametr lze předávat relativní i absolutní cesty. Pro jednodušší úpravu zdrojových kódů jsou použity konstanty. Při kompilaci programu pro HW platformu s šířkou sběrnice vyšší než 32 bitů je vhodné ověřit, jestli float má skutečně tolik bitů jako šířka sběrnice. 4.4 Debugování kódu...se provádí prostým odkomentováním řádky #define _debug v souboru headers/konstanty.h. 4.5 Přehled návratových kódů Návratový kód Význam 0 Program skončil úspěšně 1 Uživatel nezadal číslo metody řešení 2 Uživatel nezadal cestu k souboru s maticí 3 Soubor s maticí soustavy neexistuje, nebo uživatel nemá oprávnění ke čtení 4 Operační systém odmítl přidělit paměť pro matici soustavy (není žádná volná) 5 Uživatel zvolil chybné číslo metody řešení 6 Chyba syntaxe v matici soustavy: očekáván znak " " 7 Uživatel zadal neznámý parametr příkazu 10 Chyba v programu; funkce gaus_seidel(), soubor vypocetni_fcegaus-sidel.c 11 Chyba v programu; funkce jacobi(), soubor vypocetni_fcejacobi.c 12 Chyba v programu; funkce sdruzene_gradienty(), soubor vypocetni_fcegrad.c 20 Výpočet metodou Gausse-Seidela ukončen pro dosažení maximálního počtu iterací 21 Výpočet metodou Sdružených gradientů ukončen pro dosažení maximálního počtu iterací 22 Výpočet Jacobiho metodou ukončen pro dosažení maximálního počtu iterací 23 Při pokusu o spuštění algoritmu Jacobiho metody byla na diagonále matice soustavy zjištěna nula 24 Při pokusu o spuštění algoritmu Gausse-Seidela byla na diagonále matice soustavy zjištěna nula 8
9 5 Popis implementace v Pythonu Hlavní výhodou je jednoduchost implementace. Jazyk Python je přímo navržen pro snadné a efektivní psaní aplikací, tudíž programátor neřeší nízkoúrovňové operace a může se plně soustředit na hlavní účel aplikace. Jelikož je to však interpretovaný jazyk, je nutné počítat s nižší rychlostí výpočtů, avšak v případě Pythonu není ztráta výkonu tak velká, neboť výkonově kritické knihovny jsou napsány v jazyce C. Nabízí se otázka, zda v Pythonu implementovat metody pro řešení soustav lineárních rovnic. Z vlastností jazyka plyne, že by nebylo vhodné jej používat pro velké soustavy rovnic, nebo opakovaně spouštět výpočet. V druhém případě by nastal problém, kdy se spotřebuje určitý čas pro spuštění interpretru Pythonu, a teprve potom se spustí výpočet samotný. Při použití všech čtyř metod na soustavu 2x2 trval běh výpočtu (vč. spuštění interpretru) 41 ms. Spuštění samotného interpretru trvalo 30 ms, tudíž výpočet zabral 11 ms, a to pro všechny čtyři metody. To znamená, že pro tak malou soustavu bylo spotřebováno přibližně 73% času jenom pro rozběhnutí výpočtu. Pokud by bylo potřeba počítat malé soustavy opakovaně, bylo by třeba interpretr spustit jednou a poté v něm opakovaně spouštět výpočty. Nepřekvapí ani paměťová náročnost. Na konci výpočtu proces využívá zhruba 3.5 MB RAM. Naštěstí v Pythonu existuje Garbage Collector, který nepotřebné proměnné dealokuje z paměti, takže i když programátor nedbá na paměťovou náročnost, neroste spotřeba paměti s každou proměnnou. Další výhodou implementace v Pythonu je skutečnost, že lze data z výpočtů snadno dále zpracovávat, například s pomocí knihovny matplotlib lze vytvářet grafy jako v prostředí Matlab. Interpretr Pythonu lze také snadno integrovat do jiných aplikací, kde jsou výpočty potřeba (takovou konzoli lze vidět například v aplikaci pro 3D modelování, Blender, kde o výpočty není nouze). Výhodou jsou také snadno dostupné funkce knihovny pro výstup, ať už v textové podobě, HTML, L A TEXu nebo PDF. 9
10 6 Uživatelská příručka programu v jazyce C 6.1 Překlad a spuštění Pro překlad bez zásahu do zdrojových kódů je nutné mít dostupný překladač gcc. Pro samotný překlad stačí zadat příkaz make v kořenovém adresáři zdrojových kódů (nachází se tam soubor Makefile. Program má jednoduché textové rozhraní. Spouští se z příkazové řádky; standardní rozměry konsole 80x25 postačují. Pro spuštění je třeba zadat cestu k matici a metodu řešení. Příklad:./slar -s matrix3.txt -m 0 Tím dojde k načtení souboru matrix3.txt a použití metody 0 - GEM. Parametr -m může nabývat těchto hodnot: Hodnota Použitá metoda 0 Gausova eliminační metoda 1 Metoda Gausse-Seidela 2 Metoda Sdružených gradientů 3 Jacobbiho metoda V závisloti na použité metodě můžete být požádání o další uživatelský vstup - o hodnotu ε a o počáteční vektor neznámých. Více informací nebude vyžadováno. Pokud zadáde jiný znak než číslo, použije se výchozí hodnota. Výchozí hodnota ε je 0.01 a vektor neznámých je defaultně Chybové hlášky Program při svém ukončení předává operačnímu systému návratový kód. Podle tohoto kódu lze usoudit, zda program skončil správně nebo chybně. Při svém ukončování také vypíše, proč končí. Např. když se stane, že ve vašem PC už nezbývá dostatek volné paměti (používáte příliš novou verzi Windows), vypíše se hláška: Chyba #4: Došla paměť! 10
11 6.3 Nápověda Pro výpis nápovědy zadejte:./slar -h 6.4 Formát matice soustavy Do načítaného souboru se zapisuje rozšířená matice soustavy. Matice A musí být čtvercová. Jako oddělovač pravé strany se používá znak " ". Jako oddělovač sloupců se používá mezera. Před a za oddělovačem pravé strany musí být mezera. Příklad obsahu souboru s rozšířenou maticí soustavy:
12 7 Závěr 7.1 Výkonnost programu Výkonnost programu v C a programu v Pythonu se ověřovala na stroji IBM T34 s procesorem Intel Pentium-M s taktovací frekvencí MHz. L1 cache procesoru je 64kiB, L2 cache 2MiB. Šířka pamětí, procesoru a FSB sběrnice je 32 bitů. Operační systém je linuxová distribuce Gentoo. Testovaný program byl spuštěn s prioritou nice -10, aby se omezily vlivy ostatních aplikací. Operační systém běžel pouze v příkazovém režimu, aby se redukoval počet spuštěných procesů. Program psaný v jazyce C byl testován na rychlost bez debugovacích funkcí a s defaultní hodnotou ε, maximálního počtu iterací a počáteční hodnotou vektoru neznámých. Toho se docílilo zakomentováním části kódu, která obstarává výchozí vstup. Matice použitá k měření má rozměry 200 x 200 a je přiložená v souboru matice_velka.txt v kořenovém adresáři zdrojových kódů Program v jazyce C GEM Čas běhu: 243 ms Jacobiho metoda Čas běhu: 87 ms Dosažená přesnost: Počet iterací: 25 Medoda sdružených gradientů Čas běhu: 122 ms Dosažená přesnost: Počet iterací: 9 12
13 Metoda Gausse-Seidela Čas běhu: 60 ms Dosažená přesnost: Počet iterací: Program v jazyce Python GEM Čas běhu: ms Jacobiho metoda Čas běhu: ms Počet iterací: 35 Medoda sdružených gradientů Čas běhu: ms Počet iterací: 7 Metoda Gausse-Seidela Čas běhu: ms Počet iterací: Možný problém na určitých systémech Je zde jedna závada, na kterou bych chtěl upozornit - jedná se o uvolňování paměti. Objevuje se pod 32-bitovým Gentoo (i686), pod 32-bitovým Archlinuxem (arm-v6j) i na 32-bitové ditribuci Fedora 18 (i686) (kernel fc18.i686 s glibc ) Při použití matic menších než 7x7 se chyba neobjevuje vůbec. Na 64-bitových architekturách se paměť dealokuje v pořádku. Nástroj Valgrid vypíše, že byla veškerá paměť uvolněna, i když dealokace skončí s chybou. Výpis chyby: *** glibc detected ***./slar: free(): invalid next size (fast): 0x0804c200 *** ======= Backtrace: ========= /lib/libc.so.6(+0x79930)[0xb ]./slar[0x80487b4]./slar[0x8048bcd] 13
14 /lib/libc.so.6( libc_start_main+0xf1)[0xb76f6c31]./slar[0x80486bd] ======= Memory map: ======== b000 r-xp : /home/jashin/dokumenty/vyvoj/rozpracovane/m4e/slar Vysvětlení nestandardních konstrukcí V programu jsem využil nekonečných cyklů a příkazů skoku. Nekonečné cykly jsou nekonečné proto, že se tím zjedoduší programování a zpětná analýza kódu. Ukončovací podmínky jsou někde uvnitř cyklů a tudíž nemůže být použit např. cyklus for, který má udržovací podmínku v parametru. V kódu jsem příliš nepoužíval standardní ANSI-C komentáře - při vývoji jsem někdy zakomentovával velké kusy kódu a zakomentovaný komentář ( /* /*komentář */ */ ) se překladačem vyhodnotí jako chyba. Proto používám komentáře z C Kódování zdrojových souborů Všechny zdrojové kódy programu i dokumentace jsou uloženy v kódování UTF-8 s UNIXovým ukončením řádků. 14
Šifrování/Dešifrování s použitím hesla
Fakulta elektrotechnická Katedra teoretické elektrotechniky Dokumentace k semestrální práci Šifrování/Dešifrování s použitím hesla 2012/13 Petr Zemek Vyučující: Ing. Petr Kropík, Ph.D Předmět: Základy
VíceSemestrální práce KIV/PC Řešení kolizí frekvencí sítě vysílačů Zdeněk Bečvář A14B0466P 10. ledna 2016
Semestrální práce KIV/PC Řešení kolizí frekvencí sítě vysílačů Zdeněk Bečvář A14B0466P 10. ledna 2016 Obsah 1 Zadání 1 2 Analýza úlohy 2 2.1 Uložení dat ze vstupního souboru................ 2 2.2 Graf
VícePokud nebude na příkazové řádce uveden právě jeden argument, vypište chybové hlášení a stručný
KIV/PC ZS 2015/2016 Zadání ZADÁNÍ SEMESTRÁLNÍ PRÁCE ŘEŠENÍ KOLIZÍ FREKVENCÍ SÍTĚ VYSÍLAČŮ VARIANTA 2 (REx) Naprogramujte v ANSI C přenositelnou 1 konzolovou aplikaci, která jako vstup načte z parametru
VíceMatematika v programovacích
Matematika v programovacích jazycích Pavla Kabelíková am.vsb.cz/kabelikova pavla.kabelikova@vsb.cz Úvodní diskuze Otázky: Jaké programovací jazyky znáte? S jakými programovacími jazyky jste již pracovali?
VíceLaboratorní zdroj - 6. část
Laboratorní zdroj - 6. část Publikované: 20.05.2016, Kategória: Silové časti www.svetelektro.com V tomto článku popíšu způsob, jak dojít k rovnicím (regresní funkce), které budou přepočítávat milivolty
VíceIUJCE 07/08 Přednáška č. 6
Správa paměti Motivace a úvod v C (skoro vždy) ručně statické proměnné o datový typ, počet znám v době překladu o zabírají paměť po celou dobu běhu programu problém velikosti definovaných proměnných jak
VíceNPRG030 Programování I 3/2 Z --- NPRG031 Programování II --- 2/2 Z, Zk
NPRG030 Programování I 3/2 Z --- NPRG031 Programování II --- 2/2 Z, Zk Pavel Töpfer Katedra softwaru a výuky informatiky MFF UK MFF Malostranské nám., 4. patro, pracovna 404 pavel.topfer@mff.cuni.cz http://ksvi.mff.cuni.cz/~topfer
VíceDalší aspekty architektur CISC a RISC Aktuálnost obsahu registru
Cíl přednášky: Vysvětlit principy práce s registry v architekturách RISC a CISC, upozornit na rozdíly. Vysvětlit možnosti využívání sad registrů. Zabývat se principy využívanými v procesorech Intel. Zabývat
VíceTechnické prostředky počítačové techniky
Počítač - stroj, který podle předem připravených instrukcí zpracovává data Základní části: centrální procesorová jednotka (schopná řídit se posloupností instrukcí a ovládat další části počítače) zařízení
VíceBřetislav Fajmon, UMAT FEKT, VUT Brno. Poznámka 1.1. A) první část hodiny (cca 50 minut): představení všech tří metod při řešení jednoho příkladu.
Břetislav Fajmon, UMAT FEKT, VUT Brno Poznámka 1.1. A) první část hodiny (cca 50 minut): představení všech tří metod při řešení jednoho příkladu. Na jiných příkladech je téma podrobně zpracováno ve skriptech
Víceint => unsigned int => long => unsigned long => float => double => long double - tj. bude-li:
13.4.2010 Typová konverze - změna jednoho datového typu na jiný - známe dva základní implicitní ("sama od sebe") a explicitní (výslovně vyžádána programátorem) - C je málo přísné na typové kontroly = dokáže
VíceSběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC
Informatika 2 Technické prostředky počítačové techniky - 2 Přednáší: doc. Ing. Jan Skrbek, Dr. - KIN Přednášky: středa 14 20 15 55 Spojení: e-mail: jan.skrbek@tul.cz 16 10 17 45 tel.: 48 535 2442 Obsah:
VícePojem architektura je převzat z jiného oboru lidské činnosti, než počítače.
1 Architektura počítačů Pojem architektura je převzat z jiného oboru lidské činnosti, než počítače. Neurčuje jednoznačné definice, schémata či principy. Hovoří o tom, že počítač se skládá z měnších částí
Vícefor (i = 0, j = 5; i < 10; i++) { // tělo cyklu }
5. Operátor čárka, - slouží k jistému určení pořadí vykonání dvou příkazů - oddělím-li čárkou dva příkazy, je jisté, že ten první bude vykonán dříve než příkaz druhý. Např.: i = 5; j = 8; - po překladu
VíceLED_007.c Strana: 1/5 C:\Michal\AVR\Výukové programy\archiv\ Poslední změna: 4.10.2011 8:01:48
LED_007.c Strana: 1/5 Nyní již umíme používat příkazy k větvení programu (podmínky) "if" a "switch". Umíme také rozložit program na jednoduché funkce a používat cyklus "for". Co se týče cyklů, zbývá nám
VíceSeznámení se se zvolenou pokročilou iterativní metodou na problému batohu
4. 12. 213 MI-PAA úkol č. 4 Antonín Daněk Seznámení se se zvolenou pokročilou iterativní metodou na problému batohu 1 SPECIFIKACE ÚLOHY Cílem tohoto úkolu bylo seznámit se s vybranou pokročilou iterativní
VíceDistanční opora předmětu: Programování v jazyce C Tématický blok č. 8: Dynamické datové struktury, ladění programů Autor: RNDr. Jan Lánský, Ph.D.
Distanční opora předmětu: Programování v jazyce C Tématický blok č. 8: Dynamické datové struktury, ladění programů Autor: RNDr. Jan Lánský, Ph.D. Obsah kapitoly 1 Dynamické datové struktury 1.1 Příklad:
VíceŘešení problému batohu dynamickým programováním, metodou větví a hranic a aproximativním algoritmem
2. 1. 213 MI-PAA úkol č. 2 Antonín Daněk Řešení problému batohu dynamickým programováním, metodou větví a hranic a aproximativním algoritmem 1 SPECIFIKACE ÚLOHY Cílem tohoto úkolu bylo naprogramovat řešení
VíceLinux (nejen) v Low End routerech
Linux (nejen) v Low End routerech Ing. Lukáš Macura Slezská univerzita v Opavě Obchodně podnikatelská fakulta v Karviné Člen projektu CESNET 134/2005 Prostředí pro vývoj embedded systémů
VíceParalelní LU rozklad
Paralelní LU rozklad Lukáš Michalec Katedra fyziky, Přírodovědecká fakulta Univerzity J.E. Purkyně v ročník, specializace Ústí n.l. Abstract Seminární práce se zabývá řešení soustavy lineárních rovnic
VíceKlíčové pojmy: Cyklus, řídící proměnná, inicializace, test podmínky, přerušení cyklu, vnořování cyklů.
Příkazy cyklu v C# Kapitola vysvětluje použití tří typů cyklů for, while a -while a plňuje jejich použití řau příkladů programů v jazyku C#. V jazyku C by šlo pouze k záměně funkcí pro vstup a výstup.
VíceKomplexní číslo. Klíčové pojmy: Komplexní číslo, reálná část, imaginární část, algebraické počty s komplexním číslem
Komplexní číslo Cíl kapitoly: seznámení s použitím komplexního čísla v pythonu Klíčové pojmy: Komplexní číslo, reálná část, imaginární část, algebraické počty s komplexním číslem Komplexní číslo Opakování
VíceElektronická dokumentace - LATEX. Maticové operace
Elektronická dokumentace - LATEX Maticové operace 29.listopadu 2009 Luděk Bordovský (bor0022) Fakulta elektrotechniky a informatiky VŠB-TU Ostrava Uživatelská příručka 1 Obsah 1 Úvod 3 2 Ovládání 3 3 Operace
VíceSemestrální projekt. Předmět: Programování v jazyce C. Zadání: Operace s maticemi. Uživatelský manuál. ver. 1.0
Semestrální projekt Předmět: Programování v jazyce C Zadání: Operace s maticemi Uživatelský manuál ver. 1.0 Jakub Štrouf Obor: Aplikovaná informatika Semestr: 1. Rok: 2009/2010 Obsah: 1. Úvod 1.1. Technická
VícePB071 Programování v jazyce C Jaro 2013
Programování v jazyce C Jaro 2013 Uživatelské datové typy, dynamické struktury a jejich ladění Organizační Organizační Vnitrosemetrální test 7.4. Dotazník k domácím úkolům informační, nebodovaný, pomáhá
Vícey = Spočtěte všechny jejich normy (vektor je také matice, typu n 1). Řádková norma (po řádcích sečteme absolutní hodnoty prvků matice a z nich
Normy matic Příklad 1 Je dána matice A a vektor y: A = 2 0 3 4 3 2 y = Spočtěte všechny jejich normy (vektor je také matice, typu n 1). Ověřte, že platí Ay A y (1) Ay = (4, 14, 2) T 2 2 Frobeniova norma
VíceMetody operačního výzkumu cvičení
Opakování vektorové algebry domácí úkol ) Pojem vektorového prostoru praktická aplikace - je tvořen všemi vektory dané dimenze - operace s vektory (součin, sčítání, násobení vektoru skalární hodnotou)
VícePB071 Programování v jazyce C Jaro 2015
Programování v jazyce C Jaro 2015 Argumenty main(), Typový systém, Dynamická alokace Organizační Polosemestrální test Úterý 7. dubna v 10:00 a 11:00 v D1 20 bodů rozdíl mezi E a C Zdroj: http://www.bugemos.com/?node=342
VíceOpakování programování
Opakování programování HW návaznost - procesor sběrnice, instrukční sada, optimalizace rychlosti, datové typy, operace (matematické, logické, podmínky, skoky, podprogram ) - paměti a periferie - adresování
VíceOperační systémy. Cvičení 4: Programování v C pod Unixem
Operační systémy Cvičení 4: Programování v C pod Unixem 1 Obsah cvičení Řídící struktury Funkce Dynamická alokace paměti Ladění programu Kde najít další informace Poznámka: uvedené příklady jsou dostupné
Více2. Matice, soustavy lineárních rovnic
Matice, soustavy lineárních rovnic Tento učební text byl podpořen z Operačního programu Praha- Adaptabilita Irena Sýkorová Některé vlastnosti matic Uvažujmečtvercovoumatici A=(a ij ) n n Matice Asenazývásymetrická,jestližeplatí
Více2 Spojité modely rozhodování
2 Spojité modely rozhodování Jak již víme z přednášky, diskrétní model rozhodování lze zapsat ve tvaru úlohy hodnocení variant: f(a i ) max, a i A = {a 1, a 2,... a p }, kde f je kriteriální funkce a A
VíceSoučin matice A a čísla α definujeme jako matici αa = (d ij ) typu m n, kde d ij = αa ij pro libovolné indexy i, j.
Kapitola 3 Počítání s maticemi Matice stejného typu můžeme sčítat a násobit reálným číslem podobně jako vektory téže dimenze. Definice 3.1 Jsou-li A (a ij ) a B (b ij ) dvě matice stejného typu m n, pak
VíceSoftware je ve světě IT vše, co není Hardware. Do softwaru patří aplikace, program, proces, algoritmus, ale i data (text, obrázky), operační systém
Software Co je to software? Software je ve světě IT vše, co není Hardware Do softwaru patří aplikace, program, proces, algoritmus, ale i data (text, obrázky), operační systém Podívejme se tedy na jednotlivé
Více2 Základní funkce a operátory V této kapitole se seznámíme s použitím funkce printf, probereme základní operátory a uvedeme nejdůležitější funkce.
Vážení zákazníci, dovolujeme si Vás upozornit, že na tuto ukázku knihy se vztahují autorská práva, tzv copyright To znamená, že ukázka má sloužit výhradnì pro osobní potøebu potenciálního kupujícího (aby
VíceMatematika I Lineární závislost a nezávislost
Matematika I Lineární závislost a nezávislost RNDr. Renata Klufová, Ph. D. Jihoèeská univerzita v Èeských Budìjovicích EF Katedra aplikované matematiky a informatiky Co u¾ známe? vektory - základní operace
VíceTechnologie počítačových sítí 1. cvičení
Technologie počítačových sítí 1. cvičení Obsah prvního cvičení Microsoft Windows 2003 server Operační systém Windows 2003 server - Vytvoření nového virtuálního stroje pro instalaci Windows 98 - Příprava
VícePREPROCESOR POKRAČOVÁNÍ
PREPROCESOR POKRAČOVÁNÍ Chybová hlášení V C# podobně jako v C++ existuje direktiva #error, která způsobí vypsání chybového hlášení překladačem a zastavení překladu. jazyk C# navíc nabízí direktivu #warning,
VíceZáklady programování (IZP)
Základy programování (IZP) Osmé počítačové cvičení Brno University of Technology, Faculty of Information Technology Božetěchova 1/2, 612 66 Brno - Královo Pole Petr Veigend, iveigend@fit.vutbr.cz 20.11.2017,
VíceInterpret jazyka IFJ2011
Dokumentace projektu Interpret jazyka IFJ2011 Tým číslo 093, varianta b/3/i: 20 % bodů: Cupák Michal (xcupak04) vedoucí týmu 20 % bodů: Číž Miloslav (xcizmi00) 20 % bodů: Černá Tereza (xcerna01) 20 % bodů:
VíceOperační systémy 2. Přednáška číslo 2. Přidělování paměti
Operační systémy 2 Přednáška číslo 2 Přidělování paměti Základní pojmy Paměť = operační paměť paměť, kterou přímo využívají procesory při zpracování instrukcí a dat Funkce modulu přidělování paměti: Sledování
VíceV 70. letech výzkumy četnosti výskytu instrukcí ukázaly, že programátoři a
1 Počítače CISC a RISC V dnešní době se ustálilo dělení počítačů do dvou základních kategorií podle typu použitého procesoru: CISC - počítač se složitým souborem instrukcí (Complex Instruction Set Computer)
VíceGPGPU. Jan Faigl. Gerstnerova Laboratoř pro inteligentní rozhodování a řízení České vysoké učení technické v Praze
GPGPU Jan Faigl Gerstnerova Laboratoř pro inteligentní rozhodování a řízení České vysoké učení technické v Praze 8. cvičení katedra kybernetiky, FEL, ČVUT v Praze X33PTE - Programovací techniky GPGPU 1
VícePROCESOR. Typy procesorů
PROCESOR Procesor je ústřední výkonnou jednotkou počítače, která čte z paměti instrukce a na jejich základě vykonává program. Primárním úkolem procesoru je řídit činnost ostatních částí počítače včetně
VíceParalelní a distribuované výpočty (B4B36PDV)
Paralelní a distribuované výpočty (B4B36PDV) Branislav Bošanský, Michal Jakob bosansky@fel.cvut.cz Artificial Intelligence Center Department of Computer Science Faculty of Electrical Engineering Czech
Více5. Maticová algebra, typy matic, inverzní matice, determinant.
5. Maticová algebra, typy matic, inverzní matice, determinant. Matice Matice typu m,n je matice složená z n*m (m >= 1, n >= 1) reálných (komplexních) čísel uspořádaných do m řádků a n sloupců: R m,n (resp.
VíceÚvod do programování - Java. Cvičení č.4
Úvod do programování - Java Cvičení č.4 1 Sekvence (posloupnost) Sekvence je tvořena posloupností jednoho nebo více příkazů, které se provádějí v pevně daném pořadí. Příkaz se začne provádět až po ukončení
VícePROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 10
UNIVERZITA TOMÁŠE BATI VE ZLÍNĚ FAKULTA APLIKOVANÉ INFORMATIKY PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 10 Využití zásobníku pro předání parametrů podprogramům a lokální proměnné Jan Dolinay Petr Dostálek Zlín
VíceSpojová implementace lineárních datových struktur
Spojová implementace lineárních datových struktur doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 13. března 2017 Jiří Dvorský (VŠB
Více8) Jaké jsou důvody pro použití víceprůchodového překladače Dříve hlavně kvůli úspoře paměti, dnes spíše z důvodu optimalizace
1) Charakterizujte křížový překladač Překlad programu probíhá na jiném procesoru, než exekuce. Hlavním důvodem je náročnost překladače na cílovém stroji by ho nemuselo být možné rozběhnout. 2. Objasněte
VíceOperační systémy. Přednáška 8: Správa paměti II
Operační systémy Přednáška 8: Správa paměti II 1 Jednoduché stránkování Hlavní paměť rozdělená na malé úseky stejné velikosti (např. 4kB) nazývané rámce (frames). Program rozdělen na malé úseky stejné
VíceVYUŽITÍ KNIHOVNY SWING PROGRAMOVACÍHO JAZYKU JAVA PŘI TVORBĚ UŽIVATELSKÉHO ROZHRANÍ SYSTÉMU "HOST PC - TARGET PC" PRO ŘÍZENÍ POLOVODIČOVÝCH MĚNIČŮ
VYUŽITÍ KNIHOVNY SWING PROGRAMOVACÍHO JAZYKU JAVA PŘI TVORBĚ UŽIVATELSKÉHO ROZHRANÍ SYSTÉMU "HOST PC - TARGET PC" PRO ŘÍZENÍ POLOVODIČOVÝCH MĚNIČŮ Stanislav Flígl Katedra elektrických pohonů a trakce (K13114),
VíceKatedra aplikované matematiky FEI VŠB Technická univerzita Ostrava email: dalibor.lukas@vsb.cz http://www.am.vsb.cz/lukas/la1
Lineární algebra 10. přednáška: Ortogonalita II Dalibor Lukáš Katedra aplikované matematiky FEI VŠB Technická univerzita Ostrava email: dalibor.lukas@vsb.cz http://www.am.vsb.cz/lukas/la1 Text byl vytvořen
VíceRegistrační číslo Hodnocení - část A Hodnocení - část B Hodnocení - část A+B
PŘIJÍMACÍ TEST Z INFORMATIKY A MATEMATIKY NAVAZUJÍCÍ MAGISTERSKÉ STUDIUM V OBORU APLIKOVANÁ INFORMATIKA FAKULTA INFORMATIKY A MANAGEMENTU UNIVERZITY HRADEC KRÁLOVÉ ČÁST A Registrační číslo Hodnocení -
VíceRegresní a korelační analýza
Přednáška STATISTIKA II - EKONOMETRIE Katedra ekonometrie FEM UO Brno kancelář 69a, tel. 973 442029 email:jiri.neubauer@unob.cz Regresní analýza Cíl regresní analýzy: stanovení formy (trendu, tvaru, průběhu)
VícePřipomenutí co je to soustava lineárních rovnic
Připomenutí co je to soustava lineárních rovnic Příklad 2x 3y + z = 5 3x + 5y + 2z = 4 x + 2y z = 1 Soustava lineárních rovnic obecně Maticový tvar: a 11 x 1 + a 12 x 2 + + a 1n x n = b 1 a 21 x 1 + a
VícePrincipy operačních systémů. Lekce 2: Správa paměti
Principy operačních systémů Lekce 2: Správa paměti Funkce správce paměti Správce (operační) paměti je součástí kernelu. Jeho implementace může být různá, ale základní funkce jsou obdobné ve všech OS: Udržovat
VíceFP - SEMINÁŘ Z NUMERICKÉ MATEMATIKY. Katedra matematiky a didaktiky matematiky Technická univerzita v Liberci
FP - SEMINÁŘ Z NUMERICKÉ MATEMATIKY Dana Černá http://www.fp.tul.cz/kmd/ Katedra matematiky a didaktiky matematiky Technická univerzita v Liberci OBSAH A CÍLE SEMINÁŘE: Opakování a procvičení vybraných
VíceProcesor. Procesor FPU ALU. Řadič mikrokód
Procesor Procesor Integrovaný obvod zajišťující funkce CPU Tvoří srdce a mozek celého počítače a do značné míry ovlivňuje výkon celého počítače (čím rychlejší procesor, tím rychlejší počítač) Provádí jednotlivé
VíceSeminář z IVT Algoritmizace. Slovanské gymnázium Olomouc Tomáš Kühr
Seminář z IVT Algoritmizace Slovanské gymnázium Olomouc Tomáš Kühr Algoritmizace - o čem to je? Zatím jsme se zabývali především tím, jak určitý postup zapsat v konkrétním programovacím jazyce (např. C#)
VíceÚstav technické matematiky FS ( Ústav technické matematiky FS ) / 35
Úvod do paralelního programování 2 MPI Jakub Šístek Ústav technické matematiky FS 9.1.2007 ( Ústav technické matematiky FS ) 9.1.2007 1 / 35 Osnova 1 Opakování 2 Představení Message Passing Interface (MPI)
VíceTabulka symbolů. Vazba (binding) Vazba - příklad. Deklarace a definice. Miroslav Beneš Dušan Kolář
Vazba (binding) Tabulka symbolů Miroslav Beneš Dušan Kolář vazba = spojení mezi entitou a vlastností okamžik vazby (binding time) při návrhu jazyka při implementaci jazyka během překladu/spojování/zavádění
Víceskladbu obou směsí ( v tunách komponenty na 1 tunu směsi):
Klíčová slova: simplexová metoda 1 Simplexová metoda Postup výpočtu: 1. Nalezení výchozího řešení. 2. Test optima: pokud je řešení optimální výpočet končí, jinak krok 3. 3. Iterační krok, poté opět test
VíceProgramování v jazyce C pro chemiky (C2160) 3. Příkaz switch, příkaz cyklu for, operátory ++ a --, pole
Programování v jazyce C pro chemiky (C2160) 3. Příkaz switch, příkaz cyklu for, operátory ++ a --, pole Příkaz switch Příkaz switch provede příslušnou skupinu příkazů na základě hodnoty proměnné (celočíselné
VíceMgr. Karel Pazourek. online prostředí, Operační program Praha Adaptabilita, registrační číslo CZ.2.17/3.1.00/31165.
Mnohočleny z různých stran Mgr. Karel Pazourek Kurz vznikl v rámci projektu Rozvoj systému vzdělávacích příležitostí pro nadané žáky a studenty v přírodních vědách a matematice s využitím online prostředí,
VíceUkazatele #2, dynamická alokace paměti
Ukazatele #2, dynamická alokace paměti BI-PA1 Programování a Algoritmizace 1 Miroslav Baĺık, Ladislav Vagner a Josef Vogel Katedra teoretické informatiky a Katedra softwarového inženýrství Fakulta informačních
VíceÚvod do programovacích jazyků (Java)
Úvod do programovacích jazyků (Java) Michal Krátký Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programovacích jazyků (Java), 2007/2008 c 2006 2008 Michal Krátký Úvod do programovacích
Více09. Memory management. ZOS 2006, L.Pešička
09. Memory management ZOS 2006, L.Pešička Správa paměti paměťová pyramida absolutní adresa relativní adresa počet bytů od absolutní adresy fyzický prostor adres fyzicky k dispozici výpočetnímu systému
VíceZadání projektů z BPC2 pro letní semestr 2007/2008
Zadání projektů z BPC2 pro letní semestr 2007/2008 Několik poznámek na úvod Projekt může být i konzolová aplikace. Záleží však na typu zadání, ne každé v konzolové aplikace vyřešit lze. Mezi studenty jsou
VíceŘešení problému vážené splnitelnosti booleovské formule pokročilou iterativní metodou
Řešení problému vážené splnitelnosti booleovské formule pokročilou iterativní metodou 1 SPECIFIKACE ÚLOHY Cílem této úlohy bylo použít vybranou pokročilou iterativní metodou pro řešení problému vážené
VíceFAKULTA ELEKTROTECHNIKY A KOMUNIKAČNÍCH TECHNOLOGIÍ. Matematika 3. RNDr. Břetislav Fajmon, PhD. Autoři textu:
FAKULTA ELEKTROTECHNIKY A KOMUNIKAČNÍCH TECHNOLOGIÍ VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ Matematika 3 Garant předmětu: RNDr. Břetislav Fajmon, PhD Autoři textu: Mgr. Irena Růžičková RNDr. Břetislav Fajmon, PhD
VíceAlgoritmus pro hledání nejkratší cesty orientovaným grafem
1.1 Úvod Algoritmus pro hledání nejkratší cesty orientovaným grafem Naprogramoval jsem v Matlabu funkci, která dokáže určit nejkratší cestu v orientovaném grafu mezi libovolnými dvěma vrcholy. Nastudoval
VíceAnotace. Pointery. Martin Pergel,
Anotace Pointery K čemu jsou dynamické proměnné? K mnoha algoritmům bychom potřebovali pole proměnlivé délky nebo aspoň jinou datovou strukturu proměnlivé délky. Jak implementovat frontu a zásobník? Použijeme
VícePřehled verzí aplikace WinTechnol
Přehled verzí aplikace WinTechnol Verze 2.0.16 5. 2. 2009 Opravena chyba, která znemožňovala ladění s DOS verzemi systému a WinCNC revize menší než 637. Opraveno nesprávné ukládání informace o aktuální
VíceVÝUKOVÝ MATERIÁL. Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632 Číslo projektu
VÝUKOVÝ MATERIÁL Identifikační údaje školy Vyšší odborná škola a Střední škola, Varnsdorf, příspěvková organizace Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632
VíceVícejádrový procesor. Dvě nebo více nezávislých jader Pro plné využití. podporovat multihreading
Vývoj Jan Smuda, Petr Zajíc Procesor ALU (aritmeticko logická jednotka) Registry Řadič Jednotky pro práci s plovoucí čárkou Cache Vývoj procesorů Predikce skoku Plánování instrukcí Naráží na fyzická omezení
VíceMANUÁL K OVLÁDÁNÍ POČÍTAČOVÉHO SYSTÉMU PRO KMENOVÉ PÁSOVÉ PILY
MANUÁL K OVLÁDÁNÍ POČÍTAČOVÉHO SYSTÉMU PRO KMENOVÉ PÁSOVÉ PILY Manuál k ovládání nového počítače Následující manuál je pomůckou pro případné nejasnosti v ovládání. Obsluha pily, která takto byla už novým
VícePaměťové prvky. ITP Technika personálních počítačů. Zdeněk Kotásek Marcela Šimková Pavel Bartoš
Paměťové prvky ITP Technika personálních počítačů Zdeněk Kotásek Marcela Šimková Pavel Bartoš Vysoké učení technické v Brně, Fakulta informačních technologií v Brně Božetěchova 2, 612 66 Brno Osnova Typy
VíceAnalýza spolehlivosti tlakové nádoby metodou Monte Carlo
Analýza spolehlivosti tlakové nádoby metodou Monte Carlo Jakub Nedbálek Abstrakt: Cílem práce je ukázat možnost využití Monte Carlo simulace pro studium úloh z oblasti spolehlivosti. V našem případě máme
VíceGymnázium, Brno. Matice. Závěrečná maturitní práce. Jakub Juránek 4.A Školní rok 2010/11
Gymnázium, Brno Matice Závěrečná maturitní práce Jakub Juránek 4.A Školní rok 2010/11 Konzultant: Mgr. Aleš Kobza Ph.D. Brno, 2011 Prohlášení Prohlašuji, že jsem předloženou práci zpracoval samostatně
VíceGPGPU Aplikace GPGPU. Obecné výpočty na grafických procesorech. Jan Vacata
Obecné výpočty na grafických procesorech Motivace Úvod Motivace Technologie 3 GHz Intel Core 2 Extreme QX9650 Výkon: 96 GFLOPS Propustnost paměti: 21 GB/s Orientační cena: 1300 USD NVIDIA GeForce 9800
VíceArchitektura počítačů
Architektura počítačů Studijní materiál pro předmět Architektury počítačů Ing. Petr Olivka katedra informatiky FEI VŠB-TU Ostrava email: petr.olivka@vsb.cz Ostrava, 2010 1 1 Architektura počítačů Pojem
VícePrincipy činnosti sběrnic
Cíl přednášky: Ukázat, jak se vyvíjely architektury počítačů v souvislosti s architekturami sběrnic. Zařadit konkrétní typy sběrnic do vývojových etap výpočetních systémů. Ukázat, jak jsou tyto principy
VíceKubatova 19.4.2007 Y36SAP - 13. procesor - control unit obvodový a mikroprogramový řadič RISC. 19.4.2007 Y36SAP-control unit 1
Y36SAP - 13 procesor - control unit obvodový a mikroprogramový řadič RISC 19.4.2007 Y36SAP-control unit 1 Von Neumannova architektura (UPS1) Instrukce a data jsou uloženy v téže paměti. Paměť je organizována
VíceZáklady programování. Úloha: Eratosthenovo síto. Autor: Josef Hrabal Číslo: HRA0031 Datum: 28.11.2009 Předmět: ZAP
Základy programování Úloha: Eratosthenovo síto Autor: Josef Hrabal Číslo: HRA0031 Datum: 28.11.2009 Předmět: ZAP Obsah 1 Zadání úkolu: 3 1.1 Zadání:............................... 3 1.2 Neformální zápis:.........................
VíceHW počítače co se nalézá uvnitř počítačové skříně
ZVT HW počítače co se nalézá uvnitř počítačové skříně HW vybavení PC Hardware Vnitřní (uvnitř počítačové skříně) Vnější ( ) Základní HW základní jednotka + zobrazovací zařízení + klávesnice + (myš) Vnější
VíceČíselné soustavy. Binární číselná soustava
12. Číselné soustavy, binární číselná soustava. Kódování informací, binární váhový kód, kódování záporných čísel. Standardní jednoduché datové typy s pevnou a s pohyblivou řádovou tečkou. Základní strukturované
Více11. Přehled prog. jazyků
Jiří Vokřínek, 2016 B6B36ZAL - Přednáška 11 1 Základy algoritmizace 11. Přehled prog. jazyků doc. Ing. Jiří Vokřínek, Ph.D. Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze
VíceIntervalové stromy. Představme si, že máme posloupnost celých čísel p 0, p 1,... p N 1, se kterou budeme. 1. Změna jednoho čísla v posloupnosti.
Intervalové stromy Představme si, že máme posloupnost celých čísel p 0, p 1,... p N 1, se kterou budeme průběžně provádět tyto dvě operace: 1. Změna jednoho čísla v posloupnosti. 2. Zjištění součtu čísel
VíceVÝUKOVÝ MATERIÁL. Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632 Číslo projektu
VÝUKOVÝ MATERIÁL Identifikační údaje školy Vyšší odborná škola a Střední škola, Varnsdorf, příspěvková organizace Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632
Více0. Lineární rekurence Martin Mareš, 2010-07-04
0 Lineární rekurence Martin Mareš, 2010-07-04 V tomto krátkém textu se budeme zabývat lineárními rekurencemi, tj posloupnostmi definovanými rekurentní rovnicí typu A n+k = c 0 A n + c 1 A n+1 + + c k 1
VícePokročilé architektury počítačů
Pokročilé architektury počítačů referát Intel Core 2 Quad Martin Samek SAM094 Abstrakt Text se bude zabývat procesorem Core 2 Quad firmy Intel. Text bude rozdělen do dvou hlavních částí, kde první část
VíceNeuropočítače. podnět. vnímání (senzory)
Neuropočítače Princip inteligentního systému vnímání (senzory) podnět akce (efektory) poznání plánování usuzování komunikace Typické vlastnosti inteligentního systému: schopnost vnímat podněty z okolního
Více8. lekce Úvod do jazyka C 3. část Základní příkazy jazyka C Miroslav Jílek
8. lekce Úvod do jazyka C 3. část Základní příkazy jazyka C Miroslav Jílek 1/41 Základní příkazy Všechny příkazy se píšou malými písmeny! Za většinou příkazů musí být středník (;)! 2/41 Základní příkazy
VíceMatice. Přednáška MATEMATIKA č. 2. Jiří Neubauer. Katedra ekonometrie FEM UO Brno kancelář 69a, tel. 973 442029 email:jiri.neubauer@unob.
Přednáška MATEMATIKA č. 2 Katedra ekonometrie FEM UO Brno kancelář 69a, tel. 973 442029 email:jiri.neubauer@unob.cz 13. 10. 2010 Uspořádané schéma vytvořené z m n reálných čísel, kde m, n N a 11 a 12 a
VíceCo je obsahem numerických metod?
Numerické metody Úvod Úvod Co je obsahem numerických metod? Numerické metody slouží k přibližnému výpočtu věcí, které se přesně vypočítat bud nedají vůbec, nebo by byl výpočet neúměrně pracný. Obsahem
VíceZdroj: http://www.fit.vutbr.cz
Zdroj: http://www.fit.vutbr.cz Motivace Cílem této úlohy je zopakovat si nebo se naučit vytváření obecných řešení, která na rozdíl od ad hoc řešení umožňují zvládat složitější úlohy bez nadměrného úsilí,
VíceSpráva paměti. doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 /
Správa paměti doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz Obsah přednášky Motivace Úrovně správy paměti. Manuální
Více8. Posloupnosti, vektory a matice
. jsou užitečné matematické nástroje. V Mathcadu je často používáme například k rychlému zápisu velkého počtu vztahů s proměnnými parametry, ke zpracování naměřených hodnot, k výpočtům lineárních soustav
VíceMATLAB základy. Roman Stanec 27.9.2007 PEF MZLU
MATLAB základy Roman Stanec 27.9.2007 PEF MZLU Náplň cvičení Matlab představení a motivace Seznámení s prostředím Proměnné a výrazy Řídící struktury Funkce Základní úpravy matic Import dat z tabulkového
Více