octave:2> pwd ans = /home/accounts/personale/clrmrc90/aa1415/equazioni_differenziali octave:3> ls 2014-10-16.txt octave:4> A=rand(4); octave:5> A A = 0.556323 0.567177 0.244564 0.931372 0.489731 0.895654 0.210015 0.049924 0.613047 0.386033 0.097227 0.353282 0.578301 0.579208 0.667240 0.238295 octave:6> b=rand(4,1) b = 0.25464 0.37650 0.78990 0.46483 octave:7> x=A\b x = 1.95737 -0.53825 -0.36386 -0.47244 octave:8> norm(A*x-b) ans = 2.2204e-16 octave:9> [L,U,P]=lu(A) L = 1.00000 0.00000 0.00000 0.00000 0.79885 1.00000 0.00000 0.00000 0.94332 0.36619 1.00000 0.00000 0.90747 0.36927 0.20389 1.00000 U = 0.61305 0.38603 0.09723 0.35328 0.00000 0.58727 0.13235 -0.23229 0.00000 0.00000 0.52706 -0.00990 0.00000 0.00000 0.00000 0.69858 P = Permutation Matrix 0 0 1 0 0 1 0 0 0 0 0 1 1 0 0 0 octave:10> y=L\(P*b); octave:11> x=U\y x = 1.95737 -0.53825 -0.36386 -0.47244 octave:12> A\b ans = 1.95737 -0.53825 -0.36386 -0.47244 octave:13> U\(L\(P*b)) ans = 1.95737 -0.53825 -0.36386 -0.47244 octave:14> B=A*A' B = 1.55845 0.87830 0.91282 1.03536 0.87830 1.08863 0.68404 0.95401 0.91282 0.68404 0.65911 0.72718 1.03536 0.95401 0.72718 1.17191 octave:15> R=chol(B) R = 1.24838 0.70355 0.73120 0.82936 0.00000 0.77048 0.22012 0.48088 0.00000 0.00000 0.27569 0.05404 0.00000 0.00000 0.00000 0.49990 octave:16> R'*R ans = 1.55845 0.87830 0.91282 1.03536 0.87830 1.08863 0.68404 0.95401 0.91282 0.68404 0.65911 0.72718 1.03536 0.95401 0.72718 1.17191 octave:17> B\b ans = -3.30103 -1.85156 7.52525 0.15086 octave:18> R\(R'\b) ans = -3.30103 -1.85156 7.52525 0.15086 octave:19> chol(A) error: chol: input matrix must be positive definite octave:19> A A = 0.556323 0.567177 0.244564 0.931372 0.489731 0.895654 0.210015 0.049924 0.613047 0.386033 0.097227 0.353282 0.578301 0.579208 0.667240 0.238295 octave:20> B B = 1.55845 0.87830 0.91282 1.03536 0.87830 1.08863 0.68404 0.95401 0.91282 0.68404 0.65911 0.72718 1.03536 0.95401 0.72718 1.17191 octave:21> format long e octave:22> B B = Columns 1 through 3: 1.55845089555357e+00 8.78303241860518e-01 9.12816375039504e-01 8.78303241860518e-01 1.08863144891707e+00 6.84036616513018e-01 9.12816375039504e-01 6.84036616513018e-01 6.59109545922584e-01 1.03536029887812e+00 9.54009031658007e-01 7.27178025876189e-01 Column 4: 1.03536029887812e+00 9.54009031658007e-01 7.27178025876189e-01 1.17190722991390e+00 octave:23> B B = 1.55845089555357e+00 8.78303241860518e-01 9.12816375039504e-01 1.03536029887812e+00 8.78303241860518e-01 1.08863144891707e+00 6.84036616513018e-01 9.54009031658007e-01 9.12816375039504e-01 6.84036616513018e-01 6.59109545922584e-01 7.27178025876189e-01 1.03536029887812e+00 9.54009031658007e-01 7.27178025876189e-01 1.17190722991390e+00 octave:24> B-B' ans = 0.00000000000000e+00 0.00000000000000e+00 0.00000000000000e+00 0.00000000000000e+00 0.00000000000000e+00 0.00000000000000e+00 0.00000000000000e+00 0.00000000000000e+00 0.00000000000000e+00 0.00000000000000e+00 0.00000000000000e+00 0.00000000000000e+00 0.00000000000000e+00 0.00000000000000e+00 0.00000000000000e+00 0.00000000000000e+00 octave:25> A=[0,0,3;4,0,0;0,1,0] A = 0.00000000000000e+00 0.00000000000000e+00 3.00000000000000e+00 4.00000000000000e+00 0.00000000000000e+00 0.00000000000000e+00 0.00000000000000e+00 1.00000000000000e+00 0.00000000000000e+00 octave:26> sparse(A) ans = Compressed Column Sparse (rows = 3, cols = 3, nnz = 3 [33%]) (2, 1) -> 4.00000000000000e+00 (3, 2) -> 1.00000000000000e+00 (1, 3) -> 3.00000000000000e+00 octave:27> B=sparse(A) B = Compressed Column Sparse (rows = 3, cols = 3, nnz = 3 [33%]) (2, 1) -> 4.00000000000000e+00 (3, 2) -> 1.00000000000000e+00 (1, 3) -> 3.00000000000000e+00 octave:28> B(2,1) ans = Compressed Column Sparse (rows = 1, cols = 1, nnz = 1 [100%]) (1, 1) -> 4.00000000000000e+00 octave:29> B' ans = Compressed Column Sparse (rows = 3, cols = 3, nnz = 3 [33%]) (3, 1) -> 3.00000000000000e+00 (1, 2) -> 4.00000000000000e+00 (2, 3) -> 1.00000000000000e+00 octave:30> A A = 0.00000000000000e+00 0.00000000000000e+00 3.00000000000000e+00 4.00000000000000e+00 0.00000000000000e+00 0.00000000000000e+00 0.00000000000000e+00 1.00000000000000e+00 0.00000000000000e+00 octave:31> B B = Compressed Column Sparse (rows = 3, cols = 3, nnz = 3 [33%]) (2, 1) -> 4.00000000000000e+00 (3, 2) -> 1.00000000000000e+00 (1, 3) -> 3.00000000000000e+00 octave:32> toeplitz([-2,1,0,0,0]) ans = Columns 1 through 4: -2.00000000000000e+00 1.00000000000000e+00 0.00000000000000e+00 0.00000000000000e+00 1.00000000000000e+00 -2.00000000000000e+00 1.00000000000000e+00 0.00000000000000e+00 0.00000000000000e+00 1.00000000000000e+00 -2.00000000000000e+00 1.00000000000000e+00 0.00000000000000e+00 0.00000000000000e+00 1.00000000000000e+00 -2.00000000000000e+00 0.00000000000000e+00 0.00000000000000e+00 0.00000000000000e+00 1.00000000000000e+00 Column 5: 0.00000000000000e+00 0.00000000000000e+00 0.00000000000000e+00 1.00000000000000e+00 -2.00000000000000e+00 octave:33> toeplitz([-2,1,0,0]) ans = -2.00000000000000e+00 1.00000000000000e+00 0.00000000000000e+00 0.00000000000000e+00 1.00000000000000e+00 -2.00000000000000e+00 1.00000000000000e+00 0.00000000000000e+00 0.00000000000000e+00 1.00000000000000e+00 -2.00000000000000e+00 1.00000000000000e+00 0.00000000000000e+00 0.00000000000000e+00 1.00000000000000e+00 -2.00000000000000e+00 octave:34> format octave:35> toeplitz([-2,1,0,0]) ans = -2 1 0 0 1 -2 1 0 0 1 -2 1 0 0 1 -2 octave:36> toeplitz([-2,1,0,0,0]) ans = -2 1 0 0 0 1 -2 1 0 0 0 1 -2 1 0 0 0 1 -2 1 0 0 0 1 -2 octave:37> toeplitz([0,-1,0,0,0],[0,1,0,0,0]) ans = 0 1 0 0 0 -1 0 1 0 0 0 -1 0 1 0 0 0 -1 0 1 0 0 0 -1 0 octave:38> diag([-2,-2,-2]) ans = Diagonal Matrix -2 0 0 0 -2 0 0 0 -2 octave:39> diag([-2,-2,-2],1) ans = 0 -2 0 0 0 0 -2 0 0 0 0 -2 0 0 0 0 octave:40> toeplitz([-2,1,0,0,0]) ans = -2 1 0 0 0 1 -2 1 0 0 0 1 -2 1 0 0 0 1 -2 1 0 0 0 1 -2 octave:41> toeplitz(sparse([-2,1,0,0,0])) ans = Compressed Column Sparse (rows = 5, cols = 5, nnz = 13 [52%]) (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 octave:42> A=toeplitz(sparse([-2,1,0,0,0])) A = Compressed Column Sparse (rows = 5, cols = 5, nnz = 13 [52%]) (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 octave:43> full(A) ans = -2 1 0 0 0 1 -2 1 0 0 0 1 -2 1 0 0 0 1 -2 1 0 0 0 1 -2 octave:44> sparse([1,1],[1,2],[-2,1],1,5) ans = Compressed Column Sparse (rows = 1, cols = 5, nnz = 2 [40%]) (1, 1) -> -2 (1, 2) -> 1 octave:45> full(sparse([1,1],[1,2],[-2,1],1,5)) ans = -2 1 0 0 0 octave:46> m=10 m = 10 octave:47> h=1/10;toeplitz(sparse([1,1],[1,2],[-2,1]/h^2,1,m)) ans = Compressed Column Sparse (rows = 10, cols = 10, nnz = 28 [28%]) (1, 1) -> -200.00 (2, 1) -> 100.00 (1, 2) -> 100.00 (2, 2) -> -200.00 (3, 2) -> 100.00 (2, 3) -> 100.00 (3, 3) -> -200.00 (4, 3) -> 100.00 (3, 4) -> 100.00 (4, 4) -> -200.00 (5, 4) -> 100.00 (4, 5) -> 100.00 (5, 5) -> -200.00 (6, 5) -> 100.00 (5, 6) -> 100.00 (6, 6) -> -200.00 (7, 6) -> 100.00 (6, 7) -> 100.00 (7, 7) -> -200.00 (8, 7) -> 100.00 (7, 8) -> 100.00 (8, 8) -> -200.00 (9, 8) -> 100.00 (8, 9) -> 100.00 (9, 9) -> -200.00 (10, 9) -> 100.00 (9, 10) -> 100.00 (10, 10) -> -200.00 octave:48> octave:48> octave:48> octave:48> octave:48> eye(3) ans = Diagonal Matrix 1 0 0 0 1 0 0 0 1 octave:49> speye(3) ans = Compressed Column Sparse (rows = 3, cols = 3, nnz = 3 [33%]) (1, 1) -> 1 (2, 2) -> 1 (3, 3) -> 1 octave:50> ls 2014-10-16.txt bvp.m octave:51> edit bvp.m octave:52> octave:52> ls 2014-10-16.txt bvp.m octave:53> bvp ans = 5617.5 octave:54> u(1) ans = 1 octave:55> u(m) ans = 0 octave:56> bvp ans = 5617.5 octave:57> bvp warning: warning 1, at line 432 in file ../Cholesky/t_cholmod_rowfac.c warning: not positive definite error: chol: input matrix must be positive definite error: called from: error: /home/accounts/personale/clrmrc90/aa1415/equazioni_differenziali/bvp.m at line 26, column 2 octave:57> bvp octave:58> bvp octave:59> diary off