DFCL3 / Hahmottava kokeellisuus, kevät 2000
Ari Hämäläinen
Taulukkolaskenta (spreadsheet) on alunalkaen liike-elämän tarpeisiin kehitetty ohjelmatyyppi. Ohjelma näyttää kuvaruudulla laskenta-arkin, joka on jaettu riveihin ja sarakkeisiin viivoitetun paperin tapaan. Sarakkeet nimetään yleensä kirjaimilla, rivit numeroilla. Yksittäisiä ruutuja kutsutaan soluiksi. Solun sarake ja rivi yksilöivät solulle tunnuksen, esim A1 tai F13. Solu sisältää yleensä joko luvun, tekstiä, tai laskentakaavan. Jos solu sisältää luvun tai tekstiä, solun arvo on sama kuin solun sisältö. Jos solu sisältää kaavan, solun arvo on kaavaan sijoituksen tulos. Kaavat käyttävät laskennan lähtöarvoina kaavan sisältämiä lukuja sekä toisten solujen arvoja. Rivien tai sarakkeiden sisältämistä lukusarjoista voidaan piirtää graafisia kuvaajia. Taulukkolaskenta soveltuu luonnontieteelliseen laskentaan ja tulosten esittämiseen silloin, kun laskentatyökalulta vaaditaan helppokäyttöisyyttä, ja dataa on suhteellisen vähän. Nykyisin taulukkolaskennan perusteet opitaan koulun ATK-opetuksen yhteydessä.

Esimerkki laskentataulukosta. Solut A1, A3, B3, D4 ja F4 sisältävät tekstiä, solut A4:B6 sisältävät lukuja, ja solu E4 sisältää laskentakaavan. Solu E4 on valittuna, joten sen sisältämä kaava näkyy syöttörivillä.
Microsoft Excel on ylivoimaisesti eniten käytetty taulukkolaskin nykyisin. Sen kilpailijoita ovat Lotus 1-2-3 ja Quattro Pro. Kaikki nämä ovat erittäin laajoja ja monipuolisia ohjelmia. Monitoimiohjelmat kuten Microsoft Works ja Claris Works sisältävät taulukkolaskentaosan. Ne eivät ole yhtä monipuolisia kuin itsenäiset ohjelmat, mutta ovat hyvin helppokäyttöisiä. Kiinnostavia uutuuksia ovat monitoimiohjelmat StarOffice ja ApplixWare, jotka ovat saatavissa sekä Windows- että Linux-ympäristöön, StarOffice jopa täysin ilmaiseksi. Ainakin StarOfficen taulukkolaskentaosa on toiminnoiltaan pitkälti Excel-yhteensopiva. StarOfficen käyttäjien kannattaa kokeilla allaolevia Excel-esimerkkejä.
Yksinkertaisin tapa tuoda mittaustulokset taulukkolaskimeen on kopioda luvut käsin. Se on kuitenkin hidasta ja virhealtista, joten menetelmä on järkevä vain silloin kun siirrettäviä lukuja on vähän. Usein käsin kopiointi on ainoa mahdollisuus mittausohjelman omilla laskentatyökaluilla (esim. suoran sovituksella) saatujen arvojen siirtämisessä.
Jos mittausohjelma ja taulukkolaskin ovat molemmat Windows- tai Macintosh-ohjelmia, mittaustietoa voidaan yleensä siirtää mittausohjelman taulukkoesityksestä taulukkolaskimeen kopioi-liitä -menetelmällä käyttöjärjestelmän leikepöydän kautta. Tiedonsiirto onnistuu tällä tavalla ainakin Logger Pro -mittausohjelmasta.
Tiedonsiirtoon voidaan käyttää myös välitiedostoja. Siirtoon täytyy käyttää sellaista tiedostomuotoa, jota mittauohjelma osaa kirjoittaa ja taulukkolaskin osaa lukea. Empirica ja Nemo-järjestelmän IP-Coach -ohjelma osaavat tallettaa mittausdatan Data Interchange Format (DIF) -muodossa, jota useimmat taulukkolaskimet osaavat lukea. Kaikki taulukkolaskimet osaavat lukea tekstimuodossa olevaa dataa. Tekstirivit tulkitaan taulukon riveiksi, tabulaattorimerkit tulkitaan sarakerajoiksi. Kaikki mittausohjelmat osaavat tallettaa datan levylle tekstinä, mutta tiedostoa saattaa olla tarpeen editoida käsin, jotta taulukkolaskin tulkitsisi tiedoston oikein.
Tulevaisuudessa tiedonsiirtoon tultaneen käyttämään myös ohjelmien välisiä dynaamisia linkkejä. Niiden avulla tieto kopioituu automaattisesti mittausohjelmasta taulukkolaskimeen., jopa mittauksen kestäessä. Linkityksen toteuttamiseen on erilaisia tekniikoita, kuten Dynamic Data Interchange (DDE), Object Linking and Embedding (OLE), ja ActiveX. Sekä lähettävän että vastaanottavan ohjelman täytyy tukea samaa tekniikkaa. Linkitysmahdollisuus on jo useissa tutkimus- ja teollisuuskäyttöön tarkoitetuissa "raskaan sarjan" mittausohjelmissa, mutta ei vielä opetuskäyttöön tarkoitetuissa kaupallisissa ohjelmissa.
Mittausdatasarjat esitetään taulukkolaskimessa yleensä sarakkeina. Jos on vaikkapa mitattu suureen arvoa ajan funktiona, yhdessä sarakkeessa ovat ajan hetket ja viereisessä sarakkeessa vastaavat suureen arvot.
Datasarjasta voidaan laskea yksittäinen tulos (esim.
keskiarvo tai integraali), muutamasta arvosta koostuva tulos (esim. funktion
sovitus, tuloksena termien kertoimet), tai sitten voidaan laskea kokonaan uusi
sarake (esim. koordinaatistomuunnos
,
kun osoitetaan mekaanisen energian säilyminen heilurissa). Nykyaikaiset
taulukkolaskimet sisältävät hyvin laajan valikoiman valmiita funktiota
ja laskentamakroja. Valikoimaan kannattaa tutustua käsikirjasta tai
ohjelman Help-toiminnon avulla, ettei suotta ala keksiä pyörää uudelleen.
Uusien sarakkeiden laskeminen tapahtuu kirjoittamalla laskentakaava sarakkeen yhteen soluun ja kopioimalla se sitten muihin soluihin esim. kopioi-liitä -menetelmällä. Oletusarvoisesti kaavan rivi- ja sarakeviittaukset ovat suhteellisia, eli ne muuttuvat kopionnissa automaattisesti rivin/sarakkeen suhteen. Jos kopioiduissa kaavoissa tarvitaan kaikissa lähtöarvona tiettyä vakiota, eli yhtä solua, tähän soluun viitataan absoluuttisella viitauksella, joka ei muutu kopioinnissa. Absoluuttinen viittaus osoitetaan $-merkillä.
Tarkastellaan esimerkkiä, jossa on tutkitaan mekaanisen
energian säilymistä heilurin avulla. Pyritään osoittamaan riippuvuus
.
Heiluri päästetään liikkeelle eri korkeuksilta, ja primaaridatana mitataan
aika, jonka heilurin punnus peittää radan alimmassa kohdassa olevan
valoportin. Siirretään korkeudet ja ajat käsin Exceliin, jossa lasketaan
punnuksen nopeudet ja nopeuden neliöt.

Kaavojen tulokset näkyvissä (normaali tila)

Kaavat näkyvissä. Huomaa absoluuttiset viittaukset soluun B3,
sekä se että dt:n arvot on
siirretty mittausohjelmasta kaikkine merkitsevine numeroineen.
Solujen tunnuksia käyttävät pitkät laskentakaavat voivat olla hankalasti hahmotettavia. Solujen tunnukset eivät myöskään ilmaise mitenkään, mikä merkitys ao. parametrilla kaavassa on. Näistä ongelmista päästään antamalla soluille tai laskenta-arkin alueille nimet. Suureiden arvoilla laskettaessa on luontevaa antaa nimet niin, että ne ovat joko samoja kuin käsiteltävien suureiden tunnukset, tai ainakin helposti yhdistettävissä suureiden tunnuksiin. Ylläolevaan heiluriesimerkkiin sovellettuna tämä tarkoittaa, että solulle B3 (punnuksen leveys) annetaan nimeksi dx, alueelle B7:B11 (heilurin maksimikorkeudet) annetaan nimeksi h_max, alue C7:C11 (valoportin ohitusajat) nimetään dt:ksi, ja alueelle D7:D11 (maksiminopeudet) annetaan nimeksi v_max.
Excelissä solu tai alue nimetään valitsemalla se hiirellä, ja poimimalla valikosta Insert - Name - Define. Nimettyyn alueeseen voidaan viitata kaavoissa suoraan nimellä. Viittaukset nimettyihin alueisiin ovat absoluuttisia, kuitenkin niin, että jos kaavassa on esim viittaus nimettyyn sarakealueeseen, kaava osaa poimia alueesta arvon samalta riviltä kuin millä kaava itse on. Katso alla oleva esimerkki.

Kaavat näkyvissä, käytetty solujen ja alueiden nimeämistä.
Excelissä lukujen esitystarkkuutta muutetaan seuraavasti:
Oikotie esitystarkkuuden muuttamiseen ovat Formatting-työkalupalkissa sijaitsevat Increase Decimal- ja Decrease Decimal -napit.
Kuvaajan piirtäminen tehdään hieman eri tavalla eri ohjelmissa. Käsitellään seuraavassa esimerkkinä, miten kuvaaja tehdään Excelin versioilla 5, 7, 97 tai 2000.
Data, josta kuvaaja piirretään, on paras järjestää
taulukkoon nin, että x-akselille tulevien arvojen sarake on vasemmalla,
y-akselille tulevien arvojen sarake oikealla. Kuvaajan piirto aloitetaan
valitsemalla hiirella kuvaajaan tulevat sarakkeet. Jos valitaan sarakkeita jotka
eivät ole rinnakkain, täytyy pitää Control-näppäintä alhaalla valintoja
tehdessään. Valinnan jälkeen painetaan ChartWizard -nappia
(tai
). Versioissa 5
ja 7 ohjelma pyytää ensin rajaamaan kuvaajalle tilan, ja kyselee sitten
kuvaajalle halutut ominaisuudet. Useimmiten sopivin kuvaajatyyppi on XY-kuvaaja.
Kannattaa olla tarkkana, että X-akselin arvot tulevat oikeasta sarakkeesta.
Excelin standardikuvaaja ei ole useinkaan sellaisenaan fyysikon silmää miellyttävä, joten kuvaajaa kannattaa vielä muokata. Versioissa 5 ja 7 muokkaus alkaa kaksoiklikkaamalla kuvaa, jonka jälkeen valitaan haluttu objekti hiiren oikealla näppäimellä. 97-versiossa voi klikata suoraan haluttua objektia. Esiin tulee ao. objektin ominaisuusvalikko. Esim. pisteisiin sovitettu suora on pisteiden ominaisuus. Suora lisätään kuvaan valitsemalla ensin datapisteet hiiren oikealla näppäimellä, sitten Insert Trendline, ja täyttämällä dialogit.

Pisteisiin
sovitettu
suora yhtälöineen
Usein on tarvetta piirtää samaan koordinaatistoon useita kuvaajia. Tilanne on helppo silloin, kun kuvaajilla on samat X-akselin arvot. Tällöin valitaan yhdellä kertaa kaikki sarakkeet (X-sarake ja useita Y-sarakkeita), ja tehdään kuvaaja Chart Wizardin avustuksella kuten yllä. Jos kuvaajissa on eri X-sarakkeet, täytyy käyttää toista menetelmää. Seuraava toimii Excelin versioissa 5, 7, 97 ja 2000:
Näin piirrettyihin kuvaajiin voidaan vaikkapa sovittaa kuhunkin oma suoransa.
Uusimmissa Exceleissä on siis mahdollisuus tehdä suoran (tai usean muunkin funktion) sovitus kuvaajan piirtämisen yhteydessä. Sinänsä kätevässä menetelmässä on pari heikkoutta. Sovituksen laskemiin kertoimiin ei voi viitata kaavoissa, eikä kertoimille lasketa virherajoja.
Yleiskäyttöisempi menetelmä on käyttää Excelin funktiota LINEST. Sen formaatti on
LINEST(known_y's; known_x's; const; stats)
Funktion käyttöä kannattaa opiskella Excelin Helpistä.
Katsotaan tässä esimerkiksi suoran sovittaminen ylläolevan esimerkin
-pisteisiin.
Lasketaan sovitusparametrit ja niiden virheet.

Siis sovitetun suoran yhtälö tässä tapauksessa on ![]()
Excel ei kerro mitä sen laskemat virheet ("standard error") täsmällisesti ottaen ovat. Ilmeisesti ja koelaskelmien pohjalta näyttäisi siltä, että parametrin "oikea" arvo on Excelin laskemien virherajojen sisällä n. 68 % varmuudella, ja kaksinkertaisena otettujen virherajojen sisällä n. 95 % varmuudella.
Jos ei tarvita virhearviota, voi käyttää seuraavia yksinkertaisempia funktioita:
Jos tutkitaan pelkästään ovatko pisteet suoralla, mutta sovitusparametreja ei tarvita, voi ottaa Excelin Drawing-työkalupalkista suoran ja asetella sitä hiirellä pistejoukon päälle.
Jos halutaan käsin sovitettu suora, jonka parametrit ohjelma laskee, se onnistuu Excelin versioilla 5, 7 ja 97 seuraavasti:
Lisätään laskenta-arkkiin uusi datasarja, jossa on vain kaksi pistettä niin, että ne ovat suunnilleen halutun suoran päätepisteet. Ylläolevaan heiluriesimerkkiin sopii esim pisteet (0,0) ja (0.3, 5), eli datasarjana
|
x |
y |
|
0 |
0 |
|
0.3 |
5 |
Lisätään näiden apupisteiden kuvaaja koordinaatistoon, ja sovitetaan pisteisiin suora. Pisteiden markkerit on myös hyvä muuttaa isommiksi.
Valitaan suoran päätepisteet, ja klikataan hiirellä toista päätepistettä vielä uudestaan. (Täytyy olla tarkkana, että klikkaa nimenomaan päätepistettä, eikä suoraa.) Hiiren kohdistin muuttuu pisteen päällä ristikkonuoleksi.
Nyt hiirellä voi "tarttua" valittuun päätepisteeseen ja siirtää sitä vaaka- tai pystysuunnassa. Apupisteiden koordinaatit muuttuvat laskenta-arkilla vastaavasti.
Suoran yhtälön saa joko lisäämällä yhtälön kuvaajaan, tai slope- ja intercept-funktiolla. tai laskemalla apupisteiden koordinaateista.
Taulukkolaskimella voidaan luoda mallin pohjalta laskennallinen ennuste fysikaalisen systeemin käyttäytymisestä. Mallin siirtäminen ohjelman laskettavaksi on taulukkolaskinta käytettäessä helpompaa ja havainnollisempaa kuin perinteisillä ohjelmointikielillä.
Tutkitaan esimerkkinä tilanteita, joissa halutaan ennustaa
kappaleen rata, kun tunnetaan massa ja ulkoinen kokonaisvoima. Jos voima ja
massa ovat vakioita, myös kiihtyvyys on vakio, ja radan ilmaisee
yksiulotteisessa tapauksessa yhtälö
.
Tämä on helppo esittää taulukkolaskimella: vakiot x0,
v0 ja a ovat yksittäisiä
soluja, ajan hetket t sijoitetaan sarakkeeseen (voidaan ottaa käyttöön
apuvakio Dt, ja laskea ajan hetket
lisäämällä Dt aina edelliseen t:n
arvoon). x(t):n arvot lasketaan omaan sarakkeeseensa
yllämainitulla kaavalla.
Jos voima ei ole vakio, tilanne on monimutkaisempi. Esimerkkitapauksia ovat putoamisliike väliaineessa (voima on Maan vetovoiman ja nopeudesta riippuvan väliaineen vastusvoiman summa), ja kitkattomalla vaakasuoralla alustalla jousen päässä värähtelevä punnus (voima on verrannollinen jousen venymään). Analyyttinen käsittely onnistuisi osassa muutuvan voiman tapauksista lukion integraalilaskennan keinoin, osassa tarvittaisiin differentaaliyhtälöiden ratkaisemista. Taulukkolaskimella voidaan liikeyhtälö ratkaista numeerisesti, eli ennustaa kappaleen rata kun lähtöpaikka, alkunopeus, sekä voima ja sen riippuvuus (ajasta, nopeudesta tai paikasta) tunnetaan. Itse asiassa tällöin suoritetaan differentiaaliyhtälön numeerinen ratkaisu, mutta menetelmä on mahdollista ymmärtää ilman diffrentiaalilaskennan tuntemusta.
Menetelmässä tutkittava aikaväli jaetaan lyhyisiin osiin.
Alkuarvojen x0 ja v0
perusteella lasketaan voima alkuhetkellä t0(jos voima riippuu
nopeudesta, lasketaan
;
jos paikasta,
) ja
lasketaan kiihtyvyys
.
Koska aikaväli
on
lyhyt, voidaan pitää kiihtyvyyttä tällä välillä vakiona
.
Näin ollen
ja
.
Seuraavaksi lasketaan hetkellä t1 kappaleeseen kohdistuva
voima F1, sitten
,
jota pidetään vakiona välillä t2 - t1
j.n.e.
Tämä on Eulerin menetelmäksi kutsuttu tapa
ratkaista differentiaaliyhtälö numeerisesti. On ymmärrettävää, että
menetelmä aiheuttaa sitä suuremman virheen, mitä enemmän ja mitä karkeampia
-askelia otetaan. Tarkempia
menetelmiä on olemassa, esim. Runge-Kutta -menetelmä, mutta siinä
käytettäviä laskentakaavoja ei voi perustella yhtä yksinkertaisen
fysikaalisesti kuin Eulerin menetelmässä.

Voit imuroida tästä Excelillä tehdyn esimerkkisimulaation jousen päässä värähtelevästä punnuksesta: JOUSISIM.XLS.
Taulukkolaskimen käyttöä täytyy opiskella siinä missä muidenkin työkalujen. Tämän voi tehdä joko erikseen asiaan paneutuen, tai ohjelmalla tehtävän työn ohessa, sitä mukaa kun opeteltavia asioita tulee vastaan. Jälkimmäinen tapa voi olla stressaava, jos valmista pitäisi saada aikaan nopeasti, eikä aikaa opetteluun olisi. Sillä menetelmällä olen kuitenkin itse oppinut suurimman osan aktiivisesti käyttämieni ohjelmien ominaisuuksista.
Ohjelmien käsikirjat ovat nykyisin valitettavan suppeita. Käsikirjat on korvattu erilaisilla avustustoiminnoilla ja opetusohjelmilla. Tähän ei voi kuin sopeutua, ja opetella käyttämään näitä avusteita. Tai sitten täytyy ostaa erikseen jonkin kolmannen osapuolen kirjoittama ohjekirja, joita kyllä yleisimmille ohjelmille löytyy, osalle jopa suomenkielisinä.
Ohjelmista kuitenkin pyritään tekemään helppokäyttöisiä, ja melko pitkälle pärjää jopa ilman opasteiden tutkimista, kun muistaa muutamat perustemput, joita standardien mukaan tehdyt Windows-ohjelmat nykyään tottelevat.
Tärkein muistettava on se graafisten käyttöliittymien perusfilosofia, että ensin valitaan tekemisen kohteena oleva olio, sitten valitaan se mitä oliolle tehdään. Valikot yms. muuttavat sisältöään sen mukaan mikä olio on valittuna.
Olio voi olla esim. kuvaajan akseli, jolla on ominaisuuksia: alku- ja loppupiste, tekstifontti, lukujen esitystarkkuus, jne. Hiiren kaksoisklikkauksella pääsee yleensä muokkaamaan valitun olion ominaisuuksia. Uusissa ohjelmissa hiiren oikeanpuolimmaisesta napista aukeaa paikallisvalikko, josta löytyvät ne temput jotka valitulle oliolle useimmiten halutaan tehdä.
Jari Lavosen Excel-opas: http://www.helsinki.fi/kasv/okl/malu/excel.html