DFCL3 / Hahmottava kokeellisuus, kevät 2000
Ari Hämäläinen

Taulukkolaskentaohjelmista

Yleistä
Eräitä taulukkolaskentaohjelmia
Tiedon siirto taulukkolaskimeen
Laskenta
Solujen nimeäminen Excelissä
Esitettävien lukujen tarkkuuksien asettaminen
Kuvaajien piirtäminen Excelillä
Kuvaajien ekstrapoloiminen mittausalueiden ulkopuolelle
Useiden kuvaajien piirtäminen samaan koordinaatistoon
Suoran sovitus Excelin funktioiden avulla
Suoran käsivarainen sovittaminen
Mallinnus, simulointi
Taulukkolaskennan opiskelusta
Lähteitä

Yleistä

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ä.

 

Eräitä taulukkolaskentaohjelmia

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ä.

Tiedon siirto taulukkolaskimeen

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.

Laskenta

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 nimeäminen Excelissä

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ä.

Esitettävien lukujen tarkkuuksien asettaminen

Excelissä lukujen esitystarkkuutta muutetaan seuraavasti:

Oikotie esitystarkkuuden muuttamiseen ovat Formatting-työkalupalkissa sijaitsevat Increase Decimal- ja Decrease Decimal -napit.

Kuvaajien piirtäminen Excelillä

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

 

Kuvaajien ekstrapoloiminen mittausalueiden ulkopuolelle

  1. Valitaan kuva.
  2. Valitaan sovitettu käyrä hiiren oikeanpuoleisella näppäimellä.
  3. Valitaan Format Trendline, ja Options-välilehti.
  4. Kohdasta Forecast asetetaan mitta vaaka-akselin yksikköinä sille, kuinka paljon käyrä jatkuu eteen- ja taaksepäin pistejoukon ulkopuolelle. Tässä asetusruudussa voi myös pakottaa käyrän leikkaaman pystyakselin tietyssä kohdassa (ruksi kohtaan Set Intercept = jotain)

Useiden kuvaajien piirtäminen samaan koordinaatistoon

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:

  1. Piirretään ensin yhden kuvaajan koordinaatisto kuten yllä on esitetty.
  2. Valitaan seuraavan kuvaajan X- ja Y-sarakkeet, ja poimitaan Excelin päävalikosta Edit - Copy.
  3. Valitaan kohdassa 1 tehty koordinaatisto, ja poimitaan Excelin päävalikosta Edit - Paste Special.
  4. Ruksataan esiintulevasta dialogista kohdat "Add cells as New Series", "Values (Y) in Columns", ja "Categories (X Values) in First Column". Klikataan OK.
  5. Toistetaan kohtia 2..4, kunnes kaikki kuvaajat on piirretty.

Näin piirrettyihin kuvaajiin voidaan vaikkapa sovittaa kuhunkin oma suoransa.

Suoran sovitus Excelin funktioiden avulla

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:

Suoran käsivarainen sovittaminen

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.

Mallinnus, simulointi

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ä  tt1 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.

Taulukkolaskennan opiskelusta

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ä.

Oppaita www:ssä

Jari Lavosen Excel-opas: http://www.helsinki.fi/kasv/okl/malu/excel.html

 

Kirjallisuutta

  1. De Jong, M. L. Computers in Introductory Physics. Computers in Physics, Vol. 5, No. 1, 1991. 12—15.
  2. Kahaner D., Moler C., Nash S. Numerical Methods and Software. Prentice-Hall, 1989.
  3. Misner, C. W. Spreadsheet physics. Reading, MA Addison-Wesley, 1991.
  4. Potter, F., Peck, C. W., Barkley, D. S (editor). Dynamic Models in Physics. A Workbooks of Computer Simulations Using Electronic Spreadsheets. Volume One: Mechanics. Marina del Rey, 1989.
  5. Webb, L. Spreadsheets in physics teaching. Phys. Educ., Vol. 28, No. 2, 1993. 77—82.