/* [wxMaxima batch file version 1] [ DO NOT EDIT BY HAND! ]*/ /* [ Created with wxMaxima version 12.04.0 ] */ /* [wxMaxima: title start ] Luento 2, osa A [wxMaxima: title end ] */ /* [wxMaxima: comment start ] Symbolinen laskenta 2016 [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] Nämä tehtävät on tarkoitus tehdä luennon aikana. [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] Tämä rivi ei vielä nyt tarkoita mitään, mutta siihen palataan myöhemmin. Suorita se silti (enter). [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ ev(kameli,sipuli=2); /* [wxMaxima: input end ] */ /* [wxMaxima: section start ] Sieventäminen [wxMaxima: section end ] */ /* [wxMaxima: comment start ] Määritellään lauseke nimeltä kameli. [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ kameli:(x+1)^2+(x+1)^3; /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Sievennetään sitä eri komennoilla: [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ factor(kameli); /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ expand(kameli); /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ ratsimp(kameli); /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ trigsimp(kameli); /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ trigexpand(kameli); /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ radcan(kameli); /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Määritellään toinen lauseke ja tutkitaan sen sieventämistä samoilla komennoilla: [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ hevonen:sin(x+y)^2-cos(x+y)^2; /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ factor(hevonen); /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ expand(hevonen); /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ ratsimp(hevonen); /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ trigsimp(hevonen); /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ trigexpand(hevonen); /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ radcan(hevonen); /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Eri sievennyskomentojen ohjeista (F1) selviää, mitä ne tekevät. [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] Joskus kannattaa käyttää useampaa eri sievennystä peräkkäin. Voit laittaa eri komentoja sisäkkäin tai voit nimetä sievennyksen välivaiheita. Esimerkki: [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ kissa:factor(hevonen); /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ trigexpand(kissa); /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ trigexpand(factor(hevonen)); /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Sama tulos! [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] Miten hevosen saisi sievennettyä pisimmälle? Yhdistele eri sievennyskomentoja jollain tavalla, jotta saat hevosen vielä johonkin uuteen muotoon. [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] Simplify-valikosta löytyy lisää sievennyskomentoja. Harjoitellaan kyseisen valikon käyttöä. Kirjoita alle "y^2-x^2" ja valitse Simplify-valikosta "Factor Expression". Palaa sen jälkeen takaisin tähän kohtaan. [wxMaxima: comment end ] */ /* [wxMaxima: section start ] Maxima ja wxMaxima [wxMaxima: section end ] */ /* [wxMaxima: comment start ] Sinulla on nyt auki sekä Maxima että wxMaxima. Tämä on wxMaxima-ikkuna. Maximalla ei ole ikkunaa. [wxMaxima: comment end ] */ /* [wxMaxima: subsect start ] Input- ja output-solut [wxMaxima: subsect end ] */ /* [wxMaxima: comment start ] Kun Maximalla lasketaan, kirjoitetaan komento input-soluun ja vastaus tulee output-soluun. Nämä solut tulevat pareittain. [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ 12^2+5^2-13^2; /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Kun kirjoitat input-solun ja painat enteriä, wxMaxima lähettää inputin Maximaan. Maxima antaa vastauksen wxMaximalle, joka antaa sen sinulle output-soluna. Maxima myös numeroi solut. [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ 1+1; /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Output-soluihin voi viitata niiden numeroilla. Viittaa edellisen rivin tulokseen (output). [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ %o??; /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Maxima muistaa kaikki syötteet ja tulokset numeroineen. Poista nyt yllä oleva solu, jossa laskettiin summa 1+1. Viittaa siihen uudestaan. Onnistuuko? [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] Kyllä onnistuu! / Ei onnistu! [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] Aiemmin sievennettiin kamelia. Määritellään nyt kameli uudestaan: [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ kameli:sipuli^2-1; /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Valitse nyt yltä solu, jossa sievennettiin kamelia factor-komennolla. Suorita kyseinen solu uudestaan. Tulos vaihtuu, koska kameli tarkoittaa nyt eri asiaa. Huomaa myös, että solun numerointi muuttuu. [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] Vanha solu hävisi wxMaximasta, mutta ei Maximasta. Molempiin voi yhä viitata: [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ %o??; /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ %o??; /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Maxima ei tiedä, missä kohdassa wxMaxima-dokumenttiasi olet. Voit kirjoittaa uuden syötesolun (input) mihin tahansa ja suorittaa sen; tulos ei riipu paikasta. [wxMaxima: comment end ] */ /* [wxMaxima: subsect start ] Puolipiste ja dollari [wxMaxima: subsect end ] */ /* [wxMaxima: comment start ] Komennon voit päättää puolipisteeseen tai dollariin. Ainoa ero on, että dollariin päätetty komento ei tuota näkyvää output-riviä. Maxima toimii täysin samoin; ero on wxMaximassa. [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ factor(x^2-1)$ /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ %; /* [wxMaxima: input end ] */ /* [wxMaxima: subsect start ] Koko dokumentin käsittely kerralla [wxMaxima: subsect end ] */ /* [wxMaxima: comment start ] Voit poistaa kaikkien laskujen tulokset wxMaximasta Cell-valikon komennolla "Remove All Output". Tee se nyt. Tutki, miltä dokumentti näyttää. [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] Tämä komento poistaa tulokset wxMaxima-käyttöliittymästä. Maximaan se ei vaikuta millään lailla. [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] Valitse muutama sievennyssolu ja suorita ne uudestaan. Näin saat yksittäiset tulokset takaisin. [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] Voit suorittaa kaikki dokumentin syötesolut (input) kerralla Cell-valikon komennolla "Evaluate All Cells". Se lähettää kaikki syötteet yksitellen Maximalle siinä järjestyksessä jossa ne dokumentissa ovat. Tee näin nyt. [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] Katso otsikon "1 Sieventäminen" yllä olevaa solua. Nyt tulos oli "3", edellisen kerran tulos oli: [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ %o1; /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Tämä johtuu siitä, että ensimmäisellä kerralla "kameli" ei tarkoittanut mitään, mutta uudella kerralla tarkoitti. [wxMaxima: comment end ] */ /* [wxMaxima: subsect start ] Viittaaminen edelliseen [wxMaxima: subsect end ] */ /* [wxMaxima: comment start ] Numeroilla viittaaminen, esim. "%o30", on vaarallista. Numerointi nimittäin ei tallennu osaksi wxm-dokumenttia, vaan muuttuu kun avaan tiedostosi uudestaan! [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] Turvallisempaa on viitata edelliseen laskettuun tulokseen pelkällä prosenttimerkillä. [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ %; /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Tämä viittaa edellisenä suoritettuun komentoon. Tämä on turvallisempi viittaustapa. [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] Suorita komento "Remove All Output". [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] Leikitään edelliseen viittaamisella lisää: [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ 7; /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Suorita nyt alla olevaa solua monta kertaa peräkkäin. [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ %+2; /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Prosentti viittaa aina viimeksi laskettuun asiaan, olipa se sitten missä tahansa. [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] Hienostuneempi esimerkki samalla idealla: [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ sin(x); /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Suorita nyt alla olevaa solua monta kertaa peräkkäin. [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ diff(%,x); /* [wxMaxima: input end ] */ /* [wxMaxima: subsect start ] Unohtaminen [wxMaxima: subsect end ] */ /* [wxMaxima: comment start ] Annetaan kissalle lukuarvo: [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ kissa:4; /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Vaikka poistat jotain wxMaximasta, Maxima ei unohda. Kysytäänpä, mitä muuttujia Maxima tuntee: [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ values; /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Katsotaan, mikä kissa on: [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ kissa; /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Pakotetaan Maxima unohtamaan kissa: [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ kill(kissa); /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Katsotaan kissaa uudestaan: [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ kissa; /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Maxima ei enää tiedä kissasta mitään. [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] Monesti on kätevää unohtaa kaikki vanhat muuttujat kerralla: [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ kill(values); /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Nyt Maxima ei muista enää mitään: [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ values; /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Tämä on tyhjä lista. [wxMaxima: comment end ] */ /* [wxMaxima: subsect start ] Tärkeä ohje palautettaviin tehtäviin [wxMaxima: subsect end ] */ /* [wxMaxima: comment start ] Kun palautat tehtäviä wxm-tiedostona, tallenna laatimasi tiedosto. Sen jälkeen sulje se ja avaa uudestaan. Valitse "Evaluate All Cells". Varmista, että tulokset toimivat järkevästi. [wxMaxima: comment end ] */ /* Maxima can't load/batch files which end with a comment! */ "Created with wxMaxima"$