Friday, May 12, 2017

Euclidean distance

Euclidean distance of a vector in n dimensions
Usage:


echo( len3( [1,1,2] ) );
echo( len3( [1,1,2] - [0,2,0] ) );


function len3(v) =len(v)>1?
sqrt(addl([for(i=[0:len(v)-1])pow(v[i], 2)]))
:len(v)==1?v[0]:v; 
function addl(l,c=0)= len(l)-1 >c?l[c]+addl(l,c+1):l[c];

1 comment:

  1. The norm() function works for arbitrary dimensions, which simplifies this as well as the unit vector snippet.

    ReplyDelete