Esittely latautuu. Ole hyvä ja odota

Esittely latautuu. Ole hyvä ja odota

1 MODSIM III. 2 MODSIM III www.caciasl.com/modsim.html Valmistaja: CACI Products Company Ominaisuuksia: –yleiskäyttöinen –modulaarinen –lohkorakenteinen.

Samankaltaiset esitykset


Esitys aiheesta: "1 MODSIM III. 2 MODSIM III www.caciasl.com/modsim.html Valmistaja: CACI Products Company Ominaisuuksia: –yleiskäyttöinen –modulaarinen –lohkorakenteinen."— Esityksen transkriptio:

1 1 MODSIM III

2 2 MODSIM III www.caciasl.com/modsim.html Valmistaja: CACI Products Company Ominaisuuksia: –yleiskäyttöinen –modulaarinen –lohkorakenteinen –oliopohjainen –diskreettiaikaiseen simulointiin –mahdollisuus tehdä animoitua grafiikkaa Simgraphics II -työkalulla

3 3 MODSIM III: Workbench

4 4 “Perusyksikkönä” projektitiedosto, joka sisältää mm. –ohjelman nimen –sijainnin –mitä tiedostoja tarvitaan ajokelpoisen ohjelman tekemiseen Projektitiedosto nimeltään *.prj Vain yksi projekti voi olla kerrallaan auki

5 5 MODSIM III: Uusi projekti Luodaan projektille nimi, main module ja oma hakemisto

6 6 MODSIM III SimDraw

7 7 MODSIM III Modulit Modsim ohjelmassa on kahdenlaisia moduleja: –Päämoduli, 1 kpl/projekti Tiedostonimi: Moma.mod –Kirjastomodulit Definition Modules –Tiedostonimet: Doma.mod Implementation Modules –Tiedostonimet: Ioma.mod

8 8 MODSIM III Standardimodulit OSMod : –Funktioita yms. käyttöjärjestelmän palveluiden hyödyntämiseen SimMod: –Simulointiin tarvittavia luokkia ja funktioita RandMod: –Satunnaislukuihin liittyviä luokkia ja funktioita GrpMod: –esim. jono- ja pinoluokkia IOMod: –Input/Output luokkia ja funktioita

9 9 MODSIM III Standardimodulit UtilMod : –Erilaisia yleiskäyttöisiä funktioita MathMod: –Matemaattisia funktioita Debug: –Funktioita debuggauksen helpottamiseen StatMod: –Luokkia simuloinnin statistiikan seuraamiseen ResMod: –Sisältää sovelluksen resurssien käytön selvittämisessä käytettäviä luokkia

10 10 MODSIM III Ohjelman rakenne MAIN MODULE nimi; FROM kirjasto IMPORT jotakin; TYPE esim. objektien määrittelyt VAR muuttujat CONST vakiot Objektien metodien implementointi Aliohjelmat BEGIN pääohjelma END MODULE.

11 11 MODSIM III Ohjelmointikielenä Yksinkertainen modsim ohjelma: MAIN MODULE Sample1; VAR sum,number: REAL; count : INTEGER; BEGIN OUTPUT(“Anna pos. lukuja”); INPUT(number); WHILE number>=0.0 INC(count); sum:=sum+number; INPUT(number); END WHILE; OUTPUT(“Keskiarvo: “, sum/FLOAT(count)); END MODULE. Modsim on case sensitive

12 12 MODSIM III Ohjelmointikielenä VARATUT SANAT ISOLLA (BEGIN, IF,…) Lohkorakenteinen i.e. END päättää lohkon –esim. IF…END IF –tai FOR…END FOR Funktioiden parametrien “suunta” ilmoitetaan esittelyssä ja se voi olla –IN, OUT, tai INOUT –Esim. PROCEDURE f(IN a:REAL;OUT c:REAL);

13 13 MODSIM III Ohjelmointikielenä Kahdenlaisia proseduureja PROCEDURE Hyp1(IN a,b:REAL;OUT c:REAL); BEGIN C:=SQRT(a*a+b*b); END PROCEDURE; PROCEDURE Hyp2(IN a,b:REAL) : REAL; BEGIN RETURN SQRT(a*a+b*b); END PROCEDURE;

14 14 MODSIM III Ohjelmointikielenä Tietotyypit: –INTEGER, REAL, CHAR, BOOLEAN –STRING –ARRAY, RECORD –FIXED ARRAY, FIXED RECORD –Monitoroitu tyyppi –Lueteltu tyyppi –Subrange tyyppi

15 15 MODSIM III: Kontrollirakenteet IF Boolean expression1 lauseet ELSIF Boolean expression2 lauseet END IF; CASE muuttuja WHEN jotain1:lauseet1 WHEN jotain2:lauseet2 OTHERWISE lauseet END CASE;

16 16 MODSIM III: Kontrollirakenteet LOOP lauseet END LOOP; WHILE Boolean expression lauseet END WHILE; REPEAT lauseet UNTIL Boolean expression;

17 17 MODSIM III: Kontrollirakenteet FOR i:=expr TO|DOWNTO expr [BY expr] lauseet END FOR; FOREACH object IN group [REVERSED] lauseet END FOREACH; EXIT poistuminen silmukasta, toimii kaikissa silmukoissa WAIT reason [lauseet] [ON INTERRUPT] lauseet END WAIT;

18 18 MODSIM III: Kirjastomodulien käyttö Modsim ohjelma voi koostua pelkästä Main modulesta Suuremmat ohjelmat järkevää jakaa pienempiin paloihin Kirjastomoduli=Definition moduli + Implementation moduli –Definition modulissa ESITELLÄÄN vakioita, tyyppejä, muuttujia, aliohjelmia, metodeja,... –Implementation moduliin metodien ja aliohjelmien varsinainen koodi

19 19 MODSIM III: Kirjastomodulien käyttö Esim. MAIN MODULE Sample2;DEFINITION MODULE TextLib; FROM TextLib IMPORT Reverse; PROCEDURE Reverse(INOUT str:STRING); VAREND MODULE. someText:STRING; BEGIN OUTPUT(“Enter String: “); INPUT(someText); Reverse(someText); OUTPUT(“Reversed string”); OUTPUT(someText); END MODULE. IMPLEMENTATION MODULE TextLib; PROCEDURE Reverse(INOUT str:STRING); VAR k:INTEGER; tempStr:STRING; BEGIN FOR k:=STRLEN(str) DOWNTO 1 tempStr:=tempStr+SUBSTR(k,k,str); END FOR; str:=tempStr; END PROCEDURE; END MODULE.

20 20 MODSIM III: Olio-ohjelmointi Olio = tietokentät + metodit Tietokentät määrittelevät olion tilan ajanhetkellä t ja metodit kuvaavat miten olio käyttäytyy Olion tietokenttien arvoja voi muuttaa vain olion omat metodit – Helpottaa debuggausta ja ylläpitoa Muut oliot yms. voivat kysyä olion tietokenttien arvoja tai pyytää oliota suorittamaan jokin sen metodeista

21 21 MODSIM III: Olio-ohjelmointi Luokan esittelyt modulin TYPE-osaan TYPE Luokka = OBJECT Tietojäsenet; ASK Metodi(IN input:REAL); END OBJECT; Metodien implementointi OBJECT Luokka ASK METHOD Metodi(IN input:REAL); BEGIN DoSomething; END METHOD; END OBJECT;

22 22 MODSIM III: Olio-ohjelmointi Uuden olion luominen: NEW(olio); Olion tuhoaminen: DISPOSE(olio); Olion ObjInit-metodi (jos olemassa) suoritetaan NEW:n yhteydessä Olion ObjTerminate-metodi (jos olemassa) suoritetaan DISPOSEn yhteydessä

23 23 MODSIM III: Olio-ohjelmointi Kahdenlaisia metodeja –TELL –ASK ASK-metodit voivat palauttaa yhden arvon TELL -metodeilla ei saa olla OUT tai INOUT parametreja Vain TELL metodeilla saadaan simulointi- aikaa kulumaan !

24 24 MODSIM III: Olio-ohjelmointi Metodien käyttö IF ASK lentokone position<>HomeBase TELL lentokone TO ProceedTo(HomeBase); ELSE OUTPUT(“Already at home base”); END IF;

25 25 MODSIM III: Olio-ohjelmointi Periytymisesim. CarObject = OBJECT(VehicleObject) OmatAttribuutit TELL METHOD tankkaa(IN muuttuja:INTEGER); END OBJECT; Override -esim. PolkuAutoObject = OBJECT(CarObject) OmatAttribuutit OVERRIDE TELL METHOD tankkaa(IN muuttuja:INTEGER); END OBJECT;

26 26 MODSIM III Simulointi Aktiviteetteja voidaan toteuttaa TELL- metodeissa WAIT:ia hyväksi käyttäen esim. –WAIT DURATION ranGen.Exponential(mean); Delayed TELL calls –TELL truck TO ProceedTo(dest) IN 20.0; SimMod –StartSimulation, SimTime,…


Lataa ppt "1 MODSIM III. 2 MODSIM III www.caciasl.com/modsim.html Valmistaja: CACI Products Company Ominaisuuksia: –yleiskäyttöinen –modulaarinen –lohkorakenteinen."

Samankaltaiset esitykset


Iklan oleh Google