> <\body> <\expand|tmdoc-title> Utilizzare sessioni di Octave in GNU è un clone libero di , che può essere scaricato da <\verbatim> \ \ \ \ http://octave.sf.net Si dà inizio ad una sessione di utilizzando . Qui di seguito viene mostrato come svolgere delle operazioni di algebra lineare con , come la moltiplicazione tra matrici, l'inversione e la diagonalizzazione. Si noti che è necessario (per il momento) utilizzare il comando per visualizzare l'output in formato matematico. <\session|octave|default> <\output> GNU Octave, version 2.1.40 (i386-redhat-linux-gnu). Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002 John W. Eaton. This is free software; see the source code for copying conditions. There is ABSOLUTELY NO WARRANTY; not even for MERCHANTIBILITY or FITNESS FOR A PARTICULAR PURPOSE. \; Report bugs to \bug-octave@bevo.che.wisc.edu\. \; <\input|octave\ > A=[1 0 0 0;2 2 0 0;-1 0 2 0;0 -1 2 2] <\output> A = \; \ \ \ 1 \ \ 0 \ \ 0 \ \ 0 \ \ \ 2 \ \ 2 \ \ 0 \ \ 0 \ \ -1 \ \ 0 \ \ 2 \ \ 0 \ \ \ 0 \ -1 \ \ 2 \ \ 2 \; \; <\input|octave\ > tmdisp(A^2) <\output> >|>|>|>>|>|>|>|>>|>|>|>|>>|>|>|>|>>>>>> \; <\input|octave\ > tmdisp(A.^2) <\output> >|>|>|>>|>|>|>|>>|>|>|>|>>|>|>|>|>>>>>> \; <\input|octave\ > [u,v]=eig(A) <\output> u = \; \ \ \ 0.00000 \ \ 0.00000 \ \ 0.00000 \ \ 0.21320 \ \ \ 0.00000 \ \ 0.00000 \ \ 0.00000 \ -0.42640 \ \ \ 0.00000 \ \ 0.00000 \ \ 0.00000 \ \ 0.21320 \ \ \ 1.00000 \ \ 1.00000 \ -1.00000 \ -0.85280 \; v = \; \ \ 2 \ 0 \ 0 \ 0 \ \ 0 \ 2 \ 0 \ 0 \ \ 0 \ 0 \ 2 \ 0 \ \ 0 \ 0 \ 0 \ 1 \; \; <\input|octave\ > Q=[1 0 0 0;-2 2 1 0;1 1 0 0;-4 0 0 -1] <\output> Q = \; \ \ \ 1 \ \ 0 \ \ 0 \ \ 0 \ \ -2 \ \ 2 \ \ 1 \ \ 0 \ \ \ 1 \ \ 1 \ \ 0 \ \ 0 \ \ -4 \ \ 0 \ \ 0 \ -1 \; \; <\input|octave\ > P=inv(Q) <\output> P = \; \ \ \ 1 \ -0 \ \ 0 \ \ 0 \ \ -1 \ \ 0 \ \ 1 \ \ 0 \ \ \ 4 \ \ 1 \ -2 \ \ 0 \ \ -4 \ \ 0 \ \ 0 \ -1 \; \; <\input|octave\ > P*A*Q <\output> ans = \; \ \ 1 \ 0 \ 0 \ 0 \ \ 0 \ 2 \ 0 \ 0 \ \ 0 \ 0 \ 2 \ 0 \ \ 0 \ 0 \ 1 \ 2 \; \; <\input|octave\ > \; La seconda parte mostra le capacità grafiche di Octave, grafici 2D e 3D. I grafici 2D possono essere inseriti automaticamente nel proprio foglio di lavoro, ma ciò non è possibile per i grafici 3D. <\session|octave|default> <\input|octave\ > x=linspace(-10,10,1000); <\input|octave\ > y=x+sin(x); <\input|octave\ > plot(x,y,";Function y=x+sin(x);"); <\output> \; \; |ps>||||||> \; <\input|octave\ > x0=[2;5;10]; <\input|octave\ > t = linspace (0,10,800); <\input|octave\ > function dx = butter (x ,t) \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ dx(1) = -10.0*(x(1)-x(2)); \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ dx(2) = 28.0*x(1)-x(2)-x(1)*x(3); \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ dx(3) = 8.0/3.0*( x(1)*x(2) -x(3) ); \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ end; <\input|octave\ > y=lsode("butter",x0,t); <\input|octave\ > gset parametric; <\input|octave\ > gset set term postscript enhanced color eps; <\input|octave\ > gset xtics 10;gset ytics 10; gset ztics 10; <\input|octave\ > gset out "/tmp/butterfly.eps"; <\input|octave\ > gsplot y title "Butterfly Effect" <\input|octave\ > \; Per poter inserire un grafico 3D, per esempio il grafico generato in questa sessione, innanzitutto lo salviamo come butterfly.eps nella directory /tmp. A questo punto, possiamo inserire questo file EPS nel foglio di lavoro usando . |eps>||||||>|Grafico 3D generato da Octave.> <\initial> <\collection> <\references> <\collection> > > > |?>> |?>> > > > > > > > > > > > > > > > > > > > > > > > > > <\auxiliary> <\collection> <\associate|figure> > <\associate|idx> |Testo>||Sessione>||Octave>>|> |Inserisci>||Immagine>>|>