Ptolemy II - často kladené dotazy

Co je to Ptolemy II:

Ptolemy II je software pro modelování, simulaci a návrh systémů, implementovaný s použitím jazyka Java a xml.

Co je to Vergil:

Vergil je grafické rozhraní programu Ptolemy II.

Tvorba vnořených bloků pro opakované použití:

Vnořený blok je nutno uložit bez directoru SDF.Director (zelený obdélník) s již vytvořenými vstupy/výstupy do samostatného souboru. Použití: soubor se otevře, a provede se jeho přidání do knihovny (Graph > Save in library). Poté se blok již objeví v položkách knihovny a lze ho použít jako ostatní bloky. Blok zůstává v knihovně k dispozici během celé session (do ukončení vergilu).

Jak načíst data ze souboru:

Prostřednictvím bloku Reader. Do jeho parametru se zadá řetězec "file:soubor". Pokud se zadá soubor bez cesty, je hledán a případně načítán z adresáře, z něhož byl spuštěn vergil, pro soubor umístěný jinde je nutné zadat cestu buď relativně či absolutně.

Jak zadat parametry bloku ze souboru:

Do pole pro parametry se použije funkce eval(readFile("soubor")). Formát souboru musí být totožný se způsobem zápisu parametrů přímo do bloku, tj. pokud je parametr skalár, soubor bude obsahovat jednu hodnotu (int, double, complex, ...), pokud se zadává pole čísel, pole je ve složených závorkách a jednotlivá čísla jsou oddělena čárkou (takto standardně vypisuje pole např. Mathematica). Lze použít i soubor čísel bez složených závorek (např. generovaných Matlabem fcí dlmwrite), kdy se do funkce eval(), která vyhodnocuje řetězec, závorky přidají takto: eval("{"+readFile("soubor")+"}"). Při změně dat v souboru je nutno provést nějakou operaci, aby vergil k souboru musel znovu přistoupit, jinak použije již načtená data z předešlé verze souboru, tj. je nutno buď soubor s daty přejmenovat nebo schéma uložit, okno se schématem uzavřít a otevřít znovu.

Jak zadat pole komplexních čísel:

Při definování hodnot pole musí mít všechny složky stejný typ, tedy pro pole komplexních čísel je nutno zadat i ryze reálná čísla ve složkovém tvaru číslo+0j.

Použití bloku LineCoder:

Blok LineCoder vybírá z tabulky hodnot v parametru table hodnotu, jejíž index odpovídá binárnímu číslu vytvořenému z bitů vstupní posloupnosti hodnot typu boolean, první hodnota vstupní posloupnosti reprezentuje LSB indexu. Počet bitů na index je dán parametrem wordLength, počet hodnot v tabulce tedy musí být 2^wordLength.


10.4.2002, Pavel Puričer