Orth

PURPOSE ^

SYNOPSIS ^

function new_gradients=Orth(gradients,oldgradients);

DESCRIPTION ^

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SOURCE CODE ^

0001 function  new_gradients=Orth(gradients,oldgradients);
0002 
0003 global client_server_mode IMDataCounter
0004 
0005 %outpu
0006 new_gradients=gradients;
0007 
0008 numparams=length(gradients);
0009 for i=1:numparams,
0010 
0011     %recover gradient  #i
0012     gradient=gradients{i};
0013     oldgradient=oldgradients{i};
0014     
0015     if isempty(oldgradient),
0016         oldgradient=zeros(length(gradient),1);
0017     end
0018 
0019     % normalize gradient #i to 1
0020     gradient=gradient/norm(gradient);
0021 
0022     % rough orthagonalization
0023     gradient=gradient-(gradient'*oldgradient)*oldgradient; 
0024     
0025     % renormalize gradients
0026     gradient=gradient/norm(gradient);
0027 
0028     %plug back into gradients
0029     new_gradients{i}=gradient;
0030 end

Generated on Sun 29-Mar-2009 20:22:55 by m2html © 2003