Program in navodila sta strokovno pregledala dr. Andrej Likar in
mag. Seta Oblak, jezikovno pa Mija Longyka
KAZALO
NAVODILA ZA UPORABO PROGRAMA DYNAMIC 48
1. UVOD ...................................................... 5
2. GLAVNI MENU ............................................... 5
3. SILA, MASA ................................................ 6
3.1. M - podajanje mase ...................................... 6
3.2. K - podajanje sile v komponentah ........................ 6
3.3. P - podajanje sile s parametri .......................... 7
3.4. V - vrnitev .............................................11
4. ZAČETNI PDGOJI ........................................... 11
5. NUMERIČNA METODA ......................................... 11
6. OKNO GLAVNE SLIKE ........................................ 12
6.1. D - definicija novega okna ............................. 12
6.2. B - brisanje glavne slike .............................. 12
6.3. S - opremljanje slike s skalo .......................... 13
6.4. V - vrnitev ............................................ 13
7. MANIPULACIJA S SLIKAMI ................................... 13
7.1. P - prikaži shranjeno sliko ............................ 13
7.2. S - shrani glavno sliko v banko ........................ 13
7.3. N - naloži shranjeno sliko iz banke .................... 13
7.4. T - natisni sliko (ZX PRINTER) ......................... 13
7.5. E - natisni sliko (matrični t.) ........................ 13
7.6. K - shrani sliko na kaseto ............................. 14
7.7. L - naloži sliko s kasete .............................. 14
7.8. M - shrani sliko na microdrivu ......................... 14
7.9. B - naloži sliko z microdriva .......................... 14
7.10. V - vrnitev ........................................... 14
8. PRIKAZ GLAVNE SLIKE ...................................... 14
9. SIMULACIJA ............................................... 14
9.1. Grafični način ......................................... 14
9.2. Numerični način ........................................ 15
9.3. Tiskanje na tiskalnik .................................. 15
10. PRILAGODITVE PROGRAMA ................................... 15
MATEMATIČNO-FIZIKALNI DODATEK
1. DRUGA NALOGA DINAMIKE .................................... 16
2. NUMERIČNE METODE ZA REŠEVANJE ENAČBE 1. REDA ............. 17
2.1. modificirana Eulerjeva metoda .......................... 17
2.2. metoda Runge-Kutta ..................................... 17
3. REŠEVANJE SISTEMA DIFERENCIALNIH ENAČB 1. REDA ........... 18
4. REŠEVANJE DIFERENCIALNE ENAČBE VIŠJEGA REDA .............. 18
5. REŠEVANJE SISTEMA DVEH DIFERENCIALNIH ENAČB 2. REDA ...... 18
5.1. Rutina z modificirano Eulerjevo metodo ................. 19
5.2. Rutina z metodo Runge-Kutta ............................ 19
PRIMERI PODATKOV ZA DINAMICNO SIMULACIJO
1. NIHANJA .................................................. 20
1.1. Lastna nihanja ......................................... 20
1.2. Dušena nihanja ......................................... 21
1.3. Vsiljeno nihanje ....................................... 21
1.4. Sestavljeno nihanje .................................... 21
2. METI ..................................................... 22
2.1. Meti brez zračnega upora ............................... 22
2.2. Meti z upoštevanjem zračnega upora ..................... 22
3. GIBANJA V GRAVITACIJSKEM POLJU ........................... 23
4. GIBANJA V STATIČNEM ELEKTRIČNEM POLJU .................... 23
5. GIBANJA V HOMOGENIH ELEKTRIČNIH IN MAGNETNIH POLJIH ...... 24
NAVODILA ZA UPORABO PROGRAMA DYNAMIC 48
1. UVOD
================================================================
Program DYNAMIC 48 je izdelan za uporabo na mikroračunalniku
ZX Spectrum 48K in omogoča simulacijo najrazličnejših ravninskih
gibanj masne točke pod vplivom sile. Zasnovan je tako, da sami
definiramo ravninsko silo, ki deluje na telo, in začetne pogoje.
Spekter gibanj, ki jih s programom lahko simuliramo, je zelo
širok. Tako na primer program omogoča simulacijo:
- lastnih, dušenih in vsiljenih nihanj
- preprostih sestavljenih nihanj (Lissajousovih figur)
- vseh vrst metov (navpičnih, vodoravnih, poševnih)
- gibanj teles ob uporu sredstva (balističnih gibanj)
- gibanj teles v gravitacijskih poljih (Keplerjevih gibanj)
- gibanj delcev v električnih in magnetnih poljih (gibanj
elektronov v katodnih ceveh, Rutherfordovega poskusa
sipanja delcev al+a na atomskem jedru)
- gibanj teles v drugih poljih (gravitacijskem polju več
zvezd, električnem in magnetnem polju okrog vodnikov...)
To so le najznačilnejši pojavi, ni pa nikakršne omejitve, da ne
bi bilo mogoče simulirati ravninskega gibanja pod vplivom kake
druge sile, saj je le-ta lahko funkcija mase, časa, lege in
hitrosti. Primeri podatkov za simulacijo nekaterih pojavov so
navedeni v dodatku.
V programu je posebej poudarjena učinkovita interpretacija
dobljenih rezultatov, zato se količine, nastopajoče pri gibanju,
lahko posredujejo v grafični oziroma numerični obliki. Podajanje
podatkov, nujnih za simulacijo, je, kjer je to mogoče,
poenostavljeno. Na voljo sta dve numerični metodi za simulacijo,
med katerima lahko uporabnik izbira glede na potrebe. Program
prav tako omogoča prekrivanje slik, njihovo shranjevanje v
pomnilniku (3 slike v banki, 1 glavna za delo), lahko pa jih
tudi tiskamo, shranjujemo na kaseti, microdrivu in jih po
potrebi zopet nalagamo.
2. GLAVNI MENU
================================================================
Program naložimo s kasete z LOAD "DYNAMIC 48". Program se po
končanem nalaganju sam požene in izpiše začetno sporočilo. Ce se
pri izvajanju programa pojavi kakršnakoli napaka (prekinitev,
napačno podajanje podatkov, preveliko število ipd.) se izvajanje
nadaljuje v tistem delu programa, ki je po hierarhiji nad delom,
v katerem je prišlo do napake. Ce se napaka pojavi v glavnem
menuju, se bo program pognal od začetka, s tem pa bodo
izgubljeni vsi poprej dobljeni podatki in slike.
Glavni menu je zasnovan tako, da omogoča celovit pregled nad
podatki, ki določajo gibanje telesa ter slikovno predstavitev
tira telesa. Sestavlja ga 7 polj, vsako je opremljeno z barvnim
napisom, ki označuje podatke v polju oziroma možnost, ki jo
lahko izberemo - to storimo tako, da pritisnemo tipko, ki je
zapisana na levi strani. vsakega napisa. Vse spreminjanje
podatkov teče hierarhično, torej spremenimo le podatek, ki nam
ne ustreza, in ne vseh podatkov, ki so potrebni za simulacijo.
Če na kakem mestu želimo, da podatek ostane tak, kot je bil,
pritisnemo le tipko ENTER in tako bo obveljala stara oblika
podatka. Oglejmo si posamezne možnosti glavnega menuja.
3. SILA, MASA
================================================================
To možnost izberemo s pritiskom na tipko F, omogoča pa nam
spreminjanje mase telesa ter sile, ki nanj deluje (trenutne
definicije mase ter komponent sile so zapisane v polju pod
napisom). Po izbiri te možnosti se izvajanje nadaljuje v
stranskem menuju, v katerem spet pritisnemo tipko, ki označuje
posamezno možnost. Te so:
3.1. M - podajanje mase
Ta možnost omogoča definicijo funkcije, po kateri se
spreminja masa telesa. Funkcijo zapišemo v narekovaje in na
koncu pritisnemo ENTER. Za definicijo funkcije lahko uporabljamo
tele spremenljivke:
t ... čas
x,y ... koordinati lege telesa
vx,vy ... komponenti hitrosti telesa
Te spremenljivke lahko kombiniramo skupaj z numeričnimi
konstantami in loqičnimi izrazi v poljuben izraz, pogoj pa je,
da je izraz veljaven v ZX Basicu (glej Sinclairov priročnik).
Masa bo praktično pri vseh pojavih kar konstantna, torej
podana s stevilom.
Primer 1: Začetna masa rakete je 100000 kg, na sekundo pa izgori
masa 500 kg, ki rabi za pogon rakete. Koristni tovor, ki ne
izgori, ima maso 1500 kg. Z uporabo logičnega izraza, ki dopušča
zmanjševanje mase le do trenutka, ko v raketi ni več goriva (to
je 197 5), lahko odvisnost mase od časa zapišemo:
m = "(t}197)*(100000-t*500)+(t<=197)*1500"
Pri tem sta (t>197) in (t>=197) logična izraza, ki sta enaka 1.
če sta resnična, oziroma 0, če sta neresnična.
3.2. H - podajanje sile v komponentah
Ker je podajanje sile ena izmed najtežjih nalog pri
simulaciji pojava, sta na voljo dva načina za podajanje. Pri tem
silo definiramo tako, da zapišemo obe komponenti vektorja sile v
pravokotnem koordinatnem sistemu (komponenti sta Fx in Fy). Dbe
komponenti lahko definiramo kot funkciji mase, ćasa, lege in
hitrosti. Glede podajanja funkcij velja enako kot pri točki
3.1., vendar lahko pri definiciji uporabljamo tudi spremenljivko
m, ki pomeni maso.
Primer 2: Na telo z maso m, ki se giblje v graaitacijskem polju
Zemlje, postavljene v izhodišče koordinatnega sistema, deluje
sila:
F = -kmr/r3
pri čemer je k konstanta, določena kot produkt gravitacijske
konstante in mase Zemlje (4*101*m3s*2), F je vektor sile
in r vektor od središča Zemlje do telesa. V programu bi silo v
komponentah zapisali:
Fx = "-4El4*m*x/SQR(x*x+y*y)/(k*x+y*y)"
Fy = "-4E14*m*y/SQR(x*x+y*y)/(x*x+y*y)"
Tu pomeni 4E14 isto kot 4*101*. Za takšno definicijo sile je
seveda treba znati zapisati komponente poljubnega vektorja, v
večini primerov pa se to lahko obide z izbiro možnosti 3.3.
3.3. P - podajanje sile s parametri
Za podajanje sile je na voljo lažja moznost, ki je hkrati
tudi preprostejša in porabi manj časa za vpisovanje. Slaba stran
je le, da bo v nekaterih primerih simulacija počasnejša, kot če
bi sami podali silo v komponentah. Bistvo podajanja sile s
parametri je, da namesto dolgega izraza, ki pomeni npr. silo na
telo v gravitacijskegem polju, zapišemo le nekaj parametrov, ki
silo enolično določajo. Pri takem podajanju definiramo silo kot
kombinacijo poenostavljajoćih izrazov oblike: X(p1,...,pn).
Tu je X velika ali mala črka, ki označuje vrsto sile, katere
zapis smo tako poenostavili, p;,...,pn pa so parametri,
potrebni za nadaljnjo definicijo sile. Ti parametri so glede na
silo lahko črke, numerične vrednosti ali pa veljavni izrazi (to
so izrazi, veljavni v ZX Basicu). Vsak poenostavljajoći izraz bo
v zapisu komponent sile generiral ustrezen izraz, kakšen je ta
pri posamezni sili, pa je zapisano pri pojasnilu posamezne
poenostavitve. Vse, kar bo v definiciji sile s parametri
zapisano izven poenostavljajoćih izrazov, se bo takšno, kot je,
dodalo obema zapisoma za komponenti Fx in Fy. Tako lahko
poenostavljajoće izraze med seboj poljubno kombiniramo in
sestavljamo sile. Možne poenostavitve so:
3.3.1. Centralna sila
Poenostavljajoči izraz : C(k,xo,yo)
Pri tem so k, 30 in yO veljavni izrazi. Ta izraz bo v zapisu
komponent generiral izraza:
v Fx: k*x/((x-xO)*(x-xo)+(y-yo)*(y-yo))*(3/2)
v Fy: k*y/((x-ko)*(k-xo)+(y-yo)*(v-vv))*(3/2)
Če je eden od parametrov XO ali yO enak 0, bosta izraza nekoliko
poenostavljena.
S to poenostavitvijo lahko preprosteje zapišemo najpogostejši
centralni sili, to je silo v gravitacijskem in električnem polju
točkaste mase oziroma naboja, ki je postavljen v točki (xo,yo),
če je pri tem koeficient privlačnosti oziroma odbojnosti enak k
(negativni predznak za privlačnost, pozitivni za odbojnost).
Primer 3: Bilo, zapisano v primeru 2 ob pojasnilu definicije
sile v komponentah, bi zapisali:
F = "C(-4E14*m,0,0)"
Primer 4: Zapišimo silo na telo s prej definirano maso m, ki se
giblje v gravitacijskem polju Zemlje. Tudi Zemlja sama ne
miruje, ampak se giblje okrog Sonca približno po krožnici
radijem 150 milijonov kilometrov s kotno hitrostjo 0.017/dan. Ce
postavimo izhodišče koordinatnega sistema v Sonce in zanemarimo
njegov vpliv (to lahko storimo, če je telo znatno bliže Zemlji
kot Soncu), zapišemo silo na telo:
F = "C(-4E5*m,l.5E8*COS(0.ol7*t),1.5ESIN(0.oI7*t))
Cas se pri tem steje v dnevih, razdalja pa v kilometrih. Seveda
sta SIN in CDS zapisana v načinu E s tipkama O in N, saj le tako
pomenita kotni +unkciji.
Primer 5: Na delec alfa z nabojem 3.2**? As, ki prileti v
bližino jedra atoma zlata z nabojem l.27"17 As, deluje
Coulombova sila. Ce je jedro v izhodišču koordinatnega sistema,
je ta sila:
F = "C(3.65E-26,0,0)"
Opomba: Numerične vrednosti je treba vzeti v takih enotah, da se
pri računanju ne preseže največje oziroma najmanjše stevilo, ki
ga omogoča ZX Basic.
3.3.2. Tangentna sila
Poenostavljajoči izraz: T(k,r)
Pri tem je k veljaven izraz, r pa numerična konstanta. Ta zapis
bo v komponentah sile generiral izraza:
v Fx: k*vx*SQR(vx*vx+vy*vy)*(r-l)
v Fy: k*vy*SQR(vk*vx+vv*vy)*(r-l)
S to poenostavitvijo lahko definiramo različne sile, ki so
tangentne na tir telesa, pri čemer je k velikostni koeficient, r
pa potenca hitrosti, s katero je sila sorazmerna. Takšna je na
primer sila, ki deluje v smeri gibanja ali pa upor sredstva.
Primer 6: Raketni motorji poganjajo vesoljsko ladjo s stalno
silo v smeri gibanja. Ce deluje sila : velikostjo 10000 N le,
kadar je na tipkovnici pritisnjena tipka M, zapišemo silo:
F = "T((INHEYS=""m"")*lOOOo,0)"
Parameter r je tu enak 0, saj sila ni odvisna od hitrosti.
Dvojni narekovaj pri črki m je napisan, ker tako zahteva Basic.
Primer 7: Ce leti telo z obliko krogle in presekom O.01m2
skozi zrak, deluje nanj zračni upor s silo, ki je določena s
kvadratnim zakonom upora:
F = -pŠcvv/2.
Pri tem je p gostota zraka, S presek telesa, c koeficient upora
in v hitrost telesa. S podatki za koeficient upora krogle
(0.2) ter gostoto zraka (1.29.kg/m3) zapišemo upor:
F = "T(-1.29E-3,2)"
Tu je r enak 2, ker je sila sorazmerna s kvadratom hitrosti. Ce
bi veljal linearni zakon upora, bi bil r enak 1.
3.3.3. Lorentzova sila
Poenostavljajoći izraz: M(k)
Pri tem je k veljaven izraz. Ta zapis bo generiral v komponentah
sile izraza:
v Fx : k*vy
v Fy : -k*vx
S to poenostavitvijo definiramo silo, ki deluje na naelektreno
telo, kadar se to giblje v magnetnem polju. Tu k pomeni produkt
eB, kjer je e naboj gibajoćega se telesa, B pa komponenta
vektorja magnetne poljske gostote na osi 2 (če je B pozitiven,
je vektor mag. polj. gostote usmerjen iz ravnine "proti" nam, če
je negativen, pa "stran" od nas). Magnetno polje je lahko le
pravokotno na ravnino XY, drugaće namreć gibanje ne bi potekalo
v tej ravnini.
Primer 8: V katodni cevi nastane med odklonskima tuljavama
skoraj homogeno magnetno polje z magnetno poljsko gostoto
0.005 T, s katerim se odklanja curek elektronov. Ce postavimo
opazovalno ravnino XY med tuljavi tako, da je vektor mag. polj.
gostote usmerjen proti nam, je sila na elektron, ki se giblje v
tej ravnini, takale:
F = "M(-8E-22)"
3.3.4. Sila pri nihanju
Poenostavljajoći izraz: N(os,k,b,Fo)
Os je črka x oziroma y, ki določa, v smeri katere osi bo sila
delovala, k, b in FO pa so veljavni izrazi. V komponenti Fx
oziroma Fy bo zapis generiral tale izraz:
v Fx: -k*x-2*m*b*vx+FO oz. 0
v Fv: 0 oz. -k*y-2*m*b*vy+Fo
Ce je eden od parametrov b oziroma FO enak 0, v\ izrazu odpade
ustrezni člen, ki vsebuje parameter.
S to poenostavitvijo je omogočena definicija sile. ki nastopa
pri lastnih. dusenih in vsiljenih nihanjih. k pomeni koeficient
sorazmernosti med odmikom in silo, b je koeficient dušenja, ki
je sorazmerno hitrosti, FO pa določa silo, ki naj nihalu
vsiljuje nihanje.
Primer 9: Nihalo na vijačno vzmet s prožnostnim koeficientom
1O Nm-1 naj niha vzporedno z osjo k. Koeficient dušenja naj bo
0.1 s-1. Nihalo vzbujajmo s harmonsko silo krožne frekvence 5,
ki naj ima v maksimumu velikost 0.2 N. Silo potem zapišemo:
F = "N(M,10,0.1,0.2*SIN(5*t))"
Primer 10: Isto nihalo kot prej vzbujajmo s stalno silo 0.2 N,
ki ji lahko spreminjamo smer, tako da nihalo vseskozi
pospešujemo. 5 funkcijo SGN, ki vrne predznak argumenta, lahko
silo zapišemo:
F = "N(x,lo,0.1,0.2*SGN vx)"
3.3.5. Vpisovanje komponent
Poenostavljajoći izraz: K(ix,iy)
ix in iy sta pri tem veljavna izraza. Ta poenostavljajoći izraz
generira v komponentah zapisa:
v Fx : ix
v Fy : iy
To pravzaprav ni poenostavitev, omogoča pa, da zapišemo izraz le 0
v doloćeno komponento sile. Ce namreć napišemo izraz med
poenostavitvami, se bo zapisal v Fx in v Fy komponento, kar pa
seveda ni vedno zaželeno.
Primer 11: Definirati želimo tezo telesa, ki naj deluje v
smeri osi Y. Ce zapišemo:
F = "-9.Bi*m"
dobimo:
Fx = "-9.81*m"
Fy = "-9.81*m"
kar pa nam seveda ne ustreza. Zapisati moramo:
F = "K(0,-9.81*m)"
3.3.6. Povezovanje poenostavljajoćih izrazov
Vseh 5 vrst poenostavljajoćih izrazov lahko s pisanjem
znakov za računske operacije med njimi povezujemo v poljuben nov
izraz, kar nam omogoča definicijo sestavljenih sil. Ta izraz bo
najpogosteje linearna kombinacija poenostavljajoćih izrazov
(torej vsota produktov poenostavljajoćih izrazov z numeričnimi
vrednostmi oziroma spremenljivkami m, t, x, y, vx in vv), ni pa
nikakršnih ovir, da bi jih ne mogli povezati v kak drug izraz.
Pri vsaki deiiniciji sile pa je treba upoštevati, kaj posamezen
poenostavljajoći izraz generira v zapisih komponent, in napisati
usirezno povezavo ter po potrebi oklepaje.
Primer 12: Na kroqlo iz primera 7, ki jo vržemo v ozračje,
delujeta teža in upor zraka:
F = "T(-1.29€-3,2)+K(0,-9.81*m)"
Primer 13: Celotno silo, ki deluje na telo pri vsiljenem
nihanju v primeru 9, želimo dvakrat povečati. Bilo zapišemo:
F = "2*(N(x,10,0.1,0.2*SIN(5*t)))"
Primer 14: Dva točkasta naboja 1 As nasprotnega predznaka sta
postavljena simetrično glede na os V v razdalji 1 cm na osi X.
Na elektron, ki prileti v polje tega dipola, deluje sila:
F = "C(1.44E-9,-0.01,0)+C(-1.44E-9,0.01,0)"
3.4. V - vrnitev
S pritiskom na tipko V se enostavno vrnemo v glavni menu.
4. ZACETNI POGOJI
================================================================
Ta moznost glavnega menuja nam omogoča, da spremenimo
začetne pogoje za gibanje telesa, ki so sicer zapisani v polju s
tem napisom. Ko pritisnemo tipko Z, moramo zaporedoma vpisati
začetni čas (t), lego (x, y) ter hitrost (vx, vy). Gibanje se bo
začelo s temi podatki.
Primer: Kroglo iz primera 12 vrzimo iz koordinatnega izhodišča
pod kotom 60 stopinj navzgor s hitrostjo 100 m/s. Začetne pogoje
zapišemo:
t = 0
z = 0
y = 0
vx = 100*COS(60/360*2*PI)
vy = iOO*SIN(60/360*2*PI)
Izraza za hitrost sta takšna zato, ker se kotne funkcije
računajo z radiani (PI je pisan v načinu E s tipko M).
5. NUMERICNA METODA
================================================================
Dinamična simulacija je pravzaprav numerično reševanje
sistema dveh diferencialnih enačb drugega reda. Za različne
potrebe sta na voljo dve numerični metodi:
a) modificirana Eulerjeva metoda
Po natančnosti je to metoda samo 2. reda, je pa zaradi
hitrosti primerna, če nas zanima slika tira telesa.
b) metoda Runge-Kutta
Po natančnosti je to metoda 4. reda, zato je približno se
enkrat počasnejša (odvisno od sile) od mod. Eulerjeve metode.
Uporabimo jo, če želimo točnejse numerične vrednosti za količine
pri gibanju.
Časovni korak h pomeni časovni presledek med dvema zaporednima
točkama (in ne čas računanja točke), določimo pa ga glede na tip
sile (bolj se ta spreminja od točke do točke, manjsi mora biti
h), želeno natančnost (manjsi je h, večja je natančnost),
gostoto točk v tiru (manjsi je h, večja je gostota) pa tudi čas
samega izračunavanja točk (večji je h, hitreje poteka
simulacija). Za več informacij o principih in metodah dinamične
simulacije glej Matematično - fizikalni dodatek.
Primer: Za primer 12 ob začetnih pogojih, podanih zgoraj, lahko
damo tele podatke:
numerična metoda (e/r): "e"
h = 0.2
OKNO GLAVNE SLIKE
================================================================
Glavna slika je tista, na kateri se prikazuje tir telesa ob
simulaciji (pravzaprav fazni tir, saj lahko graiično prikazujemo
medsebojno odvisnost mase, časa, lege, hitrosti in pospeška). Na
njej sta vodoravna (X) in navpična os (Y), ki pa ne pomenita osi
pravokotnega koordinatnega sistema, ampak osi koordinatnega
sistema za risanje. Na posamezni osi se lahko prikazuje
katerakoli od količin: m, t, x, y, vx, vy, ax, ay. Tako se lahko
na sliki prikazuje ne le ravninska slika tira, temveč poljuben
fazni diagram. V polju s tem napisom je za vsako os napisana
količina, ki se na njej prikazuje, nato pa tudi interval te
kolićine na osi.
To možnost izberemo s tipko O, nakar imamo na razpolago
nadaljnje moznosti.
6.1 D - definicija novega okna
Novo okno definiramo tako, da povemo najprej količini, ki se
bosta prikazovali na posamezni osi, nato pa intervala, ki ju
količini na oseh obsegata. Za primer 12 ob prej podanih začetnih
pogojih bi okno definirali tako, da bi se na vodoravni osi
prikazovala koordinata x, na navpični pa y, s čimer dobimo
ravninsko sliko tira. Pri raznih vrstah nihanj pa pogosto želimo
le sliko časovne odvisnosti odmika, torej damo na os X količino
t, na V pa odmik %, če želimo časovno odvisnost hitrosti ali
pospeška, pa damo za količino na osi Y vx oziroma ax. Po končani
definiciji okna moramo povedati še, če želimo, da sta skali na
obeh oseh za risanje enaki. To je predvsem ugodno pri ravninskem
prikazu tira telesa, saj sicer dolžinski enoti na oseh X in Y ob
enako definiranih intervalih nista enaki. Ce to želimo, se bo
opazovalno okno pomanjšalo, da se doseže ustrezno razmerje na
oseh. Ce pa želimo delati s celotno sliko na zaslonu ob enakem
razmerju, moramo intervala že prej definirati v razmerju
256:176.
Primer : Za primer 12 določimo okno takole:
količina na X: "x"
količina na V: "v"
interval % od-O do 1000
interval v od 0 do 688 (1000:688=256:176)
6.2. B - brisanje glavne slike
Ta možnost nam omogoča, da izbrišemo glavno sliko, pri čemer
ostanejo na njej le koordinatne osi. Izberemo jo, če ne želimo
prekrivanja slik.
6.3. S - opremljanje slike s skalo
S to možnostjo lahko opremimo glavno sliko s podatki o
količinah, ki se prikazujejo na posameznih oseh, ter z mejami
intervalov. lzpisalo se bo le toliko podatkov, kot dopusća
prostor med osmi ter robom okna.
6.4. V - vrnitev
Z izbiro te možnosti se vrnemo v glavni menu.
7. MANIPULACIJA S SLIKAMI
================================================================
Program daje na voljo veliko možnosti za delo slikami, ki
jih dobimo ob simulacijah. V pomnilniku so stalno shranjene 4
slike, od teh so tri namenjene*le zaćasnemu shranjevanju, ena pa
je glavna, torej tista, na kateri lahko ob simulaciji rišemo.
Vsako sliko pospremljajo podatki o količini, ki se prikazuje na
posamezni osi, ter o intervalu te kolićine. Pri manipulaciji s
slikami so na voljo tele možnosti:
7.1. P - prikaži shranjeno sliko
S to možnostjo lahko pogledamo katerokoli od slik, ki so
shranjene v pomnilniku, tako da povemo stevilko želene slike
(glavna slika ima številko 0, ostale tri pa stevilke 1, 2 in 3).
Ce je stevilka prevelika ali premajhna, se prikaz ne izvede.
7.2. 8 - shrani glavno sliko v banko
S to možnostjo lahko glavno sliko skupaj s spremnimi podatki
shranimo za pozneje v katerokoli od slik 1 do 3. Slika, ki je
bila prej pod to stevilko, bo skupaj s podatki izgubljena.
7.3. N - naloži shranjeno sliko iz banke
Sliko, ki smo jo s 8 poprej shranili, lahko spet naložimo v
glavno sliko, pri tem pa seveda ostane slika se vedno shranjena
v pomnilniku.
7.4. T - natisni sliko (ZX Printer)
Katerokoli od slik 0 (glavna) do 3 lahko s to možnostjo
natisnemo na standardnem ZX Printerju.
7.5. E - natisni sliko (matrični t.)
S to možnostjo lahko natisnemo sliko na matrićnem
tiskalniku, seveda, Če smo prej ustrezno namestili program za
delo z vmesnikom (glej 10.).
7.6. K - shrani sliko na kaseto
Katerokoli od slik lahko skupaj s spremnimi podatki
shranimo na kaseto za trajnejso uporabo. Najprej se shrani
slika, zatem se podatki.
7.7. L - naloži sliko s kasete
Poprej shranjeno sliko s K lahko spet naložimo z L v
katerokoli od slik v pomnilniku.
Opomba: Posneto sliko lahko naložimo tudi izven programa z
ukazom: LOAD "ime"CODE 16384,6144
7.8. M - shrani sliko na microdrive
Ta možnost je identična s 7.6., vendar poteka shranjevanje
na microdrive, će ga seveda imamo. Uporabniku, ki te uporabne
dodatne opreme nima, se bo ob izbiri te možnosti pojavila
napaka, izvajanje pa se bo nadaljevalo v menuju.
7.9. G - naloži sliko z microdriva
Sliko, ki smo jo posneli z M, lahko spet naložimo s to
možnostjo. Izven programa jo lahko naložimo
LOAD *"m";1;"ime"CODE 16384,6144
7.10. V - vrnitev
S to možnostjo se vrnemo iz stranskega v glavni menu.
8. PRIKAZ GLAVNE SLIKE
================================================================
S to možnostjo lahko brez izbire možnosti pri točki 7.1.
dobimo na vpogled glavno sliko, kakršna je v tistem trenutku. V
glavni menu se vrnemo s pritiskom na tipko.
9.SIMULACIJA
================================================================
Ko smo definirali vse podatke za simulacijo izbranega
gibanja, izberemo simulacijo s pritiskom na tipko S. Sprožimo jo
s pritiskom na eno od tipk N, P, 6, katerih pomen je razviden
spodaj. Ned simulacijo lahko program deluje v treh načinih.
9.1. Gražićni naćin
v grafičnem načinu se na prej definiranem oknu glavne slike
prikazujeta izbrani količini z vrisovanjem izračunanih točk.
9.2. Numerični način
Ta način omogoča opazovanje numeričnih vrednosti za količine
t, m, x, y, vx, vy, ax, ay. Vsakič, ko se zaslon napolni z
izpisi, se pojavi vprasanje "scroll?", da imamo čas prebrati
podatke. Izpisovanje se nadaljuje po pritisku na katerokoli
tipko (razen N in SPACE).
9.3. Tiskanje na tiskalnik
Ta način je enak numeričnemu načinu, vendar pa izpis ne teče
prek kanala "s" na zaslon, ampak prek kanala "p", torej na
priključeni tiskalnik. Izpisovanje lahko poteka tudi na
matričnem tiskalniku, ki pa ga je treba prej ustrezno softversko
in hardversko povezati s Spectrumom (glej 10.)
Med samo simulacijo lahko svobodno prehajamo med vsemi tremi
načini s tipkami 6, N in P, pri čemer je poskrbljeno za
vrisovanje vseh točk v glavno sliko in njeno shranjevanje.
Simulacijo končamo v kateremkoli načinu s tipko V, nakar se
vrnemo v glavni menu. Glavna slika tedaj vsebuje vse točke, ki
so se do takrat izračunale.
10. PRILAGODITVE PROGRAMA
================================================================
Program ima sicer vdelano možnost tiskanja na standardnem ZX
tiskalniku, vendar pa včasih želimo kvalitetnejši izpis slike na
matričnem tiskalniku. Najpreprostejše možnost je, da izbrano
sliko najprej shranimo na trak in jo potem zunaj programa
natisnemo z ustrezno programsko in strojno opremo. Obstaja pa
tudi druga možnost, s katero lahko natisnemo sliko in izpise
količin znotraj programa. V ta namen moramo pred nalaganjem
programa DYNAMIC 48 priključiti vmesnik in naložiti program za
njegovo kontrolo. Mesto za program je v printer bufferju, zato
ta ne sme biti daljši od 256 bytov, v njem pa morata biti rutina
za oskrbovanje kanala "p" ter rutina za tiskanje slike. Program
je treba potem samo se povezati : operacijskim sistemom (to
ponavadi stori že uvodni basic program) ter nato naložiti
program DYNAMIC 48. Ce izberemo možnost 7.5, torej tiskanje na
matričnem tiskalniku, moramo le se vnesti naslov, na katerem je
rutina za hardcopy, torej tiskanje zaslona. S tem je opravljena
povezava programa DYNAMIC 48 in tiskalnika.
Janez Jaklič
DINAMIČNA SIMULACIJA
Opremil
Borko Tepina
Založila
Državna Založba Slovenije
Za založbo
Dragana Kraigher-Šenk
Urednik
Ladislav Dobrovoljc
Natisnila
Razmnoževalnica DDU Univerzum, Trg osvoboditve 1
Ljubljana 1985
Naklada 500 izvodov
Prvi natis
DINAMIČNA SIMULACIJA
Avtor: Janez Jaklič. Program z izobraževalno vsebino za ZX spectrum 48 K.
Založila in izdala: Državna založba Slovenije,l985.
Drugi izobraževalni program DZS je namenjen srednješolcem kot zelo dober
pripomoček pri preučevanju najrazličnejših gibanj masne točke pod vplivom
sile.
Na kaseti, ki stane prav toliko kot Uri, sta dva programa. Prvi, Dynamic
48, je zasnovan tako, da uporabnik sam definira ravninsko silo, ki deluje
na telo in začetne pogoje. Program omogoča simulacijo lastnih, dušenih in
vsiljenih nihanj, preprostih sestavlkenih nihanj (Lissajousovih figur), vseh
vrst metov, gibanj teles ob uporu sredstev, gibanj tales v gravitacijskih
poljih, gibanja tales v električnih in magnetnih poljih in gibanja teles
v drugih poljih. Podajanje podatkov je, kjer je to mogoče, poenostvljeno.
Količine pri gibanju se lahko posredujejo grafično ali numerično. Vodilo
programa je učinkovita interpretacija dobljenih rezultatov.
Drugi program, Dy-demo, je poenostavljena verzija, ki pomaga manj
zahtevnim uporabnikom pri razumevanju problemov, ki smo jih navedli v prvem
programu. Program poskrbi, da z minimalno izbiro pri vhodnih podatkih
pridemo do slike, ki ponazarja gibanje masna točke pod vplivom delujoče sile.
Ocene za oba programa so izredno visoke. Zelo dober je prijem, odličen je
priročnik, ki ima tudi matematično-fizikalni dodatek in nekaj primerov
različnih simulacij. Realizacija programa je vredna posebne pohvale. Slike se
rišejo dovolj hitro in natančno, program je ubogljiv in prijazen.
Kaseto s programom Dynamic 48 priporočamo najprej dijakom, ki jim je
namenjena, kasneje pa še računalniškim dušebrižnikom in nadobudnim
programerjem, ki bodo lahko vsak zase našli v obilici enostavnih prijemov
tudi kakšno zadevo zase. Učitelji fizike pa bi morali tako ali tako ta program
že imeti med svojimi pripomočki za razlago.