source: proiecte/pmake3d/make3d_original/Make3dSingleImageStanford_version0.1/third_party/lightspeed/test_solve_tri.m @ 37

Last change on this file since 37 was 37, checked in by (none), 14 years ago

Added original make3d

File size: 977 bytes
Line 
1[dummy,T] = lu(rand(5));
2b = rand(5,1);
3fprintf('The columns should be equal:\n');
4[solve_triu(T,b) T\b]
5[solve_tril(T',b) T'\b]
6
7d = 100;
8niter = (20000/d)^2;
9A = rand(d);
10[dummy,T] = lu(A);
11b = rand(d,1);
12tic; for i = 1:niter T\b; end; t1=toc/niter;
13tic; for i = 1:niter solve_triu(T,b); end; t2=toc/niter;
14fprintf('backslash: \t%g\nsolve_triu: \t%g (%g times faster)\n',t1,t2,t1/t2);
15% backslash is detecting triangularity as a preprocessing step, which doubles
16% the time.
17%fprintf('by flops, should be %g times faster\n',...
18%    flops_solve(T,b)/flops_solve_tri(T,b));
19
20niter = ceil(niter/d);
21tic; for i = 1:niter inv(T); end; t1=toc/niter;
22%I = eye(size(T));
23%tic; for i = 1:niter solve_triu(T,I); end; t2=toc;
24tic; for i = 1:niter inv_triu(T); end; t2=toc/niter;
25fprintf('inv: \t%g\ninv_triu: \t%g (%g times faster)\n',t1,t2,t1/t2);
26fprintf('by flops, should be %g times faster\n',...
27    flops_inv(rows(T))/flops_solve_tri(T,eye(size(T))));
Note: See TracBrowser for help on using the repository browser.