% SRINV	       Inverzija robustna na singularnosti
%
%  Jsri = SRINV (J,k)
%  Jsri = SRINV (J,k,N1)
%  Jsri = SRINV (J,k, N1, N2)
%
%   J  - matrica za koju se trazi SR inverzija
%   k  - parametar SR inverzije
%   N1 - tezinska matrica
%   N2 - tezinska matrica
%
%  Program nalazi SR invrznu matricu po formuli 
%          Jsri = (J'*N1'N1*J + k*N2'*N2)\J'*N1'*N1
%  Ukoliko tezinske matrice N1 i N2 nisu zadate podrazumevaju se jedinicne matrice
%
%  (c) 1996.  Rasic Milan

function Jsri = srinv (J, k, N1, N2);

if nargin<2,
   error ('Nedovoljno ulaznih argumenata');
elseif nargin==2,
   N1 = eye(numrows(J));
   N2 = eye(numcols(J));
elseif nargin==3,
   N2 = eye(numcols(J));
end;

W1= N1'*N1;
W2= k*N2'*N2;

Jsri= (J'*W1*J+W2)\J'*W1;


 
