octave:2> toeplitz([-2,1,0,0]) ans = -2 1 0 0 1 -2 1 0 0 1 -2 1 0 0 1 -2 octave:3> toeplitz([-2,1,0,0,0,0,0,0,0]) ans = -2 1 0 0 0 0 0 0 0 1 -2 1 0 0 0 0 0 0 0 1 -2 1 0 0 0 0 0 0 0 1 -2 1 0 0 0 0 0 0 0 1 -2 1 0 0 0 0 0 0 0 1 -2 1 0 0 0 0 0 0 0 1 -2 1 0 0 0 0 0 0 0 1 -2 1 0 0 0 0 0 0 0 1 -2 octave:4> A=toeplitz([-2,1,0,0,0,0,0,0,0]); octave:5> As=sparse(A) As = Compressed Column Sparse (rows = 9, cols = 9, nnz = 25 [31%]) (1, 1) -> -2 (2, 1) -> 1 (1, 2) -> 1 (2, 2) -> -2 (3, 2) -> 1 (2, 3) -> 1 (3, 3) -> -2 (4, 3) -> 1 (3, 4) -> 1 (4, 4) -> -2 (5, 4) -> 1 (4, 5) -> 1 (5, 5) -> -2 (6, 5) -> 1 (5, 6) -> 1 (6, 6) -> -2 (7, 6) -> 1 (6, 7) -> 1 (7, 7) -> -2 (8, 7) -> 1 (7, 8) -> 1 (8, 8) -> -2 (9, 8) -> 1 (8, 9) -> 1 (9, 9) -> -2 octave:6> whos Variables in the current scope: Attr Name Size Bytes Class ==== ==== ==== ===== ===== A 9x9 648 double As 9x9 340 double ans 9x9 648 double Total is 243 elements using 1636 bytes octave:7> clear A octave:8> whos Variables in the current scope: Attr Name Size Bytes Class ==== ==== ==== ===== ===== As 9x9 340 double ans 9x9 648 double Total is 162 elements using 988 bytes octave:9> spdiags error: called from print_usage at line 79 column 5 spdiags at line 61 column 5 error: Invalid call to spdiags. Correct usage is: -- B = spdiags (A) -- [B, D] = spdiags (A) -- B = spdiags (A, D) -- A = spdiags (V, D, A) -- A = spdiags (V, D, M, N) Additional help for built-in functions and operators is available in the online 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. octave:9> octave:9> toeplitz(sparse([-2,1,0,0,0,0])) ans = Compressed Column Sparse (rows = 6, cols = 6, nnz = 16 [44%]) (1, 1) -> -2 (2, 1) -> 1 (1, 2) -> 1 (2, 2) -> -2 (3, 2) -> 1 (2, 3) -> 1 (3, 3) -> -2 (4, 3) -> 1 (3, 4) -> 1 (4, 4) -> -2 (5, 4) -> 1 (4, 5) -> 1 (5, 5) -> -2 (6, 5) -> 1 (5, 6) -> 1 (6, 6) -> -2 octave:10> sparse([1,1],[1,2],[-2,1],1,6) ans = Compressed Column Sparse (rows = 1, cols = 6, nnz = 2 [33%]) (1, 1) -> -2 (1, 2) -> 1 octave:11> full(ans) ans = -2 1 0 0 0 0 octave:12> toeplitz(sparse([1,1],[1,2],[-2,1],1,6)) ans = Compressed Column Sparse (rows = 6, cols = 6, nnz = 16 [44%]) (1, 1) -> -2 (2, 1) -> 1 (1, 2) -> 1 (2, 2) -> -2 (3, 2) -> 1 (2, 3) -> 1 (3, 3) -> -2 (4, 3) -> 1 (3, 4) -> 1 (4, 4) -> -2 (5, 4) -> 1 (4, 5) -> 1 (5, 5) -> -2 (6, 5) -> 1 (5, 6) -> 1 (6, 6) -> -2 octave:13> full(ans) ans = -2 1 0 0 0 0 1 -2 1 0 0 0 0 1 -2 1 0 0 0 0 1 -2 1 0 0 0 0 1 -2 1 0 0 0 0 1 -2 octave:14> octave:14> toeplitz([0,-1,0,0],[0,1,0,0]) ans = 0 1 0 0 -1 0 1 0 0 -1 0 1 0 0 -1 0 octave:15> toeplitz(sparse(1,2,-1,1,4),sparse(1,2,1,1,4)) ans = Compressed Column Sparse (rows = 4, cols = 4, nnz = 6 [38%]) (2, 1) -> -1 (1, 2) -> 1 (3, 2) -> -1 (2, 3) -> 1 (4, 3) -> -1 (3, 4) -> 1 octave:16> full(ans) ans = 0 1 0 0 -1 0 1 0 0 -1 0 1 0 0 -1 0 octave:17> catenaria0 octave:18> full(D1) ans = 0.00000 1.25000 0.00000 0.00000 0.00000 0.00000 -1.25000 0.00000 1.25000 0.00000 0.00000 0.00000 0.00000 -1.25000 0.00000 1.25000 0.00000 0.00000 0.00000 0.00000 -1.25000 0.00000 1.25000 0.00000 0.00000 0.00000 0.00000 -1.25000 0.00000 1.25000 0.00000 0.00000 0.00000 0.00000 -1.25000 0.00000 octave:19> full(D2) ans = -12.50000 6.25000 0.00000 0.00000 0.00000 0.00000 6.25000 -12.50000 6.25000 0.00000 0.00000 0.00000 0.00000 6.25000 -12.50000 6.25000 0.00000 0.00000 0.00000 0.00000 6.25000 -12.50000 6.25000 0.00000 0.00000 0.00000 0.00000 6.25000 -12.50000 6.25000 0.00000 0.00000 0.00000 0.00000 6.25000 -12.50000 octave:20> [1;2].*[1,2;3,4] ans = 1 2 6 8 octave:21> [1;2]*[1,2;3,4] error: operator *: nonconformant arguments (op1 is 2x1, op2 is 2x2) octave:21> [1;2].*[1,2;3,4] ans = 1 2 6 8 octave:22> catenaria0 parse error near line 20 of file /home/accounts/personale/clrmrc90/aa1920/equazioni_differenziali/catenaria0.m syntax error >>> u = u0: ^ octave:22> catenaria0 octave:23> catenaria0 octave:24> catenaria0 ans = 0.36076 ans = 0.0012274 ans = 9.1432e-09 octave:25> u=rand(100,1); octave:26> v=rand(100,1); octave:27> epsilon = 1e-4; octave:28> (F(u+epsilon*v)-F(u))/epsilon ans = 530.843 1980.348 -2725.538 -388.970 1216.080 1418.147 -3337.017 2711.300 -179.928 -1271.944 -54.057 2396.589 -3148.767 2921.788 -2601.321 1581.536 -1383.869 2775.601 -3605.707 2731.170 -1766.717 1333.076 -1578.090 1372.126 -694.591 478.667 1332.898 -1127.075 -299.833 -465.170 -386.424 802.475 -687.308 2021.557 -2598.507 1982.000 263.748 -1619.928 255.164 -954.208 1263.828 1470.590 -1567.175 234.781 -720.468 1056.230 -640.396 -757.501 2382.543 -808.526 -830.842 -474.681 546.733 -1151.339 2611.856 -308.075 -2489.737 1734.169 -71.385 -1141.121 2739.206 -3505.075 2801.552 -1227.565 353.488 -131.168 609.977 -1421.856 190.712 364.743 530.797 39.300 246.668 -1788.629 2284.025 -2055.250 2883.802 -2934.735 655.735 -374.192 706.965 1947.310 -3517.884 2301.773 -411.607 731.377 -2854.174 2673.854 -1359.867 147.682 2152.869 -2303.536 -332.975 1476.449 -818.607 1292.836 -2451.847 1601.736 -421.925 982.700 octave:29> J(u)*v ans = 530.843 1980.348 -2725.538 -388.969 1216.080 1418.147 -3337.017 2711.300 -179.928 -1271.944 -54.057 2396.589 -3148.767 2921.788 -2601.321 1581.536 -1383.869 2775.601 -3605.707 2731.170 -1766.717 1333.076 -1578.090 1372.126 -694.591 478.667 1332.898 -1127.075 -299.833 -465.170 -386.423 802.475 -687.308 2021.557 -2598.507 1982.000 263.749 -1619.928 255.165 -954.208 1263.828 1470.590 -1567.175 234.781 -720.468 1056.230 -640.396 -757.501 2382.543 -808.526 -830.842 -474.681 546.733 -1151.339 2611.856 -308.071 -2489.737 1734.169 -71.385 -1141.121 2739.206 -3505.075 2801.552 -1227.565 353.488 -131.168 609.977 -1421.856 190.719 364.743 530.797 39.300 246.673 -1788.629 2284.025 -2055.250 2883.802 -2934.735 655.735 -374.192 706.966 1947.310 -3517.884 2301.773 -411.607 731.385 -2854.174 2673.854 -1359.867 147.682 2152.870 -2303.536 -332.975 1476.449 -818.607 1292.836 -2451.847 1601.736 -421.925 982.700 octave:30> (F(u+epsilon*v)-F(u))/epsilon-J(u)*v ans = 3.7126e-09 -8.1757e-06 -1.6904e-06 -3.3406e-04 -3.5165e-06 -6.9970e-05 -8.6866e-05 -2.5929e-06 -3.9069e-05 8.6857e-10 -2.6924e-05 -2.0576e-05 -3.7690e-07 -2.8622e-09 -1.4046e-06 -7.6252e-07 -2.1195e-07 -8.7101e-07 -3.0425e-08 -7.3064e-07 -8.3345e-06 -2.9426e-07 -2.4622e-06 -9.8825e-07 -8.0490e-08 -2.6036e-06 -5.0573e-05 -9.6409e-06 -6.2052e-06 -3.2207e-07 -1.7823e-03 -4.1170e-06 -2.3953e-05 -8.0600e-05 -3.8404e-07 -2.5311e-04 -7.7518e-04 -9.2189e-05 -1.0651e-03 -1.3717e-05 -3.4323e-04 -9.4230e-06 -8.5793e-06 -3.7987e-09 -5.1648e-07 -8.3390e-07 -1.7599e-04 -6.2612e-06 -1.1904e-06 -7.6855e-06 -3.8596e-07 -1.3322e-06 -2.1863e-06 -3.5545e-06 -3.1490e-08 -4.3602e-03 -5.1016e-04 -6.1811e-06 -3.0842e-04 -5.4043e-06 -1.2719e-05 -2.0557e-07 -1.4560e-06 -1.3022e-04 -3.2865e-09 -7.7778e-06 -6.0624e-06 -9.7873e-07 -6.8482e-03 -2.2450e-06 -3.2555e-08 -1.9754e-06 -4.5776e-03 -4.5286e-07 -7.6329e-09 -1.2611e-08 -1.7516e-06 -1.1928e-06 -4.8837e-05 -6.9573e-05 -4.5363e-04 -1.8988e-04 -1.5560e-04 -9.7112e-07 -4.3572e-06 -7.7199e-03 -3.3765e-06 -6.9370e-07 -1.7057e-07 -3.0716e-06 -1.6956e-04 -5.8898e-05 -6.7108e-05 -3.0279e-06 -3.0498e-07 -4.0235e-05 -7.1293e-07 -7.9475e-06 -3.9740e-08 2.0103e-09 octave:31> octave:31> catenaria0 ans = 0.32188 ans = 0.036796 ans = 0.0046896 ans = 6.3867e-04 ans = 8.3295e-05 ans = 1.0320e-05 ans = 1.2950e-06 octave:32> octave:32> catenaria0 ans = 0.32010 ans = 0.038038 ans = 0.0036429 ans = 2.8726e-04 ans = 1.9213e-05 ans = 1.1159e-06 octave:33> diary off