Informatika1-2015/OsszefoglaloZH3

A MathWikiből
(Változatok közti eltérés)
(Wolfram Mathematica)
(Wolfram Mathematica)
102. sor: 102. sor:
 
  In[1]:= Range[5]
 
  In[1]:= Range[5]
 
  Out[1]= {1,2,3,4,5}
 
  Out[1]= {1,2,3,4,5}
 
+
 
  In[2]:= Range[2,6]
 
  In[2]:= Range[2,6]
 
  Out[2]= {2,3,4,5,6}
 
  Out[2]= {2,3,4,5,6}
 
+
 
  In[3]:= Range[2, 5, 0.5]  
 
  In[3]:= Range[2, 5, 0.5]  
 
  Out[3]= {2., 2.5, 3., 3.5, 4., 4.5, 5.}
 
  Out[3]= {2., 2.5, 3., 3.5, 4., 4.5, 5.}
 +
 +
* Table
 +
 +
Range-hez hasonlóan
 +
In[1]:= Table[i,{i,1,5}]
 +
Out[1]= {1,2,3,4,5}
 +
A Table hasába bármilyen kifejezést írhatunk
 +
In[1]:= Table[x^i,{i,1,5}]
 +
Out[1]= {x,x^2,x^3,x^4,x^5}
 +
Az elemek explicit felsorolásával
 +
In[1]:= Table[f'[x],{f,{Sin, Cos, Log}}]
 +
Out[1]= {Cos[x], -Sin[x], 1/x}
 +
Több dimenziós Table, például modulo három szorzótábla:
 +
Table[Mod[i j, 3], {i, 0, 2}, {j, 0, 2}] // MatrixForm
 +
 +
=== Függvények hattatása ===
 +
Vegyük a <tt>Sin</tt> függvényt, ekkor ezek ugyan azok:
 +
Sin[Pi]
 +
Pi//Sin
 +
Sin@Pi
 +
Sin@@{Pi}
 +
Az összeadásra:
 +
x+y
 +
Plus[x,y]
 +
Plus@@{x,y}
 +
{x,y}//Total
 +
Total[{x,y}]
 +
Listára elemenként hattathatunk függvényt:
 +
Table[Cos[x], {x,0,Pi,Pi/6}]
 +
Cos /@ Table[x,  {x,0,Pi,Pi/6}]
 +
Cos /@ Range[0,Pi,Pi/6]
 +
Cos[Range[0,Pi,Pi/6]]

A lap 2015. december 7., 21:41-kori változata

Tartalomjegyzék

Octave

Alapvető műveletek és függvények

2-3
2*3
2/3
floor(2/3)
mod(2,3)
2^3
sqrt(2)
log(2)
exp(1)
pi
cos(pi/2)

Octave-ban egy szám mindaddig valós (lebegőpontosan ábrázolva), amíg komplexnek nem bizonyul:

sqrt(2)
sqrt(-2)

Mátrixok

Sorvektor:

[1, 2, 3, 4]
[1 2 3 4]

Oszlopvektor:

[1;2;3;4]

Mátrix:

[1 2; 3 4]
[1, 2; 3, 4]

Speciális mátrixok:

  • zeros: csupa 0
  • ones: csupa 1
  • eye: diagonálisban 1, máshol 0
  • diag: négyzetes diagonális mátrix, megadott főátlóval
zeros(2,3)
eye(2,3)
ones(3,1)
diag([1,2,3,4])

Tartományokat adhatunk meg gyorsan, pl, 1, 2, 3, 4, 5:

1:5

Vagy más lépésközzel (akár negatívval), pl 1, 1.2, 1.4, 1.6, 1.8, 2:

1:0.2:2

Ezeket lehet használni mátrixok létrehozásakor, pl:

diag(1:4)

Vehetjük mátrixok transzponáltját:

[1 2; 3 4]'

összegét:

eye(2,2)+ones(2,2)

szorzatát:

[1 2; 3 4]*[1 2; 3 4]

hatványát:

[1 2; 3 4]^2

Ezek a műveletek mátrixokon hatnak. De végezhetjük a műveleteket tagonként is:

[1 2; 3 4].^2

A legtöbb művelet elé, ha pontot rakunk akkor tagonként hat.

Lekérhetünk és módosíthatjuk egy adott mátrix valamelyik elemét:

M = [1 2; 5 4]
M(2,1) = 3

Ez így a második sor első elemét módosítja.

Változók

Változókban tárolhatunk adatokat, például:

a = 5

de akár mátrixokat is tárolhatunk:

M = [1 2; 3 4]

Változók értéke felülírható, és változók használhatók értékadásnál is, például:

M = [1; 1]
a = 4
M = [a 2; 4 a]

Függvények

Függvényt írhatunk Octave-ban:

function fx = f(x)
 fx=1/(x^2+1);
endfunction

Majd így hívhatjuk meg:

f(3)

ennek az eredménye pl 0.1 lesz.

Sage

Wolfram Mathematica

Listák

Listákat kapcsos zárójellel adunk meg

{1,2,3,4}

Mátrixokat listák listájaként:

{{1,2}, {3,4}}

De listában bármi lehet:

{1,x,{E,Pi}, Function[x,x^x]}

Hasznos parancsok

  • Range
In[1]:= Range[5]
Out[1]= {1,2,3,4,5}

In[2]:= Range[2,6]
Out[2]= {2,3,4,5,6}

In[3]:= Range[2, 5, 0.5] 
Out[3]= {2., 2.5, 3., 3.5, 4., 4.5, 5.}
  • Table

Range-hez hasonlóan

In[1]:= Table[i,{i,1,5}]
Out[1]= {1,2,3,4,5}

A Table hasába bármilyen kifejezést írhatunk

In[1]:= Table[x^i,{i,1,5}]
Out[1]= {x,x^2,x^3,x^4,x^5}

Az elemek explicit felsorolásával

In[1]:= Table[f'[x],{f,{Sin, Cos, Log}}]
Out[1]= {Cos[x], -Sin[x], 1/x}

Több dimenziós Table, például modulo három szorzótábla:

Table[Mod[i j, 3], {i, 0, 2}, {j, 0, 2}] // MatrixForm

Függvények hattatása

Vegyük a Sin függvényt, ekkor ezek ugyan azok:

Sin[Pi]
Pi//Sin
Sin@Pi
Sin@@{Pi}

Az összeadásra:

x+y
Plus[x,y]
Plus@@{x,y}
{x,y}//Total
Total[{x,y}]

Listára elemenként hattathatunk függvényt:

Table[Cos[x], {x,0,Pi,Pi/6}]
Cos /@ Table[x,  {x,0,Pi,Pi/6}]
Cos /@ Range[0,Pi,Pi/6]
Cos[Range[0,Pi,Pi/6]]
Személyes eszközök