\documentclass[10pt,twocolumn,landscape]{article}
\usepackage[latin1]{inputenc}
\usepackage[finnish]{babel}
\usepackage{amsmath}
\usepackage{epsfig}
\pagestyle{empty}


\addtolength{\textwidth}{2.0cm}
\addtolength{\textheight}{5.5cm}
\setlength{\oddsidemargin}{-1.5cm}
\addtolength{\topmargin}{-2.8cm}
\setlength{\columnsep}{1.0cm}

\begin{document}

\noindent
Teknillinen korkeakoulu \hfill Alestalo\\
Matematiikka

\smallskip

\noindent
{\bf Peruskurssien Maple-käskyjä}

\smallskip

\noindent
Tämä tiivistelmä sisältää tärkeimmät Maple-käskyt version
15 mukaan.

\medskip

\noindent
{\bf Yleistä:}

\begin{itemize}

\item Valitse ponnahdusikkunasta "Start with Blank Worksheet".

\item Käsky suoritetaan painamalla Return.
Käskyn lopussa voi olla kaksoispiste tai ei mitään.
Kaksoispisteeseen päättyvän käskyn tulosta ei näytetä.
Samalla rivillä voi olla useita käskyjä, jotka täytyy
erottaa toisistaan välimerkillä : tai ;
Pitkä käsky kannattaa jakaa useille riveille
painamalla Shift + Return. 

\item Kaikista käskyistä saa lisätietoja kirjoittamalla
{\tt ?käskynnimi} ja painamalla Return. Erityisesti kannattaa
katsoa esimerkkejä.

\item Edellisen käskyn tulokseen voi viitata symbolilla \%,
toiseksi edelliseen symbolilla \%\%. Aikaisempien käskyjen tuloksiin
voi viitata niiden numeroiden perusteella: Valitse {\bf Insert} $\to$
 {\bf Label} tai Ctrl + l.

\item Vakioille voidaan antaa arvoja esim. muodossa {\tt alpha:= 1.5;}
Huomaa, että ohjelma ymmärtää vain desimaalipisteen.

\item Tavalliset laskutoimitukset kirjoitetaan samaan tapaan kuin
paperilla, $x^2$ muodossa {\tt x\^{}2}. Nuolinäppäimellä $\to$ pääsee
pois yläindeksistä.

\item Myös pidemmille lausekkeille tai funktioille voidaan antaa
uusia nimiä: esim. {\tt p:= 2*x\^{}2-3*x} määrittelee {\tt p}:n lausekkeena, 
mutta {\tt poly:= x -$>$ 2*x\^{}2-3*x} määrittelee {\tt poly}:n funktiona.
Funktiosta saadaan helposti lauseke, mutta vastakkainen suunta on
hankalampi: Maplen kannalta {\tt p} ja {\tt poly(x)} ovat sama asia,
mutta funktiota {\tt poly} voi käyttää paljon monipuolisemmin.

\item Muuttujan arvon voi poistaa kirjoittamalla esim.
{\tt alpha:= 'alpha';} Kaikki määritelmät voi poistaa {\tt restart}-käskyllä,
mutta teksti jää näkyviin ja käskyt voi antaa (esim. korjattuina) uudelleen.

\item Laskutoimituksia lukuunottamatta muut käskyt toimivat kuten funktiot, 
eli niitä käytetään tyyliin {\tt funktionnimi(muuttuja);} tai mahdollisesti
tarkenteiden kanssa muodossa {\tt funktionnimi(muuttuja, tarkenteita);}
alkuhaparoinnin jälkeen {\bf ei saa} enää tehdä sellaisia virheitä kuin
{\tt sin x},  {\tt sinx}, {\tt exp\^{}x}, {\tt exp\^{}(x)}.
Oikeat muodot ovat siis {\tt sin(x), exp(x)}.

\item Jos käsky kirjoitetaan heittomerkkien sisään, saadaan sen
symbolinen muoto: esim.
{\tt 'sin(Pi)'=sin(Pi);}

\item Ohjelman toimintaan ei vaikuta se, missä järjestyksessä käskyt
ovat työarkilla, vaan se, {\bf missä järjestyksessä käskyt on suoritettu}.
Selvyyden vuoksi kannattaa toki edetä ylhäältä alas.

\end{itemize}


\noindent
{\bf Vakiot ja alkeisfunktiot:}

\begin{itemize}

\item {\tt abs} Itseisarvo tai moduli: {\tt abs(-3);}

\item {\tt arcos, arcsin, arctan, arccot} Trigonometristen funktioiden
kään\-teis\-funk\-ti\-ot: {\tt arctan(1);}

\item {\tt argument} Kompleksiluvun argumentti (vaihekulma):
{\tt argument(I);}

\item {\tt cos, sin, tan, cot} Trigonometriset funktiot: {\tt sin(Pi/6);}

\item {\tt exp} Eksponenttifunktio: {\tt exp(2*x);} {\bf Huom:} Neperin luku
on {\tt exp(1)} eikä sitä voi kirjoittaa millään muulla tavalla.

\item {\tt I} Imaginaariyksikkö: {\tt z:= 1+2*I;}

\item {\tt ln} tai {\tt log} Luonnollinen logaritmi ({\tt exp}-funktion käänteisfunktio)

\item {\tt Pi} Ympyrän kehän pituuden suhde halkaisijaan $\approx 3,\! 14$.
Symboli {\tt pi} tarkoittaa kreikkalaista kirjainta $\pi$.

\item {\tt Re, Im} Kompleksiluvun reaali- ja imaginaariosa: {\tt Re(1-I);}\\
{\bf Huom}: Helpoin tapa muuntaa kompleksiluku tason pisteeksi (= lista): {\tt [Re,Im](2+3*I);}

\item {\tt sqrt} Neliöjuuri: {\tt sqrt(1+x\^{}2);}

\item symbolien indeksöinti: {\tt a[1]:= 6; a[2]:= 9;}

\end{itemize}

\noindent
{\bf Muita käskyjä:}

\begin{itemize}

\item {\tt assign} Määrittelee muuttujien arvot annetuista yhtälöistä: \\
{\tt fsolve(x\^{}3+x+1=0,x); assign(\%);}

\item {\tt augment} Täydentää vektorin matriisiin viimeiseksi sarakkeeksi:\\
{\tt augment(A,b);}

\item {\tt backsub} Takaisinsijoitus porrasmuodossa olevaan matriisiin:\\
{\tt backsub(A);} 

\item {\tt crossprod} Vektoreiden ristitulo: {\tt crossprod(a,b);}

\item {\tt D} Derivaatta funktiolle: {\tt f:= x -$>$ x\^{}2;} {\tt D(f);}

\item {\tt det} Matriisin determinantti: {\tt det(A);}

\item {\tt diff} Lausekkeen derivaatta:\\ 
{\tt diff(p,x); diff(p,x,x); diff(p, x\$5);}

\item {\tt display} Näyttää useita nimettyjä kuvia yhdessä:\\ 
{\tt A:= plot(sin(x),x=0..Pi):\\
B:= implicitplot(sin(x+cos(y))=x, x=0..1, y=0..Pi):}\\ 
{\tt display($\{$A,B$\}$);}

\item {\tt dotprod} tai {\tt innerprod} Vektoreiden pistetulo: {\tt dotprod(a,b);}

\item {\tt eigenvals} Matriisin ominaisarvot: {\tt eigenvals(A);}

\item {\tt eigenvects} Matriisin ominaisarvot kertalukuineen ja vastaavat
ominaisvektorit: {\tt eigenvects(A);}

\item {\tt evalc} Sieventää kompleksilukuja koskevia lausekkeita:\\
{\tt sqrt(1+I); evalc(\%);}

\item {\tt evalf} Laskee likiarvon (määrätyllä tarkkuudella): \\
{\tt evalf(Pi); evalf(Pi,100);}

\item {\tt evalm} Matriiseja koskevan laskutoimituksen arvon laskeminen:\\
{\tt evalm(A \&* B);}

\item {\tt expand} Laskee lausekkeen auki: {\tt expand((x+y)*(1-x));}

\item {\tt for} Toistokäsky: {\tt for n from 1 to 10 do a[n]:= sin(Pi/n) od;} \\
{\bf Huom:} Tämän toiston jälkeen muuttujalle $n$ jää arvoksi 11.

\item {\tt fsolve} Yhtälön numeerinen ratkaiseminen: {\tt fsolve(x\^{}3+x=1,x);}
{\tt fsolve(x\^{}3+x=1,x,complex);}

\item {\tt gausselim} Muuntaa matriisin porrasmuotoon: {\tt gausselim(A);}

\item {\tt implicitplot} Piirtää tasokäyrän pelkän yhtälön perusteella: \\
{\tt implicitplot(x\^{}2-x*y+y\^{}2=1, x=-2..2, y=-2..2);}

\item {\tt int} Integroimiskäsky: {\tt int(sqrt(x+x\^{}2), x=0..1);} \\
Numeerisesti: {\tt evalf(Int(f(x), x=a..b));}

\item {\tt inverse} Käänteismatriisi: {\tt inverse(A);}

\item {\tt linsolve} Yhtälöryhmän $A{\bf x}={\bf b}$ ratkaiseminen: 
{\tt linsolve(A,b);} \\
Toimii vain silloin, kun ratkaisu on yksikäsitteinen.

\item {\tt map} Kuvaa funktion jokaiseen listan alkioon: {\tt map(x-$>$x\^{}3, [a,b,c]);}

\item {\tt matrix} Matriisin rakentaminen: \\
{\tt matrix(2,2,[a,b,c,d]);} tai {\tt matrix([[a,b],[c,d]]);}

\item {\tt nops} listan pituus (number of operands): {\tt nops([a,b,c,d]);}

\item {\tt plot} Kuvaajan piirtäminen: \\
{\tt plot(sin(x),x=0..Pi);} {\tt plot([sin(x),cos(x)],x=0..Pi);}

\item {\tt product} eli tulo, kertoo jonon termit: {\tt product(1/n\^{}2, n=1..10);}

\item {\tt restart} Poistaa muistista kaikki määrittelyt.

\item {\tt seq} Jonon muodostaminen: {\tt seq(n\^{}2, n=1..5);}

\item {\tt simplify} Lausekkeen sieventäminen: {\tt simplify(\%);}

\item {\tt solve} Yhtälön ratkaiseminen (tarkasti): {\tt solve(x\^{}2+x=1,x);}

\item {\tt subs} Sijoituskäsky: {\tt subs(x=1,polynomi);}
{\bf Huom:} Ei muuta $polynomi$n määrittelyä.

\item {\tt sum} Summaa jonon termit: {\tt sum(n\^{}2, n=1..100);}

\item {\tt vector} Vektorin muodostaminen: {\tt vector([1,3,5]);}

\item {\tt with} Lisäpakettien latauskäsky: {\tt with(plots); with(linalg);}

\end{itemize}

\noindent
{\bf Tietorakenteita:}

\begin{itemize}

\item Jono on Maplessa kokoelma pilkulla erotettuja olioita, esim.
{\tt jonoA:= 3,4,5,f,sin(7);} tai {\tt jonoB:= seq(n\^{}3, n=-3..8);}
Jonojen alkioihin voi viitata muodossa {\tt jononnimi[moneskoalkio]}.

\item Lista on täsmälleen sama kuin {\tt [jono]}.

\end{itemize}


\noindent
{\bf Tavallisimpia virheitä:}

\begin{itemize}

\item Käsky on väärin kirjoitettu: sulkuja puuttuu tai ne eivät täsmää.

\item Määrittelyssä on käytetty {\tt =} eikä {\tt :=}

\item Jonot, listat tai vektorit sekaisin: kaikki ovat eri asioita.

\item Lausekkeet ja funktiot sekaisin.

\item Muuttujilla on vanhoja arvoja aikaisemmista laskuista.

\item {\tt restart}-käskyn jälkeen ei ole suoritettu kaikkia tarvittavia
käskyjä.

\item \%-merkki viittaa viimeisen {\bf suoritetun} käskyn tulokseen, esimerkiksi
virheilmoitukseen. \% ei automaattisesti tarkoita työarkilla heti yläpuolella 
olevaa käskyä.

\end{itemize}

\end{document}



