Sunteți pe pagina 1din 17

Easy Java Simulations

Un program util pentru a crea simulri tiinifice n Java (realizat n 2005 de F.Esquembre)
Francisco Esquembre, Univ. de Murcia, Spania Wolfgang Christian, Davidson College,USA

Easy Java Simulations se bazeaz pe biblioteca OpenSourcePhysics (W.Christian)

Structura programului Ejs.


Interfaa Ejs.
Are o interfa cu utilizatorul

foarte simpl.

Structurez simularea n Model i

View, la care adaug o parte


introductiv care descrie simularea.

Fiecare parte are un editor dedicat care ajut la crearea simulrii.

Structura programului Ejs.


Interfaa pentru Introduction.
Are un editor WYSIWYG pentru paginile HTML ale simulrii. Fiecare din paginile de introducere devine o pagin HTML cnd este generat simularea. Este inclus i o pagin HTML n care simularea funcioneaz ca

applet Java

Structura programului Ejs.


Interfaa pentru Model Variables.
Interfaa modelului asigur o

procedur de iniializare a
variabilelor de sus n jos. n prima coloan sunt definite variabilele, n a doua valorile iniiale, n a treia tipul lor. n a patra coloan se definete dimensiunea irurilor.

Structura programului Ejs.


Interfaa pentru Model Initialization.
Se pot scrie pagini suplimentare

de cod Java pentru iniializarea


modelului. Utilizatorul trebuie s scrie un cod Java valid (sintaxa este practic identic cu cea a limbajului C) dar numai ca s exprime algoritmi. Editorul asigur un ajutor specializat.

Structura programului Ejs.


Interfaa Model Evolution.
Evoluia se poate descrie cu pagini de cod Java obinuit (la fel ca la iniializare). Sau cu un editor dedicat ODE (ecuaii difereniale ordinare). Editorul genereaz automat codul pentru diferii algoritmi (Euler, Runge-Kutta etc.) din

ODE prezentate corespund cderii libere.

biblioteca OSP
Editorul suport iruri i evenimente.

Observai controlerul cae specific viteza de animaie a simulrii (fps: frame-uri / secund).

Structura programului Ejs.


Interfaa pentru Model Events.
Un eveniment definete o

condiie asupra variabilelor de


stare a unei ODE. Sistemul detecteaz i gsete momentul exact al evenimentului i aplic o aciune (de ex. la ciocnirea cu un perete viteza i schimb semnul). Toate acestea sunt generate automat

Structura programului Ejs.


Interfaa pentru Model Constraints.
Constrngerile exprim relaii

suplimentare ntre variabile.


Aceste relaii trebuie asigurate i n momentul interaciunii cu utilizatorul. Acestea sunt introduse prin pagini de cod Java.

Structura programului Ejs.


Interfaa pentru Model Custom.
Paginile de cod Java specializate

conin metode (subrutine i


funcii) suplimentare pentru codul vostru. Acest cod trebuie apoi utilizat explicit n alt parte a programuui.

Cu aceasta am terminat ABeCedarul descrierii modelului. Folosind codul Modelului, EJS genereaz ntregul cod care are de-a face cu multitasking-ul. Structura este simpl, dei modelul poate fi fcut orict de complex.

Structura programului Ejs.


Interfaa pentru View Bulding it.
Crearea lui View const n construirea unei structurii de tip arbore a elementelor view. Fiecare element view este ca o pies LEGO specializat pentru o

anumit vizualizare sau aciune


de introducere a variabilelor. Elementele sunt preluate din

lista din dreapta printr-o


procedur simpl de apas-icreaz. Arborele din View corespunde vederii din dreapta

Structura programului Ejs.


Interfaa pentru View Building it.
Crearea lui View const n constgruirea unei structurii de tip arbore a elementelor view. Fiecare element view este ca o pies LEGO specializat pentru o

anumit vizualizare sau aciune


de introducere a variabilelor. Elementele sunt preluate din

lista din dreapta printr-o


procedur simpl de apas-icreaz.

Structura programului Ejs.


Interfaa pentru View - Properties.
Elementele view pot fi particularizate editnd

proprietile lor.
Proprietatea poate lua o valoare particular constant, dar de asemenea poate fi legat de o

variabil din model.


Aceasta asigur o conexiune dubl care transform simularea ntr-o vizualizare dinamic, interactiv.

Structura programului Ejs.


Interfaa pentru View - Properties.
Elementele view pot fi particularizate editnd

proprietile lor.
Proprietatea poate lua o valoare particular constant, dar de asemenea

poate fi legat de o
variabil din model. Aceasta asigur o conexiune dubl care transform simularea ntr-o vizualizare dinamic, interactiv.

Structura programului Ejs.


Rularea simulrii.
i asta este totul! Apsnd butonul Run simularea

este complet.
Simularea poate fi rulat ca o aplicaie independent...

Structura programului Ejs.


Rularea simulrii.
i asta este totul! Apsnd butonul Run simularea

este complet.
Simularea poate fi rulat ca o aplicaie independent.

Sau ca applet Java, ntr-o pagin


HTML ...

Structura programului Ejs.


Rularea simulrii.
i asta este totul! Apsnd butonul Run simularea

este complet.
Simularea poate fi rulat ca o aplicaie independent.

Sau ca applet Java, ntr-o pagin


HTML ... Sau n consola Ejs, care-i

permite s-i vezi secretele!

Prezentarea unor exemple Ejs


Este momentul s prezentm cteva exemple!

S-ar putea să vă placă și