26 lines
		
	
	
		
			353 B
		
	
	
	
		
			Matlab
		
	
	
			
		
		
	
	
			26 lines
		
	
	
		
			353 B
		
	
	
	
		
			Matlab
		
	
	
| scale = 1e-10;
 | |
| length = 10000;
 | |
| 
 | |
| A = spalloc(length, length, 2*length);
 | |
| b = zeros(length, 1);
 | |
| 
 | |
| A(1,1) = 1;
 | |
| 
 | |
| for i = 2:length
 | |
|     A(i, i-1) = 1e2*scale;
 | |
|     A(i, i) = -scale;
 | |
| end
 | |
| 
 | |
| L = A'*A;
 | |
| eta = A'*b;
 | |
| 
 | |
| R = choleskyNaive(L);
 | |
| clear opts
 | |
| opts.LT = true;
 | |
| d = R' \ eta; %linsolve(R', eta, opts);
 | |
| 
 | |
| clear opts
 | |
| opts.UT = true;
 | |
| x = R \ d; %linsolve(R, d, opts);
 | |
| 
 |