Estratto del documento

Università del Salento

“E. De Giorgi”

Dipartimento di Matematica

Raffaele Vitolo

Introduzione a Maxima

Versione 1.0 (9 febbraio 2007)

Anno accademico 2006-2007

Copyright (c) 2006 Raffaele Vitolo.

Informazioni legali

È garantito il permesso di copiare, distribuire e/o modificare questo documento seguendo i termini della Licenza per Documentazione Libera GNU, Versione 1.1 o ogni versione successiva pubblicata dalla Free Software Foundation; senza Sezioni Non Modificabili, senza Testi di Copertina, senza Testi di Retro Copertina. Una copia della licenza si può reperire presso l’indirizzo http://www.softwarelibero.it/gnudoc/fdl.it.html.

Indirizzo dell’autore

Raffaele Vitolo,

Università di Lecce, Dipartimento di Matematica,

via per Arnesano, 73100 Lecce

email: raffaele.vitolo@unile.it

web: http://poincare.unile.it/vitolo/ 2

Indice

  • 1 Introduzione 3
  • 2 Descrizione del programma 3
  • 3 Installazione 4
  • 4 Primi passi 4
  • 5 Radici di polinomi 6
  • 6 Raccoglimento e sviluppo 11
  • 7 Sistemi di equazioni 16
  • 8 Analisi con Maxima 17
  • 8.1 Regole di derivazione . . . . . . . . . . . . . . . . . . . . . . . . 17
  • 9 Studio di funzioni 18
  • 9.1 Funzioni elementari . . . . . . . . . . . . . . . . . . . . . . . . . . 18
  • 9.2 Funzioni definite “a blocchi” . . . . . . . . . . . . . . . . . . . . . 22
  • 9.3 Funzioni composte . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
  • 10 Integrazione 26
  • 11 Grafica 3D 29

1 Introduzione

Da un punto di vista metodologico, è conveniente imparare un linguaggio di programmazione piuttosto che studiando il manuale. Quindi, in questa lezione usando il linguaggio di Maxima sarà introdotto tramite una serie di esempi.

Il testo si riferisce alla versione 5.10 di Maxima.

Nota.

2 Descrizione del programma

Maxima è un programma che può funzionare con varie modalità:

  • È utilizzabile come terminale che interpreta comandi in modo interattivo;
  • È utilizzabile come un vero e proprio linguaggio di programmazione (interpretato, non compilato come il C);
  • Ha un’interfaccia grafica semplice dal terminale, di nome xmaxima;
  • Ha un’interfaccia grafica più evoluta, wxmaxima, che facilita l’inserimento dei comandi dal terminale anche ai non esperti.

Il testo che segue si riferisce all’utilizzo interattivo di Maxima. Le istruzioni descritte nel testo possono essere inserite dal terminale in una modalità qualsiasi (grafica o no), questo non cambia il comportamento del programma. Le differenze tra le varie interfacce saranno indicate di volta in volta.

3 Installazione

Per Windows

Per Windows: bisogna scaricare ed installare la versione eseguibile per Windows (quella con l’estensione .exe), che si trova nella sezione ‘Downloads’ del sito web di Maxima http://maxima.sourceforge.net/.

Inoltre, se si desidera fare grafici, è necessario il programma di disegno gnuplot, scaricabile in versione eseguibile per Windows (quella con l’estensione .exe), che si trova nella sezione ‘Downloads’ del sito web http://www.gnuplot.info/.

Per Linux

Per Linux: tutte le maggiori distribuzioni hanno i pacchetti necessari. Ad esempio, per le distribuzioni basate su Debian (pacchetti .deb) si installino i pacchetti maxima, maxima-doc, maxima-emacs, maxima-share, maxima-src, maxima-test, xmaxima, wxmaxima, gnuplot, gnuplot-doc, gnuplot-mode, gnuplot-nox, gnuplot-x11, insieme a gnuplot, per i disegni.

Per le distribuzioni basate su RedHat (pacchetti .rpm), il discorso è analogo.

Si possono usare anche live-CD dedicati al calcolo scientifico (come Quantian) o all’educazione (come EduKnoppix, http://www.eduknoppix.org/.

4 Primi passi

Come funziona il programma?

1. Ci sono due modalità: interattiva e di interpretazione di una lista di comandi (programma, o file batch).

Nella modalità interattiva si scrivono i comandi sulle righe che cominciano per input, o simili. Queste sono le righe di input e sono numerate progressivamente: (%i1), (%i2), ...

Alla fine di una riga di input, si preme il tasto ‘Invio’, e Maxima interpreta i comandi producendo, se è il caso, una riga di output, indicata con (%o1), (%o2), ... e numerata progressivamente.

2. Bisogna sempre terminare i comandi, o le combinazioni di comandi, con un ‘;’.

Come si scrive un comando?

Se si omette il ‘;’, il programma entra in condizione di errore, dalla quale si può uscire scegliendo la voce di menu ‘Interrupt’ (anche attivabile con la sequenza di tasti ‘ctrl-g’). Si noti che wxmaxima inserisce automaticamente il ‘;’.

Si può anche terminare un comando con ‘$’, che però non mostra l’eventuale output del comando.

Come si ottiene aiuto su di un comando?

3. Si usa la funzione describe. Ad esempio, per chiedere aiuto sulla funzione sin si ha:

(%i1) describe(sin);

0: (maxima.info)Introduction to string processing.

1: absint :Definitions for Fourier Series.

2: asin :Definitions for Trigonometric.

3: asinh :Definitions for Trigonometric.

4: fourintsin :Definitions for Fourier Series.

5: foursin :Definitions for Fourier Series.

6: maxpsinegint :Definitions for Special Functions.

7: maxpsiposint :Definitions for Special Functions.

8: poisint :Definitions for Special Functions.

9: sin :Definitions for Trigonometric.

10: sinh :Definitions for Trigonometric.

11: sinnpiflag :Definitions for Fourier Series.

12: sinsert :Definitions for strings.

13: sinvertcase :Definitions for strings.

Enter space-separated numbers, ‘all’ or ‘none’:

Inserendo il numero corrispondente alla voce richiesta (seguito da ‘;’), ad esempio si ottiene la documentazione richiesta.

3;

Inoltre, il comando example fornisce esempi di utilizzo, con la stessa sintassi di describe.

Tutte queste funzioni sono accessibili dal menu di Help wxmaxima.

Come si richiama un comando già eseguito?

4. Il comando precedente si richiama digitando ‘%;’; il comando numerato con ‘n’ si richiama digitando ‘%in;’.

1 Si noti che, fino alla versione 5.9.0, la sequenza di inizio riga di input/output era indicata da (C1), (C2), ..., (D1), (D2), ..., rispettivamente.

Come si usano le costanti standard?

5. Sono variabili predefinite, e sono ‘%e’, ‘%i’, ‘%pi’.

5 Radici di polinomi

Si introduca il polinomio

x4 + 3x3 − 5x2 − 7x − 1

con lo scopo di trovare le sue radici. La sintassi è la seguente:

(%i1) f(x) := x^4/2+3*x^3/4-5*x^2/4-7*x/4-1/2;

x4 3 x3 (- 5) x2 (- 7) x - 1

(%o1) f(x) := -- + ---- + -------- + ------- + ---

2 4 4 4 2

Anteprima
Vedrai una selezione di 8 pagine su 35
Introduzione a Maxima Pag. 1 Introduzione a Maxima Pag. 2
Anteprima di 8 pagg. su 35.
Scarica il documento per vederlo tutto.
Introduzione a Maxima Pag. 6
Anteprima di 8 pagg. su 35.
Scarica il documento per vederlo tutto.
Introduzione a Maxima Pag. 11
Anteprima di 8 pagg. su 35.
Scarica il documento per vederlo tutto.
Introduzione a Maxima Pag. 16
Anteprima di 8 pagg. su 35.
Scarica il documento per vederlo tutto.
Introduzione a Maxima Pag. 21
Anteprima di 8 pagg. su 35.
Scarica il documento per vederlo tutto.
Introduzione a Maxima Pag. 26
Anteprima di 8 pagg. su 35.
Scarica il documento per vederlo tutto.
Introduzione a Maxima Pag. 31
1 su 35
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi