mplBas000\\

\noindent
Teknillinen korkeakoulu \hfill Alestalo\\
Matematiikka

\smallskip

%\noindent


{\bf Peruskurssien Maple-k\"askyj\"a}

\smallskip

%\noindent
T\"am\"a tiivistelm\"a sis\"alt\"a\"a t\"arkeimm\"at Maple-k\"askyt version
17 mukaan.
(Muutettu linalg-tyyppiset LinearAlgebra-tyyppisiksi (Apiola) 10.3.14)

\medskip

\noindent
{\bf Yleist\"a:}

\begin{itemize}



\item Valitse ponnahdusikkunasta "Start with Blank Worksheet".

\item K\"asky suoritetaan painamalla Return.
K\"askyn lopussa voi olla kaksoispiste tai ei mit\"a\"an.
Kaksoispisteeseen p\"a\"attyv\"an k\"askyn tulosta ei n\"aytet\"a.
Samalla rivill\"a voi olla useita k\"askyj\"a, jotka t\"aytyy
erottaa toisistaan v\"alimerkill\"a : tai ;
Pitk\"a k\"asky kannattaa jakaa useille riveille
painamalla Shift + Return. 

\item Kaikista k\"askyist\"a saa lis\"atietoja kirjoittamalla
{\tt ?k\"askynnimi} ja painamalla Return. Erityisesti kannattaa
katsoa esimerkkej\"a.

\item Edellisen k\"askyn tulokseen voi viitata symbolilla \%,
toiseksi edelliseen symbolilla \%\%. Aikaisempien k\"askyjen 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\"a ohjelma ymm\"art\"a\"a vain desimaalipisteen.

\item Tavalliset laskutoimitukset kirjoitetaan samaan tapaan kuin
paperilla, $x^2$ muodossa {\tt x\^{}2}. Nuolin\"app\"aimell\"a $\to$ p\"a\"asee
pois yl\"aindeksist\"a.

\item My\"os pidemmille lausekkeille tai funktioille voidaan antaa
uusia nimi\"a: esim. {\tt p:= 2*x\^{}2-3*x} m\"a\"arittelee {\tt p}:n lausekkeena, 
mutta {\tt poly:= x -$>$ 2*x\^{}2-3*x} m\"a\"arittelee {\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\"aytt\"a\"a paljon monipuolisemmin.

\item Muuttujan arvon voi poistaa kirjoittamalla esim.
{\tt alpha:= 'alpha';} Kaikki m\"a\"aritelm\"at voi poistaa {\tt restart}-k\"askyll\"a,
mutta teksti j\"a\"a n\"akyviin ja k\"askyt voi antaa (esim. korjattuina) uudelleen.

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

\item Jos k\"asky kirjoitetaan heittomerkkien sis\"a\"an, saadaan sen
symbolinen muoto: esim.
{\tt 'sin(Pi)'=sin(Pi);}

\item Ohjelman toimintaan ei vaikuta se, miss\"a j\"arjestyksess\"a k\"askyt
ovat ty\"oarkilla, vaan se, {\bf miss\"a j\"arjestyksess\"a k\"askyt on suoritettu}.
Selvyyden vuoksi kannattaa toki edet\"a ylh\"a\"alt\"a alas.

\item Ty\"oarkin lataaminen (FILE-valikon avulla) Mapleen ei aiheuta siin\"a 
olevien komentojen suorittumista. Komennot on joko ``napsuteltava'' ENTER:ll\"a
tai suoritettava EDIT-valikon ``Execute worksheet''-valinnalla, jos n\"ain halutaan.
  
\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\"a\"an\-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\"a sit\"a voi kirjoittaa mill\"a\"an muulla tavalla.

\end{itemize}


\begin{itemize}

%\item aaaaaaaaaaaaaaaaaaaaaaaaaaaa
%\item Imaginaariyksikk\"o:

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

\item {\tt ln} tai {\tt log} Luonnollinen logaritmi ({\tt exp}-funktion k\"a\"anteisfunktio)

\item {\tt Pi} Ympyr\"an keh\"an 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\"ojuuri: {\tt sqrt(1+x\^{}2);}

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

\end{itemize}

\noindent
{\bf Muita k\"askyj\"a:}

\begin{itemize}

\item {\tt add} Summaa jonon termit: {\tt add(n\^{}2, n=1..100);}
Yl\"arajan oltava numeerinen.
Vrt. {\tt sum}. (sum osaa my\"os symboliselle yl\"arajalle, jos mahdollista.)

\item {\tt alias} Annetaan oma (lyhyt) ``lempinimi'': 
Esim: {\tt alias(rref=ReducedRowEchelonForm)}

\item {\tt assign} M\"a\"arittelee muuttujien arvot annetuista yht\"al\"oist\"a: \\
{\tt fsolve(x\^{}3+x+1=0,x); assign(\%);} (``vaarallinen, mutta helppo'')

%\item {\tt augment} T\"aydent\"a\"a vektorin matriisiin viimeiseksi sarakkeeksi:\\
%{\tt augment(A,b);}

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

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

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

\item {\tt Determinant} Neli\"omatriisin determinantti: {\tt Determinant(A);}

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

\item {\tt display} Grafiikkojen yhdist\"aminen:\\ 
{\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 DotProduct} Vektoreiden pistetulo: {\tt DotProduct(a,b);}

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

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

\item {\tt eval} Evaluoi lausekkeen (laskee arvon). Useimmin k\"aytetty muoto:
{\tt eval(lauseke, x=a)} (Vrt. subs, jossa p\"ainvastainen j\"arjestys.) 

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

\item {\tt evalf} Laskee liukulukulikiarvon (m\"a\"ar\"atyll\"a tarkkuudella): \\
{\tt evalf(Pi); evalf(Pi,100);} (f - float)

%\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\"asky: 
{\tt for n from 1 to 10 do a[n]:= sin(Pi/n) end do;} \\
{\bf Huom:} T\"am\"an toiston j\"alkeen muuttujalle $n$ j\"a\"a arvoksi 11.

\item {\tt fsolve} Yht\"al\"on 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\"a\"a tasok\"ayr\"an pelk\"an yht\"al\"on perusteella: \\
{\tt implicitplot(x\^{}2-x*y+y\^{}2=1, x=-2..2, y=-2..2);} 
(Vrt. \texttt{contourplot})

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

\item {\tt inverse} K\"a\"anteismatriisi: {\tt inverse(A);} (vanhassa 
\texttt{linalg}:ssa
(Uudempi {\tt MatrixInverse LinearAlgebra-kirjastossa} )

\item {\tt LinearSolve} Yht\"al\"oryhm\"an $A{\bf x}={\bf b}$ ratkaiseminen: 
{\tt LinearSolve(A,b);} \\
Toimii vain silloin, kun ratkaisu on yksik\"asitteinen.

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

\item {\tt Matrix} Matriisin rakentaminen: \\
{\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\"aminen: \\
{\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\"a\"arittelyt.

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

\item {\tt simplify} Lausekkeen sievent\"aminen: {\tt simplify(\%);}

\item {\tt solve} Yht\"al\"on ratkaiseminen (tarkasti): {\tt solve(x\^{}2+x=1,x);}

\item {\tt subs} Sijoitusk\"asky: {\tt subs(x=1,polynomi);}
{\bf Huom:} Ei muuta $polynomi$n m\"a\"arittely\"a. 
(Vrt. \texttt{eval(polynomi,x=1)};)

\item {\tt sum} Summaa jonon termit: {\tt sum(n\^{}2, n=1..100);}
(vrt. \texttt{add}). \texttt{sum} suorittaa my\"os symbolista summausta.

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

\item {\tt with} Lis\"apakettien latausk\"asky: {\tt with(plots); 
with(LinearAlgebra);}

\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\"asm\"alleen sama kuin {\tt [jono]}.

\end{itemize}


\noindent
{\bf Tavallisimpia virheit\"a:}

\begin{itemize}

\item K\"asky on v\"a\"arin kirjoitettu: sulkuja puuttuu tai ne eiv\"at t\"asm\"a\"a.

\item M\"a\"arittelyss\"a on k\"aytetty {\tt =} eik\"a {\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\"askyn j\"alkeen ei ole suoritettu kaikkia tarvittavia
k\"askyj\"a.

\item \%-merkki viittaa viimeisen {\bf suoritetun} k\"askyn tulokseen, esimerkiksi
virheilmoitukseen. \% ei automaattisesti tarkoita ty\"oarkilla heti yl\"apuolella 
\end{itemize}


\textbf{Tiedoston Latex-koodi:} (Muokkaa tarpeittesi mukaan) \\
\href{../mplteht/mplBasic/mplBas000.tex}{../mplteht/mplBasic/mplBas000.tex}


\hrule



