Etwas herumspielen mit Octave / MATLAB (1):

(Simple Arithmetik, Funktionen, speichern, laden, Plots)

Online Version of the octave-manual: 
http://www.network-theory.co.uk/docs/octave/index.html

Starten: Programm wählen in der Programmsammlung.... 
(man muss wissen, wo auf dem jeweiligen Computer ein Startbefehl existiert)
exit  ENTER:   Beendet das Programm

helpdesk  ENTER: Funktioniert nicht in Octave, ebenso "doc"
Jedoch funktioniert help:

Die Eingabe:   >> help cos  ENTER   erzeugt

cos is a built-in mapper function

 - Mapping Function:  cos (X)
     Compute the cosine of each element of X.

Additional help for built-in functions, operators, and variables
is available in the on-line version of the manual.  Use the command
`help -i <topic>' to search the manual index.

Help and information about Octave is also available on the WWW
at http://www.octave.org and via the help-octave@bevo.che.wisc.edu
mailing list.

Eingaben erzeugen jeweils eine Ausgabe ans (answer ein Speicherplatzinhalt) 

Simple Arithmetik:

>> 1+2
ans = 3

>> 1+4.65
ans = 5.650

>> 2*3
ans = 6

>> 2/3
ans = 0.66667

>> 2^3
ans = 8

>> 2^(1/2)
ans = 1.4142

>> sqrt(2)
ans = 1.4142

>> ans
ans = 1.4142

Arbeiten mit Funktionen:

>> cos(pi)      
ans = -1

>> cos(0.5)
ans = 0.87758

>> cos(pi)      
ans = -1

>> cos(0.5)
ans = 0.87758

Spiele etwas mit MATLAB: Probiere so die folgenden Befehle aus, wenn es sonst nicht 
geht mit help:

cos, acos, cosh, acosh
sin, asin, sinh, asinh
tefunc, dst, idst

Wie man aus einigen Beispielen sehen kann, ist der Befehlsumfang von Octave kleiner 
als derjenige von MATLAB.

Arbeiten mit Variablen und Befehlsketten:

>> x=1.8; X=1e-4; x*X
ans = 0.00018000

Mittelwert: 

>> a=2.65; b=1.3; c=5.5; m=(a+b+c)/3
m = 3.1500

Ausgabe auf später aufsparen:

>> u=1-1/2+1/3-1/4+1/5-1/6+1/7;
>> u
u = 0.75952

Das Speichern und Laden illustrieren wir an folgendem Beispiel:

Wir starten Octave neu.
Eingabe einer Variablen und speichern:

>> x=1
x = 1
>> save('C://work_loeschen/myFile') 

Achtung auf den Pfad! In einem Computernetzwerk muss das verwendete Laufwerk nicht existieren. 
Verwende dann ein anderes, wenn möglich eigenes Laufwerk.

Jetzt beenden wir beenden und starten das Programm neu. Die Variable ist dann gelöscht.

>> load('C://work_loeschen/myFile2')  

Nun fragen können wir die neu geladene Variable ab:                                                                                                            

>> x
x = 1

Achtung: Keine Sessions abspeichern, in der schon Ladebefehle drin sind. Bei neuen 
Laden wird dann sofort wieder ein Ladebefehl aktiviert, was in einem Loop enden könnte.

clear löscht den Speicher, clear x die Variable x:

>> x=1
x = 1
>> clear x
>> x
error: `x' undefined near line 4 column 1
>> 
>> x=1; y=2
y = 2
>> clear
>> y
error: `y' undefined near line 6 column 1

>> save('C://work_loeschen/myFile') 

Etwas spielen mit Plots und Funktionen (Beispiele):
Wir definieren eine Funktion, den Definitionsbereich und ploten dies. 
Wandle die Grössen etwas ab und schaue, was passiert!

>> a=2; r=0.5;x=0:0.1:10;y=x ./(1+a.*x+r.*x.^2);plot(x,y);

>> x=0:0.1:pi;y=sin(x);plot(x,y)

Workspace abfragen, nachdem wieder Variablen definiert worden sind:

>> whos

*** local user variables:

prot  type                       rows   cols  name
====  ====                       ====   ====  ====
 rwd  scalar                        1      1  X
 rwd  scalar                        1      1  a
 rwd  scalar                        1      1  b
 rwd  scalar                        1      1  c
 rwd  scalar                        1      1  m
 rwd  scalar                        1      1  u
 rwd  scalar                        1      1  x