<?xml version="1.0" ?>
<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
  <!ENTITY kappname "&kalgebra;">
  <!ENTITY package "kdeedu">
  
  <!ENTITY commands SYSTEM "commands.docbook">
  
  <!ENTITY % addindex "IGNORE">
  <!ENTITY % Dutch "INCLUDE">
]>

<book lang="&language;">

<bookinfo>
<title
>Het handboek van &kalgebra;</title>

<authorgroup>
<author
><firstname
>Aleix</firstname
> <surname
>Pol</surname
> <affiliation
> <address
>&Aleix.Pol.mail;</address>
</affiliation>
</author>
&Jaap.Woldringh; 
</authorgroup>

<copyright>
<year
>2007</year>
<holder
>&Aleix.Pol;</holder>
</copyright>

<legalnotice
>&FDLNotice;</legalnotice>


<date
>2010-09-22</date>
<releaseinfo
>0.10 (&kde; 4.5)</releaseinfo>

<abstract>
<para
>&kalgebra; is een rekenmachine gebaseerd op de zg. "content markup MathML"-taal. Tegenwoordig kan het eenvoudige MathML-bewerkingen doen (rekenkundige en logische), en 2D- en 3D-grafieken weergeven. U hoeft MathML niet te kennen om met &kalgebra; te kunnen werken. </para>
</abstract>

<keywordset>
<keyword
>KDE</keyword>
<keyword
>kdeedu</keyword>
<keyword
>grafiek</keyword>
<keyword
>wiskunde</keyword>
<keyword
>2D</keyword>
<keyword
>3D</keyword>
<keyword
>mathML</keyword>
</keywordset>

</bookinfo>

<chapter id="introduction"
> 
<title
>Inleiding</title
> 
<para
>&kalgebra; is een op MathML gebaseerde grafische rekenmachine. Hoewel die aanvankelijk met MathML werkte kan nu iedereen met een beetje wiskundige kennis ermee werken.</para
> 

<screenshot>
<screeninfo
>Hier ziet u een schermbeeld van het hoofdvenster van &kalgebra;</screeninfo>
	<mediaobject>
	  <imageobject>
	    <imagedata fileref="kalgebra-main-window.png" format="PNG"/>
	  </imageobject>
	    <textobject>
	    <phrase
>Hoofdvenster van &kalgebra;</phrase>
	  </textobject>
	</mediaobject>
</screenshot>

<para
>Het hoofdvenster van &kalgebra; heeft tabbladen voor <guilabel
>Console</guilabel
>, <guilabel
>2D-grafiek</guilabel
> , <guilabel
>3D-grafiek</guilabel
> en <guilabel
>Woordenboek</guilabel
>. In deze tabbladen vindt u een invoerveld waarin u uw functies kunt typen of uw berekeningen kunt doen. </para>

<para
>Gemeenschappelijke menuopties voor de tabbladen<guilabel
>Console</guilabel
>, <guilabel
>2D-grafiek</guilabel
> en <guilabel
>3D-grafiek</guilabel
>:</para>

<variablelist>

<varlistentry>
<term
><menuchoice
><shortcut
><keycombo action="simul"
>&Ctrl; <keycap
>N</keycap
></keycombo
></shortcut
> <guimenu
>Sessie</guimenu
><guimenuitem
>Nieuw</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Opent een nieuw venster van &kalgebra;</para
></listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><shortcut
><keycombo action="simul"
>&Ctrl; <keycap
>Q</keycap
></keycombo
></shortcut
> <guimenu
>Sessie</guimenu
><guimenuitem
>Afsluiten</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Sluit het programma af.</para
></listitem>
</varlistentry>

</variablelist>

</chapter>

<chapter id="syntax">
<title
>Syntaxis</title>

<para
>Om te begrijpen hoe het werkt is het het beste ons te realiseren dat onze invoer wordt omgezet naar MathML, hoewel kennis van MathML niet nodig is. Ik heb de syntaxis voornamelijk gebaseerd op gezond verstand, zodat die niet moeilijk is om te begrijpen. Ik heb daarbij goed gekeken naar de syntaxis van Maxima en Maple, zodat die van &kalgebra; daarmee te vergelijken is.</para>
<para
>Hier is een lijst van de tot nu toe beschikbare bewerkingen:</para>
<itemizedlist>
<listitem
><para
>+ - * / : Optellen, aftrekken, vermenigvuldigen en delen.</para
> </listitem>
<listitem
><para
>^, **: Machtverheffen, u kunt ze beiden gebruiken. Het is ook mogelijk de unicode ² -karakters te gebruiken. U kunt machten ook gebruiken voor het berekenen van wortels zoals: a**(1/b)</para
></listitem>
<listitem
><para
>-&gt; : lambda. Dit is de manier om in een functie de begrensde variabele aan te geven.</para
></listitem>
<listitem
><para
>x=a..b : Dit wordt gebruikt wanneer het nodig is om een interval af te bakenen (begrensde variabele+bovengrens+ondergrens). Dit betekent dat x waarden krijgt tussen a en b.</para
></listitem>
<listitem
><para
>() : Wordt gebruikt om een hogere prioriteit aan te geven.</para
></listitem>
<listitem
><para
>abc(params) :  Functies. Wanneer de ontleder een functie aantreft controleert die of abc een bewerking is. Indien dit zo is, dan wordt het als een bewerking beschouwd, en anders als een door de gebruiker gemaakte functie.</para
></listitem>
<listitem
><para
>:= : Definitie.Wordt gebruikt om een variabele te definiëren. U kunt dingen doen als x:=3, x:=y, waarin y al of niet is gedefiniëerd, of omtrek :=r->2*pi*r. </para
></listitem>
<listitem
><para
>? : Piecewise voorwaarden. Met piecewise (betekent: in gedeelten) kunnen we in &kalgebra; voorwaardelijke bewerkingen definiëren. Indien we een voorwaarde opgeven voor het '?', dan wordt de bewerking erna alleen uitgevoerd als die voorwaarde waar is, indien een '?' wordt aangetroffen zonder voorwaarde daaraan voorafgaand, dan zal de bewerking erna worden uitgevoerd. Voorbeeld: piecewise { x=0 ? 0, x=1 ? x+1, ? x**2 } </para
></listitem>
<listitem
><para
>{ } : plaatshouder in MathML. Kan worden gebruikt om een plaatshouder te definiëren. Wordt het meest met piecewise worden gebruikt. </para
></listitem>
<listitem
><para
>= &gt; &gt;= &lt; &lt;= : Vergelijking van getallen, in de genoemde volgorde gelijk aan, groter dan of gelijk aan, kleiner dan en kleiner dan of gelijk aan</para
></listitem>
</itemizedlist>
<para
>U zou mij nu kunnen vragen wat een gebruiker te maken heeft met MathML. Dat is eenvoudig te beantwoorden. Hiermee kunnen we functies gebruiken, zoals cos(), sin(), of elke andere goniometrische functie, sum() of product(). Het geeft niet welke. We kunnen plus(), times() en alles waar een bewerking bij hoort gebruiken. Ook booleaanse functies zijn geïmplementeerd, zodat zoiets als or(1,0,0,0,0) mogelijk is.</para>

</chapter>

<chapter id="using-console">
<title
>Het gebruik van de console</title>
<para
>De console van &kalgebra; kan worden gebruikt als een rekenmachine. Daarin is een lijst van de gedeclareerde variabelen. Door erop te dubbelklikken krijgt u een dialoog te zien waarin u de waarden erin kunt veranderen (dit is een manier om de log te omzeilen). Steeds als u een expressie invoert zal de variabele "ans" (antwoord) de daarbij behorende waarde krijgen.</para>

<para
>Voorbeelden:</para>
<itemizedlist>
<listitem
><para
>sin(pi)</para
></listitem>
<listitem
><para
>k:=33</para
></listitem>
<listitem
><para
>sum(k*x : x=0..10)</para
></listitem>
<listitem
><para
>f:=p->p*k</para
></listitem>
<listitem
><para
>f(pi)</para
></listitem>
</itemizedlist>

<para
>Menu-opties:</para>

<variablelist>

<varlistentry>
<term
><menuchoice
><shortcut
><keycombo action="simul"
>&Ctrl; <keycap
>L</keycap
></keycombo
></shortcut
> <guimenu
>Console</guimenu
><guimenuitem
>Script inlezen</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Voert de instructies in een bestand na elkaar uit. Handig om bijvoorbeeld een aantal bibliotheken te definiëren, of met vorig werk verder te kunnen gaan.</para
></listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><shortcut
><keycombo action="simul"
>&Ctrl; <keycap
>G</keycap
></keycombo
></shortcut
> <guimenu
>Console</guimenu
><guimenuitem
>Script opslaan</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Bewaart de sinds het begin van de sessie ingetypte instructies voor later hergebruik. Hierdoor wordt een tekstbestand aangemaakt, dat eenvoudig kan worden bewerkt met een tekstverwerker, zoals Kate.</para
></listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><shortcut
><keycombo action="simul"
>&Ctrl; <keycap
>S</keycap
></keycombo
></shortcut
> <guimenu
>Console</guimenu
><guimenuitem
>Log exporteren</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Slaat de log (logboek) van alle resultaten op in een HTML-bestand, zodat u die kunt afdrukken of publiceren.</para
></listitem>
</varlistentry>

</variablelist>

</chapter>

<chapter id="two-D-graphs">
<title
>2D-grafieken</title>
<para
>U kunt een 2D-grafiek in &kalgebra; toevoegen in het tabblad <guilabel
>2D-grafiek</guilabel
>. Klik hierin op de knop <guilabel
>Toevoegen</guilabel
>, u kunt dan een nieuwe functie intypen in het invoerveld.</para>

<sect1 id="two-D-syntax">
<title
>Syntaxis</title>
<para
>Indien u een gebruikelijke f(x)-functie wilt gebruiken, dan is het niet nodig die nader te omschrijven, maar is het een f(y)-functie of een functie in poolcoördinaten, dan is het nodig om met y-> en bijvoorbeeld q-> op te geven wat de functievariabelen zijn.</para>

<para
>Voorbeelden:</para>
<itemizedlist>
<listitem
><para
>sin(x)</para
></listitem>
<listitem
><para
>x²</para
></listitem>
<listitem
><para
>y->sin(y)</para
></listitem>
<listitem
><para
>q->3*sin(7*q)</para
></listitem>
<listitem
><para
>t->vector{sin t, t**2}</para
></listitem>
</itemizedlist>
<para
>Na het invoeren van een functie klikt u op de knop <guibutton
>OK</guibutton
>, de grafiek wordt dan in het hoofvenster getoond.</para>

</sect1>

<sect1 id="two-D-features">
<title
>Eigenschappen</title>
<para
>U kunt meerdere grafieken tegelijk plotten. In de Lijst-modus kunt u dit gewoon met de knop <guilabel
>Toevoegen</guilabel
> doen. U kunt elke grafiek een eigen kleur geven.</para>

<para
>U kunt in de grafieken zoomen en het beeld verplaatsen met behulp van de muis. Met het muiswiel kunt u in- en uitzoomen. Met de linker muisknop kunt u ook een gebied selecteren waarna op dit gebied wordt ingezoomd. Het beeld kan worden verplaatst met behulp van de pijltjes-toetsen.</para>

<para
>In het tabblad <guilabel
>Lijst</guilabel
> kunt u een contextmenu openen met een klik van de rechter muistoets, en een functie verbergen of verwijderen door erop te klikken. klikken.</para>

<para
>In het menu <guimenu
>2D-grafiek</guimenu
> zijn de volgende opties:</para>
<itemizedlist>
<listitem
><para
>Rooster zichtbaar of onzichtbaar</para
></listitem>
<listitem
><para
>Bij zoomen verhouding lengte/breedte bewaren</para
></listitem>
<listitem
><para
>Inzoomen (<keycombo action="simul"
>&Ctrl; <keycap
>+</keycap
></keycombo
>) en uitzoomen (<keycombo action="simul"
>&Ctrl; <keycap
>-</keycap
></keycombo
>)</para
></listitem>
<listitem
><para
>Grafiek (<keycombo action="simul"
>&Ctrl; <keycap
>S</keycap
></keycombo
>) opslaan als afbeeldingsbestand</para
></listitem>
<listitem
><para
>Aanvankelijke zoom herstellen</para
></listitem>
<listitem
><para
>Nauwkeurigheid grafieken selecteren</para
></listitem>
</itemizedlist>
</sect1>

</chapter>

<chapter id="three-D-graphs">
<title
>3D-grafieken</title>

<para
>In &kalgebra; kunt u een 3D-grafiek te tekenen in het tabblad <guilabel
>3D-grafiek</guilabel
>. Hierin vindt u onderin een invoerveld, waarin u uw functie kunt intypen. Voorlopig ondersteunt &kalgebra; alleen impliciete 3d-grafieken die alleen afhankelijk zijn van x en y, zoals (x,y)->x*y, dus waarin z=x*y.</para>

<para
>Voorbeelden:</para>
<itemizedlist>
<listitem
><para
>sin(x)*sin(y)</para
></listitem>
<listitem
><para
>x/y</para
></listitem>
</itemizedlist>

<para
>U kunt in de grafieken zoomen en het beeld verplaatsen met behulp van de muis. Met het muiswiel kunt u in- en uitzoomen. Als u de &LMB; ingedrukt houdt kunt u de grafiek roteren (draaien) door de muis te verplaatsen.</para>

<para
>Met de linker- en rechter pijltoets kunt u de grafiek roteren (draaien) om de z-as, met de op- en neer pijltjestoetsen roteert u de grafiek om de horizontale as.</para>

<para
>In het menu <guimenu
>3D-grafiek</guimenu
> zijn deze opties:</para>
<itemizedlist>
<listitem
><para
>Transparantie (doorzichtbaarheid) aan/uitschakelen</para
></listitem>
<listitem
><para
>Grafiek (<keycombo action="simul"
>&Ctrl; <keycap
>S</keycap
></keycombo
>) opslaan als afbeeldingsbestand</para
></listitem>
<listitem
><para
>Aanvankelijke zoom herstellen</para
></listitem>
<listitem
><para
>De grafieken tekenen met stippels, streepjes of aaneengesloten</para
></listitem>
</itemizedlist>


</chapter>

<chapter id="dictionary">
<title
>Woordenboek</title>

<para
>Het woordenboek bevat alle bewerkingen die in &kalgebra; mogelijk zijn. U kunt hierin vinden hoe u een bewerking kunt gebruiken en welke parameters een functie nodig heeft.</para>
</chapter>

&commands;

<chapter id="credits">
<title
>Dankbetuigingen en Licentie</title>

<itemizedlist>
<listitem
><para
>Programma copyright 2005-2009 &Aleix.Pol;</para>
</listitem>
</itemizedlist>

<para
>Documentatie copyright 2007 &Aleix.Pol; &Aleix.Pol.mail; </para>

&vertaling.jaap; 
&underFDL; &underGPL; </chapter>


<appendix id="installation">
<title
>Installatie</title>

<sect1 id="getting-kapptemplate">
<title
>Hoe u &kalgebra; kunt verkrijgen</title>
&install.intro.documentation; </sect1>

<sect1 id="compilation">
<title
>Compilatie en installatie</title>
&install.compile.documentation; </sect1>

</appendix>
&documentation.index; 
</book>

<!--
Local Variables:
mode: sgml
sgml-minimize-attributes:nil
sgml-general-insert-case:lower
sgml-indent-step:0
sgml-indent-data:nil
End:
-->
