AMIGA REVIEW online
  Uvodná stránka     Software     Hry     Obaly     Download     Amiga na PC     Amiga Forever  

Laplace

Lenka Čížková

Další matematická pomůcka pro počítače Amiga

V březnu 1997 byla uvolněna betaverze V0.8 programu Laplace, jehož autorem je Benjamin Stegemane (A Vision of Paradise). Zatím jde o mailware dostupný na Aminetu, po dokončení vývoje by program měl být k dispozici jako. shareware.

Charakteristika programu
Autor programu Laplace hledal vhodný nástroj pro své matematické výpočty. Jediným vhodným programem na Amize se ukázal být Maple, jehož velkou nevýhodou je ovšem cena (asi 30000 Kč!!). Benjamin se proto rozhodl napsat svůj vlastní program, který by splňoval jeho požadavky (a následně také požadavky dalších uživatelů). Vzniká tak dostatečně univerzální nástroj pro matematické výpočty schopný počítat s proměnnými, maticemi, zlomky i parametry, jehož schopnosti by se po dokončení vývoje měly rovnat již zmíněnému Maplu - Jatka je tedy nasazena velmi vysoko; podívejme se, v jakém stádiu vývoje je Laplace nyní.

Požadavky programu
Při používání všech matematických programů je samozřejmě výhodou výkonný počítač - minimální konfigurace pro provoz Laplace je procesor 68020, OS 3.0, a MUI 3.3. Mnoho uživatelů jistě ocení, že matematický koprocesor-není nutný - autor ho neměl :-)

Systém práce
Program Laplace pracuje podobně jako Shell - na rozdíl od některých programů, v nichž se funkce a další potřebné vstupy zadávají stiskem různých tlačítek, používá Laplace pouze řádkový režim (jak je u produktů tohoto typu obvyklé): na výzvu programu zadá uživatel příkaz (nejčastěji matematický výraz) a po stisku klávesy Enter se zobrazí výsledek. Vstupy uživatele a odpovědi programu jsou přitom dostatečně graficky odlišeny. Podobně jako Shell má i Laplace historii - lze tedy vždy nalistovat a použít libovolný dříve použitý příkaz; dokonce je možné vrátit se (kurzorem či rolovacími lištami) na některý z předchozích řádků a provést potřebné úpravy příkazů, například editovat dříve zadaný matematický výraz - odpověď programu na daný řádek se opraví a provedené úpravy ovlivní i další řádky. Zde je nutné upřesnit, že Laplace pracuje hierarchicky, tj. výsledek kterékoliv operace ovlivní vždy pouze následující řádky.
Vytvořené projekty (projekt je posloupnost všech řádků zadaných uživatelem i s případnými odezvami programu) se ukládají jako ASCII text. Uživatel má možnost připravit si potřebné knihovny - zde jde o soubory ve tvaru projektů, které se při načtení zpracují bez vypsání výsledků; to je vhodné například pro přípravu konstant a funkcí, které chce uživatel dále používat.

Prostředí programu
Laplace otevírá svá okna na Workbenchi. Uživatel může otevřít libovolný počet oken, a zpracovávat tak více projektů zároveň. Každé okno má nástrojovou lištu ostatně nepříliš rozsáhlou: najdete zde zatím pouze přepínání editačního módu, operace s clipboardem, nápovědu a otevření okna preferencí, které ovšem ještě neexistuje :-( v dolní části okna je stavový řádek a vše mezi ním a nástrojovou lištou je editační plocha pro projekty. Laplace používá globální clipboard, takže je možné přenášet části projektů mezi sebou, nebo třeba načítat vzorce připravené v jiných programech. AREXXový port programu je zatím nedokončený.
Uživateli je k dispozici dobře (ale zatím pouze anglicky) napsaná AmigaGuide nápověda. Pomocí příkazu lze také přímo v programu vypsat stručnou nebo rozsáhlejší on-line nápovědu ke zvolené funkci. Program má dále bublinovou nápovědu k ovládacím prvkům.

A teď ta matematika!
Měli bychom se konečně podívat, co nám program nabízí a umožňuje z hlediska našich důležitých matematických výpočtů.
Používat můžete operátory +, -, *, /, ^ (mocnina), vektorový součin, logický součet, součin a negaci, a konečně všechny relační operátory (porovnání). Program rozeznává proměnné (v tomto případě se s danou hodnotou hned počítá) a parametry (hodnoty mohou být přiřazeny, ale přesto se počítá symbolicky, výrazy s parametry lze dodatečně vyhodnotit pomocí funkce „eval“).
Objekty, s nimiž Laplace počítá, zahrnují čísla, logické hodnoty pravda (true) a nepravda (false), vektory a matice zadaného nebo předem neznámého rozměru, množiny (pro ně jsou k dispozici i některé statistické funkce), řetězce, funkce a rovnice. Pro komplexní čísla se používá naprosto běžný zápis, například 6+3i. Jestliže uživatel výrazy zadává pomocí celých čísel, bude Laplace pracovat se zlomky; výsledky jsou pak přesnější! Program je dokonce schopen některá desetinná čísla automaticky převádět na zlomky (0.5 na 1/2 apod.). Možnosti těchto převodů lze do značné míry měnit pomocí interních parametrů programu.
Poněkud netradičním objektem je asi rovnice. Zadává se pomocí klíčového slova „eq“, za nímž v závorce následuje levá a pravá strana rovnice, oddělené čárkou. S rovnicí pak můžete provádět ekvivalentní úpravy - zadané úpravy program provede s oběma stranami rovnice zároveň; ukažme si to na příkladu (hranatými závorkami je zde označena odezva programu):
...
3> S = eq(3,x+1)
[S: 3 = 1 + x]
4> S-1
[2=x]
...
Schopnosti podobných programů se často posuzují podle rozsahu dostupných matematických funkcí. Laplace kromě běžných skalárních funkcí (jako je exp, sin,...) nabízí mnoho funkcí vektorových (zjištění dimenze, n-tého prvku, poskládání vektorů do matice, výpočet normy, zadání vektoru funkčním předpisem pro n-tý prvek), maticových (např. řešení soustav lineárních rovnic Gaussovou eliminací, výpočet determinantu nebo stopy, inverze matice, transpozice, zjištění hodnosti matice, Gramm-Schidtova ortogonalizace matice atd.), funkce množinové (základní statistické funkce - počet prvků, průměr, standardní odchylky dat i průměru), již zmíněné řešení rovnic pomocí uživatelem zadávaných ekvivalentních úprav. Laplace umí také počítat parciální derivace a připravuje se funkce pro rozvoj do Taylorových řad (uživatel si ji však snadno naprogramuje sám).
Studenti často ohrožovaní úlohami fyzikálních praktik jistě ocení výpočet standardní chyby: stačí zadat všechny hodnoty s příslušnými chybami měření, Laplace vše spočítá a vrátí výsledek se správnou hodnotou jeho chyby.
Možnosti programu silně rozšiřují dostupné programovací nástroje syntaxe příkazů je podobná jako u jazyka C, kromě základních příkazů program umožňuje použití cyklů while a for, podmíněného příkazu if-else a procedur. Psaní strukturovaných programů je umožněno i při zachování řádkového principu programu - lze totiž přepínat editační mód mezi jedno a víceřádkovými uživatelskými vstupy.
Leckterý uživatel si pravděpodobně bude přát poměrně hezky vypadající výstup programu exportovat i do jiných programů, tedy do TeXu :-) Tohoto uživatele jistě potěší, že funkcí „export“ je možné libovolný výraz převést do formátu TeXu. Máto však drobný nedostatek: výstup funkce „export“ se stejně jako odezva na všechny ostatní příkazy vypíše na obrazovce a nelze jej žádným způsobem dostat jinam. Zatím jedinou rozumnou možností je nejprve zadat nějaký komentář (používají se komentáře jazyků C nebo C++), pokračovat příkazem „export“ pro příslušný výraz, případně posloupnost komentářů a „exportů“ libovolněkrát v projektu zopakovat a celý projekt uložit. V libovolném textovém editoru je pak možné vyhledat vždy potřebný komentář - hledaný TeXovský řetězec se najde za klíčovým slovem RESULT následujícího řádku.

Co na závěr?
Uvážíme-li, že jde o program, který autor považuje za nedokončený, musíme uznat, že jeho schopnosti jsou velmi rozsáhlé. K funkčnosti nemohu mít naprosto žádné výhrady, jako matematik jsem naprosto nadšena. Překvapilo mne pouze neuvěřitelně pomalé svislé rolování pomocí rolovacích šipek. Doufejme, že autor bude ve vývoji programu Laplace pokračovat - slíbeno je například kreslení grafů funkcí.

Laplace v0.8

Hodnocení: 7,0 z 10
Autor: B. Stegemann
Cena: -
Typ: mailware

+

možnost programování, vektorové a maticové operace, derivace, řešení rovnic

-

nedořešený export do TeXu, nástrojová lišta, nejsou grafy

Vytlačiť článok


© ATLANTIDA Publishing Všechna práva vyhrazena.
Žádna část nesmí být reprodukována nebo jinak šířena bez písemného svolení vydavatele.



Amiga na Vašem PC rychle, snadno a zdarma!


none

AMIGA REVIEW

57 ( 11-12 / 2000 )
56 ( 9-10 / 2000 )
55 ( 7-8 / 2000 )
54 ( 5-6 / 2000 )
53 ( 3-4 / 2000 )
52 ( 1-2 / 2000 )
 
51 ( 12 / 1999 )
50 ( 11 / 1999 )
49 ( 10 / 1999 )
48 ( 9 / 1999 )
46-47 ( 7-8 / 1999 )
45 ( 6 / 1999 )
44 ( 5 / 1999 )
43 ( 4 / 1999 )
42 ( 3 / 1999 )
41 ( 2 / 1999 )
40 ( 1 / 1999 )
 
39 ( 12 / 1998 )
38 ( 11 / 1998 )
37 ( 10 / 1998 )
36 ( 9 / 1998 )
35 ( x / 1998 )
34 ( x / 1998 )
33 ( 1-2 / 1998 )
 
32 ( 11-12 / 1997 )
31 ( 9-10 / 1997 )
30 ( 7-8 / 1997 )
29 ( 6 / 1997 )
28 ( 5 / 1997 )
27 ( 4 / 1997 )
26 ( 3 / 1997 )
25 ( 2 / 1997 )
24 ( 1 / 1997 )
 
23 ( 12 / 1996 )
22 ( 11 / 1996 )
21 ( 10 / 1996 )
20 ( 9 / 1996 )
18-19 ( 7-8 / 1996 )
17 ( 6 / 1996 )
16 ( 5 / 1996 )
15 ( 4 / 1996 )
14 ( 3 / 1996 )
13 ( 2 / 1996 )
12 ( 1 / 1996 )
 
11 ( 12 / 1995 )
10 ( 11 / 1995 )
9 ( 10 / 1995 )
8 ( 9 / 1995 )
7 ( 7 / 1995 )
6 ( 5 / 1995 )

ATLANTIDA NEWS

5 ( 3 / 1995 )
4 ( 1 / 1995 )
 
3 ( 11 / 1994 )
2 ( 9 / 1994 )
1 ( 7 / 1994 )
0 ( 5 / 1994 )