procedure vnorm(var v: vector; var r,x: scalar);
var
  n: integer;
  rt,s1,s2,sf: scalar;
begin { vnorm }
  sabs0(r,rt);
  sabs0(v[0],x);
  sf.u:=sone.u;
  sf.l.si:=0;
  for n:=1 to vdim do begin
    sprod(sf,rt,s1);
    sf:=s1;
    ismult(n,sf);
    sabs0(v[n],s2);
    sprod(sf,s2,s1);
    sunion(s1,x,s2);
    x:=s2;
  end;
end { vnorm };

