24-Oct-2012 1> a = [1 2 3 4 5; 6 7 8 9 10; 11 12 13 14 15] a = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 2> size(a) ans = 3 5 3> length(a) ans = 5 4> help length `length' is a built-in function -- Built-in Function: length (A) Return the "length" of the object A. For matrix objects, the length is the number of rows or columns, whichever is greater (this odd definition is used for compatibility with MATLAB). Additional help for built-in functions and operators is available in the on-line version of the manual. Use the command `doc ' 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.org mailing list. 5> a(3,2) ans = 12 6> % spezziamo a in tre righe 6> riga1 = a(1, [1:5]) riga1 = 1 2 3 4 5 7> riga1 = a(1, : ) riga1 = 1 2 3 4 5 8> riga1 = a(2, : ) riga1 = 6 7 8 9 10 9> riga1 = a(3, : ) riga1 = 11 12 13 14 15 10> colonna5 = a( : , 5) colonna5 = 5 10 15 11> % sottomatrice 11> a([1 2], [2 4]) ans = 2 4 7 9 12> a(1,2) ans = 2 13> a(1,4) ans = 4 14> a(2,2) ans = 7 15> a(2,2) = 0 a = 1 2 3 4 5 6 0 8 9 10 11 12 13 14 15 16> b = [2 3; 4 5] b = 2 3 4 5 17> c = inv(b) c = -2.5000 1.5000 2.0000 -1.0000 18> b * c ans = 1 0 0 1 19> c * b ans = 1 0 0 1 20> eye(2) ans = Diagonal Matrix 1 0 0 1 21> % calcolare l'inversa di b 21> eye(2)/b ans = -2.50000 1.50000 2.00000 -1.00000 22> b\eye(2) ans = -2.5000 1.5000 2.0000 -1.0000 23> d = [1 2 3; 4 5 6] d = 1 2 3 4 5 6 24> % l'inversa della b era c 24> c * d ans = 3.50000 2.50000 1.50000 -2.00000 -1.00000 0.00000 25> b\d ans = 3.50000 2.50000 1.50000 -2.00000 -1.00000 0.00000 26> d/b error: operator /: nonconformant arguments (op1 is 2x3, op2 is 2x2) 26> d'/b ans = 5.5000 -2.5000 5.0000 -2.0000 4.5000 -1.5000 27> d.'/b ans = 5.5000 -2.5000 5.0000 -2.0000 4.5000 -1.5000 28> a a = 1 2 3 4 5 6 0 8 9 10 11 12 13 14 15 29> diag(a) ans = 1 0 13 30> v = diag(a) v = 1 0 13 31> diag(v) ans = Diagonal Matrix 1 0 0 0 0 0 0 0 13 32> a a = 1 2 3 4 5 6 0 8 9 10 11 12 13 14 15 33> % scambiare nella a la prima e la terza riga 33> aa = a; 34> a(1, :) = a(3, :) a = 11 12 13 14 15 6 0 8 9 10 11 12 13 14 15 35> a(3, :) = aa(1, :) a = 11 12 13 14 15 6 0 8 9 10 1 2 3 4 5 36> a a = 11 12 13 14 15 6 0 8 9 10 1 2 3 4 5 37> a([3 2 1], :) ans = 1 2 3 4 5 6 0 8 9 10 11 12 13 14 15 38> eye(3) * a ans = 11 12 13 14 15 6 0 8 9 10 1 2 3 4 5 39> a a = 11 12 13 14 15 6 0 8 9 10 1 2 3 4 5 40> eye(3) * a ans = 11 12 13 14 15 6 0 8 9 10 1 2 3 4 5 41> [0 0 1; 0 1 0; 1 0 0] ans = 0 0 1 0 1 0 1 0 0 42> [0 0 1; 0 1 0; 1 0 0] * a ans = 1 2 3 4 5 6 0 8 9 10 11 12 13 14 15 43> rand(2,3) ans = 0.61371 0.10775 0.74823 0.12791 0.21340 0.21331 44> mean(rand(1000)) ans = Columns 1 through 7: 0.51434 0.49504 0.50255 0.49446 0.49286 0.49598 0.49239 Columns 8 through 14: 0.49674 0.49658 0.50436 0.51208 0.50791 0.48433 0.48867 ... Columns 995 through 1000: 0.49269 0.50219 0.49896 0.49771 0.50551 0.49856 45> aaa=rand(1000); 46> size(aaa) ans = 1000 1000 47> mean(rand(1000,1)) ans = 0.51271 48> mean(rand(1000000,1)) ans = 0.50019 49> n=2000; A=randn(n); B=randn(n); tic; C=A*B; t=toc, MFLOPS=2*n^3/t*1e-6 t = 9.6096 MFLOPS = 1665.0 50> quit