<?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 % Italian "INCLUDE">
]>

<book id="kalgebra" lang="&language;">

<bookinfo>
<title
>Manuale di &kalgebra;</title>

<authorgroup>
<author
><firstname
>Aleix</firstname
> <surname
>Pol</surname
> <affiliation
> <address
>&Aleix.Pol.mail;</address>
</affiliation>
</author>
<othercredit role="translator"
><firstname
>Pino</firstname
><surname
>Toscano</surname
><affiliation
><address
><email
>toscano.pino@tiscali.it</email
></address
></affiliation
><contrib
>Traduzione italiana</contrib
></othercredit
> 
</authorgroup>

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

<legalnotice
>&FDLNotice;</legalnotice>


<date
>2013-06-27</date>
<releaseinfo
>0.11 (&kde; 4.11)</releaseinfo>

<abstract>
<para
>&kalgebra; è un'applicazione che può sostituire la tua calcolatrice grafica. Ha funzionalità numeriche, logiche, simboliche e di analisi che ti permettono di calcolare espressioni matematiche sulla console e di visualizzarne graficamente i risultati in 2D e 3D. &kalgebra; si basa sul linguaggio a marcatori di matematica («Mathematical Markup Language», MathML); tuttavia, non è necessario conoscere MathML per usare &kalgebra;. </para>
</abstract>

<keywordset>
<keyword
>KDE</keyword>
<keyword
>kdeedu</keyword>
<keyword
>grafico</keyword>
<keyword
>matematica</keyword>
<keyword
>2D</keyword>
<keyword
>3D</keyword>
<keyword
>mathML</keyword>
</keywordset>

</bookinfo>

<chapter id="introduction">
<title
>Introduzione</title>

<para
>&kalgebra; ha numerose funzioni che permettono all'utente di effettuare tutti i tipi di operazioni matematiche e di visualizzarle graficamente. Una volta, questo programma era orientato su MathML. Adesso può essere usato da chiunque con un minimo di conoscenza di matematica per risolvere problemi semplici e complessi. </para>
<!--FIXME Ask Burkhard where to put tutorials and if it is worth efforts to do. Example from UB page: http://swiftscythe.blogspot.de/2011/02/how-to-work-with-complex-numbers-in.html-->
<para
>Include funzioni quali: </para>


<itemizedlist>
<listitem
><para
>Una console per la valutazione semplice e veloce di funzioni matematiche. </para
></listitem>
<listitem
><para
>Possibilità di usare script per calcoli avanzati </para
></listitem>
<listitem
><para
>Funzionalità del linguaggio che includono la definizione di funzioni e il completamento automatico della sintassi </para
></listitem>
<listitem
><para
>Funzioni per l'analisi che includono la differenziazione simbolica, il calcolo vettoriale e la manipolazione di liste. </para
></listitem>
<listitem
><para
>Grafico di funzioni con cursore mobile per la ricerca grafica delle radici e altri tipi di analisi. </para
></listitem>
<listitem
><para
>Grafico 3D per l'utile visualizzazione di funzioni 3D. </para
></listitem>
<listitem
><para
>Un dizionario integrato degli operatori per un aiuto veloce sulle numerose funzioni disponibili. </para
></listitem>
</itemizedlist>

<para
>Qui sotto vi è un'immagine di &kalgebra; in azione: </para>

<screenshot>
<screeninfo
>Immagine della finestra principale di &kalgebra;</screeninfo>
	<mediaobject>
	  <imageobject>
	    <imagedata fileref="kalgebra-main-window.png" format="PNG"/>
	  </imageobject>
	    <textobject>
	    <phrase
>Finestra principale di &kalgebra;</phrase>
	  </textobject>
	</mediaobject>
</screenshot>

<para
>Quando un utente inizia una sessione di &kalgebra;, viene presentata una finestra composta da una scheda <guilabel
>Console</guilabel
>, una scheda <guilabel
>Grafico 2D</guilabel
>, una scheda <guilabel
>Grafico 3D</guilabel
> e una scheda <guilabel
>Dizionario</guilabel
>. Sotto ciascuna scheda si trovano un campo di inserimento per scrivere le funzioni o fare calcoli e un campo che mostra i risultati. </para>

<para
>In ogni momento l'utente può gestire le sue sessioni usando le opzioni del menu <guilabel
>Sessione</guilabel
>:</para>

<variablelist>

<varlistentry>
<term
><menuchoice
><shortcut
><keycombo action="simul"
>&Ctrl; <keycap
>N</keycap
></keycombo
></shortcut
> <guimenu
>Sessione</guimenu
><guimenuitem
>Nuova</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Apre una nuova finestra di &kalgebra;.</para
></listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><shortcut
><keycombo action="simul"
>&Ctrl;&Shift; <keycap
>F</keycap
></keycombo
></shortcut
> <guimenu
>Sessione</guimenu
><guimenuitem
>Modalità a tutto schermo</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Attiva o disattiva la modalità a tutto schermo della finestra di &kalgebra;. La modalità a tutto schermo può essere attivata e disattivata anche usando il pulsante <inlinemediaobject
> <imageobject
> <imagedata fileref="view-fullscreen.png" format="PNG"/> </imageobject
> </inlinemediaobject
> che si trova a destra nella parte alta della finestra di &kalgebra;.</para
></listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><shortcut
><keycombo action="simul"
>&Ctrl; <keycap
>Q</keycap
></keycombo
></shortcut
> <guimenu
>Sessione</guimenu
><guimenuitem
>Esci</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Chiude il programma.</para
></listitem>
</varlistentry>

</variablelist>

</chapter>

<chapter id="syntax">
<title
>Sintassi</title>
<para
>&kalgebra; usa una sintassi algebrica intuitiva per l'inserimento delle funzioni dell'utente, in modo simile a quanto viene fatto nella maggior parte delle moderne calcolatrici grafiche. Questa sezione elenca gli operatori fondamentali forniti in &kalgebra;. L'autore di &kalgebra; ha modellato questa sintassi seguendo <ulink url="http://maxima.sourceforge.net/"
>Maxima</ulink
> e <ulink url="http://www.maplesoft.com/products/maple/"
>maple</ulink
>, per gli utenti che possono avere familiarità con questi programmi. </para>

<para
>Per gli utenti interessati al funzionamento interno di &kalgebra;, le espressioni inserite dall'utente sono convertite in MathML nel backend interno. Una conoscenza basilare delle possibilità di MathML permetterà di comprendere meglio le funzionalità interne di &kalgebra;. </para>

<para
>Ecco una lista degli operatori disponibili al momento:</para>
<itemizedlist>
<listitem
><para
>+ - * / : addizione, sottrazione, moltiplicazione e divisione.</para
> </listitem>
<listitem
><para
>^, ** : elevamento a potenza, puoi usare entrambi. È anche possibile usare il carattere Unicode «²». Con gli elevamenti a potenza è anche possibile effettuare radici, ad esempio: a**(1/b)</para
></listitem>
<listitem
><para
>&gt; : lambda. È il modo di specificare una o più variabili che saranno vincolate in una funzione. Ad esempio, nell'espressione <userinput
>length:=(x,y)->(x*x+y*y)^0.5</userinput
>, l'operatore lambda è usato per denotare che x e y saranno vincolate quando la funzione length è usata. </para
></listitem>
<listitem
><para
>x=a..b : usato per delimitare un intervallo (variabile limitata + limite superiore + limitare inferiore). Ciò significa che x va da a fino a b.</para
></listitem>
<listitem
><para
>() : usato per specificare una priorità più alta.</para
></listitem>
<listitem
><para
>abc(parametri) : funzioni. Quando l'analizzatore trova una funzione, controlla se «abc» è un operatore. Se lo è, sarà trattato come un operatore; se non lo è, sarà trattato come una funzione utente.</para
></listitem>
<listitem
><para
>:= : definizione. Usata per definire il valore di una variabile. Puoi far cose come x:=3, x:=y con y definita o no, oppure perimetro:=r->2*pi*r. </para
></listitem>
<listitem
><para
>s? : Definizione di condizione definita a tratti. Una definizione "a tratti" è il modo in cui possiamo definire operazioni condizionali in &kalgebra;. Per dirla anche in altri termini, questo è un modo di definire una condizione «if, elseif, else». Se introduciamo la condizione prima del «?», questa condizione sarà usata solo se è vera; se viene trovato un «?» senza condizione, verrà usato come ultima alternativa. Esempio: piecewise { x=0 ? 0, x=1 ? x+1, ? x**2 } </para
></listitem>
<listitem
><para
>{ }: contenitore MathML. Può essere usato per definire un contenitore. Utile  principalmente per le funzioni definite a tratti. </para
></listitem>
<listitem
><para
>= &gt; &gt;= &lt; &lt;= : comparatori di valori per rispettivamente: uguale, maggiore di, maggiore o uguale a, minore di, minore o uguale a</para
></listitem>
</itemizedlist>

<para
>Adesso potresti chiedermi: perché l'utente dovrebbe conoscere MathML? Semplice: con il MathML possiamo operare con funzioni come cos(), sin() (e qualsiasi altra funzione trigonometrica), sum() o product(). Non importa che tipo di funzione sia. Possiamo usare plus(), times() e qualunque cosa che ha un operatore. Sono implementate anche le funzioni booleane, così possiamo usare &eg; «or(1,0,0,0,0)».</para>

</chapter>

<chapter id="using-console">
<title
>Uso della console</title>
<para
>La console di &kalgebra; è utile come calcolatrice potenziata. L'utente può inserire espressioni da valutare in modalità <guimenu
>Calcola</guimenu
> o <guimenu
>Vàluta</guimenu
>, a seconda della scelta del menu <guimenu
>Console</guimenu
>. </para>
<para
>In modalità di valutazione &kalgebra; semplifica l'espressione anche se c'è una variabile non definita. In modalità di calcolo &kalgebra; calcola tutto, mostrando un errore se trova una variabile non definita. </para>
<para
>Oltre alla visualizzazione nella console delle equazioni inserite dall'utente e dei risultati, tutte le variabili che vengono dichiarate sono visualizzate in un pannello fisso a destra. Facendo doppio clic su una variabile vedrai una finestra di dialogo per ti permette di modificarne il valore (un modo per truccare il log). </para>

<para
>La variabile «ans» è speciale: ogni volta che inserisci un'espressione, questa variabile assumerà il valore dell'ultimo risultato. </para>

<para
>Di seguito vi sono funzioni d'esempio che possono essere inserite nel campo di inserimento della finestra della console.</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
>Di seguito vi è un'immagine della finestra della console dopo aver inserito le espressioni d'esempio elencate sopra: </para>
<screenshot>
<screeninfo
>Immagine della finestra della console di &kalgebra; con le espressioni d'esempio</screeninfo>
	<mediaobject>
	  <imageobject>
	    <imagedata fileref="kalgebra-console-window.png" format="PNG"/>
	  </imageobject>
	    <textobject>
	    <phrase
>finestra della console di &kalgebra;</phrase>
	  </textobject>
	</mediaobject>
</screenshot>


<para
>Un utente può controllare l'esecuzione di una serie di calcoli usando le opzioni del menu <guimenu
>Console</guimenu
>:</para>

<variablelist>

<varlistentry>
<term
><menuchoice
><shortcut
><keycombo action="simul"
>&Ctrl; <keycap
>L</keycap
></keycombo
></shortcut
> <guimenu
>Console</guimenu
><guimenuitem
>Carica script</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Esegue le istruzioni presenti in un file. Un metodo utile per creare "librerie" o riprendere un lavoro interrotto in precedenza.</para
></listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><shortcut
><keycombo action="simul"
>&Ctrl; <keycap
>G</keycap
></keycombo
></shortcut
> <guimenu
>Console</guimenu
><guimenuitem
>Salva script</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Salva le istruzioni eseguite dall'inizio della sessione in modo da poterle riusare. Genera file di testo semplice, quindi è possibile modificarli usando un qualsiasi editor di testo (come Kate).</para
></listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><shortcut
><keycombo action="simul"
>&Ctrl; <keycap
>S</keycap
></keycombo
></shortcut
> <guimenu
>Console</guimenu
><guimenuitem
>Salva log</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Salva il log e tutti i risultati su file &HTML; che può essere stampato o pubblicato.</para
></listitem>
</varlistentry>

</variablelist>

</chapter>

<chapter id="two-D-graphs">
<title
>Grafici 2D</title>
<para
>Per aggiungere un nuovo grafico 2D in &kalgebra;, seleziona la scheda <guilabel
>Grafico 2D</guilabel
> e fare clic sulla scheda <guilabel
>Aggiungi</guilabel
> per aggiungere una nuova funzione. Sarà quindi attivata la casella di testo dove puoi scrivere la funzione.</para>

<sect1 id="two-D-syntax">
<title
>Sintassi</title>
<para
>Se vuoi usare una tipica funzione f(x) non è necessario specificarla, ma se vuoi usare una funzione f(y) oppure polare, devi aggiungere y-&gt; e q-&gt; come variabili vincolate.</para>

<para
>Esempi:</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
>Quando hai inserito la funzione premi <guibutton
>OK</guibutton
> per visualizzare il grafico nella finestra principale.</para>

</sect1>

<sect1 id="two-D-features">
<title
>Funzioni</title>
<para
>Puoi avere più grafici nella stessa vista. Usa il pulsante <guilabel
>Aggiungi</guilabel
> in modalità «lista». Puoi impostare un diverso colore per ogni grafico.</para>

<para
>La vista può essere ingrandita e spostata con il mouse. Puoi ingrandire e rimpicciolire usando la rotellina del mouse. Puoi anche selezionare un'area con il &LMB; e quest'area sarà ingrandita. Puoi muovere la vista con i tasti freccia.</para>

<note>
 <para
>L'area di visualizzazione di grafici 2D può essere definita in modo esplicito usando la scheda <guilabel
>Area di visualizzazione</guilabel
> nella scheda <guilabel
>Grafico 2D</guilabel
>.</para>
</note>
 
<para
>Nella scheda <guilabel
>Lista</guilabel
> puoi aprire una scheda <guilabel
>Modifica</guilabel
> per modificare o rimuovere una funzione con un doppio clic, oppure marcare o disattivare la casella accanto al nome della funzione per mostrarla o nasconderla.</para>
<para
>Nel menu <guimenu
>Grafico 2D</guimenu
> trovi queste opzioni:</para>
<itemizedlist>
<listitem
><para
>Mostra o nascondi la griglia</para
></listitem>
<listitem
><para
>Mantieni le proporzioni quando ingrandisci o riduci</para
></listitem>
<listitem
><para
>Ingrandisci (<keycombo action="simul"
>&Ctrl; <keycap
>+</keycap
></keycombo
>) e riduci (<keycombo action="simul"
>&Ctrl; <keycap
>-</keycap
></keycombo
>)</para
></listitem>
<listitem
><para
>Salva (<keycombo action="simul"
>&Ctrl; <keycap
>S</keycap
></keycombo
>) il grafico come immagine</para
></listitem>
<listitem
><para
>Ripristina la vista all'ingrandimento originale</para
></listitem>
<listitem
><para
>Scegli una risoluzione per i grafici</para
></listitem>
</itemizedlist>

<para
>Sotto vi è l'immagine di un utente il cui cursore è alla radice più a destra della funzione, sin(1/x). L'utente che ne ha creato il grafico ha usato una risoluzione molto stretta (dato che oscilla a frequenze sempre più alte man mano che si avvicina all'origine). C'è anche un cursore mobile che, ogni volta che sposti il cursore sopra un punto, mostra i valori X e Y nell'angolo in basso a sinistra dello schermo. Una linea mobile di tangente è disegnata sulla funzione alla posizione del cursore mobile. </para>

<screenshot>
<screeninfo
>Immagine della finestra del grafico 2D di &kalgebra;</screeninfo>
	<mediaobject>
	  <imageobject>
	    <imagedata fileref="kalgebra-2dgraph-window.png" format="PNG"/>
	  </imageobject>
	    <textobject>
	    <phrase
>Finestra del grafico 2D di &kalgebra;</phrase>
	  </textobject>
	</mediaobject>
</screenshot>


</sect1>

</chapter>

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

<para
>Per disegnare un grafico 3D con &kalgebra;, seleziona la scheda <guilabel
>Grafico 3D</guilabel
>: lì vedrai una casella di inserimento in basso, dove puoi scrivere la funzione. Z non può essere definita ancora, al momento &kalgebra; supporta solo grafici 3D che dipendono esplicitamente solo da x e y, come (x,y)->x*y, dove z=x*y. </para>

<para
>Esempi:</para>
<itemizedlist>
<listitem
><para
>(x,y)->sin(x)*sin(y)</para
></listitem>
<listitem
><para
>(x,y)->x/y</para
></listitem>
</itemizedlist>

<para
>La vista può essere ingrandita e spostata con il mouse. Puoi ingrandire e rimpicciolire usando la rotellina del mouse. Tieni premuto il &LMB; e muovi il mouse per ruotare il grafico.</para>

 <para
>I tasti freccia «Sinistra» e «Destra» ruotano il grafico attorno all'asse Z, i tasti freccia «Su» e «Giù» ruotano attorno all'asse orizzontale della vista. Premi <keycap
>W</keycap
> per ingrandire il grafico e <keycap
>S</keycap
> per ridurlo.</para>

<para
>Nel menu <guimenu
>Grafico 3D</guimenu
> trovi queste opzioni:</para>
<itemizedlist>
<!-- not in master for 4.11
<listitem
><para
>Enable or disable transparency in the 3D graph menu</para
></listitem>
-->
<listitem
><para
>Salva (<keycombo action="simul"
>&Ctrl; <keycap
>S</keycap
></keycombo
>) il grafico come immagine</para
></listitem>
<listitem
><para
>Ripristina la vista all'ingrandimento originale nel menu «Grafico 3D»</para
></listitem>
<listitem
><para
>Disegna i grafici usando punti, linee o un colore di riempimento nel menu «Grafico 3D»</para
></listitem>
</itemizedlist>

<para
>Sotto vediamo un'immagine della funzione chiamata "sombrero". Questo grafico 3D particolare è visualizzato usando lo stile a linee. </para>

<screenshot>
<screeninfo
>Immagine della finestra del grafico 3D di &kalgebra;</screeninfo>
	<mediaobject>
	  <imageobject>
	    <imagedata fileref="kalgebra-3dgraph-window.png" format="PNG"/>
	  </imageobject>
	    <textobject>
	    <phrase
>Finestra del grafico 3D di &kalgebra;</phrase>
	  </textobject>
	</mediaobject>
</screenshot>

</chapter>

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

<para
>Il dizionario è una collezione di tutte le funzioni integrate in &kalgebra;. Può essere utile per trovare la definizione di un'operazione e i suoi parametri, e in generale per scoprire le molte funzionalità di &kalgebra;. </para>

 <para
>Sotto vi è un'immagine della ricerca della funzione coseno nel dizionario di &kalgebra; </para>

<screenshot>
<screeninfo
>Immagine della finestra del dizionario di &kalgebra;</screeninfo>
	<mediaobject>
	  <imageobject>
	    <imagedata fileref="kalgebra-dictionary-window.png" format="PNG"/>
	  </imageobject>
	    <textobject>
	    <phrase
>Finestra del dizionario di &kalgebra;</phrase>
	  </textobject>
	</mediaobject>
</screenshot>


</chapter>

&commands;

<chapter id="credits">
<title
>Riconoscimenti e licenza</title>

<itemizedlist>
<listitem
><para
>Copyright del programma 2005-2009 &Aleix.Pol;</para>
</listitem>
</itemizedlist>

<para
>Copyright della documentazione 2007 &Aleix.Pol; &Aleix.Pol.mail; </para>

<para
>Traduzione italiana di Pino Toscano <email
>toscano.pino@tiscali.it</email
></para
> 
&underFDL; &underGPL; </chapter>


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

<sect1 id="getting-kapptemplate">
<title
>Come ottenere &kalgebra;</title>
&install.intro.documentation; </sect1>

<sect1 id="compilation">
<title
>Compilazione e installazione</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:
-->
