10 minute (wx)maxima tutorial
DESCRIPTION
maximaTRANSCRIPT
-
10 minute (wx)Maxima tu-torialBenvenuti in wxMaxima! In questo tutorial introduttivo sipi di calcolo! Quisotto trovi una cella di input con una semplice somma. Posizionare il cursorein esso e premete SHIFT-INVIO per valutarla.
(%i1) 1 + 1;
(%o1) 2
Se non hai ottenuto alcun errore istruzioni su come impostare wxMaxima eMaxima correttamente!
Assumendo che abbiate risolto i problemi, facciamo ancora un po di calcoli(ancora una volta - posizionare il cursore nella cella di input qui sotto e premeteSHIFT-INVIO per valutare il codice)!
(%i2) 5!;
% * 10;
%o1 * 100;
1 / 3;
1.0 / 3.0;
(%o2) 120
(%o3) 1200
(%o4) 200
(%o5)1
3
(%o6) 0.33333333333333
Nella cella di input qui sopra, abbiamo inserito 5 linee di Maxima. ogni lineadeve terminare con un ; o un $. Nel caso in cui la linea termina con un;, Maxima mostrto della linea, mentre i risultati delle linee che terminano con$ saranno soppressi. Il $ calcoli. Si noti inoltre che il risultato di 1 / 3e di 1.0/3.0 differiscono. Questo perchMaxima, a differenza dei pacchetti dimatrice numerica (Matlab, ecc), cerca di mantenere calcoli precisi. Perci nonvengono valutate espressioni come 1 / 3 o sqrt (2) a meno che non sia richiesto.In 1.0/3.0 abbiamo usato numeri in virgola mobile, in modo da Maxima valutil espressione.
Possiamo, tuttavia, dire a Maxima che vogliamo un approssimazione in virgolamobile di unespressione. Valutare la cella sotto e osservare i risultati.
(%i7) sqrt(2 * %pi);
float(%);
(%o7)
2pi
1
-
(%o8) 2.506628274631001
Nella linea float(%); abbiamo usato il simbolo %. Questo simbolo rapppre-senta sempre il risultato dellultima riga valutata. I simboli nnumerati %o1,o2%, ... contengono i risultati come appaiono quando le celle di input sonovalutate. Possiamo anche memorizzare, non solo numeri, ma pure intere espres-sioni, nelle variabili. Usare la forma variabiile nome: valore; per memorizzarevalore in variabile nome. Valutare la cella sotto e osservare.
(%i9) radius: 10 $
height: 100 $
area: %pi * radius^2;
volume: area * height;
(%o11) 100pi
(%o12) 10000pi
Valutiamo lultimo risultato numericamente:
(%i13) float(%);
(%o13) 31415.92653589793
Finora abbiamo usato solo Maxima come una semplice calcolatrice. Ora provi-amo alcune cose non possibili con una semplice calcolatrice. Calcoliamo unintegrale indeterminato e uno determinato:
(%i14) integrate( sin(x), x);
integrate( sin(x), x, 0, %pi);
(%o14) cos (x)(%o15) 2
Definiamo una funzione, la valutiamo e la integriamo:
(%i16) f(x) := x^2 + a$
f(5);
f(5), a = -5;
integrate( f(var), var );
(%o17) a+ 25
(%o18) 20
(%o19)var3
3+ a var
A volte Maxima ha bisogno di informazioni supplementari per valutare lespressioneperc necessario rispondere a una domanda. Scrivere la risposta sotto la richiesta
2
-
e inviarla a Maxima con SHIFT-INVIO. Nota: invece di rispondere con posit-possibile abbreviaare digitando p. Di seguito un integrale con una domanda:
(%i20) integrate( 1 / (x^2 + a), x);
Isapositiveornegative?
Possiamo anche informare Maxima in anticipo tramite la funzione assume.Per far dimenticare lassunzione usare forget. (Nota: per ricevere aiuto suqualsiasi fun sufficiente fare clic sul nome della funzione e premere il tasto F1.Prova.)
--> assume(a > 0)$
integrate( 1 / (x^2 + a), x);
forget(a > 0)$
Ora che hai imparato le basi su una funzione specifica, fai clic su di essa epremere F1.
Risolvere equazioni utilizzando listruzione solve:
--> solve(a*x^2 + b*x + c = 0, x);
Algebra lineare. Utilizzare listruzione matrix per creare matrici. Le matricipossono contenere espressioni numeri o simboli. Usare il comando invert percalcolare linversa e . per la moltiplicazione di matrici.
--> A: matrix([1,-1],
[1,sin(c)]);
B: invert(A);
A.B;
ratsimp(A.B);
Nellultima riga abbiamo usato ratsimp per semplificare il risultato di A.B.Maxima ha diverse funzioni di semplificazione a seconda del tipo di espressineche si vuole ridurre. La semplificazio scela migliore.
E ora, grafici in 2D e 3D!
--> wxplot2d([sin(x), cos(x)], [x,0, 2*%pi]);
wxplot3d( exp(-x^2 - y^2), [x,-2,2],[y,-2,2]);
Ora proviamo a derivare utilizzando la funzione diff.
3
-
--> f(x) := x^2 $
diff(f(x), x);
g(y) := sin(y)$
g(f(x));
diff( g(f(x)) , x);
Maxima conosce la regola della catena!
Per finire risolviamo una equazione differenziale ordinaria: y(t) + omega^2 *y(t) = 0
--> assume(omega > 0);
ode2( diff(y, t, 2) + omega^2 * y = 0, y, t );
ic2(%, t = 0, y = amp, diff(y,t) = 0 );
Ora puoi iniziare a esplorare (wx)Maxima da solo. Ricorda di usare spesso F1se vuoi che maxima ti aiuti a risolvere problemi di matematica.
Divertiti utilizzando di Maxima e wxMaxima!
4