MathSource
Zejména ve vědecko-technické praxi se často vyskytují problémy, na něž univerzální programy nestačí, a je pak nutno se uchýlit k jejich časově náročnému “vlastnoručnímu” programování. Přitom tutéž nebo podobnou úlohu už nejspíš někdy někde řešil někdo jiný – jen mít jeho práci k dispozici. Šťastní majitelé programu Mathematica takovou možnost mají. Jmenuje se MathSource.

Neprogramujte naprogramované!

MathSource je sada zdrojových programů, které lze využít v prostředí Mathematica společnosti Wolfram Research. Tato sada je dodávána na CD – a to bez tištěné dokumentace, která je v podstatě zbytečná; při pestrosti programů a jejich postupném přibývání by to totiž bylo neefektivní a redundantní. Vlastní CD je rozdělen do pěti oblastí: Applications, Enhancements, Publications, General a WhatsNew.
Nejdůležitější z nich je adresář Applications, kde jsou umístěny všechny programy včetně popisu. Programy jsou číselně označeny a v adresáři je soubor, který obsahuje seznam a popis těchto programů. Disk je možné nejen zakoupit, ale také stáhnout z internetu (z adresy www.mathsource.com). Vzhledem k přijatelné pořizovací ceně a časově náročnému stahování z internetu je ovšem – pokud nejde například jen o jeden konkrétní program – koupě výhodnější.

Applications
Jak už bylo řečeno, tento adresář obsahuje programy pro volné použití. Pokrývají poměrně široké spektrum aplikací – jde celkem o 17 tematických okruhů, z nichž každý zahrnuje řadu konkrétních programů. Ty se dají použít jak přímo k výpočtu, tak i ke studiu, jakým způsobem je daný program, funkce atd. vystavěn. Zmiňme zde alespoň některé z nejzajímavějších okruhů:

Astronomy
Zde se nachází celkem 11 programů s astronomickou či kosmonautickou tematikou. Je tu např. výpočet s animací dopadu komety P/Shoemaker-Levy 9, která narazila 22. 6. 1994 na povrch Jupitera (obr. 1). Najdete tu i výpočet precese rotujícího tělesa, lunární libraci, let a trajektorii sondy Galileo (letící k Jupiteru) či sondy Pathfinder (s prvky umělé inteligence), která navštívila Mars. Astronoma jistě zaujmou i další zajímavé aplikace, jako je výpočet tzv. Rocheovy meze u vícehvězdných systémů, kde dochází k přeléváni hmoty z jedné hvězdy do druhé, a několik dalších.

Audio
Tento okruh představuje zajímavý osmidílný komplet, který obsahuje průvodce skládáním hudby v prostředí Mathematica. Jeho zvláštností je to, že nebyl napsán programátory, ale hudebníky, což mu nesporně dodává na kvalitě. Dále zde lze nalézt použití Fourierovy (přímé i inverzní) transformace k vytváření různých zvuků a znělek. Zajímavým programem je též “Mathematics of Piano Tuning”, který demonstruje ladění a hru na klavír.

Chemistry
Zde se nachází celá knihovna programů, které umožňují kresbu i animaci molekul ve 3D (obr. 2). Další programy jsou zaměřeny na výpočet PH, práci s Debyeho-Hueckelyho modelem aj.

Complexity
Tato oblast je poměrně pestrá. Je možné zde nalézt programy pro práci s konečnými automaty, výpočet Lorenzova atraktoru (Lorenz byl objevitel tzv. chaotického atraktoru při studiu dynamiky počasí; obr. 3), genetické algoritmy, které lze použít na optimalizaci mnoha problémů (nastavení PID regulátoru, nastavení vah v neuronové síti atd.). Jsou zde i buněčné automaty, fraktály a další.

ComputerScience
V tomto okruhu našla místo např. ukázka šifrování pomocí algoritmu RSA, algoritmus simulovaného žíhání (lze použít např. při nastavování vah v neuronové síti), neuronové sítě učené algoritmem Backpropagation (obr. 4), heuristické vyhledávací techniky a mnoho dalších zajímavých programů.

Engineering
Tento rozsáhlý aplikační okruh se skládá ze tří dalších s tématy řízení, elektrotechnika a strojní inženýrství. V oblasti řízení lze nalézt např. NONACODE, což je softwarový balík pro analýzu a návrh nelineárních adaptivních řídicích systémů s diferenciálně-geometrickým přístupem. Zde je také balík programů pro návrh řídicích zákonů pro daný systém umožňující generovat soubor typu MEX, který lze použít v prostředí Matlab. Dále jsou tu programy pro výpočet stability u nelineárních systémů a pro identifikaci modelu systému z naměřených dat.
Oblast elektrotechniky obsahuje bohatou škálu programů pro zpracování signálů, pro práci s elektromagnetickými a elektrostatickými poli (obr. 5), pro kreslení Smithova grafu aj. Je tu také podpora návrhu (obr. 6) a analýzy elektronických obvodů. V oblasti strojního inženýrství je možné získat například program pro lokalizaci a sledování zvolených bodů v mechanickém systému, pro řešení problémů z teoretické mechaniky a další.
Adresář Applications samozřejmě obsahuje ještě další okruhy, které jsou propracovány stejně dobře jako již zmíněné oblasti. Zájemci o bližší podrobnosti je naleznou na výše zmíněné webové stránce.

Enhancements
Zde se nacházejí programy pro podporu, respektive rozšíření již existujících funkcí či programů. Patří sem i MathLink, což je program, který umožňuje programy uživatelsky napsané v jazyku C připojit k vlastnímu programu Mathematica. Ty se pak v jeho prostředí chovají jako jeho vlastní funkce. Najdeme tu jak programy pro podporu systémových oblastí matematiky, tak i pro oblasti, jako je grafika či geometrie. Není bez zajímavosti, že jsou zde obsaženy i programy pro obousměrné propojení s programem Matlab aj.

Publications 
V tomto adresáři se nacházejí publikace různého typu. Je zde poměrně rozsáhlá bibliografie o programu Mathematica jako takovém (např. kompletní seznam 174 knih ve 14 jazycích) a programová podpora (tj. zdrojové kódy z dané knihy) některých již vydaných knih, jako je kniha o neuronových sítích od Jamese 
A. Freemana a dalších. Takto podporovaných knih je zde celkem 17 – většinou se jedná o publikace, které při koupi neobsahují žádné médium. Kromě toho jsou zde k dispozici také vybrané příspěvky z časopisu “Mathematica Journal”.

General
Složka General shrnuje pestrou směs informací – administrativními počínaje (jak kontaktovat firmu) až po odborné, jako je např. program MathReader, který umožní spouštění uživatelských aplikací v jazyce Mathematica na jiných počítačích. Jsou zde také různé utility i průvodci příbuznou problematikou, např. programováním, grafikou či numerikou.

WhatsNew
Oproti očekávání zde uživatel nalezne pestrou směsici různých programů a informací týkajících se programu Mathematica. Je tu tvorba uměleckých obrázků, programy pro výpočet “globální optimalizace” a další. Je mi trochu záhadou, proč nebyly tyto programy zařazeny do složky Applications. Nejspíš jde o programy a informace přijaté po určitém datu, a tudíž mechanicky zařazené do adresáře nazvaného “co je nového”.

Závěr
Co dodat? Snad jen to, že MathSource je “jen pro silné jedince”, protože uživatele zavalí (v tom nejlepším slova smyslu) množstvím zajímavých programů a informací. Myslím si, že tento CD je skvělým doplňkem programu Mathematica a neměl by chybět žádnému skutečnému uživateli tohoto systému.
Ivan Zelinka