JAVA I SIMULACIJE U FIZICI

Za bolje razumevanje, opisivanje i predviđanje fizičkih pojava koriste se kompjuterske simulacije. Programski jezik Java zajedno sa bibliotekom OSP (Open Source Physics) pruža ljubiteljima fizike mogućnost za njihovu izradu. Jednostavne Java Simulacije(EJS) alat omogućava izradu kompjuterskih simulacija na lak način bez preteranog bavljenja samim programiranjem, omogućavajuči studentu da  pažnju preusmeri na samu fizičku pojavu. 
Projekat fizike otvorenog koda (OSP) je grupa fizičara i nastavnika koji rade na pružanju visokokvalitetnih računarskih nastavnih resursa kako bi se učenici uključili u fiziku, računarstvo i računarsko modeliranje. Više o OSP i alatu Easy Java Simulation pogledajte na web lokaciji: www.compadre.org/osp/

Alat EJS je namenjen fizičarima i svima onima koji žele da proučavaju fizičke pojave uz manje truda oko pisanja programskog koda, jer isti alat to omogućava. Alat omogućava kreiranje simulacija ili pomoću Java ili JavaScript programskog jezika. Ekstenzije fajlova kreiranih pomoću Java programskog jezika je .ejs, dok je ona izrađena pomoću JavaScript-a sa ekstenzijom .ejss.
Ovaj alat može biti namenjen u edukativne ili naučne svrhe, takođe može služiti kreiranju kompjuterskih igrica. Pogledajte neke od kompjuterskih simulacija na web sajtu kosi-hitac.onrender.com/

Primena u obrazovanju

Korišćenje simulacija u obrazovanju ima značajan uticaj na razumevanje složenih fizičkih pojava. Java i OSP (Open Source Physics) alati omogućavaju studentima da istražuju i vizualizuju fenomene kao što su kretanje projektila, talasi, elektromagnetizam, i mnoge druge. Korišćenjem simulacija, studenti mogu eksperimentisati sa različitim parametrima i odmah videti rezultate, što doprinosi boljem razumevanju teorijskih koncepata.
Na primer, simulacija kretanja tela pod uticajem gravitacije omogućava studentima da lako uoče kako različite početne brzine i uglovi lansiranja utiču na domet i putanju tela. Umesto da se oslanjaju isključivo na analitičke metode, studenti mogu koristiti simulacije da intuitivno povežu matematičke modele sa fizičkim pojavama koje proučavaju.
Istraživanja su pokazala da korišćenje ovakvih alata povećava angažovanost učenika, poboljšava razumevanje materijala, i omogućava bolje pamćenje kroz interaktivno učenje. OSP i EJS alate koriste mnoge obrazovne institucije širom sveta, ne samo u nastavi fizike, već i u računarstvu, matematici i inženjerstvu.

Tehnički detalji

Java JDK: Za rad sa EJS alatom, preporučuje se upotreba Java Development Kit (JDK) verzije 8 ili novije. JDK sadrži sve potrebne alate za kompajliranje, debagovanje i pokretanje Java aplikacija. Instalacija JDK-a je prvi korak pre nego što počnete sa pisanjem Java koda ili korišćenjem EJS alata. Možete preuzeti JDK sa zvanične Oracle stranice.
Koraci instalacije JDK-a:
  1. Preuzmite JDK instalacioni paket sa Oracle sajta.
  2. Pokrenite instalacioni fajl i pratite uputstva na ekranu.
  3. Nakon instalacije, dodajte bin direktorijum JDK-a u sistemsku promenljivu PATH kako bi Java alati bili dostupni iz komandne linije.
Pisanje Java koda: Prilikom pisanja Java koda za fizičke simulacije, često ćete raditi sa klasama i objektima koje omogućavaju modeliranje realnih pojava. Na primer, kreiranje simulacije kretanja tela u gravitacionom polju zahteva kreiranje klase Body koja definiše svojstva kao što su masa, brzina, i položaj tela, kao i metode koje izračunavaju njegovo kretanje.
Primer jednostavnog Java koda:
public class Body {
double mass;
double velocity;
double position;

public Body(double mass, double velocity, double position) {
this.mass = mass;
this.velocity = velocity;
this.position = position;
    }

public void updatePosition(double time) {
        position += velocity * time;
    }
}

​Ovaj kod pokazuje osnovne elemente za definisanje tela u simulaciji i jednostavnu metodu za ažuriranje njegovog položaja u vremenu.

OSP biblioteka

Projekat fizike otvorenog koda (OSP) je kolekcija alata i resursa osmišljenih da pomognu fizičarima, studentima i nastavnicima u kreiranju i korišćenju kompjuterskih simulacija za proučavanje fizičkih pojava. OSP biblioteka nudi širok spektar gotovih klasa i metoda koje omogućavaju jednostavno modeliranje i vizualizaciju fizičkih sistema, bez potrebe za pisanjem velikih količina koda od nule. 
Zanimljiv članak o OSP sa primerima možete pročitati : kosi-hitac.onrender.com/uvod_u_osp
Kako OSP Biblioteka RadiOSP biblioteka funkcioniše kao okvir koji omogućava korisnicima da brzo razviju interaktivne simulacije fizičkih sistema. Ona sadrži gotove komponente za crtanje grafika, rešavanje diferencijalnih jednačina, animaciju i mnoge druge funkcionalnosti koje su korisne u fizici. Korisnici mogu kombinovati ove komponente kako bi kreirali kompleksne simulacije koje precizno opisuju realne fizičke procese.
Šta OSP Biblioteka Nudi Zašto je OSP Koristan za FizičareOSP omogućava fizičarima da brzo i efikasno razviju simulacije koje se mogu koristiti za istraživanje, obrazovanje ili demonstracije. S obzirom na to da biblioteka sadrži već gotove komponente za često korišćene metode i procese u fizici, vreme potrebno za razvoj simulacije je značajno skraćeno. Ovo omogućava istraživačima i nastavnicima da se fokusiraju na samu fiziku, a ne na tehničke detalje programiranja.
Primeri Simulacija Više primera simulacija koje koriste OSP biblioteku možete pronaći na Compadre OSP sajtu.

Linkovi i resursi

Dodatni resursi za učenje i zajednice:
Ovi resursi će vam pomoći da proširite svoje znanje o Java programiranju, OSP alatima, i njihovoj primeni u naučnim i obrazovnim projektima. Ako imate bilo kakva pitanja ili trebate dodatnu pomoć, uvek se možete obratiti zajednicama ili pretražiti dostupnu dokumentaciju.

Uvod u programiranje i programski jezik JAVA

Java je programski jezik visokog nivoa koji je razvila firma "Sun Microsystems " 1995 godine. Imajući u vidu da program EJS generiše kod napisan u JAVI u ovom blogu biće opisani neki elementi ovog programskog jezika.
Da bi se izradila aplikacija u javi potrebno je:
Java JDK
To je platforma za JAVU. Sadrži softver i alate koji su vam potrebni za kompajliranje, otkrivanje grešaka(debagovanje) i pokretanje apleta i aplikacija napisanih pomoću Java programskog jezika. Sadrži biblioteku gotovih klasa API.

Put do aplikacije. Tokom razvoja aplikacije potrebno je kreirati:
Izvorni kod.    Instrukcije pisane u programskom jeziku JAVA i snimljene u .java fajlovima
Izvršni kod.  Instrukcije prevedene pomoću programskih prevodioca i snimljene u .class fajlovima
Klikom na run startujemo izvršni kod unutar razvojnog alata.

Alati za programiranje su programi koji pomažu programeru da razvija aplikaciju.
Neki od alata koji se koriste u Javi:
•NetBeans (SUN microsystem)
•Eclipse (IBM)
• IntellJ idea
• JDeveloper (Oracle)
• JBuilder (Borland) 
•XCode (Apple – samo za Mac OS X)
•JCreator



U sledećoj video lekciji pogledajte uvodni deo o programiranju i Java programskom jeziku, kao i izradu jednostavnih primera iz fizike pomoću alata Eclipse. Za taj alat može se reći sledeće:

Uvod u Java programiranje i razvojni alat eclipse-1 deo

Uvod u Java programiranje i razvojni alat eclipse-2 deo


Primeri iz fizike-pisanje aplikacija pomoću programskog alata Eclipse

 Primer 1.1- Srednja brzina. Varijanta za pojedinačan slučaj

​Automobil se krece od mesta A do mesta B brzinom v. Ako je rastojanje između mesta 130km i automobil u mesto B stigne posle 98 min vožnje odrediti srednju brzinu na pređenom putu.
​

Primer 1.2- Srednja brzina. Varijanta koja rešava grupu zadataka sa različitim ulazima

​​Automobil se krece od mesta A do mesta B brzinom v. Ako je rastojanje između mesta s[km] i automobil u mesto B stigne posle t min vožnje odrediti srednju brzinu na pređenom putu.

Rešenje


Primer 2- Susret dva automobila

​Iz dva grada na rastojanju D km krenu istovremeno dva automobila jedan drugom u susret krećući se brzinama V1[km/h] i V2[km/h]. Posle kog vremena i na kom mestu će se automobili sresti.

Rešenje


Sledeće
Klase i objekti sa primenom u fizici >|