<chapter id="reference">
<title
>Overzicht van &kmplot; </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
>Syntaxis van functies</title>

<para
>Er zijn enkele syntaxisregels waaraan moet worden voldaan:</para>

<screen
><userinput
>naam(var1[, var2])=term [;extensies]</userinput
>
</screen>


<variablelist>
<varlistentry>
<term
>naam</term>
<listitem>

<para
>De naam van de functie. Als het eerste teken een <quote
>r</quote
> is, neemt de functielezer aan dat u poolcoördinaten gebruikt. Is het eerste teken een <quote
>x</quote
> (bijvoorbeeld <quote
>xfunc</quote
>), dan verwacht de functieleesprogramma nog een functie die met een <quote
>y</quote
> begint (hier <quote
>yfunc</quote
>), waarmee de functie in parametrische vorm wordt gedefinieerd. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
>var1</term>
<listitem
><para
>De functievariabele</para
></listitem>
</varlistentry>
<varlistentry>
<term
>var2</term
> 
<listitem
><para
>De <quote
>groepparameter</quote
> van de functie. Deze moet door een komma van de functievariabele worden gescheiden. U kunt de groepparameter bijvoorbeeld gebruiken om een aantal grafieken te plotten van dezelfde functie. De waarden van de parameter kunnen met de hand worden gekozen of u kunt een schuifknop hiervoor gebruiken waarmee 1 parameter wordt bestuurd. Door de schuifknop te verschuiven verandert u de waarde van de parameter. De schuifknopwaarden variëren tussen 0 en 100.</para
></listitem>
</varlistentry>
<varlistentry>
<term
>term</term>
<listitem
><para
>De expressie waarmee de functie wordt gedefinieerd.</para
></listitem>
</varlistentry>
</variablelist>
</sect1>

<sect1 id="func-predefined">
<title
>Voorgedefinieerde functienamen en constanten</title>

<para
>Alle voorgedefinieerde functies en constanten in &kmplot; kunt u zien in menu <menuchoice
><guimenu
>Help</guimenu
><guimenuitem
>Voorgedefinieerde Wiskundige Functies</guimenuitem
> </menuchoice
>. Het zijn: <variablelist>

<varlistentry>
<term
>sqr, sqrt</term>
<listitem>
<para
>Leveren in die volgorde het kwadraat en de vierkantswortel van een getal.</para>
</listitem>
</varlistentry>

<varlistentry>
<term
>exp, ln</term>
<listitem>
<para
>Leveren in die volgorde de e-macht en de natuurlijke logaritme van een getal.</para>
</listitem>
</varlistentry>

<varlistentry>
<term
>log</term>
<listitem>
<para
>Levert de logaritme, met grondtal 10, van een getal.</para>
</listitem>
</varlistentry>

<varlistentry>
<term
>sin, arcsin</term>
<listitem>
<para
>Leveren in die volgorde de sinus en de inverse sinus (arcsinus) van een getal. Let op: het argument van sin en het antwoord van arcsin zijn in radialen.</para>
</listitem>
</varlistentry>

<varlistentry>
<term
>cos, arccos</term>
<listitem>
<para
>Leveren in die volgorde de cosinus en de inverse cosinus (arccosinus) van een getal. Let op: het argument van cos en het antwoord van arccos zijn in radialen.</para>
</listitem>
</varlistentry>

<varlistentry>
<term
>tan, arctan</term>
<listitem>
<para
>Leveren in die volgorde de tangens en de inverse tangens (arctangens) van een getal. Let op: het argument van tan en het antwoord van arctan zijn in radialen.</para>
</listitem>
</varlistentry>

<varlistentry>
<term
>sinh, arcsinh</term>
<listitem>
<para
>Leveren in die volgorde de sinus hyperbolicus en de inverse sinus hyperbolicus (arcsinus hyperbolicus) van een getal.</para>
</listitem>
</varlistentry>

<varlistentry>
<term
>cosh, arccosh</term>
<listitem>
<para
>Leveren in die volgorde de cosinus hyperbolicus en de inverse cosinus hyperbolicus (arccosinus hyperbolicus) van een getal.</para>
</listitem>
</varlistentry>

<varlistentry>
<term
>tanh, arctanh</term>
<listitem>
<para
>Leveren in die volgorde de tangens hyperbolicus en de inverse tangens hyperbolicus (arctangens hyperbolicus) van een getal.</para>
</listitem>
</varlistentry>

<varlistentry>
<term
>sin, arcsin</term>
<listitem>
<para
>Leveren in die volgorde de sinus en de inverse sinus (arcsinus) van een getal. Let op: het argument van sin en het antwoord van arcsin zijn in radialen.</para>
</listitem>
</varlistentry>

<varlistentry>
<term
>cos, arccos</term>
<listitem>
<para
>Leveren in die volgorde de cosinus en de inverse cosinus (arccosinus) van een getal. Let op: het argument van cos en het antwoord van arccos zijn in radialen.</para>
</listitem>
</varlistentry>

<varlistentry>
<term
>pi, e</term>
<listitem>
<para
>Constanten met in die volgorde de waarden &pgr; (3,14159...) en e (2,71828...).</para>
</listitem>
</varlistentry>

</variablelist>
</para>

<para
>U kunt deze functies en constanten, en zelfs alle zelfgedefinieerde functies, ook gebruiken voor de instellingen van de assen. Zie <xref linkend="axes-config"/>. </para>

</sect1>

<sect1 id="func-extension">
  <title
>Uitbreidingen</title>
  <para
>Een uitbreiding (extension) van een functie wordt opgegeven door een puntkomma, gevolgd door de uitbreiding achter de functiedefinitie. De uitbreiding kan ofwel in het "Quick Edit"vak worden geschreven of met behulp van de DCOP-methode "Parser addFunction". Geen van de uitbreidingen zijn beschikbaar voor parametrische functies, maar N en D[a,b] werken ook voor polaire functies. Bijvoorbeeld: <screen>
      <userinput>
        f(x)=x^2; A1
      </userinput>
    </screen
> toont de grafiek van y=x<superscript
>2</superscript
> samen met de eerste afgeleide functie. Ondersteunde uitbreidingen worden hieronder beschreven: <variablelist>
      <varlistentry>
	<term
>N</term>
	<listitem>
	  <para
>De functie wordt opgeslagen maar de grafiek ervan wordt niet getekend. De functie kan dan net als elke andere functie, voorgedefinieerd of door de gebruiker gedefinieerd, worden gebruikt. </para>
	</listitem>
      </varlistentry>
      <varlistentry>
	<term
>A1</term>
	<listitem>
	  <para
>Ook de grafiek van de afgeleide functie zal worden getekend, in dezelfde kleur maar met een kleinere lijndikte. </para>
	</listitem>
      </varlistentry>
      <varlistentry>
	<term
>A2</term>
	<listitem>
	  <para
>Ook de grafiek van de tweede afgeleide functie zal worden getekend, in dezelfde kleur maar met een kleinere lijndikte. </para>
	</listitem>
      </varlistentry>
      <varlistentry>
	<term
>D[a,b]</term>
	<listitem>
	  <para
>Bepaalt het domein (interval x- waarden) voor welke de functie zal worden getekend. </para>
	</listitem>
      </varlistentry>
      <varlistentry>
	<term
>P[a{,b...}]</term>
	<listitem>
	  <para
>Geeft een verzameling van parameterwaarden waarvoor de functie zal worden getekend. Bijvoorbeeld: met <userinput
>f(x,k)=k*x;P[1,2,3]</userinput
> worden de grafieken getekend van de functies f(x)=x, f(x)=2*x en f(x)=3*x. Met de P-optie kunnen ook functies worden gebruikt als argumenten. </para>
	</listitem>
      </varlistentry>
    </variablelist>
  </para>
  <para
>Merk op dat u al deze bewerkingen ook kunt uitvoeren met gebruik van de dialoog van de functiebewerker. </para>
</sect1>

<sect1 id="math-syntax">
<title
>Wiskundige syntaxis</title>
<para
>In &kmplot; worden wiskundige functies op de gebruikelijke manier geschreven, dus daar zult u geen moeite mee hebben. De bewerkingen die &kmplot; kent zijn, in de volgorde van afnemende prioriteit: <variablelist>

<varlistentry>
<term
>^</term>
<listitem
><para
>Het dakje staat voor machtverheffen. &Bijv;, <userinput
>2^4</userinput
> geeft 16.</para>
</listitem>
</varlistentry>

<varlistentry>
<term
>*, /</term>
<listitem>
<para
>Het sterretje en de schuine streep staan voor vermenigvuldigen en delen. &Bijv;, <userinput
>3*4/2</userinput
> geeft 6.</para>
</listitem>
</varlistentry>

<varlistentry>
<term
>+, -</term>
<listitem
><para
>De plus en de min staan voor optellen en aftrekken. &Bijv;, <userinput
>1+3-2</userinput
> geeft 2.</para>
</listitem>
</varlistentry>

</variablelist>
</para>
<para
>Let op de prioriteit, wat betekent dat als er geen haakjes worden gebruikt, machtverheffen voorgaat op vermenigvuldigen/delen, en die worden weer eerder gedaan dan optellen/aftrekken. Dus geeft <userinput
>1+2*4^2</userinput
> 33, en niet, zeg maar, 144. Om dit te veranderen moet u haakjes gebruiken. Zie het bovenstaande voorbeeld, <userinput
>((1+2)*4)^2</userinput
> <emphasis
>geeft</emphasis
> als resultaat 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
>Plotgebied</title>
<para
>Standaard worden expliciet gegeven functies geplot voor de gehele zichtbare x-as. In de bewerkingsdialoog voor de functie kunt u een ander interval opgeven. &kmplot; berekent voor elke pixel op de x-as de functiewaarde. Als het resulterende punt binnen het plotgebied ligt, wordt het met het laatste punt dat al getekend is verbonden. </para>
<para
>Parametrische functies worden geplot voor waarden van de parameter van 0 tot 2&pgr;. U kunt ook het plotinterval instellen in de dialoog voor de functie. </para>
</sect1>

<sect1 id="coord-cross">
<title
>Aanwijzer met gekruiste draden</title>
<para
>Als de muisaanwijzer in het plotgebied is, verandert de cursor in twee gekruiste draden. De huidige coördinaten kunnen dan worden afgelezen op de assen , en ook in de statusbalk onderaan het hoofdvenster. </para>
<para
>U kunt de waarde van de functie nauwkeuriger volgen (traceren) door op of net naast de grafiek ervan te klikken. De naam van de geselecteerde functie ziet u in de statusbalk in de rechter kolom. De kruisdraad wordt aan de grafiek gekoppeld en krijgt dezelfde kleur als die grafiek. Als de kleur van de grafiek gelijk is aan de kleur van de achtergrond krijgt de kruisdraad de complementaire kleur. Door de muis te verplaatsen of door op de linker- en rechterpijltjes te drukken zal de kruisdraad de grafiek volgen en kunt u de huidige waarden voor x en y aflezen. Als de kruisdraad dicht bij de y-as komt kunt u de dichtstbijzijnde wortel (waarde van x waarvoor y(x)=0) in de statusbalk aflezen. U kunt van (de grafiek van) de ene naar de andere functie gaan met behulp van de op- en neertoetsen. U komt uit deze volg- (traceer)modus door ergens in het scherm te klikken of op een willekeurige toets te drukken die niet wordt gebruikt voor het navigeren. </para>
<para
>Merk op dat het volgen (traceren) alleen mogelijk is met functies die expliciet worden gegeven. De coördinaten worden altijd getoond als Cartesische coördinaten. Noch parametrische functies met meerdere y-waarden bij één x-waarde, noch functies in poolcoördinaten kunnen op deze manier worden gevolgd. </para>

</sect1>

</chapter>

<!--
Local Variables:
mode: sgml
sgml-minimize-attributes:nil
sgml-general-insert-case:lower
sgml-indent-step:0
sgml-indent-data:nil
sgml-parent-document:("index.docbook" "BOOK" "CHAPTER")
End:
-->
