Home > wafo > trgauss > private > mindist.m

mindist

PURPOSE ^

Finds minimal distance to the origin on the surface b'*x+x'*diag(g)*x=u

SYNOPSIS ^

xstar=mindist(g,b,u,n0,epsi)

DESCRIPTION ^

  MINDIST Finds minimal distance to the origin on the surface b'*x+x'*diag(g)*x=u 
   
    CALL: xstar=mindist(g,b,u,n0,eps); 
   
        u  = levels 
        n0 = number of non zero elements in the starting point 
        eps = accuracy in the iteration 
  
  Iterative solution to the problem om finding the point of minimal 
  distance to origin on the surface b'*x+x'*diag(g)*x=u, where x0 
  is the starting value.

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SOURCE CODE ^

001 function xstar=mindist(g,b,u,n0,epsi) 
002 % MINDIST Finds minimal distance to the origin on the surface b'*x+x'*diag(g)*x=u 
003 %  
004 %   CALL: xstar=mindist(g,b,u,n0,eps); 
005 %  
006 %       u  = levels 
007 %       n0 = number of non zero elements in the starting point 
008 %       eps = accuracy in the iteration 
009 % 
010 % Iterative solution to the problem om finding the point of minimal 
011 % distance to origin on the surface b'*x+x'*diag(g)*x=u, where x0 
012 % is the starting value. 
013  
014  
015 if nargin<5 
016    epsi=1e-12; 
017 end 
018 niter=1000; 
019 iter=1; 
020 n1=length(g); 
021 n0=min(n1,n0); 
022 xstar=mindist3(g(end-n0+1:end),b(end-n0+1:end),u); 
023 if n0<n1 
024     xn=[zeros(n1-n0,1);xstar]; 
025 b=b(:); 
026 g=g(:); 
027 xnold=xn+1; 
028 while iter<niter&sum(abs(xn-xnold))>epsi 
029    a=1-b'*xn/u-g'*xn.^2/u; 
030    A=-b/u-2*g.*xn/u; 
031    xnold=xn; 
032    xn=(A'*xn-a)/(A'*A)*A; 
033    iter=iter+1; 
034 end 
035 xstar=xn; 
036 if iter==niter 
037    warning(['The algorithm didn''t converged after ' int2str(niter) 'times for level u=' int2str(u)]) 
038 end 
039 end 
040  
041  
042  
043

Mathematical Statistics
Centre for Mathematical Sciences
Lund University with Lund Institute of Technology

Comments or corrections to the WAFO group


Generated on Thu 06-Oct-2005 02:21:16 for WAFO by m2html © 2003