Számítógép és számítástechnika használata matematikai modellezéshez Dr. Rácz Ervin egyetemi docens Óbudai Egyetem, Kandó Kálmán Villamosmérnöki Kar Villamosenergetikai Intézet
Tartalom Mathematica alapjai IDL alapjai Maple alapjai Matlab alapjai
A MATHEMATICA SZOFTVERCSOMAGRÓL
Mathematica http://www.wolfram.com/ kifejlesztője: 1988-ban Kezdetben: Stephen Wolfram Később: egyre bővülő csapata Ma: Wolfram Research cég Jelenlegi verzió: Mathematica 8. A szoftver feladata: A program a matematikai számítások elvégzésére alkalmas. A mai modern matematika eszközeinek és alkalmazásainak a számítőgép erejével történő összekapcsolása Használói: Kutatóintézetek kutatásban Egyetemek oktatásban (kutatás + szemléltetés) Cégek, vállalatok mérnöki feladatok megoldásában Matematikusok, fizikusok, mérnökök,...
Mathematica Koncepció: A szoftverbe kézikönyvek és táblázatok tucatjait programozták bele. A szoftverrel olyan problémák oldhatók meg könnyűszerrel, amelyek kézzel akár hónapokig tartanának vagy esetleg lehetetlenek volnának. Szerkezetének alapjai: Nagyon logikus és átgondolt bonyolult műveletek, problémák pl. integrálszámítás vagy differenciálegyenletek megoldása mindössze egy-egy parancs segítségével elvégezhetők Több mint félezer beépített parancs Jó programozhatóság Saját algoritmusok, rutinok készíthetősége és felvehetősége a programkönyvtárba a rutinok közé Nem egy lezárt rendszer, hanem egy olyan jól működő váz, amely az igényeknek megfelelően tetszés szerint bővíthető
Mathematica Speciális alkalmazásorinetáltság: Előre megírt segéd-programcsomagok mellékelve: Statisztikai, algebrai, geometriai, optika,..., differenciálegyenletek csomag Wolfram SystemModeler (modellezés az eredetihez való nagyfokú hasonlóságot megtartva komoly szimbolikus komponensekkel és számítási motorokkal) Wolfram Finance Platform (munkafolyamatok szinte határtalan számíthatósága: árazás, vélemény analizálás, kockázat analízis, vállalati rendszer fejlesztés, interaktív beszámolók) Wolfram webmathematica (dinamikus, interaktív számítások és szemléltetések hozzáadása saját weboldalakhoz; automatikus, személyreszabott eredmények minden bemeneti adathoz) Wolfram gridmathematica (a Mathematica beépített párhuzamosság-kezelő képességének kiterjesztése, parallel tasking több processzoron, klaszteren vagy hálón) Wolfram Workbench (kódszerkesztés, navigáció, projekt management) Minden csomag jól dokumentált, remek kézikönyvvel és helppel
Szakkönyv Saját kiadású szakkönyvek: A Journey into partial differential equations: Szerző: William O. Bray kiadó: Jones & Bartlett Learning Kiadás éve: 2012 ISBN: 9780763772567 (keménykötésű) 316 oldal A Mathematica legújabb verziója alapján
Differenciálegyenletek megoldása Dsolve: Parancs differenciálegyenletek megoldására Példa: Dsolve[y [x]==x, y[x], x] Dsolve[D[y[x],x]==x, y[x], x] Eredményől kapjuk: {{y[x] -> x^2/2 + C[1]}} NDsolve: Parancs differenciálegyenlet numerikus megoldására Példa: Ndsolve[{y [x] == 2x, y[0] == 0}, y[x], {x,-3,3}] Megoldás: InterpolatingFunction formátum hatalmas táblázat, ahol az egyenlet közelítő megoldásainak értékei találhatók meg.
AZ IDL SZOFTVERCSOMAGRÓL
IDL http://www.exelisvis.com kifejlesztője: Exelis Visual Information Solution, Inc., eredetileg Research Systems, Inc. IDL = Interactive Data Language Olyan program csoport ill. csomag, amelyet eredetileg NASA missziók (pl. Mariner, International Ultraviolet Explorer) adatainak analízisére, értékelésére fejlesztettek ki. A szoftver feladata: Eredetileg egy-, két- vagy háromdimenziós adatcsomagok analízise Használói: Kutatók, tudósok Mérnökök Kb. 150 000 legális, bejegyzett felhasználó használja világszerte
IDL Elérhető platformok: Linux, Unix/Solaris, Windows, Macintosh rendszerek Terminálokon, kijelzőkön, printereken is létezik Szoftverről: Feladatorientált rutinok program csomagja Olyan számítógép nyelvvé fejlődött, amelyet bármely számítógép használó megérthet Ötvözi és tartalmazza a magasszintű FORTRAN, C, C++ nyelvek programozhatóságát, sokoldalúságát és teljesítményét Az Interaktivitás Grafikus display Array-orientált (sor vagy vektor orientált) működés jellemzi. Jelenlegi aktuális utolsó verzió: IDL 8.1
IDL Jellemzők: Gyors válasz és közelítések (algoritmusok) Azonnali hozzáférés minden változóhoz (RAM-ban tárolva) Azonnali hozzáférés minden forráskódhoz Optimalizált vektor operációk Dinamikus változók és memória allokáció Igény szerinti összeállítás, befordítás, és rutinok linkelése, hívása Sokoldalú beépített nyomtató és rajzoló rutinok Interaktív napló vezetés Parancs hívás/szerkesztés Parancs szkriptek Adatstruktúrák Flexibilis paraméter specifikációk és szubrutin hívások Struktúrált szintaxis Teljes integráció a Windows rendszerhez Objektum-orientált programozás Matematikai és adat analízis, speciális interaktív rutinok
IDL Összehasonlítás a Mathematica-val, Maple-vel és a Matlab-bal: A Mathematika, Maple és Matlab nagyon alkalmas matematikai számításokra és matematikai struktúrák megjelenítésére A Mathematica és a Maple szimbolikus manipulációt és szimbolikus egyenlet megoldást is felkínál a felhasználóknak, míg az IDL nem. A Mathematica, Maple, és Matlab jobban a matematikai analízis és matematikai problémák megoldása felé orientáltak, míg az IDL az adat analízisekre optimalizált rendszer. IDL előnyei: Kép megjelenítések Kép analízis és kép kiértékelés Teljesen programozhatóság, magasszintű programnyelv, Számítások, adatkezelések, és megjelenítések egyszerre lehetségesek Felhasználó által írt rutinok rendszerbe integrálása Beépített naplózás Csillagászok részére specializált
IDL IDL alkalmazás csomagokról Létezik az interaktív IDL szoftverek egy óriási nagy, felhasználók által írt publikus könyvtára, ami jelenleg kb. 10 000 programot tartalmaz. Az IDL forráskódjai alkalmazás csomagok részére automatikusan elérhetők. IDL ideálisan alkalmas a web-en keresztül való szoftverek felhasználók általi kicserélésére Az egyes platformok közötti transzfer kódok magabiztosan használhatók és automatikusan elérhetők (pl. Solaris munkaállomásokról Macintosh laptopra való áttéréskor)
IDL IDL környezet: Dinamikusan létrehozhatók, módosíthatók, törölhetők adat elemek A memória kiterjeszthető, ameddig szükésges Tetszőleges változó nevek adhatók, a változó azonnal vektorizálódik Remek help!! Fő programok vagy procedurák, szubrutinok ill. szkriptek írhatók. A szubrutinok a fő programból meghívhatók. (hurkok, tömbök, stb...) Reprodukálhatóság (menthetőség, pontosság) Újrahívás-központú mini scriptek használata
A MAPLE SZOFTVERCSOMAGRÓL
MAPLE http://www.maplesoft.com/ A Maple: Egy hatékony metematikai program személyi számítógépekre, melynek segítségével algebrai és formális matematikai műveletek végezhetőek el. Képes továbbá numerikus analízis feladatok elvégzésére és az eredmények sokoldalú grafikus megjelenítésére. A Maple munkafelülete alkalmas technikai dokumentációk készítésére, munkafelületén szöveg, matematikai kifejezések és grafikonok egyaránt megférnek. Nagy erőssége az egyenletmegoldó képesség, és az, hogy jól kezeli a formális matematikai számításokat.
MAPLE Történet: 1980, Waterloo-i Egyetem (Kanada) A kutatók kipróbálták, és rengeteg különböző ötlettel álltak elő, hogy létrehozzanak egy folyamatosan fejlődő rendszert. Bemutatva rendszerként: 1982-ben egy konferencián 1983: több mint 50 egyetemen használták Waterloo Maple, Inc. Alapítása 1989: első grafikus kezelőfelület 1999: Maple 6 (numerikus csomaggal) 2003: Maple 9 (jelenlegi interfésszel, JAVA alapon) 2008: Maple 12 2009: Maple 13 jelenleg: Maple 16
Használatáról: MAPLE Egyszerű számítások sorokban Parancsok - sorokban Ciklikus és feltételes utasítások tömbökben Procedúrák tömbökben Előre megírt procedúrák és csomagok vannak, de ezek autmatikusan nem töltődnek be, hanem a használatkor kell meghívni őket Csomagok: LinearAlgebra lineáris algebra Combinat - kombinatorika Networks gráfelmélet Numtheory számelmélet Az egyéni programok elmenthetők, újra betölthetők és továbbfejleszthetők Kiterjesztések:.mws,.mpl