Aruanne algab pealkirjaga, selle järel tuleb ära märkida töö autor ja töö tegemise kuupäev. Aruanne tuleb esitada HTML või PDF kujul, failinimi formaadis pr#_eesnimi_perenimi_ver# (parandustega töö esitamisel uuendada versiooninumbrit).

Sissejuhatus

Sissejuhatuses tuleb sõnastada füüsikaline probleem ja selle lahendamise idee, näiteks:

Töö eesmärk on eksperimentaalselt määrata keha inertsmoment, kasutades …, ja võrrelda tulemust sellega, mida saab arvutada keha massi, kuju ja mõõtmete kaudu. Katsekehana kasutame …, sest see võimaldab ….

Teooria

Selles alapunktis tuleks formuleerida kogu füüsika, mis on vajalik katse mõistmiseks ja tulemuste analüüsimiseks. Spetsiifilise teabe korral (näiteks valem, mis antud ilma tuletuskäiguta) tuleks viidata ka allikatele. Viited võib asetada teksti sisse ja veebimaterjalidele võib viidata hüperlingi kujul. Üldtuntud õpikuteadmisi (nt Newtoni seadused, ideaalse gaasi olekuvõrrand, jne) võib kasutada ilma viitamata.

Halba ei tee lihtne joonis/katseskeem, kus saab ära näidata füüsikalised suurused (mõjuvad jõud, pikkusmõõdud jms), mida valemites kasutatakse. Sellised joonised saab teha lihtsate vabavaraliste vahenditega, nagu Google Drawings või LibreOffice Draw. Jupyteri märkmeraamatu jaoks tuleb joonis eksportida SVG või PNG formaadis ja kuvada märkmeraamatu tekstilahtris umbes seda laadi koodiga:

<img src="inertsmoment.png" style="width: 10em; float: right;"/>

Valemite jms matemaatilise sisu kujundamise reeglid:

LaTeX'is (jm valemiredaktorites) sisestatud muutujad ja numbrid tuvastatakse automaatselt ja kujundatakse vastavalt. Ülejäänud reegleid tuleb siiski ise järgida, nt kirjutada $sin(x)$ asemel $\sin(x)$ jne.

Eksperiment

Siia tuleks katseseadme sisuline kirjeldus. Keskenduda tuleks infole, mis on oluline katse väljatulemise või mõõtetäpsuse seisukohalt. Ära tuleks mainida konkreetsed mõõtevahendid, nende täpsus jm relevantsed omadused, näiteks:

Temperatuurianduriks oli Vernier Stainless Steel Temperature Probe, lahutusvõime 0,1 °C, täpsus ±0,5 °C, reageerimisaeg 10 s.

Võib tuua ka foto eksperimendiseadmest või selle mõnest olulisest osast.

Tulemused ja analüüs

Sõltuvalt olukorrast võivad tulemused ja analüüs olla eraldi või koos. Esmalt tasuks välja tuua otsesed mõõtmistulemused, sh käsitsi mõõdetud või tabeliandmed koos määramatustega (nt keha mass, aine erisoojus, fundamentaalkonstandid, jne). Viimased võib sisestada kohe (kommenteeritud) arvutuskoodi kujul, kuna neid läheb edasises arvutuses tarvis. Sellele järgneb füüsikaliste mudelite ja hüpoteeside kontrollimine, tulemuste mõtestamine ja järelduste tegemine.

Tulemuste ja analüüsi illustreerimisel on oluline roll graafikutel:

Igasugune arvutamine (Pythonis) toimub selle alapunkti raamides. Et ei kannataks aruande kui terviku loetavus ja ülevaatlikkus, võiks tehnilisema töö (nt graafiku või tabeli genereerimine) delegeerida alamprogrammidele, mis on paigutatud lisasse. Põhitekstis tuleb siiski selgitada arvutuste/andmetöötluse loogikat koos vajalike valemitega. Paar koodinäidet:

pendli_pikkus = 0.8  # meetrit
kõrgused = np.array((5, 11, 19, 28, 39)) * 0.01  # meetrit
nurgad = np.arccos(1 - kõrgused / pendli_pikkus)
kuva_tabel(kõrgused, nurgad)
Kõrgus (cm)  Nurk (°)
---------------------
        5.0     20.36 
       11.0     30.40 
       19.0     40.31 
       28.0     49.46 
       39.0     59.17
kiirendus = arvuta_kiirendus('katse_1.txt', (15, 65), (0.1, 1.1))
kiirendus = -1.877 m/s^2

Siin viimane näide illustreerib olukorda, kus on mõõdetud mitu ühesugust laadi andmeseeriat, nii et vastav andmetöötlus tuleks kapseldada sobivalt parametriseeritud funktsiooni ehk alamprogrammi, mida saaks korduvkasutada.

Kokkuvõte

Siia tuleks kokkuvõtvalt kirja panna, mida tehti, mida saadi ja mida järeldati, sh välja tuua olulised arvulised tulemused koos mõõtemääramatustega.

Lisa

Lisas võib vajadusel näidata täiendavaid andmeid, graafikuid või pilte. Siia võib paigutada ka "ebahuvitava" osa Pythoni koodist ehk arvutuste nii-öelda köögipoole. Alustades vajalike moodulite importimise ja seadistamisega:

import numpy as np
from matplotlib.pyplot import *

style.use({
    'figure.dpi': 110    
})

ja lõpetades alamprogrammidega, mida kasutatakse andmetöötluses või graafikute ja tabelite kujundamisel:

def kuva_tabel(kõrgused, nurgad):
    print('Kõrgus (cm)  Nurk (°)')
    print('-' * 21)
    for k, n in zip(kõrgused * 100, nurgad / deg):
        print('%11.1f  %8.2f ' % (k, n))

def arvuta_kiirendus(fail, read, ajavahemik):
    aeg, kaugus = laadi_katse(fail, read)
    algus, lõpp = ajavahemik
    valitud = (aeg >= algus) & (aeg <= lõpp)
    t = aeg[valitud]
    x = kaugus[valitud]
    p = np.polyfit(t, x, 2)
    kiirendus = 2 * p[0]
    print(f'kiirendus = {kiirendus:.3f} m/s^2')
    
    figure( figsize=(5, 3) )
    plot(aeg, kaugus, 'r.')
    plot(t, np.polyval(p, t), 'b-')
    xlabel('Aeg (s)')
    ylabel('Kaugus (m)')
    axvspan(algus, lõpp, facecolor='r', alpha=0.1)
    grid()
    tight_layout()
    show()
    return kiirendus

Juhendi koostas Valter Kiisk
Viimati muudetud 4.03.2024

Sisukord