<chapter id="reference">
<title>&kmplot;i seletused</title>

<!--
<mediaobject>
<imageobject>
<imagedata fileref="kfkt.png" format="PNG"/>
</imageobject>
</mediaobject>

<para>This menu entry or toolbar button opens the Functions Editor.  Here
you can enter up to 10 functions or
function groups.  The parser knows <firstterm>explicit</firstterm> and
<firstterm>parametric</firstterm> form.  With specific extensions it
is possible to add first and second derivatives and to choose values
for the function group parameter.</para>
-->

<sect1 id="func-syntax">
<title>Funktsioonide süntaks</title>

<para>Arvestama peab mõne süntaksireegliga:</para>

<screen><userinput>nimi(var1[, var2])=liige [;laiendid]</userinput>
</screen>


<variablelist>
<varlistentry>
<term>nimi</term>
<listitem>

<para>Funktsiooni nimi. Kui esimene märk on <quote>r</quote>, eeldab parser, et kasutatakse polaarseid koordinaate. Kui esimene märk on <quote>x</quote> (nt. <quote>xfunc</quote>), eeldab parser, et teise funktsiooni alguses seisab <quote>y</quote> (antud näite puhul <quote>yfunc</quote>), mis määrab funktsiooni parameetrivormingus. </para>
</listitem>
</varlistentry>
<varlistentry>
<term>var1</term>
<listitem><para>Funktsiooni muutuja</para></listitem>
</varlistentry>
<varlistentry>
<term>var2</term> 
<listitem><para>Funktsiooni <quote>rühmaparameeter</quote>. See peab olema eraldatud komaga. Rühmaparameetrit saab kasutada näiteks mitme graafiku joonistamiseks ühe funktsiooni põhjal. Parameetri väärtusi saab valida käsisi või kasutada mõne konkreetse parameetri jaoks liugurit. Liuguri väärtust muutes muudetakse ka parameetrit. Liuguriga saab määrata täisarvu vahemikus 0 kuni 100.</para></listitem>
</varlistentry>
<varlistentry>
<term>liige</term>
<listitem><para>Funktsiooni määrav avaldis.</para></listitem>
</varlistentry>
</variablelist>
</sect1>

<sect1 id="func-predefined">
<title>Eelmääratud funktsiooninimed ja konstandid</title>

<para>Kõiki &kmplot;ile teada eelnevalt määratud funktsioone ja konstante saab näha menüükäsuga <menuchoice><guimenu>Abi</guimenu><guimenuitem>Eelnevalt määratud matemaatikafunktsioonid</guimenuitem> </menuchoice>. Nendeks on: <variablelist>

<varlistentry>
<term>ruut, ruutjuur</term>
<listitem>
<para>Tagastab vastavalt arvu ruudu ja ruutjuure.</para>
</listitem>
</varlistentry>

<varlistentry>
<term>exp, ln</term>
<listitem>
<para>Tagastab vastavalt arvu eksponent- ja naturaallogaritmi.</para>
</listitem>
</varlistentry>

<varlistentry>
<term>log</term>
<listitem>
<para>Tagastab arvu kümnendlogaritmi.</para>
</listitem>
</varlistentry>

<varlistentry>
<term>sin, arcsin</term>
<listitem>
<para>Tagastab vastavalt arvu siinuse ja arkussiinuse. Pane tähele, et siinuse argument ja arkussiinuse tagastatav väärtus on radiaanides.</para>
</listitem>
</varlistentry>

<varlistentry>
<term>cos, arccos</term>
<listitem>
<para>Tagastab vastavalt arvu koosinuse ja arkuskoosinuse. Samuti radiaanides.</para>
</listitem>
</varlistentry>

<varlistentry>
<term>tan, arctan</term>
<listitem>
<para>Tagastab vastavalt arvu tangensi ja arkustangensi. Samuti radiaanides.</para>
</listitem>
</varlistentry>

<varlistentry>
<term>sh, arcsh</term>
<listitem>
<para>Tagastab vastavalt arvu hüperboolse siisnuse ja hüperboolse arkussiinuse.</para>
</listitem>
</varlistentry>

<varlistentry>
<term>ch, arcch</term>
<listitem>
<para>Tagastab vastavalt arvu hüperboolse koosinuse ja hüperboolse arkuskoosinuse.</para>
</listitem>
</varlistentry>

<varlistentry>
<term>th, arcth</term>
<listitem>
<para>Tagastab vastavalt arvu hüperboolse tangensi ja hüperboolse arkustangensi.</para>
</listitem>
</varlistentry>

<varlistentry>
<term>sin, arcsin</term>
<listitem>
<para>Tagastab vastavalt arvu siinuse ja arkussiinuse. Pane tähele, et siinuse argument ja arkussiinuse tagastatav väärtus on radiaanides.</para>
</listitem>
</varlistentry>

<varlistentry>
<term>cos, arccos</term>
<listitem>
<para>Tagastab vastavalt arvu koosinuse ja arkuskoosinuse. Samuti radiaanides.</para>
</listitem>
</varlistentry>

<varlistentry>
<term>pii, e</term>
<listitem>
<para>Konstandid, mis esindavad vastavalt &pgr; (3,14159...) ja e (2,71828...).</para>
</listitem>
</varlistentry>

</variablelist>
</para>

<para>Neid funktsioone ja konstante ning isegi kõiki kasutaja määratud funktsioone saab kasutada ka teljeseadistuste määramisel. Vaata <xref linkend="axes-config"/>. </para>

</sect1>

<sect1 id="func-extension">
  <title>Laiendid</title>
  <para>Funktsiooni laiendi määrab funktsiooni definitsioonile järgnev semikoolon, millele omakorda järgneb laiend. Laiendi võib kirjutada kiirredigeerimise kastis või &DCOP;-meetodiga addFunction. Parameeterfunktsioonidele ei ole ühtki laiendit, kuid N ja D[a,b] toimivad ka polaarfunktsioonide korral. Näiteks: <screen>
      <userinput>
        f(x)=x^2; A1
      </userinput>
    </screen> näitab graafikut y=x<superscript>2</superscript> koos selle esimese tuletisega. Järgnevalt kirjeldame toetatud laiendeid: <variablelist>
      <varlistentry>
	<term>N</term>
	<listitem>
	  <para>Funktsioon salvestatakse, kuid seda ei kujutata, nii et seda saab kasutada nagu iga muud eelnevalt või kasutaja määratud funktsiooni. </para>
	</listitem>
      </varlistentry>
      <varlistentry>
	<term>A1</term>
	<listitem>
	  <para>Funktsiooni tuletise graafik joonistatakse lisaks samas värvis, kuid peenema joonega. </para>
	</listitem>
      </varlistentry>
      <varlistentry>
	<term>A2</term>
	<listitem>
	  <para>Funktsiooni teise tuletise graafik joonistatakse samas värvis, kuid peenema joonega. </para>
	</listitem>
      </varlistentry>
      <varlistentry>
	<term>D[a,b]</term>
	<listitem>
	  <para>Määrab domeeni, mille funktsiooni näidatakse. </para>
	</listitem>
      </varlistentry>
      <varlistentry>
	<term>P[a{,b...}]</term>
	<listitem>
	  <para>Selle laiendiga saab anda väärtuste loendi graafikuna kujutatava funktsioonirühma parameetrile. Näiteks <userinput>f(x,k)=k*x;P[1,2,3]</userinput> joonista graafiku funktsioonidele f(x)=x, f(x)=2*x and f(x)=3*x. Funktsioone võib kasutada ka P võtme argumentidena. </para>
	</listitem>
      </varlistentry>
    </variablelist>
  </para>
  <para>Pane tähele, et kõiki neid operatsioone saab teha ka funktsiooni redigeerimise dialoogis. </para>
</sect1>

<sect1 id="math-syntax">
<title>Matemaatiline süntaks</title>
<para>&kmplot; kasutab tavapäraseid matemaatilise funktsiooni väljendamise viise, nii et see ei tohiks raskusi valmistada. Esinemissageduse järjekorras on &kmplot;ile tuntud operaatorid järgmised: <variablelist>

<varlistentry>
<term>^</term>
<listitem><para>Katus tähendab astendamist, &eg; <userinput>2^4</userinput> tagastab 16.</para>
</listitem>
</varlistentry>

<varlistentry>
<term>*, /</term>
<listitem>
<para>Tärn ja kaldkriips tähistavad korrutamist ja jagamist, &eg; <userinput>3*4/2</userinput> tagastab 6.</para>
</listitem>
</varlistentry>

<varlistentry>
<term>+, -</term>
<listitem><para>Pluss ja miinus tähistavad liitmist ja lahutamist, &eg; <userinput>1+3-2</userinput> tagastab 2.</para>
</listitem>
</varlistentry>

</variablelist>
</para>
<para>Pane tähele järjekorda, mis tähendab, et kui sulge ei kasutata, sooritatakse astendamine enne korrutamist/jagamist, mis omakorda sooritatakse enne liitmist/lahutamist. Nii tagastab <userinput>1+2*4^2</userinput> 33, aga mitte näiteks 144. Selle vältimiseks kasuta sulge. Toodud näite alusel tagastab <userinput>((1+2)*4)^2</userinput> <emphasis>hoopis</emphasis> 144. </para>
</sect1>

<!--
<sect1 id="coord-system">
<title>Coordinate Systems</title>

<para><inlinemediaobject>
<imageobject>
<imagedata fileref="ksys1.png" format="PNG"/>
</imageobject>
</inlinemediaobject></para>

<para>
<inlinemediaobject>
<imageobject>
<imagedata fileref="ksys2.png" format="PNG"/>
</imageobject>
</inlinemediaobject></para>

<para>
<inlinemediaobject>
<imageobject>
<imagedata fileref="ksys3.png" format="PNG"/>
</imageobject>
</inlinemediaobject></para>
-->
<sect1 id="coord-area"><title>Joonistamisala</title>
<para>Vaikimisi joonistatakse täpselt antud funktsioonid X-telje nähtaval osal. Funktsiooni muutmise dialoogis saab määrata ka mõne muu vahemiku. &kmplot; arvutab X-telje iga piksli jaoks välja funktsiooni väärtuse. Kui tulemuseks olev punkt asub joonistusalal, seostatakse see joone abil viimase joonistatud punktiga. </para>
<para>Parameeterfunktsioonid joonistatakse vastavalt parameetri väärtusele vahemikus 0 kuni 2&pgr;. Vahemiku võib määrata ka käsitsi funktsiooni dialoogis. </para>
</sect1>

<sect1 id="coord-cross">
<title>Niitristikkursor</title>
<para>Kui hiirekursor asub joonistamisalal, muutub kursor niitristikuks. Selle asukoha koordinaate näeb koordinaattelgede lõikekohtadel, samuti olekuribal peaakna allservas. </para>
<para>Funktsioonide väärtusi saab täpsemalt jälgida, kui klõpsata graafikule või selle kõrvale. Valitud funktsiooni näidatakse olekuriba parempoolses veerus. Niitristik võtab nüüd graafikuga sama värvi. Kui graafik on taustaga samavärvi, omandab niitristik taustavärvi vastandvärvuse. Hiire liigutamisel või vasaku/parema nooleklahvi vajutamisel järgib niitristik funktsiooni ning sa näed aktiivset X- ja Y-väärtust. Kui niitristik asub Y-telje lähedal, näidatakse olekuribal juurväärtust. Funktsioonide vahel saab liikuda üles/alla nooleklahvidega. Uus klõps kuskil mujal aknas või mõne muu kui nooleklahvi vajutamine lõpetab jälgimise. </para>
<para>Arvesta, et jälgimine on võimalik ainult otseselt määratud funktsioonide korral. Koordinaate näidatakse alati vastavalt Descartes'i süsteemile. Sel moel ei saa jälgida parameetrilisi funktsioone ega polaarkoordinaatides antud funktsioone. </para>

</sect1>

</chapter>
