    function [l,r,p]=lr(a)
    % LR-faktorisering av matrisen a baserad på
    % Gausselimination med partiell pivotering.
    % Vektorn p innehåller efter anropet pivoteringssekvensen
    [n,n]=size(a);
    p=1:n;           %Initial pivoteringsordning
    for k=1:n-1
      [a,p]=pivot(a,p,k);
      for i=k+1:n, a(i,k)=a(i,k)/a(k,k); end
      for i=k+1:n
        for j=k+1:n
          a(i,j)=a(i,j)-a(i,k)*a(k,j);
        end
      end
    end
    r=triu(a);                 % Lyft ut elementen över och 
    l=eye(n)+tril(a,-1);       % under diagonalen i a.
    
    function [C,d]=pivot(C,d,k)
    % Sök största elementet i kolonn k av C
    % (på och under diagonalen)
    % och byt denna rad och rad k
    [n,n]=size(C);
    [y,ind]=max(abs(C(k:n,k))); ind=ind+k-1;
    rad=C(k,:); C(k,:)=C(ind,:); C(ind,:)=rad;
    t=d(k); d(k)=d(ind); d(ind)=t;





