% Fully developed laminar helical pipe flow
function [h, NuD, f, ReD] = LamHelixPipeNuT(U,D,C,L,mat,Ts,Tm)
  [ReD Pr km] = Re(U,D,mat,Tm);                        
  S=D./C;
  if length(ReD) < length(S)     ReD=ReD*ones(size(S));
  elseif length(ReD) > length(S) S=S*ones(size(ReD));
  end
  if max( ReD./(1+12*S.^.5) ) > 2300
    warning = 'LamHelixPipeNuT: ReD/(1+12*S^.5) > 2300 (flow is turbulent)' 
  end
  if min( S ) > 1/3 
    warning = 'LamHelixPipeNuT: 3S > 1'
  end
  if max( ReD.*S.^.5 ) > 1000
    warning = 'LamHelixPipeNuT: ReD*S^.5 > 1000'
  end
  if min( ReD.*S.^.5 ) < 1
    warning = 'LamHelixPipeNuT: ReD*S^.5 < 1'
  end
  n=1;
  for RDC=ReD.*S.^.5,                          % evaluated each case
    if RDC < 30      f(n)= 64/ReD(n);                  
    elseif RDC < 300 f(n)= 27*S(n)^.1375/ReD(n)^.725;  
    else             f(n)= 7.2*S(n)^.25/ReD(n)^.5;     
    end
    n=n+1;
  end
  muR=prop('mu',mat,Tm)./prop('mu',mat,Ts);
  a=1+927./S./ReD.^2./Pr;                              
  b=1+.477./Pr;                                        
  NuD = ( (3.66+4.343./a).^3 + ...
        1.158*(ReD.*S.^.5/b).^1.5 ).^(1/3)*(muR).^.14; 
  h   = NuD.*km./D;
end
