
Genius (o Genius Math Tool) è uno strumento di calcolo numerico e un ambiente di programmazione libero rilasciato sotto licenza GNU GPL, sviluppato da George Lebl nell'ambito del progetto GNOME.
È stato progettato sia come calcolatrice scientifica ad alta precisione sia come ambiente per la didattica e la ricerca matematica, posizionandosi come alternativa leggera a strumenti come BC, Maple o MATLAB.
Caratteristiche principali
-
Linguaggio GEL (Genius Extension Language): Un linguaggio di programmazione interpretato con sintassi chiara (ispirata a C, Pascal e Python). Gestisce in modo nativo strutture dati come vettori, matrici e funzioni matematiche definite dall'utente.
-
Calcolo ad alta precisione: Supporta interi ad ampiezza arbitraria, numeri razionali, numeri complessi e calcoli in virgola mobile a precisione configurabile.
-
Doppia interfaccia:
-
genius: Interfaccia a riga di comando (CLI) rapida per utilizzi da terminale. -
gnome-genius: Interfaccia grafica (GUI) basata su GTK con editor integrato e gestione delle finestre di output grafico.
-
-
Visualizzazione grafica: Tracciamento integrato di grafici 2D e 3D (superfici, curve parametriche, mappe di livello e campi di direzioni).
-
Capacità matematiche integrate: Include collezioni di funzioni per algebra lineare, calcolo infinitesimale, teoria dei numeri, combinatoria e risoluzione numerica di equazioni differenziali ordinarie (ODE).
Esempio di sintassi GEL
In GEL è possibile definire funzioni matematiche e applicarle direttamente a matrici o vettori:
Snippet di codice
# Definizione di una funzione
function f(x) = x^2 + 2*x + 1;
# Definizione di una matrice 2x2
A = [1, 2; 3, 4];
# Applicazione della funzione alla matrice
print(f(A));
























