MathPlace

V. 2.0





Introduzione a MathPlace

MathPlace è un ambiente per lo studio della matematica con l'aiuto dell'elaboratore elettronico. L'obiettivo principale di quest'opera è quello di creare un ambiente per facilitare lo studio della matematica con l'ausilio delle nuove tecnologie. Esso permette di utilizzare strumenti di algebra e  di geometria per valutare espressioni complesse, per rappresentare grafici di funzioni, di sperimentare proprietà geometriche con lo strumento della geometria interattiva e di leggere manuali interattivi in forma digitale.


Possiamo distinguere due aspetti fondamentali di MathPlace:

Queste funzionalità sono interconnesse e si può, per esempio, dal lettore dei libri cliccare un bottone nel testo per attivare una finestra per visualizzare il grafico di una funzione, descritta nel testo.  Esamineremo separatamente questi aspetti iniziando con l'ambiente a finestre relativo all'algebra.

Ambiente per il calcolo e la grafica

In questo ambiente possiamo: 
Nota: questa parte di MathPlace si arricchirà presto del calcolo simbolico.

Bottone Prova tu stesso

Coma già detto, abbiamo un lettore di libri capace di leggere testi in formato MAC, o in formato html. Un file con  estensione MAC è un ipertesto criptato che può essere decriptato e visualizzato da MathPlace.
In un file di tipo MAC potrà accadere di incontrare il bottone: ; l'effetto del clic su di questo sarà quello di richiamare alcune delle funzionalità dell'ambiente per il calcolo, come vedemo in seguito e come spiegato parlando del lettore libri.

Incominciamo ad esaminare l'interfaccia a finestre.

Le finestre e i vari control

Finestra principale

Quando MathPlace viene caricato, ci mostra la finestra pricipale dalla quale possiamo organizzare il nostro lavoro:



Tramite questa potremo attivare altre finestre, come quella per i grafici in 2D (cioè in due dimensioni),  la finestra dei grafici in 3D,  il lettore libri e la finestra di geometria. Da notare che, per chiudere il programma ed eliminare tutte le finestre, bisogna chiudere questa finestra.
Esaminiamo prima la finestra pricipale ed iniziamo dalla barra dei menu.

Menu File

Tramite questo menu, possiamo salvare o caricare un lavoro precedentemente salvato su disco.

Nota. Non sempre l'area di lavoro può essere salvata, come nel caso in cui sono definiti dei punti in 3D.
Un'altra voce di questo menù è "Uscita" che provoca la chiusura di tutte le finestre e la chiusura del programma.

Icone della finestra principale:
 

pulisce l'area comandi
apre la finestra per i grafici in 2D

apre la finesta 3D per lo studio dei grafici tridimensionali

permette di resettare, ovvero di eliminare tutte le funzioni, in 2D e in 3D, definite dall'utente, insieme ai relativi grafici.

bottone per attivare la finestra lettura libri
permette di attivare la finestra di geometria


Schede della finestra principale

Nella finestra principale, come mostrato sopra, sono inserite alcune schede.

Scheda Area Comandi

Quest'area è destinata all'inserimento dei vari comandi e alla visualizzazione di alcuni dati da parte del programma. Come vedremo, qui potremo inserire le difinizioni di nuove variabili, di nuove funzioni e di qualsiasi oggetto metematico. L'area comandi si presenta con il carattere, detto carattere di "pronto" (o prompt) di inizio scrittura che può essere uno dei caratteri: ">", "#". Un comando sarà inserito iniziando a scrivere alla destra di questo carattere e terminando premendo il tasto "Enter" (tasto ← su alcune tastiere)

Scheda Impostazioni

Tramite questa scheda è possibile cambiare alcuni parametri predefiniti. La scheda si presenta in questo modo:



Esaminiamo i vari campi.

 XINIT, XFINAL, YINIT e YFINAL

Questi valori stabiliscono il sottoinsieme del dominio della funzione da usare per visualizzare il suo grafico in 3D. Variando questi valori,  otteniamo che viene visualizzata un'altra zona del grafico in quanto è cambiato il campo di variabilità delle variabili indipendenti x e y.


La figura sopra mostra un esempio di in cui i valori estremi delle variabili x e y sono state cambiate (XINIT = -1, XFINAL = 1, YINIT = -1, YFINAL = 1), relativamente alla funzione paraboloid(x,y) := x^2 + y^2.


Questa figura rappresenta sempre la funzione paraboloid, ma i valori estremi di x sono 0 e 2 e con diverso colore per la figura.

nDivMesh

I grafici in 3D vengono realizzati tramite un insieme di superfici a forma di triangoli e maggiore sarà il loro numero e più fedele sarà la rappresentazione del grafico. Il numero di questi triangoli (detti triangoli mesh o maglia di triangoli) è determinato dal parametro nDivMesh il cui valore predefinito è visualizzato in questa scheda. Come esempio, la figura seguente mostra l'effetto di questo parametro nella visualizzazione di una superficie toroidale le cui equazioni sono già inserite nel programma e visualizzabili nella scheda visualizza tabelle . In questo caso si è posto nDivMesh := 5, minore del valore ottimale e che utilizza un numero limitato di triangolo mesh.



Diverso risultato si ottiene ponendo nDivMesh := 100, come mostra le figura seguente in cui la maglia di triangoli è aumentata notevolmente.



ZINIT, ZFIN

Valori limite lungo l'asse z: la parte di una immagine che viene visualizzata è compresa tra questi valori. Nota: questi valori non inflenzano la scala di una immagine.

nDivPar3D

Quando si disegna una curva nello spazio, questa viene approssimata tramite segmenti ed il numero di questi è stabilito da questo parametro che normalmente è superiore a 300. Riducendolo avremo una rappresentazione della curva meno precisa e più "spezzata".

Scala asse z (scalaZ3D)

Normalmente le scale lungo i tre assi sono uguali, ma è possibile modificare quella lungo l'asse z tramite questo campo. La variazione di questa scala comporterà l'aggiornameno della finestra 3D: tutte le figure visualizzate saranno aggiornate, compresi gli assi. La figura seguente riporta la superficie toroidale, già mostrata in precedenza, con scalaz =  100.


luce 1, luce 2, luce 3.

Nella scena della  finestra 3D sono inserite tre luci di vario colore che illuminano i grafici, come abbiamo visto nelle immagini riportate sopra.
Tramite questi campi possiamo modificare le coordinate delle tre luci. A lato di ciascuna luce è visualizzato il corrispondente colore -modificabile- della luce, tramite un quadrato colorato. Per cambiare solo le coordinate di una luce, bisogna scrivere queste nella corrispondente area, tenedo presente che le coordinate devono essere separate da virgole e sono del tipo x, y, z. Per rendere effettive le modifiche, bisogna premere il tasto "applica modifiche".
Possiamo anche modificare il colore di ciascuna luce cliccando sul corrispondente quadrato colorato: in questo caso alla luce che si sta modificando verrà assegnato il colore selezionato nel box selezione colori della finestra 3D

Tasto applica modifiche

Abbiamo visto come modificare alcuni parametri e gli effetti di queste modifiche sulle immagini visualizzate si avranno solo dopo aver cliccato su questa iciona.

Scheda Visualizza tabelle

In questa scheda sono riportati tutti gli oggetti matematici predefiniti e quelli definiti dall'utente. Abbiamo alcune costanti, come il numero E di Nepero e PI per pigreco, e alcune funzioni predefinite, come, per esempio, wave(x,y) che avremo modo di considerare in seguito.
Ogni volta che inseriamo un nuovo oggetto (funzione, sistema di equazioni parametriche, solidi,...) possiamo farlo visualizzare in questa scheda premendo l'icona aggiorna .



Finestra 2D

La seguente immagine mostra quella che chiameremo finestra 2D.  Nella parte superiore, barra delle icone, osserviamo quanto segue.
Coordinate del cursore. Iniziando da sinistra, abbiamo due campi che mostrano le coordinate (ascissa e ordinata) della punta del cursore quando questo si trova nell'area del disegno. Questi campi possono essere utili quando vogliamo determinare graficamente gli zeri di una funzione o quando si vogliono deteminare le coordinate dei punti di intersezione tra due curve: basterà posizionarsi su ciascun punto di interesse per visualizzare le relative coordinate.
Da notare che possiamo ingrandire o rimpiccialire l'immagine utilizzando la rotella del mouse: l'effetto è quello di modificare i campi di variabilità degli assi con conseguente aggiornamento dei grafici rappresentati.


Box scelta funzioni 2D

Successivamente abbiamo il box scelta funzioni (choiceBox).  Quando nell'area comandi definiamo una funzione in una sola variabile, il suo nome viene automaticamente inserito in questo box. Come già detto, oltre alle funzioni definite dall'utenre, in questo box sono inserite alcune funzioni predefinite a scopo dimostrativo. Volendo far disegnare il grafico di una funzione registrata in questo box, basterà selezionarla e poi cliccare il tasto , come vedremo fra poco.
 

Color Picker

Questo box (bottone con quadrato di colore rosso nella figura relativa alla finestra 2D) permette di scegliere il colore per ciascun grafico. Cliccandolo, ci appare la seguente finestra che permette di scegliere un colore.




Una volta selezionato il colore, basterà cliccare sull'icona-tavolozza per variare il colore del grafico visualizzato, come vedremo meglio in seguito.

Icone della finestra 2D

permette di disegnare il grafico della funzione o del sistema di equazioni parametriche precedentemente selezionata nell'elenco funzioni (box scelta funzioni 2D).

Assegna al grafico della funzione selezionata nel box scelta funzioni il colore selezionato nel Color Picker.
Cancella il grafico 2D visualizzato.

Box scelta colore
 
Permette di salvare l'immagine, visualizzata nella finestra 2D, in un file. Un grafico può essere salvata nei seguenti formati grafici: PNG, BITMAP o JPG

Permette di rendere invisibile la finestra


Finestra 3D


Questa finestra serve per visualizzare i grafici degli oggetti matematici che hanno una rappresentazione tridimensionale.
Le icone sono:


Quando una funzione è stata selezionata tramite il Combo Box, basta premere questo bottone per ottenere il grafico, come visualizzato nella figura precedente.

Serve per cancellare una immagine visualizzata nell'area dei grafici. Se sono visualizzati più grafici, viene cancellato quello relativo al nome selezionato dal Combo Box. Comunque, cliccando più volte si riesce a cancellare tutti i grafici visualizzati.

E' possibile visualizzare, di un grafico 3D, solo le linee di contorno (come mostrato nell'immagine riportata sopra) o la superficie piena.  Ogni volta che questa icona viene cliccata si passa da una modalità all'altra.

Permette di visualizzare /nascondere le luci come piccole sfere colorate

Box scelta 3D o Combo box dove è possibile selezionare una funzione dall'elenco delle funzioni disponobili
Selettore dei colori

Quando vogliamo modificare il colore di un grafico -già visualizato e il cui nome è selezionato nel Combo Box dell'elenco delle funzioni-  si sceglie il colore tramite il box selettore colori e poi si clicca su questa icona.

Di un grafico 3D possiamo stabilire il colore dello sfondo: premendo questo bottone, allo sfondo verrà essegnato  il colore selezionato nel box scelta colori (vedi sotto).

Seve per salvare in un file una immagine 3D visualizzata nella finestra.

Box selezione colori

Tramite questo box è possibile, cliccandolo, selezionare il colore da utilizzare sia per le luci d'ambiente nella finestra 3D, sia per modificare il colore e lo sfondo di una superficie visualizzata nella stessa finestra.

Box scelta 3D

Questo box contiene l'elenco delle funzioni, dei sistemi di funzioni parametriche e qualsiasi altro oggetto matematico in 3D precedentemente definito, inserito in memoria e di cui si vuole la rappresentazione grafica tridimensionale. Alcuni di questi oggetti sono predefiniti mentre le altre sono quelle definite dall'utente nella sessione di lavoro corrente.
Da notare che questo box viene automaticamente aggiornato ogni volta che definiamo - nell'area comandi- un nuovo oggetto matematico rappresentabile graficamente nella finestra 3D.
Vedremo in seguito come si possono inserire altri oggetti matematici in questo box e come utilizzarli per visualizzare i loro grafici.

Area comandi

Abbiamo visto che nell'area dei comandi della finestra principale possiamo inserire, tra le altre cose, alcuni comandi. In generale, un comando è del tipo:

comando nome: espressione
o
comando espressione;

Sono esempi di comandi i seguenti:
Incontreremo nel seguito alcuni esempi di comandi, mentre a fine manuale è riportato l'elenco di tutti i comandi.

Iniziamo...

Abbiamo descritto brevemente la struttura di MathPlace, riservandoci di parlare della geometria in seguito.Vedremo ora la parte del calcolo e dei grafici.

Definizione di una variabile

Nell'area comandi possiamo definire delle variabili e a queste possiamo assegnare anche un valore.
Scrivendo x := 2 (enter)
la variabile x viene registrata in una tabella, insieme al suo valore e possiamo,  in qualsiasi momento, far visualizzare il suo valore, scrivendo, sempre nell'area comandi, il suo nome, cioè x. Se la variabile esiste, verrà visualizzata, insieme al suo valore attuale. Esistono anche due costanti predefinite e sono PI per pigreco ed E per il numero di Nepero E := 2,718281828...

Esempio. Srivendo PI nell'area dei comandi, vedremo che verrà visualizzato il valore (naturalmente approssimato) nella stessa area:

PI = 3.141592653589793

Possiamo anche far visualizzare l'elenco delle variabili attualmente presenti in memoria, scrivendo il comando variabili. Ecco un possibile risultato di questo comando:



Qui vediamo che vengono visualizzate alcune costanti predefinite: E (numero di Nepero) e PI (pigreco), oltre a INF+ e INF-, mentre x è una variabile precedentemente definita a cui è stato assegnato un certo valore, valore che può essere modificato tramite l'area comandi.
E' possibile cancellare una  tramite il comando cancella (o del):

cancella
nomevariabile

dove nomevariabile è il nome della variabile da cancellare.

Nota... E, PI, INF+ e INF- sono delle parole riservate e non possono essere usate per altri scopi. Come visto in precedenza, è possibile visualizzare l'elenco di tutte le variabili e le costanti nella scheda individuata dall'icona .


Espressioni

E' possibile far valutare una espressione utilizzando l'area comandi.

Esempio. Scriviamo l'espressione:

10^3+5^(sin(1))

Il risultato sarà:

10^3+5^(sin(1)) = 1003,8740299855667

Una espressione può contenere una qualsiasi funzione precedentemente definita.
Esempio

wave(0,2)^2

è una espressione valida, dove wave(x, y) è una funzione predefinita la cui definizione può essere esplicitata scrivendo, nell'area comandi, il suo nome;
#wave
 (wave(x,y) := sin(x^2+y^2)).

Definizione di funzione o di sistema di funzioni parametriche

Si può definire una funzione normale semplicemente scrivendo (notare il simbolo di assegnazione ":=")

f(x) := espressione,         funzione in 2D

f(x,y) := espressione,     funzione in 3D


Esempio . Inserendo la funzione f(x,y) := sin(x^2)+cos(y^2) otteniamo la superficie:



Nota. Quando inseriamo la definizione di f(x,y) nell'area comandi questa viene analizzata e, se corretta, inserita automaticamente nel box funzioni 3D in modo da poter ricavare il suo grafico.

Esempio

Il risultato sarà la seguente immagine



Funzione a tratti

E' possibile definire una funzione -in una sola variabile- a tratti, cioè dove l'epressione che la definisce varia a seconda dei vari sotto intervalli di definizione.

Inseriamo, per esempio, quanto segue nell'area dei comandi:

            f(x) := {sin(x),(-INF, 1]; 5,(1,5];x+1,(5,50)}

Osserva... Una scrittura del tipo "(5, 7]" indica un intervallo avente per estremi 5 e 7, con 5 escluso e 7 incluso. In generale, una parentesi tonda indica un estremo escluso e una quadra un estremo incluso

Questa funzione ha come definizione sin(x) nell'intervallo (-INF, 1], poi 5 nell'intervallo (1, 5] e x + 1 nell'intervallo (5, 50). 

Se proviamo a far disegnare il grafico di f, otteniamo la seguente immagine:




Notiamo che, per esempio, nell'intervallo (-INF, 1] abbiamo una sinusoide e un pallino terminale corrispondente all'estremo 1; questo indica che il valore  x = 1è compreso.

Esempio
Nella Scheda Input  inseriamo le seguenti due instruzioni:

hs(x) := x/sin(x);

fcomp(x) := {sin(x),(-INF, 1]; hs(x),(1,5]; hs(x)+1,(5,50)};

e premiamo enter.
In questo modo abbiamo definito due funzioni: hs(x) e fcomp, funzioni che vengono registrate nel  box scelta funzioni; selezionando, da questo, fcomp, possiamo far disegnere il suo grafico premendo il tasto. Ecco il risultato:


  fcomp è un esempio di funzione che richiama un'altra funzione, hs in questo caso.

Valutazione di espressioni

Una volta definita una funzione, per esempio fcomp(x) appena considerata, possiamo far calcolare il suo valore per un particolare valore di x scrivendo

fcomp(10) (enter)

La risposta sarà -17.381639608896656

Possiamo anche far calcolare il valore di fcomp  fornendo come argomento una variabile precedentemente definita. Se, per esempio, definiamo la variabile y come

y := 15

e poi scriviamo:

fcomp(y)

avremo come risultato:

24.06670842311...

Possiamo, infine, iserire come argomento di fcomp il valore di un'altra funzione:

fcomp(sqrt(25))


Naturalmente l'argomento di fcomp deve ricadere in uno degli intervalli in cui la funzione è definita, altrimenti avremo un messaggio di errore. Osserviamo, infine, che l'argomento di fcomp può essere una qualsiasi espressione e contenere funzioni, ma non altre funzioni a tratti.
Possiamo anche far valutare espressioni più complesse, come la seguente:

sqrt(fcomp(15))+sin(fcomp(10))+2/5

ottenendo come risposta 6.3004956...
Esempio
scrivendo:
 pow(2, sin(1))

e premendo enter, avremo come risultato: 1,791876223827922.

Notiamo, infine, che una funzione definita dall'utente rimane in memoria finché il programma è attivo e può essere utilizzata per definire funzioni più complesse, come abbiamo visto e come vedremo in seguito. Infine, possiamo salvare le tabelle, in cui sono registrate le varie funzioni e le variabili, sul disco, come mostrato in Menu File.

Cancellazione di una variabile o di una funzione

Una volta inserita in memoria una variabile, possiamo sempre cancellarla, cioè eliminarla dalla tabella delle variabili. Stessa cosa con le funzioni. Il comando è il seguente:

cancella nomeVariabile
cancella nomeFunzione

Unicità dei nomi
Da notare che un nome utilizzato per una funzione non può essere utilizzato per definire una variabile o un'altra funzione.
Scriviamo, per esempio:

x := sqrt(3^5);
x(x) := x+5

Verrà aperta una finestra con il messaggio di errore:

Nome x(x) già utilizzato


Esempio
Scriviamo, nell'area comandi, una istruzione alla volta, oppure le tre istruzioni insieme, prima di premere enter:

f(x) := x + 5;
x := sqrt(f(3));
x

Otterremo come risposta:

x = 2,8284271247461903

Concludiamo che nella definizione di una variabile possiamo utilizzare una funzione precedentemente definita e conservata in memoria. Da notare che nella prima istruzione x è un parametro formale, un segnaposto, mentre nella seconda x è definita come variabile ed è scollegata da f(x).
Se ora scriviamo:

cancella x

la variabile x verrà cancellata dalla memoria. In modo analogo, possiamo cancellare la funzione f scrivendo:

cancella f

Funzioni predefinite

Il programma contiene alcune funzioni di base, tipo seno, coseno... il cui elenco è riportato nella tabella che segue; inoltre contiene funzioni e sistemi di equazioni parametriche predefinite a scopo dimostrativo. Nel seguito commenteremo alcuni di questi oggetti matematici posti nella finestra 3D (box di scelta 3D) e nella finestra 2D (box scelta 2D).
Ecco l'elenco delle funzioni predefinite di base, dove le funzioni trigonometriche ammettono angoli in radianti.

sin seno di un angolo
cos
coseno
tan
tangente
asin
arco seno
acos
arco coseno
atan
arco tangente
log
logaritmo naturale o di Nepero
sinh
seno iperbolico
cosh
coseno iperbolico
tanh
tangente iperbolica
exp
funzione esponenziale a base e (numero di Nepero)
log10
logaritmo a base 10
pow(b,x)
potenza a base b di x
sqrt(x)
radice quadrata di x
abs(x)
valore assoluto di x
ceil(x)
parte intera di x
signum(x)
segno di x
cbrt(x)
Radice cubica di x


Sistema di equazioni parametriche

Alcune curve sono definite tramite equazioni con coordinate non cartesiane.

Un sistema di equazioni parametriche che individua una superficie o una curva nella spazio, è individuato racchiudendo tra  parentesi graffe le varie equazioni come in questi esempi:

{linea: x(t) = t+1, y(t) = 3*t+1, [t,-1,2,0.5]}                                                  Equazione parametrica in 2D

{spirale: x(u,v) = ..., y(u,v) =..., z(u,v) = ...,[u,-1,10, 0.5], [v,-10,10, 5]}       Equazione parametrica in 3D.

Si osserva:

  1. linea e spirale sono i nomi assegnati, rispettivamente, al primo e al secondo sistema di equazioni parametriche;
  2. tra parentesi quadre viene riportata ciascuna variabile, insieme ai valori estremi che può assumere, oltre al passo, cioè di quanto questa si deve incrementare. I valori estremi, il nome della variabile ed il passo sono separati da virgole, come in questo caso: [t,-1, 2, 0.5] dove i valori estremi sono -1 e 2 ed il passo è 0.5 .
  3. il nome della curva è sempre seguita dal carattere due punti.
Esempio . Inseriamo, sempre nell'area comandi:

{cerchi : x(u,v) = u*cos(v), y(u,v) = u*sin(v),[u,1,10,0.5],[v,0,2*PI, 0.2]}

Qui cerchi è una curva in 2D dove le ascisse e le ordinate sono determinate dai parametri u e v, con u che assume valori che vanno da 1 a 10 e con un incremento di 0.5, mentre v -angolo- assume i valori che vanno da 0 a 2*PI (2*pigreco) ed il cui passo è 0.2. La figura mostra la curva ottenuta


Da notare che possiamo omettere il passo; in questo caso è il programma che lo stabilisce, ma può succedere che sia troppo piccolo e i tempi di elaborazione possono aumentare in modo sognificativo. Quando si definisce un sistema di equazioni parametriche, è indifferente utilizzare l'operatore di assegnazione ":=" o semplicemente il segno "=", come in questo caso.
Esempio
Come sistema di equazioni parametriche predefinito, abbiamo il seguente, già inserito nell'elenco delle funzioni predefinite:

{spiral2D: x(t) :=t^0.5*cos(t), y(t) := t^0.5*sin(t),[t,0,50]}

il cui grafico è:



Esempio
Il sistema parametrico:

{retVert: x(u) = 3, y(u) =3, z(u) = u, [u,-5,5]}

rappresenta un segmento verticale (parallelo all'asse z) che interseca il piano xy nel punto (3, 3) e che viene visualizzato nella finestra 3D.

Esempio
Il seguente sistema di equazioni parametriche rappresenta, in 2D, un segmento

{seg2D: x(u) = 2*u, y(u) = u, [u,-10,10]}

mentre, se aggiungiamo a questo z(u), abbiamo lo stesso  segmento,  nel piano xy, ma rappresentato nella finestra 3D:

{seg3D: x(u) = 2*u, y(u) = u, z(u) = 0,[u,-10,10]}


Esempio

Consideriamo il sistema di equazioni parametriche con due parametri u e v. Avendo esplicitato z in funzione di  v, ci poniamo in 3D; inoltre, avendo due parametri, il programma interpreterà il grafico come una superficie ed utilizzarà i triangoli Mesh.

{alfa: x(u,v) = u, y(u,v) = 3-3/4*u, z(u,v) = v,[u,-5,5], [v,0,5]}

La superficie ottenuta è un piano verticale.



Parametro ausiliario


Se scriviamo
f (x) := 3*x+ c, [c: 1, 2, -6]
 abbiamo definito una famiglia di funzioni composta da tre funzioni che si distinguono per il diverso valore del parametro ausiliario c. In questa definizione x è la variabile indipendente, mentre c è il parametro ausiliario che può assumere i valori 1, 2 e -6. Facendo visualizzare i grafici di questa famiglia di funzioni, otteniamo tre rette parallele.

Esempio. Scriviamo

g(x) := a*x^2,[a:1/2, 2, 6]

Avremo una famiglia di tre parabole aventi il vertice nell'origine.

Il parametro ausiliario lo troviamo anche nella definizione di un sistema di equazioni parametriche

{circonferenze3D: x(t) = r*cos(t),y(t) = r*sin(t), z(t) = 10/r,[r:-10,-5,-2, 2,5,10],[t,0,2*PI, 0.2]}

Questo sistema rappresenta una famiglia di circonferenze nella spazio ed il loro numero è uguale al numero di valori del parametro r, cioè sei.

Vediamo come far visualizzare questa famiglia di circonferenze.

  1. Inseriamo nell'area comandi il sistema, come riportato sopra;
  2. Se non attivata, attiviamo la finestra dei grafici 3D ();
  3. Scegliamo dall'elenco dei grafici 3D la parola circonferenze3D
  4. Clicchiamo sull'icona plot 3D ()

La figura seguente mostra il risultato.


Trascinando opportunamente il mouse, tenendo premuto il suo tasto sinistro, possiamo far ruotare l'immagine in tutte le direzioni. Con la rotella del mouse, infine, possiamo far rimpicciolire o ingrandire l'immagine. Normalmente l'immagine viene visualizzata insieme ai tre assi cartesiani, ma premendo sul tasto "a" si possono disattivare o attivare. E' possibile pure visualizzare o meno il piano xy premendo il tasto "y", quando la finestra 3D è attiva.

Nota. E' importante scrivere in modo corretto un sistema. Tra le altre cose, bisogna tener presente che:

  1. Un parametro ausiliario non deve apparire come parametro nella definizione di una funzione. Nell'esempio precedente, non è corretto scrivere, per esempio, x(t, r) := r*cos(t) se r è considerato un parameto ausliario ed x è una funzione in una sola variabile.
  2. Nell'elenco dei valori del parametro ausiliario, dopo il nome del parameto bisogna porre i due punti, prima dell'elenco dei suoi valori: [r:-100,-50,-20, 20,50,100].
Esempio
Scriviamo il sistema con parametro ausiliario R:

{CucituraPalla: x(t) = R *cos(t)+15*cos(3*t),y(t) = R*sin(t)-15*sin(3*t),z(t) = R*sin(2*t), [t,0, 4*PI], [R:15, 25,35]}

dove R assume i valori 15, 25 e 35. In questo modo abbiamo definito un insieme di tre curve nello spazio, ottenendo uno spettacolare intreccio di curve.

Esempio
Il seguente sistema parametrico, con parametro ausiliario, fornisce un insieme di sei segmenti paralleli e complanari:

{segmPar: x(u) = u, y(u) = 3-3/4*u, z(u) = v,[u,-5,5],[v:0,1,2,3,4,5]}

Siamo in 3D perché anche z è definita, ma abbiamo sei curve  in quanto il parametro v assume sei valori.

Nota. nel caso di una curva in 2D, possiamo definire un solo valore per il parametro ausiliario, come in questo esempio:

{circles : x(v) := u*cos(v), y(v) = u*sin(v),[u:5],[v,0,2*PI, 0.2]}




Funzioni di funzioni

E' possibile definire delle funzioni utilizzando le funzioni presenti in memoria, anche quelle predefinite. Possiamo, per esempio, definire la funzione:
f(x,y) := S4(x,y)^5
dove S4 è una funzione predefinita e presente nelle tabelle. Una volta inserita questa equazione nell'area comandi, possiamo decidere di far disegnare il suo grafico 3D:
Otterremo la seguente immagine, con scala z ridotta:






Grafici di funzioni in 2D

Incominciamo inserendo, sempre nell'area dei comandi, la seguente definizione di funzione:

r(t) := sin(t)+(sin(5/2*t))^3

Questa verrà automaticamente memorizzata nella tabella delle funzioni 2D e volendo possiamo far visualizzare il suo grafico, ma non è quello che ci interessa; utilizzeremo r(t) per definire un sistema di equazioni parametriche che utilizza questa come funzione componente:

{farfalla: x(t) = r(t)*cos(t), y(t) = r(t)*sin(t), [t,0,2*PI]}

Poiché x e y sono in funzione di t, il programma darà una rappresentazione della curva nel piano xy; la figura seguente mostra cosa si è ottenuto.


Notiamo, infine, che la stessa curva possiamo farla visualizzare in 3D, ma sempre nel piano xy di questo, aggiungendo z(t) = 0:

r(t) := sin(t)+(sin(5/2*t))^3;

{farfalla3D: x(t) = r(t)*cos(t), y(t) = r(t)*sin(t), z(t) = 0, [t,0, 2*PI]}

ottenendo:


Esempio . Consideriamo l'equazione di una curva in un sistema di coordinate polari (r, t) dove r := t^2  e t rappresenta un angolo. Poiché abbiamo

x := r cos(t)

y := r sin(t)

possiamo scrivere l'equazione della curva come un sistema parametrico:

x := t^2*cos(t)

y := t^2*sin(t)

e quindi porre, nell'area comandi:

{curva:x(t) = t^2*cos(t), y(t) = t^2*sin(t) , [t,-10,10]}

Ecco il risultato, dopo aver operato con la rotella del mouse per rimpicciolire o ingrandire l'immagine.


Esempio

Curva Nefroide:

{Nephroid: x(t) = 5*(3*cos(t)-cos(3*t)), y(t) = 5*(3*sin(t)-sin(3*t)), [t,0,2*PI]}


In questo caso potrebbe essere necessario rimpicciolire l'immagine altrimenti potrebbe non essere visibile.


Grafici in 3D

Come mostra la figura della finestra 3D, in questa possiamo visualizzare un sistema di tre assi x, y e z, dove l'asse x è visualizzato in rosso, l'asse y in verde e l'asse z in azzurro. Opzionalmente, possiamo anche far visualizzare un piano xy premendo il tasto "y". Come già accennato e come vedremo in seguito, possiamo visualizzare o meno gli assi premendo il tasto "a".

Normalmente l'origine delle coordinate 3D è posto al centro della finestra, ma possiamo traslare gli assi, insieme alle eventuali superfici visualizzate, premendo il tasto destro del mouse e trascinando questo.

Punti luce

In una scena tridimensionale sono presenti tre punti luce in modo da illuminare quanto rappresentato con luci colorate. Quando si rappresenta una superficie, o una curva, in forma tridimensionale, i punti luce, come mostra la figura seguente, vengono posti in tre punti predefiniti dello spazio, ma è possibile cambiare questi parametri tramite l'area di comando oppure, in un modo più comodo, tramite la scheda impostazioni.
Inoltre, in qualsiasi momento possiamo far visualizzare le informazioni relative alle luci nella stessa scheda.


Visualizzare le luci
Possiamo esplicitare le posizioni delle tre luci rappresentandole come delle sfere colorate. Vediamo come.

Cliccando l'icona , vengono rappresentate, nella finestra 3D, delle sfere che rappresentano le tre luci della scena, come mostrato nella figura seguente  dove è visualizzata anche  la superficie generata dal sistema di equazioni parametriche di nome S1, selezionabile dal box funzioni 3D.



Per nascondere le tre sfere-luci, basterà premere ancora una volta l'icona.

Input da tastiera


Una volta visualizzata una immagine tridimensionale, è possibile intervenire da tastiera per modificare alcuni parametri e per eliminare gli assi:

Premendo più volte il taso "+" (con la finestra 3D attiva), provochiamo un ampliamento del campo di variabilità delle escisse e delle ordinate e l'effetto può essere il seguente, dove la superficie è piena:


Oppure il seguente, se premiamo più volte il tasto '-' e con l'opzione della visualizzazione dei soli contorni:



Quello che succede è che i parametri indicanti i valori estremi di variabilità degli assi x e y di opzione vengono modificati con la conseguenza che verrà visualizzata una parte maggiore o minore del grafico. Da osservare che possiamo ottenere gli stessi effetti modificando direttamente i valori estremi degli assi x, y e z tramite la scheda Impostazioni.
Un altro parametro importante, come già detto, è il numero di divisioni della superficie in triangolini nDivMesh: con nDivMesh :=  50, si ha una superficie meno dettagliata, ma con un tempo di elaborazione inferiore. Ponendo questo parametro uguale a 200, tramite la scheda impostazioni, il tempo di elaborazione aumenta leggermente, ma abbiamo una superficie più precisa, come mostra la figura che segue (con superficie piena) che si riferisce alla stessa funzione predefinita, detta wave e registrata nel programma.




Cambiare lo sfondo di una immagine 3D

Si noterà che è cambiato il colore dello sfondo della immagine precedente. Per farlo, bisogna selezionare un colore e poi  utilizzare il tasto Colore sfondo 3D .

Un esempio di sistema di equazioni in 3D

Consideriamo la superficie di Kuen (http://virtualmathmuseum.org/Surface/kuen/kuen.html) definita come un sistema di equazioni parametriche:

{kuen: x(u,v) = 2 * cosh(v) * (cos(u) + u * sin(u)) / (cosh(v) * cosh(v) + u * u),
  y(u,v) = 2 * cosh(v) * (-u * cos(u) + sin(u)) / (cosh(v) * cosh(v) + u * u),
  z(u,v) = v - (2 * sinh(v) * cosh(v)) / (cosh(v) * cosh(v) + u * u),[v,0,2*PI],[u,0,2*PI]}

Inseriamo questo sistema (si può fare taglia e incolla su quanto scritto sopra, oppure, più semplicemente, cliccare il bottone inserito sotto)  nella scheda Input; selezioniamo poi la voce kuen nel
Box scelta 3D e premiamo il tasto disegno 3D. La figura seguente mostra la superficie ottenuta:


Equazioni

Utilizzando una funzione precedentemente definita in due variabili, è possibile definire una equazione del tipo f(x,y) = 0, con f(x,y) già definita.
Consideriamo il seguente esempio. Scriviamo:

f(x,y) := 4*x^3+9*x*y^2-9*y^3-36*x+36*y ;
equazione eq1: f= 0, [x,y]

Da notare che, nella definizione di equazione, abbiamo esplicitato le incognite della stessa ponendole tra parentesi: [x,y]. Nell'area input verrà visualizza l'equazione
 
4*x3+9*x*y2-9*y3-36*x+36*y = 0 e per visiualizzare le soluzioni di questa nel piano xy e nella finestra 3D, dobbiamo scegliere eq1 dal box di scelta 3D e poi far disegnare il grafico.



Verrà visualizzato un insieme di punti, tutti nel piano xy, che appartengono alla curva delle soluzioni dell'equazione. A conferma di questo possiamo far disegnare il grafico di f(x,y) per constatare che le soluzioni dell'equazione eq1 ottenute sono i punti di intersezione tra la superficie generata dalla funzione f e il piano xy, come mostra la figura seguente.




Nell'esempio precedente abbiamo visto un caso particolare in cui il primo membro dell'equazione è dato dal nome di una funzione, ma in generale possiamo definire una equazione come

eq nomeEq: espressione1 = espressione2,[par1,par2]
o
eq nomeEq: f(x,y) = g(x,y),[x,y]

dove [x,y] serve per esplicitare le incognite dell'equazione. Questo è necessario  in quanto si può verificare una situazione del genere dove nell'equazione possiamo avere una costante precedentemente definita:

z := 6;
eq eq4: x^2+z = z^2+y,[x,y]

Esempio

 eq eqaz: -5*x^4+9*x*y^2-9*y^3-36*x+36*y*x+5*x*y^2 = x^2+y -sin(y),[x,y]

In questo caso verranno visualizzati, nel piano xy, alcuni punti P(x,y) che sono un sottoinsieme dell'insieme delle soluzioni dell'equazione:

-5*x^4+9*x*y^2-9*y^3-36*x+36*y*x+5*x*y^2 -(x^2+y -sin(y)) = 0

Nota: la densità dei punti visualizzati dipende dal parametro nDivMesh.Possiamo avere risultati non corretti per funzioni non definitte in qualche punto interno all'insieme di variabilità di x e y.

Cancellazione di un oggetto grafico visualizzato nella finestra 3D

Abbiamo visto che l'icona serve per cancellare la visualizzazione di un oggetto. Può succedere che nella finestra 3D siano visualizzati più grafici ed in questo caso si pone il problema di selezionare l'oggetto da cancellare: basta selezionare questo tramite il box di scelta oggetti 3D e poi premere . Nel caso in cui nessun oggetto è stato selezionato o quello selezionato non corrisponde ad alcuno degli oggetti grafici visualizzati, viene cancellato uno qualsiasi di quelli visualizzati.

Alcuni oggetti grafici particolari

E' possibile definire alcuni oggetti grafici che ci permettono di costruire figure tridimensionali di una certa complessità. Incominciamo da quelli più semplici.

Punto

Se scriviamo, sempre nell'area comandi, quanto segue

punto A: 5,7,10

abbiamo definito un punto nello spazio 3D avente per coordinate x = 5, y = 7 e z = 10.
Per visualizzare questo punto, dobbiamo prima selezionarlo nel box elenco funzioni 3D e poi cliccare l'icona : verrà visualizzata una piccola sfera e a fianco la lettera A.
In generale, possiamo generare un punto scrivendo

punto nomePunto: x, y, z


Segmento

Scriviamo ancora

punto B: -5,-6,-10

e poi:

segmento AB:A, B

Verrà creato un segmento, di nome AB e rintracciabile nel box funzioni3D.
Per visualizzare questo segmento, bisognerà selezionare AB dal box funzioni 3D e cliccare .

In generale, un segmento viene creato inserendo nel box comandi una istruzione tipo:

 

segmento S: P1, P2

 

dove S è il nome dato al segmento e P1 e P2 i nomi dei due punti estremi, già definiti e presenti in memoria.


Spezzata

Con un insieme di segmenti possiamo creare una spezzata, aperta o chiusa, nello spazio.
Per fare questo sono necessarie più istruzioni da fornire al programma ed è necessario utilizzare la scheda .

In questa scheda inseriamo le istruzioni che seguono:

  //piramide

punto P1: 5,0,0;

punto P2: 0,5,0;

punto P4: 0,-5, 0;

punto V: 0,0,5;

seg P1P2: P1, P2;

seg P2P3: P2, P3;

seg P3P4: P3, P4;

seg P1P4: P1, P4;

seg VP1: V, P1;

seg VP2: V, P2;

seg VP3: V, P3;

seg VP4: V, P4;

spezzata3D piramide: P1P2, P2P3,P3P4, P1P4, VP1, VP2, VP3, VP4

 
Qui abbiamo definito i punti P1, P2, P3 e P4, nel piano xy, e il vertice V della piramide. Da notare che ogni istruzione termina con il carattere ';', tranne l'ultima dove questo non è necessario. Possiamo anche inserire un commento che non avrà alcun effetto sull'esecuzione delle istruzioni, ma serve per chiarire a chi legge il significato delle istruzioni. Ogni commento è proceduto dalle doppie barre '//' e tutto quello che segue viene ignorato, fino alla fine della riga.
Oltre ai punti, vengono definiti i lati come segmenti aventi per estremi due dei punti precedentemente definiti (qui seg è equivalente al comando segmento).
Infine, tramite il comando spezzata3D, viene definita una spezzata di nome piramide e avente per lati i segmenti precedentemente definiti. Il suo grafico è:


Vettore

E' possibile definire anche un vettore tramite il comando vettore:

vettore nome: puntoA, puntoB

dove puntoA e puntoB sono due oggetti punto, come abbiamo visto sopra. Il verso del vettore è dal primo punto al secondo, quindi da puntoA a puntoB.

Esempio
Nella finestra dei comandi scriviamo

punto C:0,0,0;
punto D: 5,5,5;
vettore CD: C, D

Nel box funzioni 3D selezioniamo l'oggetto CB e poi premiamo il tasto :



Colore di un solido

Abbiamo già visto come modificare il colore di un oggetto in 3D. Nel seguito vedremo vari esempi in cui ad un solido viene assegnato un certo colore e una certa trasparenza. In assenza di un colore esplicito, verrà usato quello di opzione.

Poligono

     Con un insieme di punti (almeno tre) possiamo anche definire un poligono in 3D.

Proviamo, per esempio, ad inserire il seguente insieme di istruzioni:

//triangolo
punto A: -5,5,0;
punto B:5,7,13;
punto C:3,-2,10;
poligono f: A,B,C

Queste definiscono tre punti ed un  in 3D cioè una superficie piana triangolare i cui vertici sono i punti A, B e C.
Il comando faccia ha lo stesso effetto, dati un insieme di punti.
 Nel caso in cui i punti sono più di tre e non sono complanari, avremo una superficie composta da tanti triangoli non tutti complanari.
Consideriamo le seguenti istruzioni:


//superficie
punto A:5,0,0;
punto B: 0,5,0;
punto C: 0,0,5;
punto D: 5,5,5;
punto E: 7,7,3;
faccia ABCDE: A, B, C,D, E

Se facciamo eseguire queste istruzioni, avremo:



Il programma ha creato tanti triangoli aventi come vertice comune il primo della lista, cioè A, e collegato questo con i vertici restanti.

Esempio
punto A1:3,0,0;
punto A2: 0,3,0;
punto B1:3,0,5;
punto B2: 0,3,5;
faccia A1A2B1B2: A1, A2, B1, B2;


Facendo visualizzare la faccia otteniamo la seguente immagine:



 e si nota che non abbiamo ottenuto un quadrato come ci si sarebbe potuto aspettare e questo dipende dal fatto, come detto sopra, che la superficie si ottiene unendo due triangoli, A1A2B1 e A1B1B2.
Per ottenere un quadrato dobbiamo fornire i vertici come se ruotasimo intorno al puntoo A1: A1, A2, B2, B1.

Solidi

Tramite il comando faccia è possibile costruire solidi ed in particolare quelli regolari tramite il comando solido.
Incominciamo con un solido semplice, la piramide vista in precedenza. Nella scheda Inserimento inseriamo le seguenti istruzioni (si può fare il copia e incolla di quanto segue):

//Esempio costruzione di un solido

punto P1: 5,0,0;
punto P2: 0,5,0;
punto P3: -5,0,0;
punto P4: 0,-5, 0;
punto V: 0,0,5;
//definizione delle facce
faccia VP1P2: V, P1, P2;
faccia VP2P3: V, P2, P3;
faccia VP3P4: V, P3,P4;
faccia  VP1P4: V, P1,P4;
//faccia di base
faccia base: P1, P2, P3, P4;
//definizione del solido di nome piramide
solido piramide1: VP1P2, VP2P3, VP3P4, VP1P4, base


La rappresentazione del solido piramide è la seguente:



Nota. Volendo assegnare al solido un diverso colore e una certa trasparenza, possiamo operare con la scheda Impostazioni.


Cubo
Come esempio di costruzione di un solido, consideriamo il caso di un cubo di cui conosciamo le posizioni dei suoi vertici  e precisamente il caso in cui i vertici di una base si trovano sugli assi coordinati:

//Cubo
lato := 3*sqrt(2);
//punti base inferiore
punto A1:3,0,0;
punto A2: 0,3,0;
punto A3: -3,0,0;
punto A4: 0,-3,0;
//punto base superiore
punto B1:3,0,lato;
punto B2: 0,3,lato;
punto B3: -3,0,lato;
punto B4: 0,-3,lato;
//facce
faccia A1A2A3A4: A1, A2, A3, A4;//base inferiore
faccia A1A2B2B1: A1, A2, B2, B1;
faccia A2A3B2B3: A2,A3,B3,B2;
faccia A3A4B3B4: A3, A4, B4, B3;
faccia A4A1B4B1: A4, A1, B1, B4;
faccia B1B2B3B4: B1, B2, B3, B4;//base superiore
solido cubo:A1A2A3A4, A1A2B2B1, A2A3B2B3, A3A4B3B4, A4A1B4B1, B1B2B3B4;
colore cubo: 0, 50, 250, 0.9
 






Consideriamo ora un caso più complesso e proviamo a disegnare un icosaedro, cioè un solido regolare di 20 facce che sono triangoli equilateri.
Rinviamo al seguente indirizzo:

https://aliveuniverse.today/rubriche/ricreazioni-matematiche/2864-dadi-e-solidi-platonici-ultima-parte-icosaedri

per una trattazione teorica su questo solido e su come ricavare i suoi vertici.
Per ottenere il solido inseriamo, nella scheda AreaComandi le seguenti istruzioni:

r := 5;//raggio sfera circoscritta all'icosaedro
a := r*sqrt(5)/5;//ordinata cerchio superiore
R := sqrt(r^2-a^2);//raggio di ciascuna circonferenza
//conversione da gradi a radianti
Rad(a) := PI*a/180;//definisce la funzione Rad
//definizione dei 12 punti
punto A:0,0,r;
punto B:0,0,-r;
punto C0:0,R, a;
punto C1:R*sin(Rad(72)),R*cos(Rad(72)),a;
punto C2:R*sin(Rad(144)),R*cos(Rad(144)),a;
punto C3:R*sin(Rad(216)),R*cos(Rad(216)),a;
punto C4:R*sin(Rad(288)),R*cos(Rad(288)),a;
//punti seconda circonferenza, con z = -a
punto C5: R*sin(Rad(36)), R*cos(Rad(36)), -a;
punto C6:R*sin(Rad(108)), R*cos(Rad(108)), -a;
punto C7: 0,-R,-a;
punto C8:R*sin(Rad(252)), R*cos(Rad(252)), -a;
punto C9: R*sin(Rad(324)), R*cos(Rad(324)), -a;
//5 facce con vertice superiore A
faccia AC0C1: A, C0, C1;
faccia AC1C2: A,C1,C2;
faccia AC2C3: A, C3,C2;
faccia AC3C4: A, C4, C3;
faccia AC0C4: A, C0, C4;
//5 facce con vertice inferiore B
faccia BC5C6: B, C5, C6;
faccia BC6C7: B, C6, C7;
faccia BC7C8: B, C7,C8;
faccia BC8C9: B, C8, C9;
faccia BC9C5: B, C9, C5;
//10 facce tra i due cerchi
faccia C1C5C6: C1, C6,C5;
faccia C1C0C5: C1,C5,C0;
faccia C0C5C9: C0,C5,C9;
faccia C0C4C9: C0,C9,C4;
faccia C8C4C9:C8,C4,C9;
faccia C3C8C4:C3,C4,C8;
faccia C7C3C8:C7,C3,C8;
faccia C2C7C3: C2,C3,C7;
faccia C2C7C6:C2,C7,C6;
faccia C6C2C1: C6,C1,C2;
//definizione del solido di nome icosaedro tramite l'elenco delle sue 20 facce
solido icosaedro: AC0C1, AC1C2,AC2C3, AC3C4, AC0C4, BC5C6, BC6C7,BC7C8,BC8C9,BC9C5, C1C5C6,C1C0C5, C0C5C9,C0C4C9,C8C4C9, C3C8C4,C7C3C8,C2C7C3, C2C7C6,C6C2C1, (255, 0, 0, 1.0);//Colore rosso senza trasparenza
visSolido icosaedro;//comando per visualizzare il solido

La figura mostra l'immagine ottenuta.



Cono-piramide

E' possibile rappresentare un cono tramite il comando:

cono nomecono: raggio, altezza, nDiv

Il cono viene realizzato dividendo la circonferenza di base in nDiv archi (e altrettante corde) e creando nDiv triangoli isosceli aventi tutti un vertice coincidente con la punta del cono e per base ciascuna delle nDiv corde della circonferenza di base. Naturalmente, quello che otteniamo è una piramide con nDiv lati che approssima il cono.

Esempio
cono cono1: 5, 10, 5

Crea un cono-piramide di raggio 5, altezza 10 e con 5 divisioni della circonferenza di base, cioè con 5 lati della piramite.
La figura seguente mostra quanto ottenuto:




Aumentando nDiv, cioè il numero dei lati, abbiamo una maggiore approssimazione del cono:

cono cono2: 5, 10, 500

In questo caso è nDiv = 500. Ecco il risultato:



Multi Sistemi di equazioni parametriche

E' possibile considerare come un'unico oggetto un elenco di sistemi di equazioni parametriche. Lo scopo è quello di utilizzare più sistemi parametrici per rappresentare figure complesse nel piano e nello spazio. Consideriamo il seguente esempio:

{triangolo: x(t) = -5+15*t, y(t) = 20+20*t,[t, 0,1];

x(t) = -5+20*t, y(t) = 20-30*t,[t, 0,1];

x(t) = 15-5*t, y(t) = -10+50*t,[t, 0,1]}



Si osserva che le variabili x e y sono definite più volte e queste definizioni sono separate dal punto e virgola, ottenendo un insieme di tre sistemi parametrici. Questo multi sistema prende il nome di triangolo e fornirà una figura 2D nel piano xy, cioè un triangolo.

Esempio
Tra i sistemi predefiniti abbiamo la sphere e il torus: possiamo allora definire un multi sistema combinando questi due sistemi. Scriviamo:

{sferaToro: sphere; torus};


Ed ecco il risultato, dopo aver ridotto la scala lungo l'asse z:



Da notare che possiamo cambiare il colore a ciscuna delle due superfici selezionando torus o sphere dal box scelta 3D e poi utilizzare la scheda impostazioni. Da notare che possiamo cancellare uno dei due oggetti selezionandolo dal comboBox 3D e poi cliccare sull'icona cancella.

Un altro multi sistema di equazioni parametriche è il seguente (dove sphere e spiral3D sono sistemi parametrici a corredo del programma):

{solidoCom: sphere; spiral3D};

mentre il seguente non è ammesso in quanto wave non è un sistema di equazioni parametriche:

{solidoCom: sphere; wave};

Esempio

Vediamo come visualizzare un iperboloide iperbolico di rotazione. Definiamo un multi sistema parametrico contenente due sistemi  parametrici in modo da tener conto dei due segni di z.

a := 3;

{iperboloideIperbolico: x(u,t) = u*sin(t), y(u,t) = u*cos(t),z(u,t) = a*sqrt(u^2/a^2-1), [u,-5,5],[t,0,PI]; x(u,t) = u*sin(t), y(u,t) = u*cos(t) , z(u,t) = -a*sqrt(u^2/a^2-1), [u,-5,5],[t,0,PI]}

Ed ecco l'immagine:


Qualche esempio

Di seguito si riportano elcuni esempi di programmi per costruire figure particolari in 3D.

Cilindro

Come esempio di uso dei sistemi di equazioni parametriche vediamo come si può costruire un cilindro di dato raggio e data altezza e avente come asse z.

Il seguente programma serve allo scopo:

r := 5; //raggio cilindro

h := 10;//altezza cilindro

t1 := atan(h/r);//angolo massimo

{cilindro: x(u,t) = r*sin(u), y(u,t) = r*cos(u), z (u,t) = r*tan(t),[t, -t1,t1], [u,0,2*PI]};



Questo programma costruisce un cilindro di raggio 5 e altezza 20 e avente l'asse coincidente con l'asse z. Possiamo poi stabilire un colore a piacere.

Ellissoide

Le equazioni parametriche dell'ellissoide sono
x = a cos(t) sin(p)
y = b sin(t)sin(p)
z = c cos(p)
 con t ∈[0,2PI] e p ∈ [0, PI]
ed ecco il relativo programma:

a := 5;
b := 7;
c := 2;
{ellissoide: x(t,p)= a*cos(t)*sin(p),
y(t,p) = b*sin(t)*sin(p), z(t,p) = c*cos(p),
[t, 0, 2*PI],[p,0,PI]}
;


ed ecco il risultato:



Ellissoidi e parametro ausiliario

Nell'esempio precedente possiamo considerare a come un parametro ausiliario in modo da generare più ellissoidi, uno dentro l'altro. Per poter visualizzarli tutti, limitiamo l'intervallo di variabilità del parametro p da 0 a PI/2. Ecco il programma:

b := 7;
c := 10;
{ellissoide3: x(t,p)= a*cos(t)*sin(p), y(t,p) = b*sin(t)*sin(p), z(t,p) = c*cos(p), [t, 0, 2*PI],[p,0,PI/2], [a:5,10, 20]}

Naturalmente disegnare più ellissoidi richiede più tempo di elaborazione. Ed ecco il risultato:




Matrici

Nel seguito useremo la scheda InputOutput (scheda IO) per inserire o visualizzare le matrici. Una matrice può essere definita esplicitamente nel seguente modo:

A := [1 2; sin(PI/2) 5]

dove A è il nome assegnato alla matrice di due righe e di due colonne. Premdo enter, nella scheda IO avremo:

>A =
        1.0000      2.0000
        1.0000      5.0000


Da notare che gli elementi di una matrice sono racchiusi tra le parentesi [ e ] e sono separati da spazi, mentre un elemento può essere un numero reale, una espressione o il valore di una qualsiasi funzione precedentemente definita. Un'altra cosa da notare è che il simbolo ";" indica l'inizio di una nuova riga.
Esempio

>B := [wave(2,3) (3+4/5)^2 -1; -1 2 3]

MathPlace risponde visualizzando B:

>B =
        0.4202     14.4400     -1.0000
       -1.0000      2.0000      3.0000

Da notare che due lementi di una matrice devono essere separati da almeno uno spazio. Nel caso in cui un elemento di una matrioce è dato da una espressione, conviene racchiudere questa tra parentesi per evitare che qualche spazio dell'espressione porti ad alterare la successione degli elementi della matrice.

Esempio
[1 (1    +5) 6]

viene interpretato come:

>[1 (1    +5) 6]=
        1.0000      6.0000      6.0000
mentre, senza le parentesi, abbiamo:

>[1 1    +5 6]=
        1.0000      1.0000      5.0000      6.0000

Una volta definita una matrice, questa viene memorizzata in memoria e può essere utilizzata per definire altre matrici o per calcolare espressioni tra matrici.
Possiamo per esempio definire una terza matrice utilizzando la matrice A:

>C:= [A A]
>C =
        1.0000      2.0000      1.0000      2.0000
        1.0000      5.0000      1.0000      5.0000

oppure scrivere

[A;A]

ed ottenere la matrice composta da due matrici A sovrapposte:

>      1.0000      2.0000
        1.0000      5.0000
        1.0000      2.0000
        1.0000      5.0000

Matrice che non verrà conservata perché non abbiamo fornito per essa un nome.Notare che le prime due righe sono le righe di A, come pure le ultime due.

Matrice trasposta


Per ottenere la matrice trasposta di una matrice data, basta porre l'apostrofo dopo il simbolo di matrice. Utilizzando la matrice C di prima, possiamo avere la sua trasposta nel seguente modo

>C'

>C' =
        1.0000      1.0000
        2.0000      5.0000
        1.0000      1.0000
        2.0000      5.0000

Oserviamo che in questo caso la matrice C' è stata visualizzata ma non registrata in memoria in quanto non abbiamo fornito un nome.

Definiamo ora un'altra matrice con lo stesso numero di colonne di A, dove A è stata definita sopra:

>A1:= [-1 -0.8;-9 3; 3 -5]

>A1 =
       -1.0000     -0.8000
       -9.0000      3.0000
        3.0000     -5.0000

 e definiamo la matrice E come segue:
 
>E:= [A;A1]

la risposta sarà:

>E =
        1.0000      2.0000
        1.0000      5.0000
       -1.0000     -0.8000
       -9.0000      3.0000
        3.0000     -5.0000

Esempio. Inseriamo le seguenti istruzioni:

A:= [1 2 3;   4 5 6; 7 8 9];
r:= [10 11 12];
[A;r]

 La risposta sarà una nuova matrice: dove, come ultima riga, è stata aggiunto il vettore r:

>      1.0000      2.0000      3.0000
        4.0000      5.0000      6.0000
        7.0000      8.0000      9.0000
       10.0000     11.0000     12.0000

Esempio
Scriviamo :
[-1 -0.8;-9 3; 3 -5]'

 Avremo, come risposta:

>     -1.0000     -9.0000      3.0000
       -0.8000      3.0000     -5.0000

Esempio

>[1 2; 3 4]''
>[1 2; 3 4]''=
        1.0000      2.0000
        3.0000      4.0000

Esempio
>[1 2; 3 4]'''
>[1 2; 3 4]'''=
        1.0000      3.0000
        2.0000      4.0000

Funzioni aventi per argomento una matrice


random(m,n)
Genera e ritorna una matrice di m righe e n colonne
inverse(A)
ritorna la matrice inversa della matrice A
identity(m,n)
ritorna la matrice identità di m righe ed n colonne
det(A)
ritorna il determinante della matrice quadrata A
rank(A)
ritorna il rango della matrice A
trace(A)
ritorna la somma degli elementi della diagonale di A
inv(A), inverse(A)
ritorna la matrice inversa della matrice quadrata A
zero(m,n)
ritorna una matrice di m righe e n colonne di elementi  zero

Esempi

>identity(4,4)
>      1.0000      0.0000      0.0000      0.0000
        0.0000      1.0000      0.0000      0.0000
        0.0000      0.0000      1.0000      0.0000
        0.0000      0.0000      0.0000      1.0000>

Ancora: 
>trace(identity(4,4))
>4.0


>random(3,4)

>      0.0203      0.2146      0.6378      0.7325
        0.4994      0.3482      0.6890      0.0720
        0.3852      0.5505      0.1296      0.2205

>B:= random(3,3)
>inverse(B)

>     -1.4111     -2.2224      4.5168
        2.6972      2.2152     -4.5564
       -0.6389      2.3576     -1.4189

Verifica:

>B*inverse(B)
>      1.0000      0.0000      0.0000
        0.0000      1.0000      0.0000
        0.0000      0.0000      1.0000

Possiamo anche calcolare il determinante di B:

>det(B)
>-0.39501530286204967

o la soma degli elementi della diagonale:
>trace(B)
>1.933067950239772



Operazioni tra matrici

Gli operatori matriciali sono:*, +, -, ^

Ponendo A:= [1 2 3; 4 5 6; 7 8 9]
abbiamo:
>A =
        1.0000      2.0000      3.0000
        4.0000      5.0000      6.0000
        7.0000      8.0000      9.0000

>A+3*A
>        4.0000      8.0000     12.0000
       16.0000     20.0000     24.0000
       28.0000     32.0000     36.0000

Esempio

>A:= [1 2; 3 4];
B:= -A

otteniamo:
B =
       -1.0000     -2.0000
       -3.0000     -4.0000

>[(A-B)]'
>       2.0000      6.0000
        4.0000      8.0000

Prodotto tra matrici


Considerando le matrici A e B:= -A visti prima, abbiamo:

>A*B
>       -7.0000    -10.0000
      -15.0000    -22.0000

Possiamo anche moltiplicare due matrici esplicite, con una che è  trasposta:

[1 2; 3 4]*[5 6; 7 sin(PI)]'
>       17.0000      7.0000
       39.0000     21.0000

Esempi

>[ 2 3    4]*[1;-1;2]
>7

Posto
A =
        1.0000      2.0000
        3.0000      4.0000
B =
       -1.0000     -2.0000
       -3.0000     -4.0000
e
>C =
       -1.0000      0.0000
       -3.0000      4.0000
abbiamo:

A*(B+C) =
      -14.0000     -2.0000
      -30.0000     -6.0000
>A*B+A*C =
      -14.0000     -2.0000
      -30.0000     -6.0000

Esempi con matrici esplicite:

>[1 2 -1 0;4 0 2 1; 2 -5 1 2]+[3 -4 1 2;1 5 0 3;2 -2 3 -1]
>      4.0000     -2.0000      0.0000      2.0000
        5.0000      5.0000      2.0000      4.0000
        4.0000     -7.0000      4.0000      1.0000

Esempio
>[2 3 4;1 5 6]*[1;2;3]
>      20.0000
       29.0000

Esempio
>[1 1 0 0 0 0;2 1 0 0 0  0;0 0 3 1 2 0;0 0 1 2 1 0;0 0 0 1 1 0;0 0 0 0 0 1]*[1 2 3 4 5 6;2 3 4 5 6 7;3 4 5 6 7 8;4 5  6 7 8 9;9 8 7 6 5 4;8 7 6 5 4 1 ]
>             3.0000      5.0000      7.0000      9.0000     11.0000     13.0000
        4.0000      7.0000     10.0000     13.0000     16.0000     19.0000
       31.0000     33.0000     35.0000     37.0000     39.0000     41.0000
       20.0000     22.0000     24.0000     26.0000     28.0000     30.0000
       13.0000     13.0000     13.0000     13.0000     13.0000     13.0000
        8.0000      7.0000      6.0000      5.0000      4.0000      1.0000

Prodotto di uno scalare per una somma:

>A:= [1 2 -3;5 0 2;1 -1 1];
B := [3 -1 2;4 2 5;2 0 3];
3*(A+B)

>      12.0000      3.0000     -3.0000
       27.0000      6.0000     21.0000
        9.0000     -3.0000     12.0000

>(A+B)*3
>(A+B)*3=
              12.0000      3.0000     -3.0000
       27.0000      6.0000     21.0000
        9.0000     -3.0000     12.0000

Potenza di una matrice

Una scrittura del tipo: A^2 indica il prodotto A*A, dove A è una matrice. Analogamente, A^-1 indica la matrice inversa di A, mentre A^-2 indica il prodotto tra due inverse da A.
Esempi

A := [1 2; 3 4]

>A^2
>A^2=
        7.0000     10.0000
       15.0000     22.0000

>A^-1
>A^-1=
       -2.0000      1.0000
        1.5000     -0.5000

 Verifica:

>A*A^-1=
        1.0000      0.0000
        0.0000      1.0000
   

>A^1=
        1.0000      2.0000
        3.0000      4.0000

>A^0=
        1.0000      0.0000
        0.0000      1.0000

A:= [2 -1 1;0 1 2;1 0 1];
>A^2=
        5.0000     -3.0000      1.0000
        2.0000      1.0000      4.0000
        3.0000     -1.0000      2.0000


Equazioni matriciali

Date due matrici A e B, possiamo trovare, se le dimensioni di A e B sono coerenti, una terza matrice, o vettore, in modo che sia soluzione di una delle seguenti equazioni matriciali:

X*A = B
A*X = B

Per ottenere la soluzione di un sistema-equazione matriciale, basta scrivre l'equazione, dopo avere definito le matrici A e B, e automaticamente verrà fornita la soluzione.
Nota. La matrice X non deve essere conosciuta, cioè non deve essere stata già registrata in memoria, altrimenti avremo un messaggio di errore.

Esempio

A:= [1 2; 3 4];
B := [-1; 0];
A*X = B

Dove X è la matrice incognita. Otteniamo, per X:

>X=
        2.0000
       -1.5000

Possiamo verificare la soluzione calcolando il prodotto:
A*X
ottenendo:
>A*X=
       -1.0000
        0.0000

Ecco qualche altro esempio di sistema lineare di equazioni:

>A:= [2 56 4; 1 3 -1; -1 1 2]
>A
        2.0000     56.0000      4.0000
        1.0000      3.0000     -1.0000
       -1.0000      1.0000      2.0000
>B:= [1;2;3]
>B
        1.0000
        2.0000
        3.0000

 >A*X=B
otteniamo:
>X=
       15.8846
       -1.2692
       10.0769

Esempio

Posto:

>A:= [2 1 5 1;1 1 -3 -4;3 6 -2 1;2 2 2 -3];
>B:= [5;-1;8;2]

la soluzione di:
A*X=B
è:

>X=
        2.0000
        0.2000
        0.0000
        0.8000

Esempio:

>A:= [1 2; 3 4];
B:= [-1 -2];
A*Z = B'

Z=
        0.0000
       -0.5000

Esempio
La soluzione dell'equazione:

>H*A=B
è:

>H=
       -1.0000      0.0000

Esempio

A:= [2  6 4;1 3 -1;-1 1 2];
B:= [1;2;3];
Z*A=B'

>Z=
        0.7083     -0.6667     -0.2500


Operatore punto

E' possibile esegure le operazione tra gli elementi di due matrici tramite l'operatore punto. Questo è possibile usando il punto dopo il primo operando e prima di un operratore.

L'espressione matriciale:
A.*B
per esempio, indica la matrice ottenuta moltiplicando ciascun elemento della matrice A per ciascun elemento della matrice B.

Esempio

A:= [1 2; 3 4];
B:= [-1 0;2 -3];
A.*B

fornisce la matrice:
>A.*B=
       -1.0000      0.0000
        6.0000    -12.0000

 Divisione:

A./B
       -1.0000    Infinity
        1.5000     -1.3333

Prodotto di un numero per una matrice

Possiamo moltiplicare un nmero per una matrice.
Esempio

L'espressione: -3*A, con A definita sopra, fornisce la matrice:


>-3*A=
       -3.0000     -6.0000
       -9.0000    -12.0000
   
Altri esempi

>A:= [1 2; 3 4]
>A
        1.0000      2.0000
        3.0000      4.0000
>([1 -1]*A)'=
       -2.0000
       -2.0000


Esempio
>A:= [1 2; 3 4];
A'''+3*A

Si ottiene:

>A'''+3*A=
        4.0000      9.0000
       11.0000     16.0000


Elenco comandi

    Abbiamo visto che, tramite l'area comandi possiamo inserire dei comandi prestabiliti, dove un comando può essere seguito da altre informazioni. Qui riportiamo l'elenco dei comandi.


Geometria interattiva

Prentiamo ora il pacchetto di geometria interattiva  dove è possibilie creare oggetti geometrici, tipo punti, rette, segmenti, angoli, coniche, applicare trasformazioni, ottenere misure e tanto altro.
Selezionando l'icona dalla finestra principale, appare la seguente finestra:

Finestre di Geometria


dove notiamo subito due sotto finestre grandi, una a sinistra con tante icone ed una a destra, più grande, detta area disegno o foglio di disegno in quanto è in questa zona che si disegnano le figure geometriche.
Abbiamo, dall'alto, la barra dei menu dove la voce "Nascondi/visualizza punti" permettere di visualizzare o meno i punti di costruzione di una figura, come vedremo in seguito.
La voce 'Cancella' permette di cancellare gli oggetti presenti nell'area disegno, azzerando tutti i dati.
Barra delle icone
Abbiamo poi la barra delle icone:

La prima icona, da sinistra, è una freccia che serve per metterci nella modalità "MUOVI" , modalità che ci permette di trascinare alcuni punti particolari di on oggetto grafico in modo da modificarne l'aspetto. Inoltre, cliccando su questa icona, di interrompe qualsiasi operazione in corso.
Icona assi .Permette di visualizza gli assi cartesiani e la griglia.
Icona Cancella : permette di cancellare tutti gli oggetti geometrici visualizzati nell'area disegno. L'effetto di queata icona è lo stesso della voce 'Cancella' della barra menu, ma in più chiede conferma prima di cancellare.
Coordinate del mouse. Successivamente abbiamo due campi numerici dove vengono visualizzate le coordinate della punta del pouse, quando questa si trova nell'area disegno.
Icona Sposta: l'area del disegno va oltre le dimensioni della finestra e ci possiamo spostare in questa trascinando il mose, quando questa icona è attivata.
Icona AggiornaServe per aggiornare la tabella, posta nella cartella individuata dell'icona , in cui sono riportati tutti gli oggetti geometrici costruiti nell'area disegno. Questa cartella viene aggiornata solo quando questa icona viene cliccata.
Icona dei Colori Cliccando questa icona apparirà una finestra in cui sarà possibile scegliere un colore, come visto anche parlando del Color Picker.
In generale, quando dal menu contestuale di una figura si sceglie di cambiare il colore, viene preso quello indicato da questa icona.
Icona Salva Permette di salvare l'area di disegno cone immagine nei formati png, bmp e jpg.
Abbiamo poi altre icone che rappresentano menu a tendina e che ripropongono le icone che si trovano nella parte sinistra dello schermo (scheda ) e che esamineremo fra poco. Lo scopo di questi menu a tendina è quello di presentare in modo unitario gruppi di icone in qualche modo tra loro omogenee, per facilitare la loro ricerca. La figura seguente mostra il menu che raggruppa le seguenti icone: rette, segmenti, vettori, semirette, rette parallele, perpendicolari, bisettrici e spezzate.

Menu contestuale

In generale, cliccando con il tasto destro su un oggetto visualizzato, appare una piccola finesta con un menu relativo all'oggetto cliccato. Nel caso di un punto, per esempio, abbiamo il menu seguente:


Area delle schede


Quest'area comprende due schede: quella delle icone  e quella della tabella elenco oggetti creati . In fondo alla prima scheda abbiamo un'area dove viene visualizzato del testo esplicativo delle operazioni che si stanno compiendo. Se, per esempio, si clicca sull'icona delle tangenti , vi apparirà un testo simile a quanto mostrato nella figura seguente. In pratica, è un sintetico manuale dinamico.

Scheda Elenco oggetti.


Questa scheda permette di visualizzare una tabella con l'elenco delle figure geometriche create e visualizzate nel foglio da disegno. Per avere una situazione aggiornata degli elementi grafici, bisogna cliccare su tasto , come già detto.

Possiamo cliccare su ciascuna riga, dove ogni riga si riferisce ad un oggetto geometrico: si apre una finestra con l'elenco degli elementi dell'oggetto geometrico e da dove, come con il menu contestuale, è possibile modificare o visualizzare alcuni suoi parametri. In figura, per esempio, la finestra permette, cliccando su una riga, di modificare i parametri della retta di nome r1.

Tramite questo menu possiamo visualizzare o nascondere oggetti geometri, come può accadere con le rette e i segmenti, come vedremo in seguito.

Oggetto punto

Un oggetto geometrico fondamentale è il punto, ottenibile tramite l'icona:. Ad ogni punto è associato un nome, visualizzato quando il punto viene creato e iniziante con la lettera p e seguita da un numero. In qualsiasi momento il nome di un punto può essere cambiato tramite il menu contestuale associato all'oggetto punto e mostrato sotto:


Esaminiamo le varie voci
Punta del mouse su un punto. Quando la punta del mouse è sopra ad un punto, questo cambia forma: il suo raggio diventa più grande ed il colore diventa rosso ad indicacre che un eventuale click comporterà la selezione di quel punto, per esempio quando si disegna il poligono e si seleziona un punto per ottenere un vertice .
Normalmente il colore di un generico punto è giallo, ma può essere rosso se si tratta di un punto-maniglia, cioè di un punto di definizione di una figura  il cui spostamento con il mouse determina una variazione della forma della figura, come nel caso di un vertice di un poligono o di un estremo di un segmento. In ogni caso, si può cambiare il colore tramite il menu contestuale o tramite la scheda Elenco Oggetti.
Alle volte, per un punto passano più rette o segmenti, coprendo il cerchietto ed impedendo di selezionarlo; per risolvere il problema, si può aumentare il raggio del punto (scheda Elenco Oggetti).
Ci sono vari tipi di punti, oltre a quelli creati dall'utente, e sono generati automaticamente, come, per esempio, i punti di intersezione tra due figure (di solito colorati di blu) e i punti di tangenza.

Figure geometriche

Nel seguito mostreremo alcune costruzioni geometrice in modo da introdurre in modo pratico i vari elementi geometrici che il programma ci mette a disposizione.

Retta per due punti

Per creare una retta passante per due punti si possono utilizzare due punti già creati o cliccare direttamente sull'icona della retta e poi cliccare per due volte nel piano di disegno: verranno automaticamente creati i due punti e poi la retta.

Parallela ad una retta per un punto


Avendo già un punto ed una retta, basta cliccare sull' icona: e poi sui due oggetti.

Normale ad una retta per un punto

Si attiva l'icona   A questo punto abbiamo due possibilità: cliccare prima su un punto esistente (oppure clicchiamo sul forglio da disegno per creare un punto) e poi sulla retta; oppure clicchiamo sulla retta ed in questo caso verrà visualizzata la perpendicolare, passante per il punto corrispondente alla posizione dalla punta del mouse; spostando il mouse, si sposterà questa finché non avremo cliccato una seconda volta per ottenere il punto per dove deve passare la perpendicolare.
Possiamo, a questo punto, far determimare, e visualizzare, un angolo che le due rette normali formano. Bastas cliccare sull'icona e poi sulle due rette perpendicolari.



Bisettrice

Date due rette incidenti, possiamo far disegnere le relative bisettrici: basta cliccare sull'icona e poi sulle due rette. Si può anche creare la bisettrice di un angolo fornendo il vertice e un punto su ciascun lato, come vedremo fra poco.

Segmento

Per la costruzione di un segmento dobbiamo utilizzare l'icona:. Abbiamo due possibilità: cliccare una prima volta sul foglio da disegno per creare un primo estremo, ottenendo un segmento variabile che congiunge questo punto con la punta del mose. Cliccando un seconda volta, fissiamo il secondo estremo; l'altra possibilità è quella di cliccare su due punti esistenti.
Asse di un segmento. Costruito un segmento, possiamo costruire il suo asse cliccando sull'icona e poi sul sergmento.

Vettore

Si può creare un vettore utilizzando l'icona: . In pratica, si clicca una prima volta per creare l'origine e poi ancora per creare la punta della freccia.

Normale ad un segmento

Anche per un segmento possiamo mandare delle rette perpendicolari utilizzando l'icona della perpendicolare . Un primo metodo consiste nel tracciare una perpendicolare al segmento per un punto procedendo come nel caso della normale ad una retta. Possiamo anche mandare una perpendicolare al segmento passante per un vertice: si clicca su un vertice ed infine sul segmento, come mostrato in figura.

Asse di un segmento. Possiamo far tracciare l'asse di un segmento, che può anche essere il lato di un poligono, utilizzando l'icona . Dopo aver cliccato su questa, si clicca su un segmento o su un lato di un poligono. Si può anche cliccare su  due punti qualsiasi, come se fosserero gli estremi di un segmento.

Semiretta

La seguente icona ci permette di creare delle semirette:. Possiamo creare una semiretta cliccando per due volte in posti diversi in modo da creare due punti che la individuano, con il primo punto che rappresenta l'origine. Naturalmente, possiamo anche cliccare su due punti esistenti.

Poligono

Per costruire un poligono generico, si utilizza l'icona .
Esempio. Costruire un triangolo e poi tracciare gli assi dei suoi lati.
Costruzione del triangolo. Dopo aver selezionato l'icona del poligono possiamo stabilire i vertici di questo. Per creare un vertice, possiamo o cliccare su un punto già esistente o su un punto del foglio in modo da avere un nuovo punto-vertice. Dopo ogni click, viene visualizzato un poligono parzionale e variabile a seconda della posizione della punta del mouse, come mostra la figura in cui la posizione del mouse è rappresentata da un mano.

Ad ogni click, viene fissato un vertice e per terminare l'inserimento dei vertici bisogna cliccare sul primo vertice inserito o premere il tassto ESC.
Anche per un poligono possiamo ottenere il menu contestuale, cliccando su questo con il tasto destro del mouse:

Questo menu ci permette di calcolare il perimetro, di cancellare il poligono, di cambiare il colore, di cambiare lo spessore del bordo, di mostrare tutti i vertici, se non visualizzati, di mostrare il numero dei lati e, infine, di visualizzare il nome del polignono, normalmente non visualizzato.
Colore poligono. Quando, dal menu contestuale, si sceglila voce "Colore", il poligono assume il colore indicato dal Color Picker .
Assi dei lati di un poligono
Per creare gli assi dei lati, selezioniamo l'icona "asse segm." . Cliccando sui tre lati del triangolo, avremo i tre assi, come in figura.

Da notare che il colore, lo spessore e il tratteggio di questi possono essere modificati tramite il menu contestuale, ottenibile premendo con il tasto destro del mouse su ciascun asse. La figura ci conferma che i tre assi si intersecano in uno stesso punto, il circocentro.
Possaimo ora verificare una proprietà del circocentro: posto questo come centro di una circonferenza e come punto su di questa un vertice del triangolo, si vede che passa per tutti e tre i vertici, come mostra la figura.

Quadrato

Un poligono utile è il quadrato che richiede una costruzione particolare: bisogna prima selezionare l'icona del quadrato e poi fornire due punti, A e B come in figura, che saranno i vertici di un lato; per completare la costruzione, bisogna infine cliccare un'altra volta sul foglio da disegno per stabilire da quale parte, rispetto al lato AB, deve trovarsi.

Poligono regolare

Possiamo disegnre un generico poligono regolare utilizzando l'icona:.
Esempio. Vogliamo costruire un poligono regolare di 5 lati. Selezioniamo, o creiamo due punti, dove il primo sarà il centro e il secondo un vertice. A questo punto viene visualizzata un piccola finestra in cui inserire il numero dei lati.

Spezzata

Tramite l'icona: è possibile creare una linea spezzata. Si selezionano i punti-vertici (o si creano cliccando sul foglio) e si interrompe l'operazione premendo il tasto ESC.

Circonferenza

Circonferenza dati il centro ed un punto. L'icona permette di creare una circonferenza dati il centro ed un punto su di essa. Questi due punti possono già esistere o essere creati cliccando sul foglio da disegno. Quando viene scelto il centro, viene visualizzata un circonferenza avente, come punto provvisorio su di essa, la posizione del mouse. Muovendo il mouse, la circonferenza varierà di conseguenza finché non si cliccherà un'altra volta.
Circonferenza per tre punti. Possiamo creare una circonferenza che passa per tre punti dati utilizzando l'icona: .
Anche la circonferenza è dotata del menu contestuale e con questo possiamo: cancellare la curva, cambiare il nome, il colore e lo spessore, oltre a renderla o meno tratteggiata.

Arco per tre punti

L'icona ci permette di costruire un arco passante per tre punti. Abbiamo due possibilità:
Trascinando, con il mouse, uno di questi punti, l'arco si modificherà di conseguenza.

Semi circonferenza

Utilizzando l'icona: possiamo disegnare una semicirconferenza dati due punti. Come al solito, i punti possono già esistere o essere creati in contemporanea alla creazione della curva.

Ellisse

Utilizzando l'icona: , possiamo creare una ellisse fornendo due punti, i fuochi, ed un terzo punto sulla curva. Dati i fuochi, viene creata una ellisse dinamicamente: il punto sulla curva è la posizione della punta del mouse e la curva cambierà spostando il mouse. Basterà poi cliccare per fissare il punto sulla curva e terminare l'operazione.

Parabola

Possiamo costruire una parabola come luogo geometrico fornendo la direttrice ed il fuoco, utilizzando l'icona .

Iperbole

Utilizzando l'icona: , possiamo costruire una iperbole dati i suoi fuochi ed un punto sulla curva. I fuochi possono essere punti già creati o creati cliccando sul foglio.

Conica per cinque punti

Possiamo anche creare una conica fornendo cinque punti, utilizzando l'icona: . Come con le atre curve, possiamo o cliccare su punti già creati o cliccare sul foglio per crearli, Successivamente, variando uno di questi, avremo che la conica varierà passando, per esempio, da iperbole a ellisse.

Angolo

L'icona: permette di costruire un angolo. Possiamo avere un:
vedremo nel seguito qualche esempio di creazione di un angolo.

Punto vincolato su una curva

Dato un oggetto tipo conica, retta, semiretta o segmemto, è possibile creare un punto vincolato a stare su questo, cioè un punto che può muoversi, trascinato dal mouse, solo sulo su di questo oggetto. Si procede utilizzando l'icona: e cliccando sull'oggetto. Vedremo in seguito l'utilità dei punti vincolati quando parleremo delle costruzioni geometriche.

Punto intersezione tra due curve

Possiamo ricavare i punti di intersezione tra due curve utilizzando l'icona: e cliccando sulle due curve, come mostrato in figura seguente che mostra i punti di intersezione tra una ellisse ed una iperbole:

Nota. L'operazione di intersezione vale anche per le rette, i segmenti, le spezzate e i poligoni.

Tangenti ad una conica

L'icona che ci permette di creare delle tangenti è: . Possiamo avere due tipi di tangente: quelle condotte per un punto esterno e quelle condotte per i punti vincolati su una curva.

Tengenti per un punto esterno

Si seleziona un punto esterno alla curva e poi la curva. La figura seguente mostra le due tangenti (in realtà due semirette tangenti) mandate dal punto P ad una ellisse. Spostando il punto di tangenza, le tangenti varieranno di conseguenza.

Tangenti ad una curva per un punto sulla curva

Data una curva, per prima cosa bisogna inserire sulla curva un punto ad essa vincolato e poi cliccare sull'icona ; successivamente bisogna cliccare sul punto vincolato così creato e sulla curva. La figura seguente mostra un esempio di costruzione di un tangente per il punto vincolato P ad una ellisse:


Area di testo

Nel foglio da disegno possiamo anche inserire un testo tramite l'icona: . Cliccando in un punto del foglio, apparirà una nuova finestra dove sarà possibile inserire del testo, come in figura:

Terminata l'operazione di inserimento, si clicca il tasto "Okay" ed il testo apparirà sul foglio da disegno nella posizione del mouse quando si è cliccato. Ecco un esempio di testo inserito nel foglio del disegno:

 Da notare che il testo inserito nel foglio da disegno può essere spostato tramite il mouse.
Con questa funzionalità possiamo trasformare un foglio grafico in una lezione di geometria, mischiando testo e disegni, tenendo presente che possiamo salvare il contenuto del foglio in una immagine grafica, tramite l'icona Salva.
Menu contestuale
Cliccando con il tasto destro del mouse sul testo, possiamo visualizzare il menu contestuale del testo. Le voci sono:
  • Cancella Permette di cancellare definitivamente il testo
  • Larghezza riga Permette di variare la larghezza del rettangolo contenete il testo il quale sarà riadattato alla nuova dimensione
  • Ruota testo Permette di fornire un angolo di rotazione, in gradi, per ruotarlo
  • Dimensione carattere Permette di fornire un nuova dimensione del carattere del testo

Nota. Utilizzando la scheda Elenco Oggetti e cliccando sul nome del testo in questa scheda, possiamo visualizzare un menu che ci permette anche di nascondere/visualizzare il testo.

Disegno a mano

Tramite l'icona: è possibile disegnare a mano libera spostando il mouse.

Trasformazioni Geometriche

Data una figura, conica, retta, segmento, poligono e spezzata, è possibile applicare a questa una trasformazione per avere una nuova figura.
Esaminiamo le varie trasformazioni.

Traslazione

L'icona che permette la traslazione è: .
Data una figura ed un vettore, clicchiamo sul vettore e poi sulla figura: otterremo una figura traslata nella direzione del vettore e di una distanza uguale alla lunghezza di questo.

La figura mostra un esempio in cui una spezzata (colore nero) viene traslata utilizzando il vettore (p10, p11). Il colore della spezzata traslata è azzurro. Modificando uno dei vertici del vettore o uno dei vertici della spezzata, si ottiene una modifica conseguenziale della spezzata traslata.

Rotazione

Tramite l'icona: possiamo applicare ad un curva una rotazione di un certo angolo, in gradi sessagesimali. Si clicca sul punto di rotazione e poi sulla curva; a questo punto appare una piccola finestra di dialogo dove è possibile inserire l'angolo.

La figura mostra il caso di una ellisse che è stata ruotata di 45° intorno al punto p15, il centro di rotazione. Spostando il centro di rotazione o uno dei punti di definizione dell'ellisse, la figura ruotata cambia di conseguenza.

Simmetria assiale

Si parte dall'icona: e si clicca su una retta del piano e su una figura per avere la figura simmetrica.


La figura mostra un esempio in cui abbiamo ottenuto la figura simmetrica per un poligono. Notare che la figura simmetrica è colorata in azzurro per distinguerla dall'originale.

Simmetria centrale

Utilizzando l'icona: possiamo ottenere la figura simmetrica rispetto ad un punto-centro di simmetria.

La figura mostra il poligono simmetrico del poligono di sinistra rispetto alla simmetria centrale di centro il punto P. Questa figura simmetrica cambierà al variare delle posizioni dei vertici e del punto P.

Omotetia

L'icona relativa a questa trasformazione è: . Si seleziona un punto come centro dell'omotetia, una figura da trasformare e poi  si inseriscie il rapporto, non nullo.

La figura mostra la trasformaziono di un poligono con centro in P e rapporto 0.5.

Alcune costruzioni geometriche

Vediamo ora come, con gli strumenti mostrati sopra, possiamo costruire figure più complesse.

Triangolo rettangolo

Un modo per cotruire un triangolo rettangolo può essere quello di partire da un segmento e poi far passare per uno dei vertici, punto B in figura, una retta perpendicolare al segmento in modo da avere un angolo retto.

Successivamente possiamo inserire sulla retta per il punto B un punto C vincolato su questa. A questo punto la retta per BC possiamo nasconderla essedo servita solo per ottenere un angolo retto, come spiegato parlando della scheda Elenco Oggetti.
Ottenuti i tre vertici del triangolo, possiamo costruirlo: clicchiamo sull'icona del poligino e poi sui tre vertici A, B e C. Otterremo il tiangolo rettangolo ABC, come in figura.

In questo triangolo possiamo far visualizzare alcuni angoli utilizzando l'icona Angolo. Attivata questa icona, possiamo far visualizzare l'angolo retto semplicemente cliccando sul vartice A, poi sul vertice B e poi su C.

Punti notevoli del triangolo

Partendo con un triangolo qualsiasi, possiamo a costruire le bisettrici, gli assi dei lati e le altezze.

Ortocentro di un triangolo


Per mandare dai vertici la perpendicolare a ciscun lato, utilizziamo l'icona della normale ad un segmento: . Per ottenere una normale, clicchiamo prima su un vertice del triangolo e poi sul lato opposto. Ripetendo questa operazione per ogni vertice, abbiamo le tre nornamali, come mostrato in figura. Creando il punto di intersezione tra due normli, ottenuamo l'ortocentro del triangolo ABC.

Incentro

In modo analgo, possiamo tracciare le bisettrici ed ottenere che si intersecano in uno stesso punto, l'incentro. Con centro nell'incentro possiamo tracciare una circonferenza e constatere per possiamo renderla inscritta al triangolo:


Se vogliamo agganciare la circonferenza al triangolo in modo che, variando uno dei vertici, la circonferenza si trasformi adeguatamente ed essere ancora inscritta al triangolo, bisogna inviare per l'incentro una normale ad un lato, a BC in figura, e poi ricavare i punti di intersezione di questa con il triangolo (in pratica con i lati) ottenendo i due punti p22 e p21. Cancelliamo p21 e disegniamo la circonferenza con centro nel punto incentro e per secondo punto p22.
Successivamente possiamo nascondere la retta gialla essendo solo una retta di costruzione.

Teorema di pitagora

Partendo dalla figura precedente, possiamo far disegnare i quadrati sui tre lati: si attiva l'icona del quadrato, si clicca su due vertici di un lato e poi si clicca in prossimità del lato per avere il quadrato. Stessa operazione per gli altri due lati. Possiamo anche cambiare i colori del triangolo e dei tre quadrati usando il color picker.
La figura mosra quanto ottenuto;

Vogliamo ora arricchire la figura delle costruzioni che si fanno per dimostrare il teorema di Pitagora.
Mandiamo per il vertice B la retta normale al lato AC utilizzando l'icona delle rette perpendicolari. Si clicca prima in B e poi sul lato AB.
Questa perpendicolare, visualizzata in rosso e tratteggiata, interseca due lati (AC e DE) del quadrato colorato in rosso e divide ACDE in due rettangoli che vogliamo concretizzare come oggetti poligono. Per farlo, attiviamo l'icona intersezione e poi clicchiamo sulla retta normale e sul quadrato rosso ottenendo i punti P e Q.

A questo punto abbiamo i vertici dei due rettangoli e possiamo, tramite l'icona del poligono, disegnare i due poligonì ADQP e PQEC che coloriamo opportunamente, come mostrato sotto.

Successivamente, si mandano le rette passanti per i punti FG, per  AD e per PB; ricaviamo poi le intersezione della retta per FG con le altre due rette, ottenendo i punti M ed N. Si ottengono i vertici del parallelogramma ABNM che possiamo costruire utilizzando l'icona del poligono. Ottenuti i punti M e N, possiamo nascondere le rette che sono servite per la costruzione, come mostrato nella figura seguente. A questo punto si può verificare che i quadrilateri in verde hanno uguale area utilizzando il menu contestuale (o la scheda Elenco Figure) e cliccando alla voce Area.
 
Possiamo procedere allo stesso modo sul lato BC ed ottenere il parallelogrammo BCON che ha uguale area del quadrato BCLH e del rettandolo PQEC.
Trascinando uno dei vertici del triangolo ABC, tutta la costruzione si modifica di conseguenza. Da notare che la figura mostra che le tre rette per FG, per PB e per HL si intersecano nello stesso punto N.