% Esta funcion estandariza el problema inverso
%
% Sintaxis:
%           [Ui,si,Vis,R,ord,w,Vi]=stdbc(K,L,RefProm)
% Donde:
%        K - Matriz del leadfield.
%        L - Laplaciano.
%        RefProm - Referencia Promedio
%
% Para mas informacion ver Readme.doc. 
%
% Autor: Nelson J. Trujillo Barreto.

function [Ui,si,Vis,R,ord,we,wm,Vi]=stdbcfusion(K,L,RefProm,Ne,Ns)
Ke=K(1:Ne,:);
Km=K(Ne+1:Ne+Ns,:);
[ne,nggl]=size(Ke);

if RefProm
 H = eye(ne) - ones(ne,ne)/ne;
 Ke = H*Ke;
end

%Lr=L(1:3:nggl,1:3:nggl);
if L(1,1)<0 ;  L=-L; end;
[R,ord]=lchol(L);
clear L

we = wiiv(Ke,1);
Ke = klinvr(R,Ke',ord,we);

%w = wiiv(K,1);
wm=ones(nggl,1);
Km = klinvr(R,Km',ord,wm);

K=[Ke;Km];

[Ui,si,Vi] = svdrapid(K);

Vis(:,1:Ne) = ljinvl(R,Vi(:,1:Ne),ord,we);
Vis(:,Ne+1:Ne+Ns) = ljinvl(R,Vi(:,Ne+1:Ne+Ns),ord,wm);