From f7aae77f16ac487edd93bedb48fc489f95fc986b Mon Sep 17 00:00:00 2001 From: Marco Ratto <marco.ratto@jrc.ec.europa.eu> Date: Mon, 13 Aug 2012 13:02:31 +0200 Subject: [PATCH] removed useless elements + reduce loops for efficiency (cherry picked from commit f2271264994af253ccdc7f01478320e4d2c2c0e7) --- matlab/kalman/likelihood/computeDLIK.m | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/matlab/kalman/likelihood/computeDLIK.m b/matlab/kalman/likelihood/computeDLIK.m index d08901356c..4efc95b33e 100644 --- a/matlab/kalman/likelihood/computeDLIK.m +++ b/matlab/kalman/likelihood/computeDLIK.m @@ -181,13 +181,13 @@ d2P1 = zeros(ns,ns,k,k); for ii = 1:k dAi = dA(:,:,ii); dFi = dP0(Z,Z,ii); - d2Omi = d2Om(:,:,ii); +% d2Omi = d2Om(:,:,ii); diFi = -iF*dFi*iF; dKi = dK0(:,:,ii); - for jj = 1:k + for jj = 1:ii, dAj = dA(:,:,jj); dFj = dP0(Z,Z,jj); - d2Omj = d2Om(:,:,jj); +% d2Omj = d2Om(:,:,jj); dFj = dP0(Z,Z,jj); diFj = -iF*dFj*iF; dKj = dK0(:,:,jj); @@ -218,6 +218,9 @@ for ii = 1:k d2K(:,:,ii,jj) = d2Kij; %#ok<NASGU> d2P1(:,:,ii,jj) = d2AtmpA + d2Omij; %#ok<*NASGU> d2S(:,:,ii,jj) = d2Fij; + d2K(:,:,jj,ii) = d2Kij; %#ok<NASGU> + d2P1(:,:,jj,ii) = d2AtmpA + d2Omij; %#ok<*NASGU> + d2S(:,:,jj,ii) = d2Fij; % d2iS(:,:,ii,jj) = d2iF; end end @@ -244,13 +247,13 @@ d2P1 = zeros(ns,ns,k,k); for ii = 1:k dAi = dA(:,:,ii); dFi = Z*dP0(:,:,ii)*Z; - d2Omi = d2Om(:,:,ii); +% d2Omi = d2Om(:,:,ii); diFi = -iF*dFi*iF; dKi = dK0(:,:,ii); - for jj = 1:k + for jj = 1:ii, dAj = dA(:,:,jj); dFj = Z*dP0(:,:,jj)*Z; - d2Omj = d2Om(:,:,jj); +% d2Omj = d2Om(:,:,jj); dFj = Z*dP0(:,:,jj)*Z; diFj = -iF*dFj*iF; dKj = dK0(:,:,jj); @@ -282,6 +285,9 @@ for ii = 1:k d2P1(:,:,ii,jj) = d2AtmpA + d2Omij; %#ok<*NASGU> d2S(:,:,ii,jj) = d2Fij; % d2iS(:,:,ii,jj) = d2iF; + d2K(:,:,jj,ii) = d2Kij; %#ok<NASGU> + d2P1(:,:,jj,ii) = d2AtmpA + d2Omij; %#ok<*NASGU> + d2S(:,:,jj,ii) = d2Fij; end end -- GitLab