function Y = FonctionLineaireA(X,tmp); 
% 
% function Y = functionLineaireA(X,tmp)
% 
% Calcule la fonction lineaire a implementer dans 
% l'algorithme de calcul du flot optimal via la methode de 
% descente du gradient conjugue. Les variables NablaI et lambda 
% sont globales. 


global NablaI; 
global lambda; 
[N1,N2,K]= size(NablaI);
XX=reshape(X,[N1 N2 2]); 
UU0 = sum(XX.*NablaI,3); 
[nabla11,nabla12] = Gradient(XX(:,:,1)); 
[nabla21,nabla22] = Gradient(XX(:,:,2)); 
LL=cat(3,Divergence(nabla11,nabla12),Divergence(nabla21,nabla22)); 
YY = NablaI.*repmat(UU0,[1,1,2]) -lambda*LL; 
Y = YY(:); 







































































end

