Utilizzare sessioni di Octave in TeXmacs

GNU Octave è un clone libero di Matlab, che può essere scaricato da

    http://octave.sf.net

Si dà inizio ad una sessione di Octave utilizzando TestoSessioneOctave. Qui di seguito viene mostrato come svolgere delle operazioni di algebra lineare con Octave, come la moltiplicazione tra matrici, l'inversione e la diagonalizzazione. Si noti che è necessario (per il momento) utilizzare il comando tmdisp per visualizzare l'output in formato matematico.

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>.

octave>

A=[1 0 0 0;2 2 0 0;-1 0 2 0;0 -1 2 2]

A =

1 0 0 0

2 2 0 0

-1 0 2 0

0 -1 2 2

octave>

tmdisp(A^2)

(
1 0 0 0
6 4 0 0
- 3 0 4 0
- 4 - 4 8 4
)
octave>

tmdisp(A.^2)

(
1 0 0 0
4 4 0 0
1 0 4 0
0 1 4 4
)
octave>

[u,v]=eig(A)

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

octave>

Q=[1 0 0 0;-2 2 1 0;1 1 0 0;-4 0 0 -1]

Q =

1 0 0 0

-2 2 1 0

1 1 0 0

-4 0 0 -1

octave>

P=inv(Q)

P =

1 -0 0 0

-1 0 1 0

4 1 -2 0

-4 0 0 -1

octave>

P*A*Q

ans =

1 0 0 0

0 2 0 0

0 0 2 0

0 0 1 2

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.

octave>

x=linspace(-10,10,1000);

octave>

y=x+sin(x);

octave>

plot(x,y,";Function y=x+sin(x);");

octave>

x0=[2;5;10];

octave>

t = linspace (0,10,800);

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;

octave>

y=lsode("butter",x0,t);

octave>

gset parametric;

octave>

gset set term postscript enhanced color eps;

octave>

gset xtics 10;gset ytics 10; gset ztics 10;

octave>

gset out "/tmp/butterfly.eps";

octave>

gsplot y title "Butterfly Effect"

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 InserisciImmagine.

Figura 1. Grafico 3D generato da Octave.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".