function B0 = resiPrekNormalnegaSistema(X, As, k) % B0 = resiPrekNormalnegaSistema(X, As, k) % % Naj bo Xk razprtje tenzorja X v smeri k in A o B Khatri-Raojev produkt matrik A in B. % Funkcija vrne matriko B0, pri kateri ima matrika % Xk - B (As{d} o As{d - 1} o ... As{k + 1} o B o As{k - 1} o ... o As{1})^T % najmanjso Frobeniusovo normo. Pripadajoci problem najmanjsih kvadratov resimo % preko normalnega sistema A r = size(As{1}, 2); d = length(size(X)); % A in AtA A = ones(1, r); % enota za Khatri-Raojevo mnozenje AtA = ones(r); for i = d:-1:1 if i ~= k A = KhatriRao(A, As{i}); AtA = AtA .* (As{i}' * As{i}); end end Xk = razprtje(X, k); B0 = (AtA \ (Xk * A)')'; end